UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

30 lines (29 loc) • 1.2 kB
import { h as normalizeUniqueStringEntries } from "./string-normalization-D6DKCpwE.mjs"; import "./session-key-DY3MOX4N.mjs"; import { h as parseAgentSessionKey } from "./session-key-utils-CDyBC9Gn.mjs"; import { t as runBestEffortCleanup } from "./non-fatal-cleanup-BoCq8AND.mjs"; import { t as closeTrackedBrowserTabsForSessions } from "./browser-maintenance-DaqQmL1H.mjs"; //#region src/browser-lifecycle-cleanup.ts function isBrowserCleanupDisabled(cfg) { return cfg?.browser?.enabled === false || cfg?.plugins?.entries?.browser?.enabled === false; } async function cleanupBrowserSessionsForLifecycleEnd(params) { const { cfg, onError, ...cleanupParams } = params; if (isBrowserCleanupDisabled(cfg)) return; const sessionKeys = normalizeUniqueStringEntries(params.sessionKeys.flatMap((key) => { const parsed = parseAgentSessionKey(key); return parsed ? [`agent:${parsed.agentId}:${parsed.rest}`] : []; })); if (sessionKeys.length === 0) return; await runBestEffortCleanup({ cleanup: async () => { await closeTrackedBrowserTabsForSessions({ ...cleanupParams, sessionKeys }); }, onError }); } //#endregion export { cleanupBrowserSessionsForLifecycleEnd as t };