UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

31 lines (30 loc) • 1.95 kB
import { s as requestSqliteWorkerOperationAdmission } from "./sqlite-worker-operation-admission-C5lBzzTk.mjs"; import { l as runOpenClawStateWriteTransaction } from "./openclaw-state-db-DJZ7EKoI.mjs"; import { d as withOpenClawStateDatabaseReadOnly } from "./openclaw-state-db-readonly-ywwvuxdQ.mjs"; import { a as readNativeHookRelayBridgeSnapshotFromDatabase, i as pruneNativeHookRelayBridgeRecordsInDatabase, n as deleteNativeHookRelayBridgeRecordIfOwnedInDatabase, o as renewOrRestoreNativeHookRelayBridgeRecordInDatabase, r as listNativeHookRelayBridgeSnapshotsInDatabase, s as writeNativeHookRelayBridgeRecordInDatabase } from "./native-hook-relay-store.kernel-Cp8lZUSC.mjs"; //#region src/agents/harness/native-hook-relay-store.worker.ts function relayMutation(mutate, requiresAdmission = false) { return (input, { open, stateOptions }) => runOpenClawStateWriteTransaction((database) => { if (requiresAdmission) requestSqliteWorkerOperationAdmission({ stage: "transaction", facts: void 0 }); return mutate(database, input); }, { database: open(), ...stateOptions() }); } const nativeHookRelayOperations = { "nativeHookRelay.read": (input, { stateOptions }) => withOpenClawStateDatabaseReadOnly((database) => readNativeHookRelayBridgeSnapshotFromDatabase({ database, relayId: input.relayId })?.record, stateOptions()), "nativeHookRelay.listSnapshots": (_input, { open }) => listNativeHookRelayBridgeSnapshotsInDatabase(open()), "nativeHookRelay.write": relayMutation(writeNativeHookRelayBridgeRecordInDatabase, true), "nativeHookRelay.renew": relayMutation(renewOrRestoreNativeHookRelayBridgeRecordInDatabase, true), "nativeHookRelay.deleteOwned": relayMutation(deleteNativeHookRelayBridgeRecordIfOwnedInDatabase), "nativeHookRelay.prune": relayMutation((database, input) => pruneNativeHookRelayBridgeRecordsInDatabase(database, input.candidates, input.nowMs)) }; //#endregion export { nativeHookRelayOperations };