UNPKG

@gguf/claw

Version:

Multi-channel AI gateway with extensible messaging integrations

57 lines (55 loc) 2.24 kB
import "./paths-Bp5uKvNR.js"; import "./registry-dD2_jBuv.js"; import "./agent-scope-DiocriBl.js"; import "./subsystem-CGx2ESmP.js"; import "./model-selection-Xwi9H_jm.js"; import "./github-copilot-token-ttqQRqMA.js"; import "./env-MtDjQbRJ.js"; import "./normalize-BHlVpmSR.js"; import "./accounts-GdZ63CoS.js"; import "./bindings-Du1RGVFM.js"; import "./plugins-C2vFjSxX.js"; import "./fs-safe-GrTh3Ydq.js"; import "./message-channel-BxsLQyfw.js"; import "./config-42hNXHap.js"; import "./manifest-registry-DmjapxrQ.js"; import { i as jsonResult, s as readReactionParams, t as createActionGate, u as readStringParam } from "./common-BLbt_nyn.js"; import "./ssrf-DH-Ltk62.js"; import "./chunk-YQGDBsHo.js"; import "./markdown-tables-CNKgA0te.js"; import "./local-roots-BBJH5K5T.js"; import "./ir-CEvNPW62.js"; import "./render-B1VqYyvo.js"; import "./tables-CUmmBJsI.js"; import { r as sendReactionWhatsApp } from "./outbound-C9CzQgCm.js"; //#region src/agents/tools/whatsapp-actions.ts async function handleWhatsAppAction(params, cfg) { const action = readStringParam(params, "action", { required: true }); const isActionEnabled = createActionGate(cfg.channels?.whatsapp?.actions); if (action === "react") { if (!isActionEnabled("reactions")) throw new Error("WhatsApp reactions are disabled."); const chatJid = readStringParam(params, "chatJid", { required: true }); const messageId = readStringParam(params, "messageId", { required: true }); const { emoji, remove, isEmpty } = readReactionParams(params, { removeErrorMessage: "Emoji is required to remove a WhatsApp reaction." }); const participant = readStringParam(params, "participant"); const accountId = readStringParam(params, "accountId"); const fromMeRaw = params.fromMe; await sendReactionWhatsApp(chatJid, messageId, remove ? "" : emoji, { verbose: false, fromMe: typeof fromMeRaw === "boolean" ? fromMeRaw : void 0, participant: participant ?? void 0, accountId: accountId ?? void 0 }); if (!remove && !isEmpty) return jsonResult({ ok: true, added: emoji }); return jsonResult({ ok: true, removed: true }); } throw new Error(`Unsupported WhatsApp action: ${action}`); } //#endregion export { handleWhatsAppAction };