@gguf/claw
Version:
Multi-channel AI gateway with extensible messaging integrations
57 lines (55 loc) • 2.25 kB
JavaScript
import "./accounts-Dy3mxoHH.js";
import "./registry-C8pj8ctW.js";
import "./paths-DJmOcr7Q.js";
import "./model-selection-DQIwoYb8.js";
import "./config-DA0pxYcO.js";
import "./fs-safe-CGcLaY9D.js";
import "./subsystem-BfLMZ8kW.js";
import "./agent-scope-OWMdRegz.js";
import { i as jsonResult, s as readReactionParams, t as createActionGate, u as readStringParam } from "./common-CCPGi5xr.js";
import "./chunk-C9J4kyVw.js";
import "./ssrf-DxmqkHJJ.js";
import "./local-roots-jpNoUngc.js";
import "./command-format-sreXrOOr.js";
import "./normalize-D9b0GOOm.js";
import "./bindings-LROfNV1W.js";
import "./plugins-BpKonLQ1.js";
import "./message-channel-C3OrO29D.js";
import "./github-copilot-token-etmIcdko.js";
import "./manifest-registry-Lzj-fZNH.js";
import "./ir-JSGKj1e6.js";
import "./markdown-tables-Cf5RtnFi.js";
import "./render-DehvxLfa.js";
import "./tables-D5aPNTF6.js";
import { r as sendReactionWhatsApp } from "./outbound-OmAAet72.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 };