UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

35 lines (34 loc) 1.4 kB
import { a as tryLoadActivatedBundledPluginPublicSurfaceModuleSync, t as canLoadActivatedBundledPluginPublicSurface } from "./facade-runtime-BMJRpsns.js"; import "./browser-trash-CBe_wA_B.js"; //#region src/plugin-sdk/browser-maintenance.ts /** * Public SDK facade for browser cleanup and trash operations. */ let cachedBrowserMaintenanceSurface; function hasRequestedSessionKeys(sessionKeys) { return sessionKeys.some((key) => Boolean(key?.trim())); } function loadBrowserMaintenanceSurface() { const request = { dirName: "browser", artifactBasename: "browser-maintenance.js" }; if (!canLoadActivatedBundledPluginPublicSurface(request)) return null; if (!cachedBrowserMaintenanceSurface) cachedBrowserMaintenanceSurface = tryLoadActivatedBundledPluginPublicSurfaceModuleSync(request) ?? void 0; return cachedBrowserMaintenanceSurface ?? null; } /** Closes tracked browser tabs for requested session keys when the browser plugin is active. */ async function closeTrackedBrowserTabsForSessions(params) { if (!hasRequestedSessionKeys(params.sessionKeys)) return 0; let surface; try { surface = loadBrowserMaintenanceSurface(); } catch (error) { params.onWarn?.(`browser cleanup unavailable: ${String(error)}`); return 0; } if (!surface) return 0; return await surface.closeTrackedBrowserTabsForSessions(params); } //#endregion export { closeTrackedBrowserTabsForSessions as t };