mirror of
https://github.com/openclaw/openclaw.git
synced 2026-06-30 16:13:32 +00:00
82 lines
3.3 KiB
TypeScript
82 lines
3.3 KiB
TypeScript
import {
|
|
drainPendingDeliveries as coreDrainPendingDeliveries,
|
|
type DeliverFn,
|
|
} from "../infra/outbound/delivery-queue.js";
|
|
|
|
// Public runtime/transport helpers for plugins that need shared infra behavior.
|
|
|
|
type OutboundDeliverRuntimeModule = typeof import("../infra/outbound/deliver-runtime.js");
|
|
type DrainPendingDeliveriesOptions = Omit<
|
|
Parameters<typeof coreDrainPendingDeliveries>[0],
|
|
"deliver"
|
|
> & {
|
|
deliver?: DeliverFn;
|
|
};
|
|
|
|
let outboundDeliverRuntimePromise: Promise<OutboundDeliverRuntimeModule> | null = null;
|
|
|
|
async function loadOutboundDeliverRuntime(): Promise<OutboundDeliverRuntimeModule> {
|
|
outboundDeliverRuntimePromise ??= import("../infra/outbound/deliver-runtime.js");
|
|
return await outboundDeliverRuntimePromise;
|
|
}
|
|
|
|
export async function drainPendingDeliveries(opts: DrainPendingDeliveriesOptions): Promise<void> {
|
|
const deliver = opts.deliver ?? (await loadOutboundDeliverRuntime()).deliverOutboundPayloads;
|
|
await coreDrainPendingDeliveries({
|
|
...opts,
|
|
deliver,
|
|
});
|
|
}
|
|
|
|
export * from "../infra/backoff.js";
|
|
export * from "../infra/channel-activity.js";
|
|
export * from "../infra/dedupe.js";
|
|
export * from "../infra/diagnostic-events.js";
|
|
export * from "../infra/diagnostic-flags.js";
|
|
export * from "../infra/env.js";
|
|
export * from "../infra/errors.js";
|
|
export * from "../infra/exec-approval-command-display.ts";
|
|
export * from "../infra/exec-approval-channel-runtime.ts";
|
|
export * from "../infra/exec-approval-reply.ts";
|
|
export * from "../infra/exec-approval-session-target.ts";
|
|
export * from "../infra/exec-approvals.ts";
|
|
export * from "../infra/approval-native-delivery.ts";
|
|
export * from "../infra/approval-native-runtime.ts";
|
|
export * from "../infra/plugin-approvals.ts";
|
|
export * from "../infra/fetch.js";
|
|
export * from "../infra/file-lock.js";
|
|
export * from "../infra/format-time/format-duration.ts";
|
|
export * from "../infra/fs-safe.ts";
|
|
export * from "../infra/heartbeat-events.ts";
|
|
export * from "../infra/heartbeat-summary.ts";
|
|
export * from "../infra/heartbeat-visibility.ts";
|
|
export * from "../infra/home-dir.js";
|
|
export * from "../infra/http-body.js";
|
|
export * from "../infra/json-files.js";
|
|
export * from "../infra/local-file-access.js";
|
|
export * from "../infra/map-size.js";
|
|
export * from "../infra/net/hostname.ts";
|
|
export * from "../infra/net/fetch-guard.js";
|
|
export * from "../infra/net/proxy-env.js";
|
|
export * from "../infra/net/proxy-fetch.js";
|
|
export * from "../infra/net/undici-global-dispatcher.js";
|
|
export * from "../infra/net/ssrf.js";
|
|
export * from "../infra/outbound/identity.js";
|
|
export * from "../infra/outbound/sanitize-text.js";
|
|
export * from "../infra/parse-finite-number.js";
|
|
export * from "../infra/outbound/send-deps.js";
|
|
export * from "../infra/retry.js";
|
|
export * from "../infra/retry-policy.js";
|
|
export * from "../infra/scp-host.ts";
|
|
export * from "../infra/secret-file.js";
|
|
export * from "../infra/secure-random.js";
|
|
export * from "../infra/system-events.js";
|
|
export * from "../infra/system-message.ts";
|
|
export * from "../infra/tmp-openclaw-dir.js";
|
|
export * from "../infra/transport-ready.js";
|
|
export * from "../infra/wsl.ts";
|
|
export * from "../utils/fetch-timeout.js";
|
|
export * from "../utils/run-with-concurrency.js";
|
|
export { createRuntimeOutboundDelegates } from "../channels/plugins/runtime-forwarders.js";
|
|
export * from "./ssrf-policy.js";
|