@qqbrowser/openclaw-qbot 0.0.148 → 0.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/account-lookup-CW-_CL7y.js +0 -1
- package/dist/acp-cli-BHsTg1ac.js +0 -1
- package/dist/acp-cli-D_WC9SZX.js +0 -1
- package/dist/active-listener-1MJXk3Iq.js +0 -1
- package/dist/active-listener-D8VOdVx3.js +0 -1
- package/dist/active-listener-D8uP0H5W.js +0 -1
- package/dist/active-listener-DeKRt_UV.js +0 -1
- package/dist/agent-scope-DAWJwFfl.js +0 -1
- package/dist/agent-scope-DXZc3eNT.js +0 -1
- package/dist/agents-Cd1yL8fG.js +0 -1
- package/dist/agents.config-CaRMmWS8.js +0 -1
- package/dist/agents.config-DSCcdYtv.js +0 -1
- package/dist/allow-from-B6dI7oz8.js +0 -1
- package/dist/allow-from-DEeVIPKS.js +0 -1
- package/dist/api-BeG0ObSq.js +0 -1
- package/dist/api-Dx8x1KTs.js +0 -1
- package/dist/api-key-rotation-BLt5E2Cw.js +0 -1
- package/dist/api-key-rotation-BpEL4aeX.js +0 -1
- package/dist/api-key-rotation-DayEfYpa.js +0 -1
- package/dist/api-key-rotation-Rz2ESQSA.js +0 -1
- package/dist/arg-split-BOqSMBuf.js +0 -1
- package/dist/arg-split-DE5RqDHq.js +0 -1
- package/dist/audio-preflight-8WB1LJBS.js +0 -1
- package/dist/audio-preflight-BcPHPfr_.js +0 -1
- package/dist/audio-preflight-DTO631Yb.js +0 -1
- package/dist/audio-preflight-O-0lDeKh.js +0 -1
- package/dist/audio-transcription-runner-9H9eUZ1D.js +0 -1
- package/dist/audio-transcription-runner-BIKj1CBU.js +0 -1
- package/dist/audio-transcription-runner-BwjMhAUa.js +0 -1
- package/dist/audio-transcription-runner-CQ7rq0d_.js +0 -1
- package/dist/audit-9I53EvMQ.js +0 -1
- package/dist/audit-BGsUfJzD.js +0 -1
- package/dist/audit-membership-runtime-BpRsMj5-.js +0 -1
- package/dist/audit-membership-runtime-BsfLZNBj.js +0 -1
- package/dist/audit-membership-runtime-DRHirRmx.js +0 -1
- package/dist/audit-membership-runtime-g0dEWJTp.js +0 -1
- package/dist/audit-membership-runtime-kdyToskD.js +0 -1
- package/dist/auth-choice-BmI4sIGs.js +0 -1
- package/dist/auth-choice-DDsPJF6F.js +0 -1
- package/dist/auth-choice-Dy0jIOLV.js +0 -1
- package/dist/auth-choice-MqcWuVyu.js +0 -1
- package/dist/auth-choice-options-B3WQyS7I.js +0 -1
- package/dist/auth-choice-options-Dw14noox.js +0 -1
- package/dist/auth-choice-prompt-uegl56cf.js +0 -1
- package/dist/auth-choice-prompt-xYj13czb.js +0 -1
- package/dist/auth-choice.apply-helpers-D911bYcw.js +0 -1
- package/dist/auth-choice.apply-helpers-pJ4CPZCk.js +0 -1
- package/dist/auth-profiles-C8rZRS0X.js +0 -1
- package/dist/auth-token-DZLZ3d_I.js +0 -1
- package/dist/auth-token-Dp6bxT29.js +0 -1
- package/dist/banner-CAtilyXr.js +0 -1
- package/dist/bonjour-discovery-ClTijpMw.js +0 -1
- package/dist/bonjour-discovery-DMB6yrOF.js +0 -1
- package/dist/boolean-Ch3DfXPy.js +0 -1
- package/dist/boolean-D15s2V33.js +0 -1
- package/dist/boolean-DypnRoRK.js +0 -1
- package/dist/brew-COcDl8CB.js +0 -1
- package/dist/brew-DDPm_HfE.js +0 -1
- package/dist/browser-cli-Bf-Pzjxs.js +0 -1
- package/dist/browser-cli-DkrBCfYg.js +0 -1
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +0 -1
- package/dist/bundled/bootstrap-extra-files/handler.js +0 -1
- package/dist/bundled/command-logger/handler.js +0 -1
- package/dist/bundled/session-memory/handler.js +0 -1
- package/dist/call-BWx7hNtl.js +0 -1
- package/dist/call-JB-cGR9n.js +0 -1
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/channel-account-context-BMPAMZEv.js +0 -1
- package/dist/channel-account-context-DAcarnqW.js +0 -1
- package/dist/channel-activity-B04WbrrK.js +0 -1
- package/dist/channel-activity-BhiLsKvM.js +0 -1
- package/dist/channel-activity-DmgWmSAG.js +0 -1
- package/dist/channel-activity-Dw6F-ehJ.js +0 -1
- package/dist/channel-activity-htoVXTET.js +0 -1
- package/dist/channel-options-CCqtIYCc.js +0 -1
- package/dist/channel-options-CKoyPq8p.js +0 -1
- package/dist/channel-selection-BPxE8JR7.js +0 -1
- package/dist/channel-selection-si1OzWyQ.js +0 -1
- package/dist/channel-web-CCSMlUux.js +0 -1
- package/dist/channel-web-CwUfYqjg.js +0 -1
- package/dist/channels/plugins/actions/discord.js +0 -1
- package/dist/channels/plugins/actions/signal.js +0 -1
- package/dist/channels/plugins/actions/telegram.js +0 -1
- package/dist/channels/plugins/agent-tools/whatsapp-login.js +0 -1
- package/dist/channels-cli-BfgVv5jH.js +0 -1
- package/dist/channels-cli-BvGXgERj.js +0 -1
- package/dist/channels-status-issues-8eFrGKyf.js +0 -1
- package/dist/channels-status-issues-PRgOT90w.js +0 -1
- package/dist/chat-envelope-Bznn2SoS.js +0 -1
- package/dist/chat-envelope-HVpKusFc.js +0 -1
- package/dist/clack-prompter-DBPdGdqp.js +0 -1
- package/dist/clack-prompter-Dq0aY6iM.js +0 -1
- package/dist/clawbot-cli-B0iTJ-pm.js +0 -1
- package/dist/clawbot-cli-BcEtQbFY.js +0 -1
- package/dist/cleanup-utils-BWm70DoD.js +0 -1
- package/dist/cleanup-utils-D-RhEX6F.js +0 -1
- package/dist/cli-Bt--1dhL.js +0 -1
- package/dist/cli-CBg8KhmQ.js +0 -1
- package/dist/cli-utils-BY7dLMFy.js +0 -1
- package/dist/cli-utils-BleB1eys.js +0 -1
- package/dist/clipboard-Bk8cviBt.js +0 -1
- package/dist/clipboard-CKT_VIkG.js +0 -1
- package/dist/cmd-argv-BBT5l8AV.js +0 -1
- package/dist/cmd-argv-Bh-KpaZ0.js +0 -1
- package/dist/command-format-BbDT1tlm.js +0 -1
- package/dist/command-format-CLxIPuLR.js +0 -1
- package/dist/command-options-BpOUDl2S.js +0 -1
- package/dist/command-options-Bq5nQxz6.js +0 -1
- package/dist/command-poll-backoff-BZLHYB2k.js +0 -1
- package/dist/command-poll-backoff-Cww_r-24.js +0 -1
- package/dist/command-poll-backoff-Df6cOQrX.js +0 -1
- package/dist/command-poll-backoff-endAPdwn.js +0 -1
- package/dist/{command-registry-BxNiXs5w.js → command-registry-D_jtBegA.js} +1 -2
- package/dist/command-secret-targets-BEjtBf5Z.js +0 -1
- package/dist/command-secret-targets-CfXtLkLF.js +0 -1
- package/dist/commands-CGpM84iR.js +0 -1
- package/dist/commands-Dy7duWlt.js +0 -1
- package/dist/commands-registry-C5Hg7gyk.js +0 -1
- package/dist/commands-registry-DT6FDUev.js +0 -1
- package/dist/commands-registry-DlvNUkXz.js +0 -1
- package/dist/commands-registry-gvMK7Pw9.js +0 -1
- package/dist/compact-CYbPi7_-.js +0 -1
- package/dist/{completion-cli-Yg5BF97F.js → completion-cli-BVbT_aR2.js} +1 -2
- package/dist/{completion-cli-BRE0F8Tu.js → completion-cli-Bw_hBrlA.js} +1 -2
- package/dist/config-BqW5S1xL.js +0 -1
- package/dist/config-Cji73to5.js +0 -1
- package/dist/config-cli-CwW76_j_.js +0 -1
- package/dist/config-cli-F-lkPjjz.js +0 -1
- package/dist/config-guard-0_afzaJz.js +0 -1
- package/dist/config-guard-CqUJ8uaF.js +0 -1
- package/dist/config-validation-6hk_fxD8.js +0 -1
- package/dist/config-validation-BAmmD9p4.js +0 -1
- package/dist/configure--c4tTVPz.js +0 -1
- package/dist/configure-DFlnM_zh.js +0 -1
- package/dist/connection-auth-CjaeEu5D.js +0 -1
- package/dist/connection-auth-smZlFWxD.js +0 -1
- package/dist/context-window-guard-7crlatf9.js +0 -1
- package/dist/context-window-guard-CPChk363.js +0 -1
- package/dist/control-ui-assets-BIa0GGDg.js +0 -1
- package/dist/control-ui-assets-CTHGGgaX.js +0 -1
- package/dist/cron-cli-BKS4L-uW.js +0 -1
- package/dist/cron-cli-L9wLLocl.js +0 -1
- package/dist/daemon-cli-BdDHNRqp.js +0 -1
- package/dist/daemon-cli-CEHkT-54.js +0 -1
- package/dist/daemon-cli.js +0 -1
- package/dist/daemon-install-CMNtsW5o.js +0 -1
- package/dist/daemon-install-D2gMiA0p.js +0 -1
- package/dist/daemon-install-plan.shared-BkwZgIAY.js +0 -1
- package/dist/daemon-install-plan.shared-Dx3DBXCG.js +0 -1
- package/dist/daemon-runtime-DHiDbRuC.js +0 -1
- package/dist/daemon-runtime-VcpeBRJV.js +0 -1
- package/dist/dangerous-name-matching-BOmvAibz.js +0 -1
- package/dist/dangerous-name-matching-DtllRqBD.js +0 -1
- package/dist/dangerous-tools-CFRYQJ6V.js +0 -1
- package/dist/dangerous-tools-oYCu5wfC.js +0 -1
- package/dist/deliver-AM3FP5rj.js +0 -1
- package/dist/deliver-BhWhLvQO.js +0 -1
- package/dist/deliver-DUNkj4hy.js +0 -1
- package/dist/deliver-SqSusZP3.js +0 -1
- package/dist/delivery-queue-CKbauSFq.js +0 -1
- package/dist/delivery-queue-nkPJu0fY.js +0 -1
- package/dist/device-pairing-DAzYy3vX.js +0 -1
- package/dist/device-pairing-DknI3IDo.js +0 -1
- package/dist/devices-cli-BYD6Sq88.js +0 -1
- package/dist/devices-cli-Dl-0fQmR.js +0 -1
- package/dist/diagnostic-BEZszppF.js +0 -1
- package/dist/diagnostic-D1H7_8QG.js +0 -1
- package/dist/diagnostic-DtuQPRbp.js +0 -1
- package/dist/diagnostic-VBPCgF9l.js +0 -1
- package/dist/diagnostics-BgbeL9KE.js +0 -1
- package/dist/diagnostics-Cdctg9K_.js +0 -1
- package/dist/directory-cli-CpMjutQb.js +0 -1
- package/dist/directory-cli-b_l3qJI_.js +0 -1
- package/dist/dns-cli-C7L4RYOm.js +0 -1
- package/dist/dns-cli-wKg6nn6f.js +0 -1
- package/dist/docs-cli-CwW4sqbC.js +0 -1
- package/dist/docs-cli-DnLLU7eX.js +0 -1
- package/dist/{doctor-completion-II0Wb435.js → doctor-completion-C9CPhCor.js} +1 -2
- package/dist/{doctor-completion-Bu-98ocm.js → doctor-completion-DI7mGC3D.js} +1 -2
- package/dist/doctor-config-flow-BVpr8-q9.js +0 -1
- package/dist/doctor-config-flow-Dio3s4x6.js +0 -1
- package/dist/enable-CjFPAUgo.js +0 -1
- package/dist/enable-PO3qN4Lf.js +0 -1
- package/dist/entry-status-CCwwKO43.js +0 -1
- package/dist/entry-status-CoXkbJcX.js +0 -1
- package/dist/entry.js +1 -2
- package/dist/env-D7wNuBx1.js +0 -1
- package/dist/env-overrides-DHtB4kK3.js +0 -1
- package/dist/env-overrides-DXJbFrwI.js +0 -1
- package/dist/errors-6SQWM9dj.js +0 -1
- package/dist/errors-Bunti32V.js +0 -1
- package/dist/exec-B3eleY5O.js +0 -1
- package/dist/exec-DHqLtFYt.js +0 -1
- package/dist/exec-approvals-BXO9Cezj.js +0 -1
- package/dist/exec-approvals-BpBNEy6i.js +0 -1
- package/dist/exec-approvals-allowlist-B-Yf6RsU.js +0 -1
- package/dist/exec-approvals-allowlist-CGjRWREs.js +0 -1
- package/dist/exec-approvals-cli-BokGzWFo.js +0 -1
- package/dist/exec-approvals-cli-CsUGu6m3.js +0 -1
- package/dist/exec-safe-bin-runtime-policy-CRPHdPbF.js +0 -1
- package/dist/exec-safe-bin-runtime-policy-v44u39fl.js +0 -1
- package/dist/fetch-B4bz67_N.js +0 -1
- package/dist/fetch-BJT3BrkJ.js +0 -1
- package/dist/fetch-Bn0mWg6a.js +0 -1
- package/dist/fetch-Ce-scEU-.js +0 -1
- package/dist/fetch-D0rZDHKO.js +0 -1
- package/dist/fetch-D5wrJ0AX.js +0 -1
- package/dist/fetch-DBat25iG.js +0 -1
- package/dist/fetch-DHo17YmK.js +0 -1
- package/dist/fetch-Dh-apy46.js +0 -1
- package/dist/fetch-Dikjvc5M.js +0 -1
- package/dist/fetch-DsjPfQlp.js +0 -1
- package/dist/fetch-_g8lZ8K8.js +0 -1
- package/dist/fetch-guard-7BAwnP4a.js +0 -1
- package/dist/fetch-guard-DaZmvp-L.js +0 -1
- package/dist/fetch-guard-DvaNcypz.js +0 -1
- package/dist/fetch-guard-oWKGrwV4.js +0 -1
- package/dist/fetch-hy0JKSsm.js +0 -1
- package/dist/fetch-timeout-CdYxWG9w.js +0 -1
- package/dist/fetch-timeout-Cj8_oAls.js +0 -1
- package/dist/fetch-timeout-DoOI_izT.js +0 -1
- package/dist/fetch-timeout-u8g99Ax0.js +0 -1
- package/dist/format-Bn1bwJKX.js +0 -1
- package/dist/format-Ce7I7s-k.js +0 -1
- package/dist/format-duration-C8AzNqKh.js +0 -1
- package/dist/format-duration-D5AMtmHa.js +0 -1
- package/dist/format-relative-B9pSIdGe.js +0 -1
- package/dist/format-relative-DkMjYy7z.js +0 -1
- package/dist/frontmatter-BkZkwkVO.js +0 -1
- package/dist/frontmatter-C7mzDNxd.js +0 -1
- package/dist/frontmatter-CzpfPBFl.js +0 -1
- package/dist/{gateway-cli-DBjTjdhJ.js → gateway-cli-BMmU2dsG.js} +1 -2
- package/dist/{gateway-cli-B-AX4-uD.js → gateway-cli-Kp-caOwI.js} +1 -2
- package/dist/gateway-install-token-Dt7hDXoR.js +0 -1
- package/dist/gateway-install-token-cSJrfU_1.js +0 -1
- package/dist/gateway-rpc-C78PzdZR.js +0 -1
- package/dist/gateway-rpc-CecloWA1.js +0 -1
- package/dist/github-copilot-token-C79yeDKS.js +0 -1
- package/dist/github-copilot-token-DGYAlOmV.js +0 -1
- package/dist/github-copilot-token-DePP-lIf.js +0 -1
- package/dist/github-copilot-token-wm6mbypz.js +0 -1
- package/dist/gmail-setup-utils-CYOH3zzx.js +0 -1
- package/dist/gmail-setup-utils-S-MyEGuj.js +0 -1
- package/dist/group-access-BHKVOhrj.js +0 -1
- package/dist/group-access-D2DOYMfr.js +0 -1
- package/dist/health-B_-ZE5FK.js +0 -1
- package/dist/health-CIZFVJEG.js +0 -1
- package/dist/health-format-B1nj3Wfn.js +0 -1
- package/dist/health-format-VBr6LEpt.js +0 -1
- package/dist/heartbeat-visibility-BQ_esv2m.js +0 -1
- package/dist/heartbeat-visibility-q74UdY8O.js +0 -1
- package/dist/help-format-B4aEI7V9.js +0 -1
- package/dist/help-format-BRbF_INg.js +0 -1
- package/dist/helpers-COz1ghcB.js +0 -1
- package/dist/helpers-Cp8gcO6u.js +0 -1
- package/dist/hooks-cli-BoxAnC-E.js +0 -1
- package/dist/hooks-cli-CnCOjVv0.js +0 -1
- package/dist/hooks-status-BHt-Xvh4.js +0 -1
- package/dist/hooks-status-CRJ4J0ZW.js +0 -1
- package/dist/image-BBO-0uLG.js +0 -1
- package/dist/image-BP1cfEh1.js +0 -1
- package/dist/image-BVbOr9yV.js +0 -1
- package/dist/image-CcsuUB1B.js +0 -1
- package/dist/index.js +1 -2
- package/dist/inspect-BKV-I1UE.js +0 -1
- package/dist/inspect-z59cgmYc.js +0 -1
- package/dist/install-safe-path-C6kc_8NW.js +0 -1
- package/dist/install-safe-path-iesxijn2.js +0 -1
- package/dist/installs-CKzq-YqL.js +0 -1
- package/dist/installs-DzSskdtJ.js +0 -1
- package/dist/ipv4-B05QVStj.js +0 -1
- package/dist/ipv4-SeeyR-DH.js +0 -1
- package/dist/ir-B7mdG27k.js +0 -1
- package/dist/ir-BTfsA9Dd.js +0 -1
- package/dist/ir-CNTx85qV.js +0 -1
- package/dist/ir-DdjufzKF.js +0 -1
- package/dist/is-main-DG5ueqhF.js +0 -1
- package/dist/issue-format-BtMzMXtZ.js +0 -1
- package/dist/issue-format-CN9PHzXY.js +0 -1
- package/dist/kill-tree-D6nPx1_o.js +0 -1
- package/dist/lifecycle-core-B1nrgJCw.js +0 -1
- package/dist/lifecycle-core-D_LWJeD_.js +0 -1
- package/dist/line/accounts.js +0 -1
- package/dist/line/send.js +0 -1
- package/dist/line/template-messages.js +0 -1
- package/dist/links-CBnmRP9D.js +0 -1
- package/dist/links-CySwdMcF.js +0 -1
- package/dist/llm-slug-generator.js +0 -1
- package/dist/load-options-BsOW74dp.js +0 -1
- package/dist/load-options-C7dLuybp.js +0 -1
- package/dist/load-options-DV4j6Aqb.js +0 -1
- package/dist/load-options-Dwt0CeEg.js +0 -1
- package/dist/local-roots-aA-4ohTq.js +0 -1
- package/dist/logger-5W0OocJW.js +0 -1
- package/dist/logger-Bl8URnrW.js +0 -1
- package/dist/logger-DwWqfo66.js +0 -1
- package/dist/logger-kQAOe3qp.js +0 -1
- package/dist/logging-B7XHbCNn.js +0 -1
- package/dist/logging-CbMVr2MA.js +0 -1
- package/dist/login-BGLWiksP.js +0 -1
- package/dist/login-CcYeF5T_.js +0 -1
- package/dist/login-DSZdCiDx.js +0 -1
- package/dist/login-DWZzj-P1.js +0 -1
- package/dist/login-qr-BGpGVMES.js +0 -1
- package/dist/login-qr-BUdgvi3v.js +0 -1
- package/dist/login-qr-Bx8skPB-.js +0 -1
- package/dist/login-qr-DYUCmP-W.js +0 -1
- package/dist/login-qr-_79eoRb4.js +0 -1
- package/dist/logs-cli-C52caOop.js +0 -1
- package/dist/logs-cli-Ch50TE-J.js +0 -1
- package/dist/manager-CI6O4QH6.js +0 -1
- package/dist/manager-CN_rQm1L.js +0 -1
- package/dist/manager-CxZRoQkE.js +0 -1
- package/dist/manager-iFi--Fru.js +0 -1
- package/dist/memory-cli-BouV_wyL.js +0 -1
- package/dist/memory-cli-C8fBBPgv.js +0 -1
- package/dist/model-catalog-D-hkNWin.js +0 -1
- package/dist/model-catalog-mt0IcDfR.js +0 -1
- package/dist/model-param-b-B0r2cPDw.js +0 -1
- package/dist/model-param-b-BqIr5rY5.js +0 -1
- package/dist/model-picker-BB0Zdvyu.js +0 -1
- package/dist/model-picker-DeiWyW0N.js +0 -1
- package/dist/model-selection-BLbnMb5E.js +0 -1
- package/dist/model-selection-D7mdJmGK.js +0 -1
- package/dist/model-selection-DvekK9rZ.js +0 -1
- package/dist/models-BBYqej07.js +0 -1
- package/dist/models-cli-CMMhnlHo.js +0 -1
- package/dist/models-cli-CqbDyDn2.js +0 -1
- package/dist/models-config-BlQ39qlq.js +0 -1
- package/dist/models-config-DZzS67GS.js +0 -1
- package/dist/mutable-allowlist-detectors-C4rNVag8.js +0 -1
- package/dist/mutable-allowlist-detectors-CL0qe54J.js +0 -1
- package/dist/node-cli-Bzu1efMB.js +0 -1
- package/dist/node-cli-Dv-Eib4o.js +0 -1
- package/dist/node-command-policy-D9yZu9zq.js +0 -1
- package/dist/node-command-policy-DyWp3Bjz.js +0 -1
- package/dist/node-commands-8GBOiktk.js +0 -1
- package/dist/node-commands-DdkziOTx.js +0 -1
- package/dist/node-resolve-B3BJbmQX.js +0 -1
- package/dist/node-resolve-DLZf3-1V.js +0 -1
- package/dist/node-service-BRfrNp8l.js +0 -1
- package/dist/node-service-C0bl7jcZ.js +0 -1
- package/dist/node-shell-BVZylVP6.js +0 -1
- package/dist/nodes-cli-B3aNQG30.js +0 -1
- package/dist/nodes-cli-DzO6PSFw.js +0 -1
- package/dist/nodes-screen-8nRBsfID.js +0 -1
- package/dist/note-D4GAwgha.js +0 -1
- package/dist/note-Dp-d_utk.js +0 -1
- package/dist/npm-pack-install-B23L-AtF.js +0 -1
- package/dist/npm-pack-install-C0te3Oap.js +0 -1
- package/dist/npm-resolution--_-0q2ks.js +0 -1
- package/dist/npm-resolution-CBlwQq3a.js +0 -1
- package/dist/oauth-env-DAamJ1oz.js +0 -1
- package/dist/oauth-env-DSLBTWb1.js +0 -1
- package/dist/oauth-tls-preflight-BSBRDIfC.js +0 -1
- package/dist/oauth-tls-preflight-ByNjbUR5.js +0 -1
- package/dist/ollama-setup-CGuyH3Ey.js +0 -1
- package/dist/ollama-setup-LVRPefmV.js +0 -1
- package/dist/{onboard-DMmLqys5.js → onboard-DZG0HnuP.js} +1 -2
- package/dist/{onboard-C2Ofvb_A.js → onboard-DlCEww7K.js} +1 -2
- package/dist/onboard-channels-BDMtq3ex.js +0 -1
- package/dist/onboard-channels-BO3AN_eA.js +0 -1
- package/dist/onboard-config-B7U20YRw.js +0 -1
- package/dist/onboard-config-DS9dUv8M.js +0 -1
- package/dist/onboard-custom--OylwoHQ.js +0 -1
- package/dist/onboard-custom-_Df_ciX2.js +0 -1
- package/dist/onboard-helpers-D90u4wVK.js +0 -1
- package/dist/onboard-helpers-DOlI17Ac.js +0 -1
- package/dist/onboard-hooks-CERzXObm.js +0 -1
- package/dist/onboard-hooks-gQ3sxBNi.js +0 -1
- package/dist/onboard-provider-auth-flags-CqbipO7D.js +0 -1
- package/dist/onboard-provider-auth-flags-Dvwzdz37.js +0 -1
- package/dist/onboard-remote-B1-SlmUN.js +0 -1
- package/dist/onboard-remote-C7Eg49Uf.js +0 -1
- package/dist/onboard-search-f2tJD4hg.js +0 -1
- package/dist/onboard-search-fslKKhyg.js +0 -1
- package/dist/onboard-skills-DCgTr6hW.js +0 -1
- package/dist/onboard-skills-_TBzISd2.js +0 -1
- package/dist/{onboarding-C82cKKNI.js → onboarding-CxRTJCBM.js} +1 -2
- package/dist/{onboarding-M80apW9t.js → onboarding-m-m__16h.js} +1 -2
- package/dist/{onboarding.finalize-D9nrrI1J.js → onboarding.finalize-BJxMhYUa.js} +1 -2
- package/dist/{onboarding.finalize-CVvwI1Qg.js → onboarding.finalize-UiX3YmbI.js} +1 -2
- package/dist/onboarding.gateway-config-CXjzrfwL.js +0 -1
- package/dist/onboarding.gateway-config-TSq70E-S.js +0 -1
- package/dist/onboarding.secret-input-BSmFS1Px.js +0 -1
- package/dist/onboarding.secret-input-CUD0t7Pk.js +0 -1
- package/dist/openai-codex-model-default-Bx8i3bOg.js +0 -1
- package/dist/openai-codex-model-default-DuRfnfUm.js +0 -1
- package/dist/openai-model-default-Bm9b0oR0.js +0 -1
- package/dist/openai-model-default-KMCphvoO.js +0 -1
- package/dist/openclaw-exec-env-BWbOu_YC.js +0 -1
- package/dist/openclaw-root-CnsBf6ZU.js +0 -1
- package/dist/openclaw-root-D_0Q6--h.js +0 -1
- package/dist/outbound-BevYwvMh.js +0 -1
- package/dist/outbound-CqDxMWLZ.js +0 -1
- package/dist/outbound-DmwQEFu0.js +0 -1
- package/dist/outbound-attachment-9-8VNvRG.js +0 -1
- package/dist/outbound-attachment-Bah4dvuM.js +0 -1
- package/dist/outbound-attachment-CVcDBkAD.js +0 -1
- package/dist/outbound-attachment-E89zumcH.js +0 -1
- package/dist/outbound-xlG_RqEu.js +0 -1
- package/dist/pairing-cli-ByPhOBWo.js +0 -1
- package/dist/pairing-cli-CxJy8LPo.js +0 -1
- package/dist/pairing-labels-CZ-aX-up.js +0 -1
- package/dist/pairing-labels-PIuZfthz.js +0 -1
- package/dist/pairing-store-BaaVy1zB.js +0 -1
- package/dist/pairing-store-EmfFQVcs.js +0 -1
- package/dist/pairing-token-B8RdfK2y.js +0 -1
- package/dist/pairing-token-zdbQ951y.js +0 -1
- package/dist/parse-duration-XTjMKl8s.js +0 -1
- package/dist/parse-finite-number-DqzUM-_s.js +0 -1
- package/dist/parse-finite-number-dBmDLLKL.js +0 -1
- package/dist/parse-log-line-CsYLg7Qu.js +0 -1
- package/dist/parse-log-line-NV-cipB_.js +0 -1
- package/dist/parse-port-Bv1Y9Wk5.js +0 -1
- package/dist/parse-port-JVwkxcZ8.js +0 -1
- package/dist/parse-timeout-DWSGfCkQ.js +0 -1
- package/dist/parse-timeout-Dx4QnVzo.js +0 -1
- package/dist/path-alias-guards-kY_ZbWs-.js +0 -1
- package/dist/path-alias-guards-mvyLCPlN.js +0 -1
- package/dist/path-env-BPd1Yd-i.js +0 -1
- package/dist/path-env-emdAQejM.js +0 -1
- package/dist/path-safety-BukYK8Kd.js +0 -1
- package/dist/path-safety-DaaMJFdt.js +0 -1
- package/dist/paths-B4IRk3wi.js +0 -1
- package/dist/paths-BfjJY2VL.js +0 -1
- package/dist/paths-BjD3T_xq.js +0 -1
- package/dist/paths-BpQOWYiT.js +0 -1
- package/dist/paths-CChBdtE8.js +0 -1
- package/dist/paths-CrCoPIVK.js +0 -1
- package/dist/paths-piJASC5k.js +0 -1
- package/dist/paths-yLEk_25I.js +0 -1
- package/dist/pi-embedded-6yGEd2xd.js +0 -1
- package/dist/pi-embedded-X_Svd4Wi.js +0 -1
- package/dist/pi-model-discovery-BPkhPDMr.js +0 -1
- package/dist/pi-model-discovery-BonZ1N3x.js +0 -1
- package/dist/pi-model-discovery-DVKXkQTR.js +0 -1
- package/dist/pi-model-discovery-DnJkNRc-.js +0 -1
- package/dist/pi-tools.before-tool-call.runtime-2-IJ8xox.js +0 -1
- package/dist/pi-tools.before-tool-call.runtime-CNesNgq0.js +0 -1
- package/dist/pi-tools.before-tool-call.runtime-CmtITCPP.js +0 -1
- package/dist/pi-tools.before-tool-call.runtime-VUjwIYJ7.js +0 -1
- package/dist/pi-tools.policy-B6q8YOfg.js +0 -1
- package/dist/plugin-auto-enable-CTgkkJK7.js +0 -1
- package/dist/plugin-auto-enable-adba5Evb.js +0 -1
- package/dist/plugin-install-plan-BmyB3dR1.js +0 -1
- package/dist/plugin-install-plan-sIOiMBS1.js +0 -1
- package/dist/plugin-registry-CN2aCPP7.js +0 -1
- package/dist/plugin-registry-DYwEy5eM.js +0 -1
- package/dist/plugin-sdk/account-id.cjs +0 -1
- package/dist/plugin-sdk/account-id.js +0 -1
- package/dist/plugin-sdk/acpx.cjs +0 -1
- package/dist/plugin-sdk/acpx.js +0 -1
- package/dist/plugin-sdk/active-listener-B1sd5Yrr.cjs +0 -1
- package/dist/plugin-sdk/active-listener-CVvtj4nc.cjs +0 -1
- package/dist/plugin-sdk/active-listener-D0Pag-jN.js +0 -1
- package/dist/plugin-sdk/active-listener-DIzG1nGC.js +0 -1
- package/dist/plugin-sdk/active-listener-DUT4_v5r.cjs +0 -1
- package/dist/plugin-sdk/active-listener-D_Cq4Tuy.cjs +0 -1
- package/dist/plugin-sdk/active-listener-HBuXCjdG.js +0 -1
- package/dist/plugin-sdk/active-listener-V7whA3d_.js +0 -1
- package/dist/plugin-sdk/active-listener-YOWDFFGG.js +0 -1
- package/dist/plugin-sdk/active-listener-kJidH-KZ.js +0 -1
- package/dist/plugin-sdk/active-listener-kmJHqUWY.cjs +0 -1
- package/dist/plugin-sdk/active-listener-vpxSd-kW.cjs +0 -1
- package/dist/plugin-sdk/api-key-rotation-BEhJdmXN.cjs +0 -1
- package/dist/plugin-sdk/api-key-rotation-BcDAQISn.js +0 -1
- package/dist/plugin-sdk/api-key-rotation-Bua813IH.cjs +0 -1
- package/dist/plugin-sdk/api-key-rotation-C7_ooC3N.js +0 -1
- package/dist/plugin-sdk/api-key-rotation-CiFfWYgL.js +0 -1
- package/dist/plugin-sdk/api-key-rotation-CrVpqlS6.cjs +0 -1
- package/dist/plugin-sdk/api-key-rotation-D-zSLAf_.cjs +0 -1
- package/dist/plugin-sdk/api-key-rotation-DInDOH-A.js +0 -1
- package/dist/plugin-sdk/api-key-rotation-DKp72Rw4.cjs +0 -1
- package/dist/plugin-sdk/api-key-rotation-YRRtbk9Y.cjs +0 -1
- package/dist/plugin-sdk/api-key-rotation-tVSHRH8D.js +0 -1
- package/dist/plugin-sdk/api-key-rotation-ta953lKF.js +0 -1
- package/dist/plugin-sdk/audio-preflight-5ZbcO1qy.js +0 -1
- package/dist/plugin-sdk/audio-preflight-BrAX9j6r.js +0 -1
- package/dist/plugin-sdk/audio-preflight-C2NpU5hR.cjs +0 -1
- package/dist/plugin-sdk/audio-preflight-CtWGsCje.js +0 -1
- package/dist/plugin-sdk/audio-preflight-CwjNHDro.cjs +0 -1
- package/dist/plugin-sdk/audio-preflight-D22cCCmn.js +0 -1
- package/dist/plugin-sdk/audio-preflight-DyK2q8OQ.cjs +0 -1
- package/dist/plugin-sdk/audio-preflight-F7lfchEO.cjs +0 -1
- package/dist/plugin-sdk/audio-preflight-ItHD-3bi.js +0 -1
- package/dist/plugin-sdk/audio-preflight-QWsN9gcK.cjs +0 -1
- package/dist/plugin-sdk/audio-preflight-k7Qt2rDs.cjs +0 -1
- package/dist/plugin-sdk/audio-preflight-wcMT_iUA.js +0 -1
- package/dist/plugin-sdk/audio-transcription-runner-B3bLoVvU.js +0 -1
- package/dist/plugin-sdk/audio-transcription-runner-BDfW3xeJ.cjs +0 -1
- package/dist/plugin-sdk/audio-transcription-runner-BZLASCWO.cjs +0 -1
- package/dist/plugin-sdk/audio-transcription-runner-CiRKTRED.cjs +0 -1
- package/dist/plugin-sdk/audio-transcription-runner-Cxs7u0B3.cjs +0 -1
- package/dist/plugin-sdk/audio-transcription-runner-D2IxJCfd.cjs +0 -1
- package/dist/plugin-sdk/audio-transcription-runner-DA6TwXrV.cjs +0 -1
- package/dist/plugin-sdk/audio-transcription-runner-DZIEX1Rl.js +0 -1
- package/dist/plugin-sdk/audio-transcription-runner-DZRGn6-f.js +0 -1
- package/dist/plugin-sdk/audio-transcription-runner-Dc-WF6zu.js +0 -1
- package/dist/plugin-sdk/audio-transcription-runner-DuBgVmcT.js +0 -1
- package/dist/plugin-sdk/audio-transcription-runner-nKI1rQ0R.js +0 -1
- package/dist/plugin-sdk/audit-membership-runtime-7LqcvqFo.js +0 -1
- package/dist/plugin-sdk/audit-membership-runtime-BQFUzFc0.cjs +0 -1
- package/dist/plugin-sdk/audit-membership-runtime-BYtdDX9G.cjs +0 -1
- package/dist/plugin-sdk/audit-membership-runtime-BzEtBUX6.cjs +0 -1
- package/dist/plugin-sdk/audit-membership-runtime-CBUmGrl4.js +0 -1
- package/dist/plugin-sdk/audit-membership-runtime-ChlVgt2y.js +0 -1
- package/dist/plugin-sdk/audit-membership-runtime-DLRX7LR0.js +0 -1
- package/dist/plugin-sdk/audit-membership-runtime-DbJW5X3L.cjs +0 -1
- package/dist/plugin-sdk/audit-membership-runtime-Du9LAxDa.cjs +0 -1
- package/dist/plugin-sdk/audit-membership-runtime-DylNnj1m.js +0 -1
- package/dist/plugin-sdk/audit-membership-runtime-voi5sPwF.js +0 -1
- package/dist/plugin-sdk/audit-membership-runtime-yWYvSpgZ.cjs +0 -1
- package/dist/plugin-sdk/bluebubbles.cjs +0 -1
- package/dist/plugin-sdk/bluebubbles.js +0 -1
- package/dist/plugin-sdk/channel-activity--Ax2m0qQ.js +0 -1
- package/dist/plugin-sdk/channel-activity-BCsNxxNa.js +0 -1
- package/dist/plugin-sdk/channel-activity-BUieXBdg.cjs +0 -1
- package/dist/plugin-sdk/channel-activity-BXffAklf.js +0 -1
- package/dist/plugin-sdk/channel-activity-BlYTUiU4.js +0 -1
- package/dist/plugin-sdk/channel-activity-Bm-pvlXw.cjs +0 -1
- package/dist/plugin-sdk/channel-activity-Bnai3H2M.js +0 -1
- package/dist/plugin-sdk/channel-activity-CC3JLAxD.cjs +0 -1
- package/dist/plugin-sdk/channel-activity-CTmfXwYn.cjs +0 -1
- package/dist/plugin-sdk/channel-activity-D98aY9ZF.js +0 -1
- package/dist/plugin-sdk/channel-activity-DymcGybX.cjs +0 -1
- package/dist/plugin-sdk/channel-activity-gZBQEyOK.cjs +0 -1
- package/dist/plugin-sdk/channel-web-B795Ild9.cjs +0 -1
- package/dist/plugin-sdk/channel-web-Bg8DNyeb.js +0 -1
- package/dist/plugin-sdk/channel-web-CW42ALB5.cjs +0 -1
- package/dist/plugin-sdk/channel-web-D5zxPW-x.js +0 -1
- package/dist/plugin-sdk/command-poll-backoff-4910Mpwp.js +0 -1
- package/dist/plugin-sdk/command-poll-backoff-BLJZzV5W.cjs +0 -1
- package/dist/plugin-sdk/command-poll-backoff-CUNcN0dv.cjs +0 -1
- package/dist/plugin-sdk/command-poll-backoff-Cww_r-24.js +0 -1
- package/dist/plugin-sdk/command-poll-backoff-D0lJhquZ.js +0 -1
- package/dist/plugin-sdk/command-poll-backoff-Glwt3wHa.cjs +0 -1
- package/dist/plugin-sdk/commands-registry-BIGWymiv.cjs +0 -1
- package/dist/plugin-sdk/commands-registry-Bnadsir-.cjs +0 -1
- package/dist/plugin-sdk/commands-registry-C1Gb98lg.js +0 -1
- package/dist/plugin-sdk/commands-registry-CZcNTwNs.js +0 -1
- package/dist/plugin-sdk/commands-registry-CeJQPXIR.js +0 -1
- package/dist/plugin-sdk/commands-registry-CehvtLBA.js +0 -1
- package/dist/plugin-sdk/commands-registry-Cf8DaBmw.js +0 -1
- package/dist/plugin-sdk/commands-registry-Cfv6gDoQ.cjs +0 -1
- package/dist/plugin-sdk/commands-registry-D734s8r7.js +0 -1
- package/dist/plugin-sdk/commands-registry-DWx89vtR.cjs +0 -1
- package/dist/plugin-sdk/commands-registry-DviWu8J8.cjs +0 -1
- package/dist/plugin-sdk/commands-registry-wA0CkHGk.cjs +0 -1
- package/dist/plugin-sdk/common-BJ0tHoNJ.cjs +0 -1
- package/dist/plugin-sdk/common-CxLmdAIn.js +0 -1
- package/dist/plugin-sdk/compat.cjs +0 -1
- package/dist/plugin-sdk/compat.js +0 -1
- package/dist/plugin-sdk/config-C2-9m5-M.cjs +0 -1
- package/dist/plugin-sdk/config-Cx3SFBFW.js +0 -1
- package/dist/plugin-sdk/copilot-proxy.cjs +0 -1
- package/dist/plugin-sdk/copilot-proxy.js +0 -1
- package/dist/plugin-sdk/core.cjs +0 -1
- package/dist/plugin-sdk/core.js +0 -1
- package/dist/plugin-sdk/deliver--pOntbRC.cjs +0 -1
- package/dist/plugin-sdk/deliver-BLMe2eBS.js +0 -1
- package/dist/plugin-sdk/deliver-BcHzZPc2.js +0 -1
- package/dist/plugin-sdk/deliver-CSGTRHt1.js +0 -1
- package/dist/plugin-sdk/deliver-Cm8yUsWK.cjs +0 -1
- package/dist/plugin-sdk/deliver-DQDZRjZ0.js +0 -1
- package/dist/plugin-sdk/deliver-DRintVMn.js +0 -1
- package/dist/plugin-sdk/deliver-DehGdLxT.js +0 -1
- package/dist/plugin-sdk/deliver-EThzALwn.cjs +0 -1
- package/dist/plugin-sdk/deliver-d7VfVmTa.cjs +0 -1
- package/dist/plugin-sdk/deliver-rACJj8E9.cjs +0 -1
- package/dist/plugin-sdk/deliver-wteCze09.cjs +0 -1
- package/dist/plugin-sdk/device-pair.cjs +0 -1
- package/dist/plugin-sdk/device-pair.js +0 -1
- package/dist/plugin-sdk/diagnostic-BcBlExSy.cjs +0 -1
- package/dist/plugin-sdk/diagnostic-Bmp3zWQp.cjs +0 -1
- package/dist/plugin-sdk/diagnostic-BvrdTMl3.js +0 -1
- package/dist/plugin-sdk/diagnostic-C2jKFixS.cjs +0 -1
- package/dist/plugin-sdk/diagnostic-CSfBcIOI.js +0 -1
- package/dist/plugin-sdk/diagnostic-CYR5dxDE.cjs +0 -1
- package/dist/plugin-sdk/diagnostic-CdNZNyNv.cjs +0 -1
- package/dist/plugin-sdk/diagnostic-DE5k6C1E.js +0 -1
- package/dist/plugin-sdk/diagnostic-DMpxa640.cjs +0 -1
- package/dist/plugin-sdk/diagnostic-DSgf5Z4H.js +0 -1
- package/dist/plugin-sdk/diagnostic-DbRdunVt.js +0 -1
- package/dist/plugin-sdk/diagnostic-zCrcFAbJ.js +0 -1
- package/dist/plugin-sdk/diagnostics-otel.cjs +0 -1
- package/dist/plugin-sdk/diagnostics-otel.js +0 -1
- package/dist/plugin-sdk/diffs.cjs +0 -1
- package/dist/plugin-sdk/diffs.js +0 -1
- package/dist/plugin-sdk/discord.cjs +0 -1
- package/dist/plugin-sdk/discord.js +0 -1
- package/dist/plugin-sdk/dispatch-B13B2T1k.js +0 -1
- package/dist/plugin-sdk/dispatch-BaBcLOry.js +0 -1
- package/dist/plugin-sdk/dispatch-BlOkbw2U.js +0 -1
- package/dist/plugin-sdk/dispatch-D2Km7gvG.cjs +0 -1
- package/dist/plugin-sdk/dispatch-DAaOM5c1.cjs +0 -1
- package/dist/plugin-sdk/dispatch-DYRrW05S.js +0 -1
- package/dist/plugin-sdk/dispatch-Dap2ZPC9.js +0 -1
- package/dist/plugin-sdk/dispatch-Dl0eaYcY.cjs +0 -1
- package/dist/plugin-sdk/dispatch-_tJF5hSh.cjs +0 -1
- package/dist/plugin-sdk/dispatch-cPg1rBWu.cjs +0 -1
- package/dist/plugin-sdk/feishu.cjs +0 -1
- package/dist/plugin-sdk/feishu.js +0 -1
- package/dist/plugin-sdk/fetch-7Iq9POda.js +0 -1
- package/dist/plugin-sdk/fetch-B1GR6-u4.js +0 -1
- package/dist/plugin-sdk/fetch-B27H-XCf.js +0 -1
- package/dist/plugin-sdk/fetch-BMYDLRWo.js +0 -1
- package/dist/plugin-sdk/fetch-BN9y3kTg.cjs +0 -1
- package/dist/plugin-sdk/fetch-BVEVk5YF.js +0 -1
- package/dist/plugin-sdk/fetch-BY6lVRlY.cjs +0 -1
- package/dist/plugin-sdk/fetch-Bi8krAaT.cjs +0 -1
- package/dist/plugin-sdk/fetch-BjXhwqrE.cjs +0 -1
- package/dist/plugin-sdk/fetch-BtZY623f.js +0 -1
- package/dist/plugin-sdk/fetch-C-HRWp5R.js +0 -1
- package/dist/plugin-sdk/fetch-C3LEMysf.js +0 -1
- package/dist/plugin-sdk/fetch-CCLWsYaQ.js +0 -1
- package/dist/plugin-sdk/fetch-CZewCAvu.cjs +0 -1
- package/dist/plugin-sdk/fetch-ClKErpni.cjs +0 -1
- package/dist/plugin-sdk/fetch-DBRI0sKI.js +0 -1
- package/dist/plugin-sdk/fetch-DQxuOB8o.cjs +0 -1
- package/dist/plugin-sdk/fetch-DUMEaqum.cjs +0 -1
- package/dist/plugin-sdk/fetch-DpwR_cJU.cjs +0 -1
- package/dist/plugin-sdk/fetch-J0IzopiJ.js +0 -1
- package/dist/plugin-sdk/fetch-guard-7tObWdgY.cjs +0 -1
- package/dist/plugin-sdk/fetch-guard-ACKeLHgB.js +0 -1
- package/dist/plugin-sdk/fetch-guard-BI5z5sCg.cjs +0 -1
- package/dist/plugin-sdk/fetch-guard-BUOtcki7.cjs +0 -1
- package/dist/plugin-sdk/fetch-guard-BZi5e63X.js +0 -1
- package/dist/plugin-sdk/fetch-guard-CVnIQ0nI.cjs +0 -1
- package/dist/plugin-sdk/fetch-guard-DKS4LY4o.js +0 -1
- package/dist/plugin-sdk/fetch-guard-DcAQBHbg.cjs +0 -1
- package/dist/plugin-sdk/fetch-guard-Dj-DlPBS.cjs +0 -1
- package/dist/plugin-sdk/fetch-guard-Dm1nAvhl.js +0 -1
- package/dist/plugin-sdk/fetch-guard-GfhPo1Fa.js +0 -1
- package/dist/plugin-sdk/fetch-guard-nFWUH1s9.js +0 -1
- package/dist/plugin-sdk/fetch-lw-aF17e.cjs +0 -1
- package/dist/plugin-sdk/fetch-timeout-6oZsqWxA.js +0 -1
- package/dist/plugin-sdk/fetch-timeout-BygUD0rd.cjs +0 -1
- package/dist/plugin-sdk/fetch-timeout-CLw1U7VS.js +0 -1
- package/dist/plugin-sdk/fetch-timeout-CX1w-9p4.cjs +0 -1
- package/dist/plugin-sdk/fetch-timeout-Coc9xyC3.cjs +0 -1
- package/dist/plugin-sdk/fetch-timeout-Cz6GuU_c.js +0 -1
- package/dist/plugin-sdk/fetch-timeout-DC8T2JCr.js +0 -1
- package/dist/plugin-sdk/fetch-timeout-DFDmks9T.cjs +0 -1
- package/dist/plugin-sdk/fetch-timeout-DkYpp08Q.js +0 -1
- package/dist/plugin-sdk/github-copilot-token-BHdMLLqf.cjs +0 -1
- package/dist/plugin-sdk/github-copilot-token-Bt4PduRB.js +0 -1
- package/dist/plugin-sdk/github-copilot-token-C1O2cBqk.cjs +0 -1
- package/dist/plugin-sdk/github-copilot-token-C1hiDugd.js +0 -1
- package/dist/plugin-sdk/github-copilot-token-C8j8_NjX.js +0 -1
- package/dist/plugin-sdk/github-copilot-token-CCrgp2py.cjs +0 -1
- package/dist/plugin-sdk/github-copilot-token-DoHgkI2r.cjs +0 -1
- package/dist/plugin-sdk/github-copilot-token-N8vnLZPw.js +0 -1
- package/dist/plugin-sdk/github-copilot-token-TMkfxxD2.cjs +0 -1
- package/dist/plugin-sdk/github-copilot-token-vKAKX6iE.js +0 -1
- package/dist/plugin-sdk/github-copilot-token-ylX_gawo.js +0 -1
- package/dist/plugin-sdk/github-copilot-token-zskwAEpd.cjs +0 -1
- package/dist/plugin-sdk/google-gemini-cli-auth.cjs +0 -1
- package/dist/plugin-sdk/google-gemini-cli-auth.js +0 -1
- package/dist/plugin-sdk/googlechat.cjs +0 -1
- package/dist/plugin-sdk/googlechat.js +0 -1
- package/dist/plugin-sdk/image-BLG2OrjE.cjs +0 -1
- package/dist/plugin-sdk/image-BPUmI-kx.cjs +0 -1
- package/dist/plugin-sdk/image-Bt_w0o87.js +0 -1
- package/dist/plugin-sdk/image-CMeyJO2-.js +0 -1
- package/dist/plugin-sdk/image-CMiT6Fvk.cjs +0 -1
- package/dist/plugin-sdk/image-CNMuTe0Z.js +0 -1
- package/dist/plugin-sdk/image-CO9zxV0G.js +0 -1
- package/dist/plugin-sdk/image-CjVyB61p.cjs +0 -1
- package/dist/plugin-sdk/image-CkWikcPf.cjs +0 -1
- package/dist/plugin-sdk/image-Dk2gzO1U.js +0 -1
- package/dist/plugin-sdk/image-Jmj-a1pv.js +0 -1
- package/dist/plugin-sdk/image-UKq4Bn2r.cjs +0 -1
- package/dist/plugin-sdk/imessage.cjs +0 -1
- package/dist/plugin-sdk/imessage.js +0 -1
- package/dist/plugin-sdk/index.cjs +0 -1
- package/dist/plugin-sdk/index.js +0 -1
- package/dist/plugin-sdk/ir-Bg_avpt0.cjs +0 -1
- package/dist/plugin-sdk/ir-BiiaNbB9.cjs +0 -1
- package/dist/plugin-sdk/ir-CYJPM1_I.cjs +0 -1
- package/dist/plugin-sdk/ir-Ca3EdqFl.js +0 -1
- package/dist/plugin-sdk/ir-Cl_S_VBR.cjs +0 -1
- package/dist/plugin-sdk/ir-Cq7b_9v8.cjs +0 -1
- package/dist/plugin-sdk/ir-DcWa7gsX.cjs +0 -1
- package/dist/plugin-sdk/ir-DdA08iXJ.js +0 -1
- package/dist/plugin-sdk/ir-DqBwrJJd.js +0 -1
- package/dist/plugin-sdk/ir-EUD0qDem.js +0 -1
- package/dist/plugin-sdk/ir-c1MS26Ci.js +0 -1
- package/dist/plugin-sdk/ir-vhCxHELh.js +0 -1
- package/dist/plugin-sdk/irc.cjs +0 -1
- package/dist/plugin-sdk/irc.js +0 -1
- package/dist/plugin-sdk/keyed-async-queue.cjs +0 -1
- package/dist/plugin-sdk/keyed-async-queue.js +0 -1
- package/dist/plugin-sdk/line.cjs +0 -1
- package/dist/plugin-sdk/line.js +0 -1
- package/dist/plugin-sdk/llm-task.cjs +0 -1
- package/dist/plugin-sdk/llm-task.js +0 -1
- package/dist/plugin-sdk/load-options-B9Ss5YOO.js +0 -1
- package/dist/plugin-sdk/load-options-BOfn6Zgo.cjs +0 -1
- package/dist/plugin-sdk/load-options-BXvm8HVv.js +0 -1
- package/dist/plugin-sdk/load-options-Bb7u8yZz.cjs +0 -1
- package/dist/plugin-sdk/load-options-BcSg1ODN.js +0 -1
- package/dist/plugin-sdk/load-options-NqnXJ-Nh.cjs +0 -1
- package/dist/plugin-sdk/lobster.cjs +0 -1
- package/dist/plugin-sdk/lobster.js +0 -1
- package/dist/plugin-sdk/local-roots-2OcKjfzk.js +0 -1
- package/dist/plugin-sdk/local-roots-ByrRvVBc.cjs +0 -1
- package/dist/plugin-sdk/local-roots-CXPxvx0J.js +0 -1
- package/dist/plugin-sdk/local-roots-CzbssMW1.cjs +0 -1
- package/dist/plugin-sdk/local-roots-DIijr8mK.cjs +0 -1
- package/dist/plugin-sdk/local-roots-DRv9Y_41.cjs +0 -1
- package/dist/plugin-sdk/local-roots-DTC7BJct.js +0 -1
- package/dist/plugin-sdk/local-roots-DU8RuiRi.js +0 -1
- package/dist/plugin-sdk/local-roots-DprQ5M3b.js +0 -1
- package/dist/plugin-sdk/local-roots-GqNj3vMl.cjs +0 -1
- package/dist/plugin-sdk/local-roots-I2icTm2P.cjs +0 -1
- package/dist/plugin-sdk/local-roots-qEhx-D42.js +0 -1
- package/dist/plugin-sdk/logger-6O6OsYBL.cjs +0 -1
- package/dist/plugin-sdk/logger-BlddiV_d.cjs +0 -1
- package/dist/plugin-sdk/logger-Bm93ZKOk.cjs +0 -1
- package/dist/plugin-sdk/logger-BtrWb0dj.js +0 -1
- package/dist/plugin-sdk/logger-C210xuWx.js +0 -1
- package/dist/plugin-sdk/logger-DJGHvDbX.js +0 -1
- package/dist/plugin-sdk/logger-DPlqYkRm.cjs +0 -1
- package/dist/plugin-sdk/logger-DUYnS-W3.cjs +0 -1
- package/dist/plugin-sdk/logger-DwWqfo66.js +0 -1
- package/dist/plugin-sdk/logger-vBDTZWl3.js +0 -1
- package/dist/plugin-sdk/login-0ui1gfZM.cjs +0 -1
- package/dist/plugin-sdk/login-B0lIdwss.cjs +0 -1
- package/dist/plugin-sdk/login-B43p990Y.cjs +0 -1
- package/dist/plugin-sdk/login-DHBcWg4R.cjs +0 -1
- package/dist/plugin-sdk/login-DUCNg4lV.js +0 -1
- package/dist/plugin-sdk/login-DqVo92p1.js +0 -1
- package/dist/plugin-sdk/login-Dt4KiLgP.js +0 -1
- package/dist/plugin-sdk/login-IVBk3GwG.cjs +0 -1
- package/dist/plugin-sdk/login-T6tSC1Xl.js +0 -1
- package/dist/plugin-sdk/login-XruRHZe5.js +0 -1
- package/dist/plugin-sdk/login-p9hWVYO6.cjs +0 -1
- package/dist/plugin-sdk/login-qr-B4wf-15u.js +0 -1
- package/dist/plugin-sdk/login-qr-BQMm3yV_.cjs +0 -1
- package/dist/plugin-sdk/login-qr-BreyhXFQ.cjs +0 -1
- package/dist/plugin-sdk/login-qr-C6RPK8ld.js +0 -1
- package/dist/plugin-sdk/login-qr-C6cQueYq.js +0 -1
- package/dist/plugin-sdk/login-qr-CxznBK7s.cjs +0 -1
- package/dist/plugin-sdk/login-qr-D0dmb3Gr.js +0 -1
- package/dist/plugin-sdk/login-qr-DWW1FC-n.cjs +0 -1
- package/dist/plugin-sdk/login-qr-DjC-P7Vy.cjs +0 -1
- package/dist/plugin-sdk/login-qr-KeBTY1Mb.js +0 -1
- package/dist/plugin-sdk/login-qr-gQsVZ8en.js +0 -1
- package/dist/plugin-sdk/login-qr-xkqmSKC8.cjs +0 -1
- package/dist/plugin-sdk/login-x9vN5UnR.js +0 -1
- package/dist/plugin-sdk/manager-B38IH03I.cjs +0 -1
- package/dist/plugin-sdk/manager-BZVFXygg.cjs +0 -1
- package/dist/plugin-sdk/manager-BuNveORY.cjs +0 -1
- package/dist/plugin-sdk/manager-C4FEmxjq.cjs +0 -1
- package/dist/plugin-sdk/manager-CHnzSMNG.js +0 -1
- package/dist/plugin-sdk/manager-CN4wiVFz.js +0 -1
- package/dist/plugin-sdk/manager-D9RwKYCX.js +0 -1
- package/dist/plugin-sdk/manager-DAmjm61U.cjs +0 -1
- package/dist/plugin-sdk/manager-DJSpJkev.js +0 -1
- package/dist/plugin-sdk/manager-EO7deQzm.js +0 -1
- package/dist/plugin-sdk/manager-vyHAgafh.cjs +0 -1
- package/dist/plugin-sdk/manager-zyDhj7B-.js +0 -1
- package/dist/plugin-sdk/matrix.cjs +0 -1
- package/dist/plugin-sdk/matrix.js +0 -1
- package/dist/plugin-sdk/mattermost.cjs +0 -1
- package/dist/plugin-sdk/mattermost.js +0 -1
- package/dist/plugin-sdk/memory-core.cjs +0 -1
- package/dist/plugin-sdk/memory-core.js +0 -1
- package/dist/plugin-sdk/minimax-portal-auth.cjs +0 -1
- package/dist/plugin-sdk/minimax-portal-auth.js +0 -1
- package/dist/plugin-sdk/model-auth-1RA9nkQH.js +0 -1
- package/dist/plugin-sdk/model-auth-Cgqd2_sP.cjs +0 -1
- package/dist/plugin-sdk/model-auth-Cp2GSJwZ.js +0 -1
- package/dist/plugin-sdk/model-auth-Lv74A-Si.cjs +0 -1
- package/dist/plugin-sdk/model-auth-RI6NYvTO.js +0 -1
- package/dist/plugin-sdk/model-auth-exDkzEDR.js +0 -1
- package/dist/plugin-sdk/model-auth-igOM3blS.cjs +0 -1
- package/dist/plugin-sdk/model-auth-sjKLUCCz.cjs +0 -1
- package/dist/plugin-sdk/model-selection-C9HlFaXF.js +0 -1
- package/dist/plugin-sdk/model-selection-DpGE9eNM.cjs +0 -1
- package/dist/plugin-sdk/msteams.cjs +0 -1
- package/dist/plugin-sdk/msteams.js +0 -1
- package/dist/plugin-sdk/nextcloud-talk.cjs +0 -1
- package/dist/plugin-sdk/nextcloud-talk.js +0 -1
- package/dist/plugin-sdk/nostr.cjs +0 -1
- package/dist/plugin-sdk/nostr.js +0 -1
- package/dist/plugin-sdk/outbound-BO0tyeUH.js +0 -1
- package/dist/plugin-sdk/outbound-BYU5HTrX.js +0 -1
- package/dist/plugin-sdk/outbound-CBVlxGRf.cjs +0 -1
- package/dist/plugin-sdk/outbound-CTyu_gZh.js +0 -1
- package/dist/plugin-sdk/outbound-CwWXHNwp.cjs +0 -1
- package/dist/plugin-sdk/outbound-CySyQcmE.js +0 -1
- package/dist/plugin-sdk/outbound-DDPxEpHH.cjs +0 -1
- package/dist/plugin-sdk/outbound-DZhl7sHt.cjs +0 -1
- package/dist/plugin-sdk/outbound-DmeUAXdA.js +0 -1
- package/dist/plugin-sdk/outbound-DvFQ_6wQ.cjs +0 -1
- package/dist/plugin-sdk/outbound-Dy87UlCV.cjs +0 -1
- package/dist/plugin-sdk/outbound-attachment-5H1iYkTb.js +0 -1
- package/dist/plugin-sdk/outbound-attachment-BAHrn3r7.cjs +0 -1
- package/dist/plugin-sdk/outbound-attachment-BBJPbiLF.cjs +0 -1
- package/dist/plugin-sdk/outbound-attachment-BIGvZREF.cjs +0 -1
- package/dist/plugin-sdk/outbound-attachment-B_OTB3A8.js +0 -1
- package/dist/plugin-sdk/outbound-attachment-C94-r948.js +0 -1
- package/dist/plugin-sdk/outbound-attachment-CJatgPbm.js +0 -1
- package/dist/plugin-sdk/outbound-attachment-CLUVyl5e.js +0 -1
- package/dist/plugin-sdk/outbound-attachment-CTR1-VEH.js +0 -1
- package/dist/plugin-sdk/outbound-attachment-CmQ0SNgK.cjs +0 -1
- package/dist/plugin-sdk/outbound-attachment-Dbja7LQF.cjs +0 -1
- package/dist/plugin-sdk/outbound-attachment-DwzJ2l3T.cjs +0 -1
- package/dist/plugin-sdk/outbound-xMr8Xsxe.js +0 -1
- package/dist/plugin-sdk/paths-BPlgbwrb.cjs +0 -1
- package/dist/plugin-sdk/paths-Bcdg3ma0.cjs +0 -1
- package/dist/plugin-sdk/paths-BpQOWYiT.js +0 -1
- package/dist/plugin-sdk/paths-BvlJvmRS.cjs +0 -1
- package/dist/plugin-sdk/paths-CIcxeNL-.cjs +0 -1
- package/dist/plugin-sdk/paths-CXgWvWAM.js +0 -1
- package/dist/plugin-sdk/paths-Chp3zwtq.cjs +0 -1
- package/dist/plugin-sdk/paths-CnHSNSeR.js +0 -1
- package/dist/plugin-sdk/paths-Cqca1YmF.cjs +0 -1
- package/dist/plugin-sdk/paths-CtrEseGU.js +0 -1
- package/dist/plugin-sdk/paths-D55o_j8-.js +0 -1
- package/dist/plugin-sdk/paths-D90l3h_o.cjs +0 -1
- package/dist/plugin-sdk/paths-DaRoqzBQ.js +0 -1
- package/dist/plugin-sdk/paths-Dd7r1qlB.cjs +0 -1
- package/dist/plugin-sdk/paths-DhSjTRMz.js +0 -1
- package/dist/plugin-sdk/paths-Do0djuaj.js +0 -1
- package/dist/plugin-sdk/paths-J4JUiRsa.js +0 -1
- package/dist/plugin-sdk/paths-cBAF6Bj0.js +0 -1
- package/dist/plugin-sdk/paths-piJASC5k.js +0 -1
- package/dist/plugin-sdk/paths-rO4ehkyU.js +0 -1
- package/dist/plugin-sdk/pi-model-discovery-5wc5qlmB.cjs +0 -1
- package/dist/plugin-sdk/pi-model-discovery-BQiHbl8F.js +0 -1
- package/dist/plugin-sdk/pi-model-discovery-BZZVGcJl.js +0 -1
- package/dist/plugin-sdk/pi-model-discovery-Ba70onAm.js +0 -1
- package/dist/plugin-sdk/pi-model-discovery-BfuqD_Rv.cjs +0 -1
- package/dist/plugin-sdk/pi-model-discovery-BsdlRK-w.js +0 -1
- package/dist/plugin-sdk/pi-model-discovery-CAYSx-Lw.cjs +0 -1
- package/dist/plugin-sdk/pi-model-discovery-CyBFRafV.cjs +0 -1
- package/dist/plugin-sdk/pi-model-discovery-D1WW5m-Q.js +0 -1
- package/dist/plugin-sdk/pi-model-discovery-DRYpUnOa.cjs +0 -1
- package/dist/plugin-sdk/pi-model-discovery-DUbDLlc7.cjs +0 -1
- package/dist/plugin-sdk/pi-model-discovery-DcUDwgMg.cjs +0 -1
- package/dist/plugin-sdk/pi-model-discovery-DrZsxLaJ.js +0 -1
- package/dist/plugin-sdk/pi-model-discovery-gaVoL7I2.js +0 -1
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-BWmteuHS.js +0 -1
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-BmznXclG.cjs +0 -1
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-BzTifHML.cjs +0 -1
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-CEPsGtJk.cjs +0 -1
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-CYleOK1-.cjs +0 -1
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-Ctbk1Pq8.js +0 -1
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-D-hwiLUl.js +0 -1
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-DDuUTLh8.js +0 -1
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-DLfogXKU.cjs +0 -1
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-Dd-VFim_.js +0 -1
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-Dvmcwf-j.cjs +0 -1
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-i-IGFbqI.js +0 -1
- package/dist/plugin-sdk/polls-BuaJuIpV.cjs +0 -1
- package/dist/plugin-sdk/polls-CBAGZuJ6.js +0 -1
- package/dist/plugin-sdk/polls-CSKMbBIS.js +0 -1
- package/dist/plugin-sdk/polls-D0wY0FvT.cjs +0 -1
- package/dist/plugin-sdk/polls-PGxiE05J.js +0 -1
- package/dist/plugin-sdk/polls-yWqSCEP0.cjs +0 -1
- package/dist/plugin-sdk/proxy-env-B765haXA.js +0 -1
- package/dist/plugin-sdk/proxy-env-Bcl14j2_.cjs +0 -1
- package/dist/plugin-sdk/proxy-env-BlrHtJWH.js +0 -1
- package/dist/plugin-sdk/proxy-env-D48qBPAr.cjs +0 -1
- package/dist/plugin-sdk/proxy-env-DGzNnnJh.js +0 -1
- package/dist/plugin-sdk/proxy-env-DQoJjkWE.cjs +0 -1
- package/dist/plugin-sdk/proxy-env-DWw9TnOj.cjs +0 -1
- package/dist/plugin-sdk/proxy-env-MEjSyzTr.js +0 -1
- package/dist/plugin-sdk/proxy-env-a590sPAz.cjs +0 -1
- package/dist/plugin-sdk/proxy-env-k93igu7v.cjs +0 -1
- package/dist/plugin-sdk/proxy-env-m9eG3uZN.js +0 -1
- package/dist/plugin-sdk/proxy-env-t6hcaFqC.js +0 -1
- package/dist/plugin-sdk/proxy-fetch-B9aXJVe-.js +0 -1
- package/dist/plugin-sdk/proxy-fetch-BaA3JYgW.cjs +0 -1
- package/dist/plugin-sdk/proxy-fetch-BwXFVsHE.cjs +0 -1
- package/dist/plugin-sdk/proxy-fetch-BzcKzknk.cjs +0 -1
- package/dist/plugin-sdk/proxy-fetch-CYVChsKE.js +0 -1
- package/dist/plugin-sdk/proxy-fetch-ClOb2LUH.js +0 -1
- package/dist/plugin-sdk/proxy-fetch-DH7VIiBH.cjs +0 -1
- package/dist/plugin-sdk/proxy-fetch-DPOhfrou.cjs +0 -1
- package/dist/plugin-sdk/proxy-fetch-DXt2R_Z5.js +0 -1
- package/dist/plugin-sdk/proxy-fetch-Del551nu.js +0 -1
- package/dist/plugin-sdk/proxy-fetch-YCVHz7Rl.js +0 -1
- package/dist/plugin-sdk/proxy-fetch-qbrYAz8k.cjs +0 -1
- package/dist/plugin-sdk/pw-ai-B9PkuA_R.cjs +0 -1
- package/dist/plugin-sdk/pw-ai-BMJV0Hqt.cjs +0 -1
- package/dist/plugin-sdk/pw-ai-BRasSDsB.js +0 -1
- package/dist/plugin-sdk/pw-ai-BY57aH_o.js +0 -1
- package/dist/plugin-sdk/pw-ai-BbpImC35.cjs +0 -1
- package/dist/plugin-sdk/pw-ai-D7d16RB-.cjs +0 -1
- package/dist/plugin-sdk/pw-ai-DF7TX5Lc.cjs +0 -1
- package/dist/plugin-sdk/pw-ai-DHN1pktj.js +0 -1
- package/dist/plugin-sdk/pw-ai-QzImh8G0.cjs +0 -1
- package/dist/plugin-sdk/pw-ai-V1CVJi48.js +0 -1
- package/dist/plugin-sdk/pw-ai-mvXkpTxf.js +0 -1
- package/dist/plugin-sdk/pw-ai-tdgA-KlG.js +0 -1
- package/dist/plugin-sdk/qmd-manager-B3xNbdye.cjs +0 -1
- package/dist/plugin-sdk/qmd-manager-BMyDNBPi.js +0 -1
- package/dist/plugin-sdk/qmd-manager-BZhiv_zq.cjs +0 -1
- package/dist/plugin-sdk/qmd-manager-C3uVDbhW.js +0 -1
- package/dist/plugin-sdk/qmd-manager-CW46NrS-.cjs +0 -1
- package/dist/plugin-sdk/qmd-manager-C_e04BNg.js +0 -1
- package/dist/plugin-sdk/qmd-manager-CczVoslK.cjs +0 -1
- package/dist/plugin-sdk/qmd-manager-CzLKqPmR.js +0 -1
- package/dist/plugin-sdk/qmd-manager-DFh8b5N-.cjs +0 -1
- package/dist/plugin-sdk/qmd-manager-DXLfZZMI.js +0 -1
- package/dist/plugin-sdk/qmd-manager-FL9fAfNo.cjs +0 -1
- package/dist/plugin-sdk/qmd-manager-fWxbGqzk.js +0 -1
- package/dist/plugin-sdk/query-expansion-0zYzKrrd.cjs +0 -1
- package/dist/plugin-sdk/query-expansion-BYSjmpkV.cjs +0 -1
- package/dist/plugin-sdk/query-expansion-CAboqtWr.js +0 -1
- package/dist/plugin-sdk/query-expansion-C_DnhmUy.js +0 -1
- package/dist/plugin-sdk/query-expansion-Cb2vnF6y.js +0 -1
- package/dist/plugin-sdk/query-expansion-DCeqywxh.cjs +0 -1
- package/dist/plugin-sdk/query-expansion-DF4LMxRQ.js +0 -1
- package/dist/plugin-sdk/query-expansion-DKJkqmNM.cjs +0 -1
- package/dist/plugin-sdk/query-expansion-DO2CFW4z.cjs +0 -1
- package/dist/plugin-sdk/query-expansion-DyCDaZbL.js +0 -1
- package/dist/plugin-sdk/query-expansion-cpXCyoDy.cjs +0 -1
- package/dist/plugin-sdk/query-expansion-r_iXkNzt.js +0 -1
- package/dist/plugin-sdk/qwen-portal-auth.cjs +0 -1
- package/dist/plugin-sdk/qwen-portal-auth.js +0 -1
- package/dist/plugin-sdk/render-6fCdtAr6.cjs +0 -1
- package/dist/plugin-sdk/render-CBsnn-2A.js +0 -1
- package/dist/plugin-sdk/render-CzHaQB0d.cjs +0 -1
- package/dist/plugin-sdk/render-DGmfCIRG.js +0 -1
- package/dist/plugin-sdk/render-DhTJXP1U.js +0 -1
- package/dist/plugin-sdk/render-Djx15dPh.js +0 -1
- package/dist/plugin-sdk/render-DxBO2Blp.cjs +0 -1
- package/dist/plugin-sdk/render-g5VlmgpF.cjs +0 -1
- package/dist/plugin-sdk/reply-73PF8kN_.js +0 -1
- package/dist/plugin-sdk/reply-JD6VIW5N.cjs +0 -1
- package/dist/plugin-sdk/resolve-outbound-target-BNv_T3Bk.js +0 -1
- package/dist/plugin-sdk/resolve-outbound-target-CDM7_xfU.cjs +0 -1
- package/dist/plugin-sdk/resolve-outbound-target-CvKfootv.js +0 -1
- package/dist/plugin-sdk/resolve-outbound-target-Fq8une1d.cjs +0 -1
- package/dist/plugin-sdk/send-0TzQg7Eo.js +0 -1
- package/dist/plugin-sdk/send-AyV5r86J.js +0 -1
- package/dist/plugin-sdk/send-B-GqqrNy.js +0 -1
- package/dist/plugin-sdk/send-B03So6fs.cjs +0 -1
- package/dist/plugin-sdk/send-B0oV0qgS.js +0 -1
- package/dist/plugin-sdk/send-B31Tjl_I.cjs +0 -1
- package/dist/plugin-sdk/send-B4LTVhTd.cjs +0 -1
- package/dist/plugin-sdk/send-BGXPpAqy.cjs +0 -1
- package/dist/plugin-sdk/send-BJ957TYU.js +0 -1
- package/dist/plugin-sdk/send-BJmf3HVn.cjs +0 -1
- package/dist/plugin-sdk/send-BW3UECzm.js +0 -1
- package/dist/plugin-sdk/send-BWEZ_8nL.cjs +0 -1
- package/dist/plugin-sdk/send-BXrh73qh.cjs +0 -1
- package/dist/plugin-sdk/send-BbudHjUi.cjs +0 -1
- package/dist/plugin-sdk/send-BkjnUdWv.cjs +0 -1
- package/dist/plugin-sdk/send-BxIt-s7G.cjs +0 -1
- package/dist/plugin-sdk/send-ByKNfU2S.js +0 -1
- package/dist/plugin-sdk/send-Bz2Loz_Q.cjs +0 -1
- package/dist/plugin-sdk/send-CAreQYLU.cjs +0 -1
- package/dist/plugin-sdk/send-CGMqeSaY.cjs +0 -1
- package/dist/plugin-sdk/send-CJmor6eC.js +0 -1
- package/dist/plugin-sdk/send-CL2pl8br.cjs +0 -1
- package/dist/plugin-sdk/send-CMeGMLko.js +0 -1
- package/dist/plugin-sdk/send-CceHBxiK.js +0 -1
- package/dist/plugin-sdk/send-Cdx_KGYb.js +0 -1
- package/dist/plugin-sdk/send-Cer1bA2g.cjs +0 -1
- package/dist/plugin-sdk/send-CimU95QQ.cjs +0 -1
- package/dist/plugin-sdk/send-CoEAieJt.cjs +0 -1
- package/dist/plugin-sdk/send-Cob_bnT32.js +0 -1
- package/dist/plugin-sdk/send-Cyp5hOpt.js +0 -1
- package/dist/plugin-sdk/send-CzEFjTpi.js +0 -1
- package/dist/plugin-sdk/send-D2LjU2py.js +0 -1
- package/dist/plugin-sdk/send-D9Gbseeh.cjs +0 -1
- package/dist/plugin-sdk/send-DIjQ2vB4.js +0 -1
- package/dist/plugin-sdk/send-DJ419AIX.cjs +0 -1
- package/dist/plugin-sdk/send-DLtYxO1e.cjs +0 -1
- package/dist/plugin-sdk/send-DMk529J8.js +0 -1
- package/dist/plugin-sdk/send-DMxohaL_.cjs +0 -1
- package/dist/plugin-sdk/send-DQlKz6Bj.js +0 -1
- package/dist/plugin-sdk/send-DTUW-YBy.js +0 -1
- package/dist/plugin-sdk/send-Dc43nN-I.js +0 -1
- package/dist/plugin-sdk/send-DcRj8DUU.cjs +0 -1
- package/dist/plugin-sdk/send-DmxxJFZd.cjs +0 -1
- package/dist/plugin-sdk/send-DnwN1vBU.cjs +0 -1
- package/dist/plugin-sdk/send-DogBiU4n.cjs +0 -1
- package/dist/plugin-sdk/send-MEvv6c7w.js +0 -1
- package/dist/plugin-sdk/send-TRwokuAm.cjs +0 -1
- package/dist/plugin-sdk/send-VUSa_wkg.js +0 -1
- package/dist/plugin-sdk/send-X1b7Cj9U.cjs +0 -1
- package/dist/plugin-sdk/send-XX5rP5bI.js +0 -1
- package/dist/plugin-sdk/send-_ZGBA2sz.js +0 -1
- package/dist/plugin-sdk/send-d5RoIkxA.js +0 -1
- package/dist/plugin-sdk/send-dCbQnCLx.js +0 -1
- package/dist/plugin-sdk/send-gSV6SR6F.cjs +0 -1
- package/dist/plugin-sdk/send-pC6ctwfQ.cjs +0 -1
- package/dist/plugin-sdk/send-pq2hNOwv.cjs +0 -1
- package/dist/plugin-sdk/send-q6C-1cdJ.js +0 -1
- package/dist/plugin-sdk/send-vnIJSD5l.js +0 -1
- package/dist/plugin-sdk/send-vtYROJNd.js +0 -1
- package/dist/plugin-sdk/send-wk_Y38Eq.js +0 -1
- package/dist/plugin-sdk/session-BSLJWzVk.cjs +0 -1
- package/dist/plugin-sdk/session-BfWC0c92.js +0 -1
- package/dist/plugin-sdk/session-BjsaXe-G.js +0 -1
- package/dist/plugin-sdk/session-C20nSfk5.cjs +0 -1
- package/dist/plugin-sdk/session-CR8fsPgs.js +0 -1
- package/dist/plugin-sdk/session-CwinrWG4.cjs +0 -1
- package/dist/plugin-sdk/session-DAtRSLdw.cjs +0 -1
- package/dist/plugin-sdk/session-Djo63EGV.cjs +0 -1
- package/dist/plugin-sdk/session-EJZkCm6l.js +0 -1
- package/dist/plugin-sdk/session-UIRgeq02.cjs +0 -1
- package/dist/plugin-sdk/session-aOZKTEyZ.js +0 -1
- package/dist/plugin-sdk/session-nUw21fi0.js +0 -1
- package/dist/plugin-sdk/sessions-B06a3AKE.js +0 -1
- package/dist/plugin-sdk/sessions-BmhjMXlm.cjs +0 -1
- package/dist/plugin-sdk/signal.cjs +0 -1
- package/dist/plugin-sdk/signal.js +0 -1
- package/dist/plugin-sdk/skill-commands-2LXH0aZR.cjs +0 -1
- package/dist/plugin-sdk/skill-commands-B4AbCkKe.cjs +0 -1
- package/dist/plugin-sdk/skill-commands-B_xNpuH_.cjs +0 -1
- package/dist/plugin-sdk/skill-commands-BbAfKA1R.js +0 -1
- package/dist/plugin-sdk/skill-commands-BcKIgHAP.cjs +0 -1
- package/dist/plugin-sdk/skill-commands-C9g2UiKr.cjs +0 -1
- package/dist/plugin-sdk/skill-commands-CPZ9Jvbj.js +0 -1
- package/dist/plugin-sdk/skill-commands-CgDUjb3J.js +0 -1
- package/dist/plugin-sdk/skill-commands-D83BLBEG.js +0 -1
- package/dist/plugin-sdk/skill-commands-DI1TMUxQ.js +0 -1
- package/dist/plugin-sdk/skill-commands-DldIiKD1.js +0 -1
- package/dist/plugin-sdk/skill-commands-LCW6nWWC.cjs +0 -1
- package/dist/plugin-sdk/slack.cjs +0 -1
- package/dist/plugin-sdk/slack.js +0 -1
- package/dist/plugin-sdk/synology-chat.cjs +0 -1
- package/dist/plugin-sdk/synology-chat.js +0 -1
- package/dist/plugin-sdk/tables-BXY1ms0X.js +0 -1
- package/dist/plugin-sdk/tables-BlhpY72l.cjs +0 -1
- package/dist/plugin-sdk/tables-BltHUi44.cjs +0 -1
- package/dist/plugin-sdk/tables-Bp6t_Jkb.js +0 -1
- package/dist/plugin-sdk/tables-BszYJkqX.cjs +0 -1
- package/dist/plugin-sdk/tables-CAZJt5bp.js +0 -1
- package/dist/plugin-sdk/tables-CcuiVH-P.cjs +0 -1
- package/dist/plugin-sdk/tables-CuSMtUxt.cjs +0 -1
- package/dist/plugin-sdk/tables-DOLEnfD6.js +0 -1
- package/dist/plugin-sdk/tables-DiiF7bbj.cjs +0 -1
- package/dist/plugin-sdk/tables-aSJP6Sef.js +0 -1
- package/dist/plugin-sdk/tables-ib4GZqYB.js +0 -1
- package/dist/plugin-sdk/target-errors--anbEDnm.js +0 -1
- package/dist/plugin-sdk/target-errors-4q9SUsM_.js +0 -1
- package/dist/plugin-sdk/target-errors-BFOTHcjO.js +0 -1
- package/dist/plugin-sdk/target-errors-Bw4tI2Lc.cjs +0 -1
- package/dist/plugin-sdk/target-errors-CAgwWHUv.js +0 -1
- package/dist/plugin-sdk/target-errors-CUDKM0z-.js +0 -1
- package/dist/plugin-sdk/target-errors-DIOJ6Eun.cjs +0 -1
- package/dist/plugin-sdk/target-errors-DnZq9h4B.cjs +0 -1
- package/dist/plugin-sdk/target-errors-DwAKh8KU.cjs +0 -1
- package/dist/plugin-sdk/target-errors-QGzfLvuU.cjs +0 -1
- package/dist/plugin-sdk/targets-BSc11Uk8.cjs +0 -1
- package/dist/plugin-sdk/targets-BSkiizml.js +0 -1
- package/dist/plugin-sdk/targets-CBI0xqve.cjs +0 -1
- package/dist/plugin-sdk/targets-CL5fYQi7.js +0 -1
- package/dist/plugin-sdk/targets-CUZWrFrm.cjs +0 -1
- package/dist/plugin-sdk/targets-CVEYTFPQ.js +0 -1
- package/dist/plugin-sdk/targets-Co2R6K14.cjs +0 -1
- package/dist/plugin-sdk/targets-CrkJkzil.js +0 -1
- package/dist/plugin-sdk/targets-D-m7SV9x.cjs +0 -1
- package/dist/plugin-sdk/targets-D8HTxbo4.js +0 -1
- package/dist/plugin-sdk/targets-DcGNB9nk.cjs +0 -1
- package/dist/plugin-sdk/targets-Dn9gDiEw.js +0 -1
- package/dist/plugin-sdk/targets-X28mff4s.cjs +0 -1
- package/dist/plugin-sdk/targets-uycXZ8vQ.js +0 -1
- package/dist/plugin-sdk/telegram.cjs +0 -1
- package/dist/plugin-sdk/telegram.js +0 -1
- package/dist/plugin-sdk/test-utils.cjs +0 -1
- package/dist/plugin-sdk/test-utils.js +0 -1
- package/dist/plugin-sdk/tlon.cjs +0 -1
- package/dist/plugin-sdk/tlon.js +0 -1
- package/dist/plugin-sdk/tokens-AAdZjj0M.js +0 -1
- package/dist/plugin-sdk/tokens-B20KNIDD.js +0 -1
- package/dist/plugin-sdk/tokens-B8ys7Q2e.js +0 -1
- package/dist/plugin-sdk/tokens-BPc1fcZ3.js +0 -1
- package/dist/plugin-sdk/tokens-BqABmXSe.js +0 -1
- package/dist/plugin-sdk/tokens-CXsPDJTr.cjs +0 -1
- package/dist/plugin-sdk/tokens-CnB4dJmp.cjs +0 -1
- package/dist/plugin-sdk/tokens-CytSl1X8.cjs +0 -1
- package/dist/plugin-sdk/tokens-DgPZk2Uu.js +0 -1
- package/dist/plugin-sdk/tokens-Dq2wDF3_.cjs +0 -1
- package/dist/plugin-sdk/tokens-DtrljGtQ.cjs +0 -1
- package/dist/plugin-sdk/tokens-g5KWvWhD.cjs +0 -1
- package/dist/plugin-sdk/twitch.cjs +0 -1
- package/dist/plugin-sdk/twitch.js +0 -1
- package/dist/plugin-sdk/utils-BJtJR72k.js +0 -1
- package/dist/plugin-sdk/utils-PPIvU9qw.cjs +0 -1
- package/dist/plugin-sdk/voice-call.cjs +0 -1
- package/dist/plugin-sdk/voice-call.js +0 -1
- package/dist/plugin-sdk/web--8MBOleK.js +0 -1
- package/dist/plugin-sdk/web-B7d3p3kx.cjs +0 -1
- package/dist/plugin-sdk/web-BEuW8Yqw.js +0 -1
- package/dist/plugin-sdk/web-Bg2LIMdb.cjs +0 -1
- package/dist/plugin-sdk/web-DFDao2So.cjs +0 -1
- package/dist/plugin-sdk/web-DjbeDvyv.js +0 -1
- package/dist/plugin-sdk/web-JciOW43P.js +0 -1
- package/dist/plugin-sdk/web-vSFigMHz.cjs +0 -1
- package/dist/plugin-sdk/weixin.cjs +0 -1
- package/dist/plugin-sdk/weixin.js +0 -1
- package/dist/plugin-sdk/whatsapp-actions-B67oFfeq.js +0 -1
- package/dist/plugin-sdk/whatsapp-actions-BB0eACkf.cjs +0 -1
- package/dist/plugin-sdk/whatsapp-actions-BIgrB0j5.cjs +0 -1
- package/dist/plugin-sdk/whatsapp-actions-CFve14ju.cjs +0 -1
- package/dist/plugin-sdk/whatsapp-actions-CdRkPw-b.js +0 -1
- package/dist/plugin-sdk/whatsapp-actions-CtIBOGpJ.cjs +0 -1
- package/dist/plugin-sdk/whatsapp-actions-CwAU7FuE.js +0 -1
- package/dist/plugin-sdk/whatsapp-actions-DQ1t5QTc.cjs +0 -1
- package/dist/plugin-sdk/whatsapp-actions-DkrN4BcG.js +0 -1
- package/dist/plugin-sdk/whatsapp-actions-DnkKzVrU.js +0 -1
- package/dist/plugin-sdk/whatsapp-actions-YcBsDZ88.js +0 -1
- package/dist/plugin-sdk/whatsapp-actions-wk1U2IVU.cjs +0 -1
- package/dist/plugin-sdk/whatsapp.cjs +0 -1
- package/dist/plugin-sdk/whatsapp.js +0 -1
- package/dist/plugin-sdk/zalo.cjs +0 -1
- package/dist/plugin-sdk/zalo.js +0 -1
- package/dist/plugin-sdk/zalouser.cjs +0 -1
- package/dist/plugin-sdk/zalouser.js +0 -1
- package/dist/plugins-CYLrFT4h.js +0 -1
- package/dist/plugins-DNlgeTTc.js +0 -1
- package/dist/plugins-cli-CnXgwZzI.js +0 -1
- package/dist/plugins-cli-PVHBZeb8.js +0 -1
- package/dist/polls-BIVz6a4F.js +0 -1
- package/dist/polls-Bh5wc9-6.js +0 -1
- package/dist/polls-C_XSFz3d.js +0 -1
- package/dist/polls-DKJOFSzJ.js +0 -1
- package/dist/ports-BAaLOkJp.js +2 -0
- package/dist/ports-DDWP1p0X.js +2 -0
- package/dist/probe-auth-C5nWfMS9.js +0 -1
- package/dist/probe-auth-x4OHS_wa.js +0 -1
- package/dist/profile-utils-CWmra1aY.js +0 -1
- package/dist/{program-ppBAyCNf.js → program-D53eGuSf.js} +1 -2
- package/dist/program-context-CH9p6anW.js +0 -1
- package/dist/{program-context-BXNpM3b4.js → program-context-n-ovYq69.js} +1 -2
- package/dist/progress-LNttnI-y.js +0 -1
- package/dist/progress-d1m2sqR1.js +0 -1
- package/dist/{prompt-select-styled-947JghKF.js → prompt-select-styled-DZnefcrY.js} +1 -2
- package/dist/{prompt-select-styled-1abs2MvK.js → prompt-select-styled-DolCW-_j.js} +1 -2
- package/dist/prompt-style-BThRSQJR.js +0 -1
- package/dist/prompt-style-CXKekIBY.js +0 -1
- package/dist/prompts-CMzglboN.js +0 -1
- package/dist/prompts-wv-lfVrJ.js +0 -1
- package/dist/provider-auth-helpers-BLm2bdp5.js +0 -1
- package/dist/provider-auth-helpers-DPz0vN_c.js +0 -1
- package/dist/provider-env-vars-D8p6Ohpj.js +0 -1
- package/dist/provider-env-vars-Dt0Q29Su.js +0 -1
- package/dist/proxy-env-BNhTHkd_.js +0 -1
- package/dist/proxy-env-DcmW_urA.js +0 -1
- package/dist/proxy-env-DrC3TIGh.js +0 -1
- package/dist/proxy-env-FJr5nlvs.js +0 -1
- package/dist/proxy-fetch-BADsUK4d.js +0 -1
- package/dist/proxy-fetch-BZ9O8Dvj.js +0 -1
- package/dist/proxy-fetch-DnjU1fEB.js +0 -1
- package/dist/proxy-fetch-gWETR3cl.js +0 -1
- package/dist/push-apns-BBv62ncV.js +0 -1
- package/dist/push-apns-DIV5dBPP.js +0 -1
- package/dist/pw-ai-C0gM3d-6.js +0 -1
- package/dist/pw-ai-CQd14BQa.js +0 -1
- package/dist/pw-ai-DiQuOf4W.js +0 -1
- package/dist/pw-ai-jlhIn-aA.js +0 -1
- package/dist/qmd-manager-C_e04BNg.js +0 -1
- package/dist/qmd-manager-DSQ_mDCl.js +0 -1
- package/dist/qmd-manager-DcBYbt_V.js +0 -1
- package/dist/qmd-manager-NLI0R6kp.js +0 -1
- package/dist/qr-cli-D06YZurm.js +0 -1
- package/dist/qr-cli-ZtDsXyLO.js +0 -1
- package/dist/query-expansion-0OxEb1Io.js +0 -1
- package/dist/query-expansion-BUUx_oWg.js +0 -1
- package/dist/query-expansion-r_iXkNzt.js +0 -1
- package/dist/reaction-level-DVPHL14p.js +0 -1
- package/dist/reaction-message-id-BEEe7X3D.js +0 -1
- package/dist/read-only-account-inspect-B0cm8yrv.js +0 -1
- package/dist/redact-3_CiXMY6.js +0 -1
- package/dist/redact-CnRxK70G.js +0 -1
- package/dist/register.agent-DHOTtB8X.js +0 -1
- package/dist/register.agent-DQdoMfmw.js +0 -1
- package/dist/register.backup-BDO3V0so.js +0 -1
- package/dist/register.backup-Vh8RK6fp.js +0 -1
- package/dist/register.configure-C2N82brC.js +0 -1
- package/dist/register.configure-C6zjzaEo.js +0 -1
- package/dist/{register.maintenance-Br9uoFKo.js → register.maintenance-CStaPxaB.js} +1 -2
- package/dist/{register.maintenance-Cm3wq9bt.js → register.maintenance-aKBTd9Zp.js} +1 -2
- package/dist/register.message-DHDcOA8X.js +0 -1
- package/dist/register.message-Dh72QHKA.js +0 -1
- package/dist/{register.onboard-AjrSlfCb.js → register.onboard-Bu9gpFlA.js} +1 -2
- package/dist/{register.onboard-zCG1PNWc.js → register.onboard-DB9FWAKT.js} +1 -2
- package/dist/{register.setup-DN0y_pth.js → register.setup-CeG2ETmr.js} +1 -2
- package/dist/{register.setup-Blyl_QsK.js → register.setup-D76IRs4s.js} +1 -2
- package/dist/register.status-health-sessions-Dtpd1P2M.js +0 -1
- package/dist/register.status-health-sessions-mPGKFjIz.js +0 -1
- package/dist/{register.subclis-5Pb-uEHk.js → register.subclis-Drp2dGBe.js} +1 -2
- package/dist/registry-BptzrW8D.js +0 -1
- package/dist/registry-hFAtCSWG.js +0 -1
- package/dist/render-BXEUPIHe.js +0 -1
- package/dist/render-CBsnn-2A.js +0 -1
- package/dist/render-D8OWO2hT.js +0 -1
- package/dist/render-DrrPmnMI.js +0 -1
- package/dist/reply-DwfVhea1.js +0 -1
- package/dist/restart-BeJuoXCx.js +0 -1
- package/dist/rpc-BBdeIvn0.js +0 -1
- package/dist/rpc-f85A4Ib_.js +0 -1
- package/dist/{run-main-DGwq5DIc.js → run-main-CjwjyWA6.js} +1 -2
- package/dist/runtime-CK7gqwEF.js +0 -1
- package/dist/runtime-DYttInEE.js +0 -1
- package/dist/runtime-guard-DFYBaYZS.js +0 -1
- package/dist/runtime-guard-DX2Ie4ri.js +0 -1
- package/dist/runtime-status-CqFBmdRd.js +0 -1
- package/dist/runtime-status-DszMjvJK.js +0 -1
- package/dist/runtime-web-tools-BYhCkBV8.js +0 -1
- package/dist/runtime-web-tools-C4F6aaRh.js +0 -1
- package/dist/sandbox-cli-BR0Lsru-.js +0 -1
- package/dist/sandbox-cli-Jo5nYeug.js +0 -1
- package/dist/scan-paths-C13EseXp.js +0 -1
- package/dist/scan-paths-CWtvWW40.js +0 -1
- package/dist/search-manager-CV2YsAym.js +0 -1
- package/dist/secret-file-C7JffiM_.js +0 -1
- package/dist/secret-file-D60EFEOe.js +0 -1
- package/dist/secret-file-DuWm26jS.js +0 -1
- package/dist/secrets-cli-B8kwyZFo.js +0 -1
- package/dist/secrets-cli-BstBe0UA.js +0 -1
- package/dist/secure-random-D7JQgiK-.js +0 -1
- package/dist/security-cli-C6t8OxaE.js +0 -1
- package/dist/security-cli-Cuc8IQKB.js +0 -1
- package/dist/send--9G8eXo4.js +0 -1
- package/dist/send-4h1tQwX3.js +0 -1
- package/dist/send-7qgAI0ap.js +0 -1
- package/dist/send-AQ3CJLpI.js +0 -1
- package/dist/send-BjrfjBn9.js +0 -1
- package/dist/send-BwblpWbK.js +0 -1
- package/dist/send-C4Lm4nmt.js +0 -1
- package/dist/send-C7rOdjPO.js +0 -1
- package/dist/send-COpehmAB.js +0 -1
- package/dist/send-CWVTcDAW.js +0 -1
- package/dist/send-CciNyaWL.js +0 -1
- package/dist/send-ChILboDj.js +0 -1
- package/dist/send-CyarIb2w.js +0 -1
- package/dist/send-DiHS8tKf.js +0 -1
- package/dist/send-Dj7NBAWg.js +0 -1
- package/dist/send-DmHpf5Fz.js +0 -1
- package/dist/send-NbU9-scF2.js +0 -1
- package/dist/send-hlES-kRl2.js +0 -1
- package/dist/send-swTiQAeK2.js +0 -1
- package/dist/send-vNcod64S.js +0 -1
- package/dist/server-C-lb98FO.js +0 -1
- package/dist/server-DwSkpKgC.js +0 -1
- package/dist/server-node-events-CL0pWoMa.js +0 -1
- package/dist/server-node-events-ChPQ984b.js +0 -1
- package/dist/service-BtB9epJk.js +0 -1
- package/dist/service-DZ9EbS15.js +0 -1
- package/dist/session-BSRnpwSq.js +0 -1
- package/dist/session-CfHCnrXh.js +0 -1
- package/dist/session-JqCxWBM8.js +0 -1
- package/dist/session-bk3gFwO4.js +0 -1
- package/dist/session-cost-usage-BgqKixv0.js +0 -1
- package/dist/session-cost-usage-CHtVgnE8.js +0 -1
- package/dist/session-key-C7F_iqYg.js +0 -1
- package/dist/session-key-D3P0tf5P.js +0 -1
- package/dist/session-utils-Bpdyx2A2.js +0 -1
- package/dist/sessions-Ca6ozRCQ.js +0 -1
- package/dist/shared-9x5sqYRb.js +0 -1
- package/dist/shared-BKWhOp64.js +0 -1
- package/dist/shared-Ca5BFwta.js +0 -1
- package/dist/skill-commands-CPZcaV8-.js +0 -1
- package/dist/skill-commands-CtprBvm0.js +0 -1
- package/dist/skill-commands-DCqPy_Aa.js +0 -1
- package/dist/skill-commands-DlHVddAk.js +0 -1
- package/dist/skill-scanner-CUUF3Fvo.js +0 -1
- package/dist/skill-scanner-CkxXNioD.js +0 -1
- package/dist/skills-Bz_S4lPh.js +0 -1
- package/dist/skills-CzUpDbU-.js +0 -1
- package/dist/skills-cli-DK0QDfln.js +0 -1
- package/dist/skills-cli-DLmqhAB-.js +0 -1
- package/dist/skills-install-D3YB2C-S.js +0 -1
- package/dist/skills-install-cEcqzaX8.js +0 -1
- package/dist/skills-status-D4Y1BJYL.js +0 -1
- package/dist/skills-status-DpSboPY1.js +0 -1
- package/dist/sqlite-CILF3z9U.js +0 -1
- package/dist/stagger-DmFYysrJ.js +0 -1
- package/dist/stagger-DxzgG2jd.js +0 -1
- package/dist/status-BAat65xo.js +0 -1
- package/dist/status-BSHWBrg0.js +0 -1
- package/dist/status-o3Gfr-6l.js +0 -1
- package/dist/status-w4NsjW2R.js +0 -1
- package/dist/status.update-B_8Gumuc.js +0 -1
- package/dist/status.update-_2r0S6Re.js +0 -1
- package/dist/string-normalization-BrUPaXaM.js +0 -1
- package/dist/string-normalization-DJT5zuUF.js +0 -1
- package/dist/subsystem-BLbY429l.js +0 -1
- package/dist/subsystem-Bc2XrjUz.js +0 -1
- package/dist/subsystem-C5XF2Fy5.js +0 -1
- package/dist/system-cli-Ddixb0SQ.js +0 -1
- package/dist/system-cli-NAH97F2s.js +0 -1
- package/dist/system-run-command-DsWBVvSK.js +0 -1
- package/dist/system-run-command-E8ymBXHh.js +0 -1
- package/dist/systemd-D7odsu4K.js +0 -1
- package/dist/systemd-DbevZh65.js +0 -1
- package/dist/systemd-hints-CEQj6yrs.js +0 -1
- package/dist/systemd-hints-lXpMy-kY.js +0 -1
- package/dist/systemd-linger-C2MJD6KG.js +0 -1
- package/dist/systemd-linger-cWKbFNpu.js +0 -1
- package/dist/table-CR7TFMew.js +0 -1
- package/dist/table-CY440fI1.js +0 -1
- package/dist/tables-D6J-isob.js +0 -1
- package/dist/tables-DENKrP-W.js +0 -1
- package/dist/tables-_t5V36m9.js +0 -1
- package/dist/tables-fl9iXahm.js +0 -1
- package/dist/target-errors-CoEHv_2r.js +0 -1
- package/dist/target-errors-D6wejRd6.js +0 -1
- package/dist/target-errors-Dnkqss9y.js +0 -1
- package/dist/target-errors-sMFXKeAY.js +0 -1
- package/dist/targets-4EaxWBal.js +0 -1
- package/dist/targets-BJTo7bqu.js +0 -1
- package/dist/targets-BYVMrXDf.js +0 -1
- package/dist/targets-Bq6rS6-Z.js +0 -1
- package/dist/targets-CL5fYQi7.js +0 -1
- package/dist/targets-fozeWOOg.js +0 -1
- package/dist/targets-m_41k_Mv.js +0 -1
- package/dist/telegram/audit.js +0 -1
- package/dist/text-format-CvrvBBre.js +0 -1
- package/dist/text-format-DEWK6oCT.js +0 -1
- package/dist/token-DnTmiyJu.js +0 -1
- package/dist/tokens-B2fq-rL6.js +0 -1
- package/dist/tokens-CL2fSjGl.js +0 -1
- package/dist/tokens-DRM8vzJx.js +0 -1
- package/dist/tokens-XGbQGn67.js +0 -1
- package/dist/tool-display-DJDtttQg.js +0 -1
- package/dist/tool-display-DjuSUUbH.js +0 -1
- package/dist/tui-5Znjl2Rb.js +0 -1
- package/dist/tui-Tlww_AcE.js +0 -1
- package/dist/tui-cli-C9QPsw50.js +0 -1
- package/dist/tui-cli-FxvETbln.js +0 -1
- package/dist/types.secrets-C-5U96pc.js +0 -1
- package/dist/types.secrets-D4tbc3Wq.js +0 -1
- package/dist/update-CMneH_48.js +0 -1
- package/dist/update-D9EwPybG.js +0 -1
- package/dist/{update-cli-BQGwMpHe.js → update-cli-CL_cUjuq.js} +1 -2
- package/dist/{update-cli-C7pZTXS8.js → update-cli-DU5tRH3c.js} +1 -2
- package/dist/update-runner-DABdlxfN.js +0 -1
- package/dist/update-runner-DG-1TYYc.js +0 -1
- package/dist/usage-format-BWD8FJFL.js +0 -1
- package/dist/usage-format-yPwal8Iz.js +0 -1
- package/dist/utils-CGdo13HV.js +0 -1
- package/dist/utils-D3t-vPka.js +0 -1
- package/dist/utils-R-mFyVJi.js +0 -1
- package/dist/utils-UGOV_184.js +0 -1
- package/dist/version-q3SkUw2K.js +0 -1
- package/dist/warning-filter.js +0 -1
- package/dist/web-Dfi2WjvN.js +0 -1
- package/dist/web-u71NbOpT.js +0 -1
- package/dist/webhooks-cli-DMTzhfTv.js +0 -1
- package/dist/webhooks-cli-ICOwBPSv.js +0 -1
- package/dist/whatsapp-actions-Bdf-3-ne.js +0 -1
- package/dist/whatsapp-actions-D2qMOK3a.js +0 -1
- package/dist/whatsapp-actions-f5CsM5EM.js +0 -1
- package/dist/whatsapp-actions-t88tyNUT.js +0 -1
- package/dist/widearea-dns-BDx7vkV2.js +0 -1
- package/dist/widearea-dns-BFjqKXu_.js +0 -1
- package/dist/windows-spawn-7oINn5ao.js +0 -1
- package/dist/windows-spawn-AB7ItGAE.js +0 -1
- package/dist/with-timeout-WveKxvFV.js +0 -1
- package/dist/with-timeout-c1CzdShT.js +0 -1
- package/dist/workspace-B0ZQeHXg.js +0 -1
- package/dist/workspace-C45T1Cxg.js +0 -1
- package/dist/workspace-dirs-A8Vib9_B.js +0 -1
- package/dist/workspace-dirs-BhF1Dzxt.js +0 -1
- package/dist/workspace-xNEpaJvu.js +0 -1
- package/dist/wsl-DHxB2Ew_.js +0 -1
- package/dist/wsl-Ok7GaSJ6.js +0 -1
- package/extensions/qqbrowser-skill-control/index.js +1 -1
- package/node_modules/@aws-sdk/client-bedrock-runtime/package.json +2 -2
- package/node_modules/@aws-sdk/token-providers/package.json +1 -1
- package/node_modules/@google/genai/dist/index.cjs +341 -180
- package/node_modules/@google/genai/dist/index.mjs +341 -180
- package/node_modules/@google/genai/dist/node/index.cjs +341 -180
- package/node_modules/@google/genai/dist/node/index.mjs +341 -180
- package/node_modules/@google/genai/dist/tokenizer/node.cjs +100 -0
- package/node_modules/@google/genai/dist/tokenizer/node.mjs +100 -0
- package/node_modules/@google/genai/dist/vertex_internal/index.cjs +103 -2
- package/node_modules/@google/genai/dist/vertex_internal/index.js +103 -2
- package/node_modules/@google/genai/dist/web/index.mjs +342 -180
- package/node_modules/@google/genai/package.json +1 -1
- package/node_modules/@slack/web-api/dist/instrument.js +13 -1
- package/node_modules/@slack/web-api/package.json +2 -2
- package/node_modules/@smithy/config-resolver/package.json +2 -2
- package/node_modules/@smithy/util-defaults-mode-node/package.json +2 -2
- package/node_modules/@smithy/util-endpoints/dist-cjs/index.js +154 -61
- package/node_modules/@smithy/util-endpoints/dist-es/bdd/BinaryDecisionDiagram.js +15 -0
- package/node_modules/@smithy/util-endpoints/dist-es/decideEndpoint.js +41 -0
- package/node_modules/@smithy/util-endpoints/dist-es/index.js +2 -0
- package/node_modules/@smithy/util-endpoints/dist-es/lib/coalesce.js +8 -0
- package/node_modules/@smithy/util-endpoints/dist-es/lib/index.js +3 -0
- package/node_modules/@smithy/util-endpoints/dist-es/lib/ite.js +3 -0
- package/node_modules/@smithy/util-endpoints/dist-es/lib/split.js +13 -0
- package/node_modules/@smithy/util-endpoints/dist-es/lib/substring.js +1 -1
- package/node_modules/@smithy/util-endpoints/dist-es/utils/endpointFunctions.js +4 -1
- package/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateExpression.js +20 -5
- package/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateTemplate.js +3 -6
- package/node_modules/@smithy/util-endpoints/dist-es/utils/getReferenceValue.js +1 -5
- package/node_modules/@smithy/util-endpoints/package.json +1 -1
- package/node_modules/discord-api-types/package.json +1 -1
- package/node_modules/discord-api-types/payloads/index.mjs +3 -0
- package/node_modules/discord-api-types/payloads/v10/index.mjs +3 -0
- package/node_modules/discord-api-types/payloads/v10/message.js +55 -2
- package/node_modules/discord-api-types/payloads/v10/user.js +2 -0
- package/node_modules/discord-api-types/payloads/v9/index.mjs +3 -0
- package/node_modules/discord-api-types/payloads/v9/message.js +55 -2
- package/node_modules/discord-api-types/payloads/v9/user.js +2 -0
- package/node_modules/discord-api-types/rest/v10/channel.js +6 -0
- package/node_modules/discord-api-types/rest/v9/channel.js +6 -0
- package/node_modules/discord-api-types/v10.mjs +3 -0
- package/node_modules/discord-api-types/v9.mjs +3 -0
- package/node_modules/undici/package.json +1 -1
- package/package.json +2 -1
- package/dist/ports-Dylc6TrH.js +0 -3
- package/dist/ports-hkqQXSus.js +0 -3
- package/node_modules/@anthropic-ai/sandbox-runtime/node_modules/commander/LICENSE +0 -22
- package/node_modules/@anthropic-ai/sandbox-runtime/node_modules/commander/Readme.md +0 -1157
- package/node_modules/@anthropic-ai/sandbox-runtime/node_modules/zod/LICENSE +0 -21
- package/node_modules/@anthropic-ai/sandbox-runtime/node_modules/zod/README.md +0 -208
- package/node_modules/@anthropic-ai/sdk/src/_vendor/partial-json-parser/README.md +0 -3
- package/node_modules/@anthropic-ai/sdk/src/core/README.md +0 -3
- package/node_modules/@anthropic-ai/sdk/src/internal/README.md +0 -3
- package/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/is-array-buffer/LICENSE +0 -201
- package/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/is-array-buffer/README.md +0 -10
- package/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-buffer-from/LICENSE +0 -201
- package/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-buffer-from/README.md +0 -10
- package/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-utf8/LICENSE +0 -201
- package/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-utf8/README.md +0 -4
- package/node_modules/@aws-crypto/util/node_modules/@smithy/is-array-buffer/LICENSE +0 -201
- package/node_modules/@aws-crypto/util/node_modules/@smithy/is-array-buffer/README.md +0 -10
- package/node_modules/@aws-crypto/util/node_modules/@smithy/util-buffer-from/LICENSE +0 -201
- package/node_modules/@aws-crypto/util/node_modules/@smithy/util-buffer-from/README.md +0 -10
- package/node_modules/@aws-crypto/util/node_modules/@smithy/util-utf8/LICENSE +0 -201
- package/node_modules/@aws-crypto/util/node_modules/@smithy/util-utf8/README.md +0 -4
- package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/LICENSE +0 -201
- package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/README.md +0 -62
- package/node_modules/@buape/carbon/node_modules/@discordjs/voice/LICENSE +0 -191
- package/node_modules/@buape/carbon/node_modules/@discordjs/voice/README.md +0 -112
- package/node_modules/@buape/carbon/node_modules/discord-api-types/LICENSE +0 -21
- package/node_modules/@buape/carbon/node_modules/discord-api-types/README.md +0 -102
- package/node_modules/@buape/carbon/node_modules/ws/LICENSE +0 -20
- package/node_modules/@buape/carbon/node_modules/ws/README.md +0 -548
- package/node_modules/@line/bot-sdk/node_modules/@types/node/LICENSE +0 -21
- package/node_modules/@line/bot-sdk/node_modules/@types/node/README.md +0 -15
- package/node_modules/@line/bot-sdk/node_modules/undici-types/LICENSE +0 -21
- package/node_modules/@line/bot-sdk/node_modules/undici-types/README.md +0 -6
- package/node_modules/@opentelemetry/exporter-logs-otlp-proto/node_modules/@opentelemetry/resources/LICENSE +0 -201
- package/node_modules/@opentelemetry/exporter-logs-otlp-proto/node_modules/@opentelemetry/resources/README.md +0 -49
- package/node_modules/@opentelemetry/exporter-logs-otlp-proto/node_modules/@opentelemetry/sdk-trace-base/LICENSE +0 -201
- package/node_modules/@opentelemetry/exporter-logs-otlp-proto/node_modules/@opentelemetry/sdk-trace-base/README.md +0 -185
- package/node_modules/@opentelemetry/exporter-metrics-otlp-http/node_modules/@opentelemetry/resources/LICENSE +0 -201
- package/node_modules/@opentelemetry/exporter-metrics-otlp-http/node_modules/@opentelemetry/resources/README.md +0 -49
- package/node_modules/@opentelemetry/exporter-metrics-otlp-http/node_modules/@opentelemetry/sdk-metrics/LICENSE +0 -201
- package/node_modules/@opentelemetry/exporter-metrics-otlp-http/node_modules/@opentelemetry/sdk-metrics/README.md +0 -100
- package/node_modules/@opentelemetry/exporter-metrics-otlp-proto/node_modules/@opentelemetry/resources/LICENSE +0 -201
- package/node_modules/@opentelemetry/exporter-metrics-otlp-proto/node_modules/@opentelemetry/resources/README.md +0 -49
- package/node_modules/@opentelemetry/exporter-metrics-otlp-proto/node_modules/@opentelemetry/sdk-metrics/LICENSE +0 -201
- package/node_modules/@opentelemetry/exporter-metrics-otlp-proto/node_modules/@opentelemetry/sdk-metrics/README.md +0 -100
- package/node_modules/@opentelemetry/exporter-trace-otlp-proto/node_modules/@opentelemetry/resources/LICENSE +0 -201
- package/node_modules/@opentelemetry/exporter-trace-otlp-proto/node_modules/@opentelemetry/resources/README.md +0 -49
- package/node_modules/@opentelemetry/exporter-trace-otlp-proto/node_modules/@opentelemetry/sdk-trace-base/LICENSE +0 -201
- package/node_modules/@opentelemetry/exporter-trace-otlp-proto/node_modules/@opentelemetry/sdk-trace-base/README.md +0 -185
- package/node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/resources/LICENSE +0 -201
- package/node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/resources/README.md +0 -49
- package/node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/sdk-metrics/LICENSE +0 -201
- package/node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/sdk-metrics/README.md +0 -100
- package/node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/sdk-trace-base/LICENSE +0 -201
- package/node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/sdk-trace-base/README.md +0 -185
- package/node_modules/@opentelemetry/resources/node_modules/@opentelemetry/core/LICENSE +0 -201
- package/node_modules/@opentelemetry/resources/node_modules/@opentelemetry/core/README.md +0 -73
- package/node_modules/@opentelemetry/sdk-logs/node_modules/@opentelemetry/resources/LICENSE +0 -201
- package/node_modules/@opentelemetry/sdk-logs/node_modules/@opentelemetry/resources/README.md +0 -49
- package/node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/core/LICENSE +0 -201
- package/node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/core/README.md +0 -73
- package/node_modules/@opentelemetry/sdk-trace-base/node_modules/@opentelemetry/core/LICENSE +0 -201
- package/node_modules/@opentelemetry/sdk-trace-base/node_modules/@opentelemetry/core/README.md +0 -73
- package/node_modules/@opentelemetry/sdk-trace-node/node_modules/@opentelemetry/core/LICENSE +0 -201
- package/node_modules/@opentelemetry/sdk-trace-node/node_modules/@opentelemetry/core/README.md +0 -73
- package/node_modules/@sinclair/typebox/license +0 -25
- package/node_modules/@sinclair/typebox/readme.md +0 -1865
- package/node_modules/@whiskeysockets/baileys/node_modules/p-queue/license +0 -9
- package/node_modules/@whiskeysockets/baileys/node_modules/p-queue/readme.md +0 -1077
- package/node_modules/@whiskeysockets/baileys/node_modules/p-timeout/license +0 -9
- package/node_modules/@whiskeysockets/baileys/node_modules/p-timeout/readme.md +0 -192
- package/node_modules/ansi-regex/license +0 -9
- package/node_modules/ansi-regex/readme.md +0 -66
- package/node_modules/ansi-styles/license +0 -9
- package/node_modules/ansi-styles/readme.md +0 -152
- package/node_modules/atomic-sleep/readme.md +0 -58
- package/node_modules/axios/lib/adapters/README.md +0 -36
- package/node_modules/axios/lib/core/README.md +0 -8
- package/node_modules/axios/lib/env/README.md +0 -3
- package/node_modules/axios/lib/helpers/README.md +0 -7
- package/node_modules/bytes/History.md +0 -97
- package/node_modules/bytes/Readme.md +0 -152
- package/node_modules/chalk/license +0 -9
- package/node_modules/chalk/readme.md +0 -297
- package/node_modules/cli-highlight/node_modules/chalk/license +0 -9
- package/node_modules/cli-highlight/node_modules/chalk/readme.md +0 -341
- package/node_modules/cliui/node_modules/ansi-regex/license +0 -9
- package/node_modules/cliui/node_modules/ansi-regex/readme.md +0 -78
- package/node_modules/cliui/node_modules/strip-ansi/license +0 -9
- package/node_modules/cliui/node_modules/strip-ansi/readme.md +0 -46
- package/node_modules/combined-stream/License +0 -19
- package/node_modules/combined-stream/Readme.md +0 -138
- package/node_modules/commander/Readme.md +0 -1176
- package/node_modules/cookie-signature/History.md +0 -70
- package/node_modules/cookie-signature/Readme.md +0 -23
- package/node_modules/css-what/readme.md +0 -69
- package/node_modules/delayed-stream/License +0 -19
- package/node_modules/delayed-stream/Readme.md +0 -141
- package/node_modules/depd/History.md +0 -103
- package/node_modules/depd/Readme.md +0 -280
- package/node_modules/domelementtype/readme.md +0 -1
- package/node_modules/domhandler/readme.md +0 -92
- package/node_modules/domutils/readme.md +0 -31
- package/node_modules/entities/readme.md +0 -122
- package/node_modules/escalade/license +0 -9
- package/node_modules/escalade/readme.md +0 -211
- package/node_modules/escape-html/Readme.md +0 -43
- package/node_modules/express/Readme.md +0 -276
- package/node_modules/express-rate-limit/license.md +0 -20
- package/node_modules/express-rate-limit/readme.md +0 -136
- package/node_modules/extract-zip/readme.md +0 -57
- package/node_modules/fast-string-truncated-width/license +0 -21
- package/node_modules/fast-string-truncated-width/readme.md +0 -60
- package/node_modules/fast-string-width/license +0 -21
- package/node_modules/fast-string-width/readme.md +0 -45
- package/node_modules/file-type/license +0 -9
- package/node_modules/file-type/readme.md +0 -667
- package/node_modules/form-data/License +0 -19
- package/node_modules/form-data/node_modules/mime-db/HISTORY.md +0 -507
- package/node_modules/form-data/node_modules/mime-db/LICENSE +0 -23
- package/node_modules/form-data/node_modules/mime-db/README.md +0 -100
- package/node_modules/form-data/node_modules/mime-types/HISTORY.md +0 -397
- package/node_modules/form-data/node_modules/mime-types/LICENSE +0 -23
- package/node_modules/form-data/node_modules/mime-types/README.md +0 -113
- package/node_modules/gaxios/node_modules/agent-base/LICENSE +0 -22
- package/node_modules/gaxios/node_modules/agent-base/README.md +0 -69
- package/node_modules/gaxios/node_modules/https-proxy-agent/LICENSE +0 -22
- package/node_modules/gaxios/node_modules/https-proxy-agent/README.md +0 -70
- package/node_modules/get-east-asian-width/license +0 -9
- package/node_modules/get-east-asian-width/readme.md +0 -65
- package/node_modules/get-stream/license +0 -9
- package/node_modules/get-stream/readme.md +0 -124
- package/node_modules/get-uri/node_modules/data-uri-to-buffer/LICENSE +0 -22
- package/node_modules/get-uri/node_modules/data-uri-to-buffer/README.md +0 -61
- package/node_modules/grammy/node_modules/node-fetch/LICENSE.md +0 -22
- package/node_modules/grammy/node_modules/node-fetch/README.md +0 -634
- package/node_modules/has-flag/license +0 -9
- package/node_modules/has-flag/readme.md +0 -89
- package/node_modules/htmlparser2/node_modules/entities/LICENSE +0 -11
- package/node_modules/htmlparser2/node_modules/entities/readme.md +0 -143
- package/node_modules/http-proxy-agent/node_modules/agent-base/LICENSE +0 -22
- package/node_modules/http-proxy-agent/node_modules/agent-base/README.md +0 -69
- package/node_modules/is-fullwidth-code-point/license +0 -9
- package/node_modules/is-fullwidth-code-point/readme.md +0 -39
- package/node_modules/is-stream/license +0 -9
- package/node_modules/is-stream/readme.md +0 -60
- package/node_modules/jws/readme.md +0 -255
- package/node_modules/libsignal/native/ed25519/sha512/LICENSE.txt +0 -20
- package/node_modules/libsignal/node_modules/@types/node/LICENSE +0 -21
- package/node_modules/libsignal/node_modules/@types/node/README.md +0 -16
- package/node_modules/libsignal/node_modules/long/LICENSE +0 -202
- package/node_modules/libsignal/node_modules/long/README.md +0 -246
- package/node_modules/libsignal/node_modules/protobufjs/LICENSE +0 -39
- package/node_modules/libsignal/node_modules/protobufjs/README.md +0 -879
- package/node_modules/libsignal/node_modules/protobufjs/cli/LICENSE +0 -33
- package/node_modules/libsignal/node_modules/protobufjs/cli/README.md +0 -11
- package/node_modules/libsignal/node_modules/protobufjs/cli/lib/tsd-jsdoc/LICENSE +0 -21
- package/node_modules/libsignal/node_modules/protobufjs/cli/lib/tsd-jsdoc/README.md +0 -23
- package/node_modules/libsignal/node_modules/protobufjs/cli/node_modules/os-tmpdir/license +0 -21
- package/node_modules/libsignal/node_modules/protobufjs/cli/node_modules/os-tmpdir/readme.md +0 -32
- package/node_modules/libsignal/node_modules/protobufjs/cli/node_modules/tmp/LICENSE +0 -21
- package/node_modules/libsignal/node_modules/protobufjs/cli/node_modules/tmp/README.md +0 -314
- package/node_modules/libsignal/node_modules/protobufjs/dist/README.md +0 -31
- package/node_modules/libsignal/node_modules/protobufjs/dist/light/README.md +0 -31
- package/node_modules/libsignal/node_modules/protobufjs/dist/minimal/README.md +0 -31
- package/node_modules/libsignal/node_modules/protobufjs/ext/debug/README.md +0 -4
- package/node_modules/libsignal/node_modules/protobufjs/ext/descriptor/README.md +0 -72
- package/node_modules/libsignal/node_modules/protobufjs/google/LICENSE +0 -27
- package/node_modules/libsignal/node_modules/protobufjs/google/README.md +0 -1
- package/node_modules/lie/license.md +0 -7
- package/node_modules/linkedom/node_modules/html-escaper/LICENSE.txt +0 -19
- package/node_modules/linkedom/node_modules/html-escaper/README.md +0 -110
- package/node_modules/merge-descriptors/license +0 -11
- package/node_modules/merge-descriptors/readme.md +0 -55
- package/node_modules/ms/license.md +0 -21
- package/node_modules/ms/readme.md +0 -59
- package/node_modules/node-edge-tts/node_modules/agent-base/LICENSE +0 -22
- package/node_modules/node-edge-tts/node_modules/agent-base/README.md +0 -69
- package/node_modules/node-edge-tts/node_modules/ansi-regex/license +0 -9
- package/node_modules/node-edge-tts/node_modules/ansi-regex/readme.md +0 -78
- package/node_modules/node-edge-tts/node_modules/cliui/LICENSE.txt +0 -14
- package/node_modules/node-edge-tts/node_modules/cliui/README.md +0 -141
- package/node_modules/node-edge-tts/node_modules/https-proxy-agent/LICENSE +0 -22
- package/node_modules/node-edge-tts/node_modules/https-proxy-agent/README.md +0 -70
- package/node_modules/node-edge-tts/node_modules/strip-ansi/license +0 -9
- package/node_modules/node-edge-tts/node_modules/strip-ansi/readme.md +0 -46
- package/node_modules/node-edge-tts/node_modules/yargs/LICENSE +0 -21
- package/node_modules/node-edge-tts/node_modules/yargs/README.md +0 -204
- package/node_modules/node-edge-tts/node_modules/yargs-parser/LICENSE.txt +0 -14
- package/node_modules/node-edge-tts/node_modules/yargs-parser/README.md +0 -518
- package/node_modules/object-assign/license +0 -21
- package/node_modules/object-assign/readme.md +0 -61
- package/node_modules/object-inspect/readme.markdown +0 -84
- package/node_modules/openai/src/_vendor/partial-json-parser/README.md +0 -3
- package/node_modules/openai/src/_vendor/zod-to-json-schema/LICENSE +0 -15
- package/node_modules/openai/src/_vendor/zod-to-json-schema/README.md +0 -3
- package/node_modules/openai/src/core/README.md +0 -3
- package/node_modules/openai/src/internal/README.md +0 -3
- package/node_modules/openai/src/internal/qs/LICENSE.md +0 -13
- package/node_modules/openai/src/internal/qs/README.md +0 -3
- package/node_modules/p-finally/license +0 -21
- package/node_modules/p-finally/readme.md +0 -47
- package/node_modules/p-queue/license +0 -9
- package/node_modules/p-queue/node_modules/eventemitter3/LICENSE +0 -21
- package/node_modules/p-queue/node_modules/eventemitter3/README.md +0 -94
- package/node_modules/p-queue/readme.md +0 -400
- package/node_modules/p-retry/license +0 -9
- package/node_modules/p-retry/readme.md +0 -148
- package/node_modules/p-timeout/license +0 -9
- package/node_modules/p-timeout/readme.md +0 -87
- package/node_modules/pac-proxy-agent/node_modules/agent-base/LICENSE +0 -22
- package/node_modules/pac-proxy-agent/node_modules/agent-base/README.md +0 -69
- package/node_modules/pac-proxy-agent/node_modules/https-proxy-agent/LICENSE +0 -22
- package/node_modules/pac-proxy-agent/node_modules/https-proxy-agent/README.md +0 -70
- package/node_modules/pako/lib/zlib/README +0 -59
- package/node_modules/parse5-htmlparser2-tree-adapter/node_modules/parse5/LICENSE +0 -19
- package/node_modules/parse5-htmlparser2-tree-adapter/node_modules/parse5/README.md +0 -38
- package/node_modules/path-key/license +0 -9
- package/node_modules/path-key/readme.md +0 -61
- package/node_modules/path-to-regexp/Readme.md +0 -224
- package/node_modules/pino-std-serializers/Readme.md +0 -182
- package/node_modules/process-nextick-args/license.md +0 -19
- package/node_modules/process-nextick-args/readme.md +0 -18
- package/node_modules/proper-lockfile/node_modules/retry/License +0 -21
- package/node_modules/proper-lockfile/node_modules/retry/README.md +0 -227
- package/node_modules/protobufjs/ext/debug/README.md +0 -4
- package/node_modules/protobufjs/ext/descriptor/README.md +0 -72
- package/node_modules/proxy-addr/node_modules/ipaddr.js/LICENSE +0 -19
- package/node_modules/proxy-addr/node_modules/ipaddr.js/README.md +0 -233
- package/node_modules/proxy-agent/node_modules/agent-base/LICENSE +0 -22
- package/node_modules/proxy-agent/node_modules/agent-base/README.md +0 -69
- package/node_modules/proxy-agent/node_modules/https-proxy-agent/LICENSE +0 -22
- package/node_modules/proxy-agent/node_modules/https-proxy-agent/README.md +0 -70
- package/node_modules/proxy-agent/node_modules/lru-cache/LICENSE +0 -15
- package/node_modules/proxy-agent/node_modules/lru-cache/README.md +0 -1117
- package/node_modules/proxy-agent/node_modules/proxy-from-env/LICENSE +0 -20
- package/node_modules/proxy-agent/node_modules/proxy-from-env/README.md +0 -131
- package/node_modules/qified/node_modules/hookified/LICENSE +0 -19
- package/node_modules/qified/node_modules/hookified/README.md +0 -1682
- package/node_modules/quick-format-unescaped/readme.md +0 -66
- package/node_modules/readable-stream/node_modules/safe-buffer/LICENSE +0 -21
- package/node_modules/readable-stream/node_modules/safe-buffer/README.md +0 -584
- package/node_modules/require-from-string/license +0 -21
- package/node_modules/require-from-string/readme.md +0 -56
- package/node_modules/retry/License +0 -21
- package/node_modules/router/node_modules/is-promise/LICENSE +0 -19
- package/node_modules/router/node_modules/is-promise/readme.md +0 -33
- package/node_modules/safe-stable-stringify/readme.md +0 -179
- package/node_modules/safer-buffer/Readme.md +0 -156
- package/node_modules/shebang-command/license +0 -9
- package/node_modules/shebang-command/readme.md +0 -34
- package/node_modules/shebang-regex/license +0 -9
- package/node_modules/shebang-regex/readme.md +0 -33
- package/node_modules/sisteransi/license +0 -21
- package/node_modules/sisteransi/readme.md +0 -113
- package/node_modules/socks-proxy-agent/node_modules/agent-base/LICENSE +0 -22
- package/node_modules/socks-proxy-agent/node_modules/agent-base/README.md +0 -69
- package/node_modules/string-width/license +0 -9
- package/node_modules/string-width/node_modules/ansi-regex/license +0 -9
- package/node_modules/string-width/node_modules/ansi-regex/readme.md +0 -78
- package/node_modules/string-width/node_modules/strip-ansi/license +0 -9
- package/node_modules/string-width/node_modules/strip-ansi/readme.md +0 -46
- package/node_modules/string-width/readme.md +0 -50
- package/node_modules/string_decoder/node_modules/safe-buffer/LICENSE +0 -21
- package/node_modules/string_decoder/node_modules/safe-buffer/README.md +0 -584
- package/node_modules/strip-ansi/license +0 -9
- package/node_modules/strip-ansi/readme.md +0 -37
- package/node_modules/supports-color/license +0 -9
- package/node_modules/supports-color/readme.md +0 -76
- package/node_modules/uint8array-extras/license +0 -9
- package/node_modules/uint8array-extras/readme.md +0 -318
- package/node_modules/undici/lib/web/fetch/LICENSE +0 -21
- package/node_modules/undici/lib/web/subresource-integrity/Readme.md +0 -9
- package/node_modules/util-deprecate/History.md +0 -16
- package/node_modules/wrap-ansi/license +0 -9
- package/node_modules/wrap-ansi/node_modules/ansi-regex/license +0 -9
- package/node_modules/wrap-ansi/node_modules/ansi-regex/readme.md +0 -78
- package/node_modules/wrap-ansi/node_modules/strip-ansi/license +0 -9
- package/node_modules/wrap-ansi/node_modules/strip-ansi/readme.md +0 -46
- package/node_modules/wrap-ansi/readme.md +0 -91
- package/node_modules/yoctocolors/license +0 -9
- package/node_modules/yoctocolors/readme.md +0 -138
- package/node_modules/zod-to-json-schema/changelog.md +0 -83
package/dist/send-COpehmAB.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
1
|
import{Vn as e,jo as t}from"./auth-profiles-C8rZRS0X.js";import{p as n,v as r}from"./utils-CGdo13HV.js";import{ot as i}from"./plugins-DNlgeTTc.js";import{l as a}from"./windows-spawn-7oINn5ao.js";import{s as o}from"./ir-DdjufzKF.js";import{t as s}from"./tables-DENKrP-W.js";import{t as c}from"./outbound-attachment-CVcDBkAD.js";import{spawn as l}from"node:child_process";import{createInterface as u}from"node:readline";function d(e,t){return e.slice(t.length).trim()}function f(e,t){return t.some(t=>e.startsWith(t))}function p(e){for(let{prefix:t,service:n}of e.servicePrefixes){if(!e.lower.startsWith(t))continue;let r=d(e.trimmed,t);if(!r)throw Error(`${t} target is required`);let i=r.toLowerCase();return e.isChatTarget(i)?e.parseTarget(r):{kind:`handle`,to:r,service:n}}return null}function m(e){let t=[...e.chatIdPrefixes,...e.chatGuidPrefixes,...e.chatIdentifierPrefixes,...e.extraChatPrefixes??[]];return p({trimmed:e.trimmed,lower:e.lower,servicePrefixes:e.servicePrefixes,isChatTarget:e=>f(e,t),parseTarget:e.parseTarget})}function h(e){for(let t of e.chatIdPrefixes)if(e.lower.startsWith(t)){let n=d(e.trimmed,t),r=Number.parseInt(n,10);if(!Number.isFinite(r))throw Error(`Invalid chat_id: ${n}`);return{kind:`chat_id`,chatId:r}}for(let t of e.chatGuidPrefixes)if(e.lower.startsWith(t)){let n=d(e.trimmed,t);if(!n)throw Error(`chat_guid is required`);return{kind:`chat_guid`,chatGuid:n}}for(let t of e.chatIdentifierPrefixes)if(e.lower.startsWith(t)){let n=d(e.trimmed,t);if(!n)throw Error(`chat_identifier is required`);return{kind:`chat_identifier`,chatIdentifier:n}}return null}function g(e){for(let{prefix:t}of e.servicePrefixes){if(!e.lower.startsWith(t))continue;let n=d(e.trimmed,t);return n?e.parseAllowTarget(n):{kind:`handle`,handle:``}}return null}function _(e){return g({trimmed:e.trimmed,lower:e.lower,servicePrefixes:e.servicePrefixes,parseAllowTarget:e.parseAllowTarget})||y({trimmed:e.trimmed,lower:e.lower,chatIdPrefixes:e.chatIdPrefixes,chatGuidPrefixes:e.chatGuidPrefixes,chatIdentifierPrefixes:e.chatIdentifierPrefixes})||null}function v(t){return n=>e({allowFrom:n.allowFrom,sender:n.sender,chatId:n.chatId,chatGuid:n.chatGuid,chatIdentifier:n.chatIdentifier,normalizeSender:t.normalizeSender,parseAllowTarget:t.parseAllowTarget})}function y(e){for(let t of e.chatIdPrefixes)if(e.lower.startsWith(t)){let n=d(e.trimmed,t),r=Number.parseInt(n,10);if(Number.isFinite(r))return{kind:`chat_id`,chatId:r}}for(let t of e.chatGuidPrefixes)if(e.lower.startsWith(t)){let n=d(e.trimmed,t);if(n)return{kind:`chat_guid`,chatGuid:n}}for(let t of e.chatIdentifierPrefixes)if(e.lower.startsWith(t)){let n=d(e.trimmed,t);if(n)return{kind:`chat_identifier`,chatIdentifier:n}}return null}const b=[`chat_id:`,`chatid:`,`chat:`],x=[`chat_guid:`,`chatguid:`,`guid:`],S=[`chat_identifier:`,`chatidentifier:`,`chatident:`],C=[{prefix:`imessage:`,service:`imessage`},{prefix:`sms:`,service:`sms`},{prefix:`auto:`,service:`auto`}];function w(e){let t=e.trim();if(!t)return``;let r=t.toLowerCase();if(r.startsWith(`imessage:`))return w(t.slice(9));if(r.startsWith(`sms:`))return w(t.slice(4));if(r.startsWith(`auto:`))return w(t.slice(5));for(let e of b)if(r.startsWith(e))return`chat_id:${t.slice(e.length).trim()}`;for(let e of x)if(r.startsWith(e))return`chat_guid:${t.slice(e.length).trim()}`;for(let e of S)if(r.startsWith(e))return`chat_identifier:${t.slice(e.length).trim()}`;return t.includes(`@`)?t.toLowerCase():n(t)||t.replace(/\s+/g,``)}function T(e){let t=e.trim();if(!t)throw Error(`iMessage target is required`);let n=t.toLowerCase();return m({trimmed:t,lower:n,servicePrefixes:C,chatIdPrefixes:b,chatGuidPrefixes:x,chatIdentifierPrefixes:S,parseTarget:T})||h({trimmed:t,lower:n,chatIdPrefixes:b,chatGuidPrefixes:x,chatIdentifierPrefixes:S})||{kind:`handle`,to:t,service:`auto`}}function E(e){let t=e.trim();return t?_({trimmed:t,lower:t.toLowerCase(),servicePrefixes:C,parseAllowTarget:E,chatIdPrefixes:b,chatGuidPrefixes:x,chatIdentifierPrefixes:S})||{kind:`handle`,handle:w(t)}:{kind:`handle`,handle:``}}const D=v({normalizeSender:w,parseAllowTarget:E});function O(e){return D(e)}function k(e){return!e||!Number.isFinite(e)?``:`chat_id:${e}`}const A=1e4;function j(){return!!process.env.VITEST?.trim().toLowerCase()}var M=class{constructor(e={}){this.pending=new Map,this.closedResolve=null,this.child=null,this.reader=null,this.nextId=1,this.cliPath=e.cliPath?.trim()||`imsg`,this.dbPath=e.dbPath?.trim()?r(e.dbPath):void 0,this.runtime=e.runtime,this.onNotification=e.onNotification,this.closed=new Promise(e=>{this.closedResolve=e})}async start(){if(this.child)return;if(j())throw Error(`Refusing to start imsg rpc in test environment; mock iMessage RPC client`);let e=[`rpc`];this.dbPath&&e.push(`--db`,this.dbPath);let t=l(this.cliPath,e,{stdio:[`pipe`,`pipe`,`pipe`]});this.child=t,this.reader=u({input:t.stdout}),this.reader.on(`line`,e=>{let t=e.trim();t&&this.handleLine(t)}),t.stderr?.on(`data`,e=>{let t=e.toString().split(/\r?\n/);for(let e of t)e.trim()&&this.runtime?.error?.(`imsg rpc: ${e.trim()}`)}),t.on(`error`,e=>{this.failAll(e instanceof Error?e:Error(String(e))),this.closedResolve?.()}),t.on(`close`,(e,t)=>{if(e!==0&&e!==null){let n=t?`signal ${t}`:`code ${e}`;this.failAll(Error(`imsg rpc exited (${n})`))}else this.failAll(Error(`imsg rpc closed`));this.closedResolve?.()})}async stop(){if(!this.child)return;this.reader?.close(),this.reader=null,this.child.stdin?.end();let e=this.child;this.child=null,await Promise.race([this.closed,new Promise(t=>{setTimeout(()=>{e.killed||e.kill(`SIGTERM`),t()},500)})])}async waitForClose(){await this.closed}async request(e,t,n){if(!this.child||!this.child.stdin)throw Error(`imsg rpc not running`);let r=this.nextId++,i={jsonrpc:`2.0`,id:r,method:e,params:t??{}},a=`${JSON.stringify(i)}\n`,o=n?.timeoutMs??1e4,s=new Promise((t,n)=>{let i=String(r),a=o>0?setTimeout(()=>{this.pending.delete(i),n(Error(`imsg rpc timeout (${e})`))},o):void 0;this.pending.set(i,{resolve:e=>t(e),reject:n,timer:a})});return this.child.stdin.write(a),await s}handleLine(e){let t;try{t=JSON.parse(e)}catch(t){let n=t instanceof Error?t.message:String(t);this.runtime?.error?.(`imsg rpc: failed to parse ${e}: ${n}`);return}if(t.id!==void 0&&t.id!==null){let e=String(t.id),n=this.pending.get(e);if(!n)return;if(n.timer&&clearTimeout(n.timer),this.pending.delete(e),t.error){let e=t.error.message??`imsg rpc error`,r=t.error.data,i=t.error.code,a=[];if(typeof i==`number`&&a.push(`code=${i}`),r!==void 0){let e=typeof r==`string`?r:JSON.stringify(r,null,2);e&&a.push(e)}let o=a.length>0?`${e}: ${a.join(` `)}`:e;n.reject(Error(o));return}n.resolve(t.result);return}t.method&&this.onNotification?.({method:t.method,params:t.params})}failAll(e){for(let[t,n]of this.pending.entries())n.timer&&clearTimeout(n.timer),n.reject(e),this.pending.delete(t)}};async function N(e={}){let t=new M(e);return await t.start(),t}const P=/^\s*\[\[\s*reply_to\s*:\s*([^\]\n]+)\s*\]\]\s*/i;function F(e){let t=``;for(let n of e){let e=n.charCodeAt(0);e>=0&&e<=31||e===127||n===`[`||n===`]`||(t+=n)}return t}function I(e){let t=e?.trim();if(!t)return;let n=F(t).trim();if(n)return n.length>256?n.slice(0,256):n}function L(e,t){let n=I(t);if(!n)return e;let r=`[[reply_to:${n}]]`,i=e.match(P);if(i){let t=e.slice(i[0].length).trimStart();return t?`${r} ${t}`:r}let a=e.trimStart();return a?`${r} ${a}`:r}function R(e){if(!e)return null;let t=typeof e.messageId==`string`&&e.messageId.trim()||typeof e.message_id==`string`&&e.message_id.trim()||typeof e.id==`string`&&e.id.trim()||typeof e.guid==`string`&&e.guid.trim()||(typeof e.message_id==`number`?String(e.message_id):null)||(typeof e.id==`number`?String(e.id):null);return t?String(t).trim():null}async function z(e,n,r={}){let l=r.config??t(),u=r.account??i({cfg:l,accountId:r.accountId}),d=r.cliPath?.trim()||u.config.cliPath?.trim()||`imsg`,f=r.dbPath?.trim()||u.config.dbPath?.trim(),p=T(r.chatId?k(r.chatId):e),m=r.service??(p.kind===`handle`?p.service:void 0)??u.config.service,h=r.region?.trim()||u.config.region?.trim()||`US`,g=typeof r.maxBytes==`number`?r.maxBytes:typeof u.config.mediaMaxMb==`number`?u.config.mediaMaxMb*1024*1024:16*1024*1024,_=n??``,v;if(r.mediaUrl?.trim()){let e=await(r.resolveAttachmentImpl??c)(r.mediaUrl.trim(),g,{localRoots:r.mediaLocalRoots});if(v=e.path,!_.trim()){let t=a(e.contentType??void 0);t&&(_=t===`image`?`<media:image>`:`<media:${t}>`)}}if(!_.trim()&&!v)throw Error(`iMessage send requires text or media`);if(_.trim()){let e=o({cfg:l,channel:`imessage`,accountId:u.accountId});_=s(_,e)}_=L(_,r.replyToId);let y={text:_,service:m||`auto`,region:h};v&&(y.file=v),p.kind===`chat_id`?y.chat_id=p.chatId:p.kind===`chat_guid`?y.chat_guid=p.chatGuid:p.kind===`chat_identifier`?y.chat_identifier=p.chatIdentifier:y.to=p.to;let b=r.client??(r.createClient?await r.createClient({cliPath:d,dbPath:f}):await N({cliPath:d,dbPath:f})),x=!r.client;try{let e=await b.request(`send`,y,{timeoutMs:r.timeoutMs});return{messageId:R(e)??(e?.ok?`ok`:`unknown`)}}finally{x&&await b.stop()}}export{O as a,k as i,N as n,w as o,A as r,T as s,z as t};
|
|
2
|
-
//# sourceMappingURL=send-COpehmAB.js.map
|
package/dist/send-CWVTcDAW.js
CHANGED
|
@@ -4,4 +4,3 @@ import{g as e}from"./paths-piJASC5k.js";import{Za as t,pr as n,wi as r}from"./mo
|
|
|
4
4
|
`);continue}if(e.startsWith(`:`)){n=s.indexOf(`
|
|
5
5
|
`);continue}let[t,...r]=e.split(`:`),i=t.trim(),a=r.join(`:`),o=a.startsWith(` `)?a.slice(1):a;i===`event`?l.event=o:i===`data`?l.data=l.data?`${l.data}\n${o}`:o:i===`id`&&(l.id=o),n=s.indexOf(`
|
|
6
6
|
`)}}u()}function O(e,r){let i=!!e.baseUrl?.trim(),a=!!e.account?.trim(),o=r||(!i||!a?n({cfg:t(),accountId:e.accountId}):void 0),s=e.baseUrl?.trim()||o?.baseUrl;if(!s)throw Error(`Signal base URL is required`);return{baseUrl:s,account:e.account?.trim()||o?.config.account?.trim()}}function k(e){let t=e.trim();if(!t)throw Error(`Signal recipient is required`);t.toLowerCase().startsWith(`signal:`)&&(t=t.slice(7).trim());let n=t.toLowerCase();return n.startsWith(`group:`)?{type:`group`,groupId:t.slice(6).trim()}:n.startsWith(`username:`)?{type:`username`,username:t.slice(9).trim()}:n.startsWith(`u:`)?{type:`username`,username:t.trim()}:{type:`recipient`,recipient:t}}function A(e,t){return e.type===`recipient`?t.recipient?{recipient:[e.recipient]}:null:e.type===`group`?t.group?{groupId:e.groupId}:null:e.type===`username`&&t.username?{username:[e.username]}:null}async function j(r,i,a={}){let s=a.cfg??t(),c=n({cfg:s,accountId:a.accountId}),{baseUrl:u,account:d}=O(a,c),f=k(r),p=i??``,m=!1,h=[],_=a.textMode??`markdown`,v=typeof a.maxBytes==`number`?a.maxBytes:typeof c.config.mediaMaxMb==`number`?c.config.mediaMaxMb*1024*1024:typeof s.agents?.defaults?.mediaMaxMb==`number`?s.agents.defaults.mediaMaxMb*1024*1024:8*1024*1024,y;if(a.mediaUrl?.trim()){let t=await l(a.mediaUrl.trim(),v,{localRoots:a.mediaLocalRoots});y=[t.path];let n=e(t.contentType??void 0);!p&&n&&(p=n===`image`?`<media:image>`:`<media:${n}>`,m=!0)}if(p.trim()&&!m)if(_===`plain`)h=a.textStyles??[];else{let e=o({cfg:s,channel:`signal`,accountId:c.accountId}),t=g(p,{tableMode:e});p=t.text,h=t.styles}if(!p.trim()&&(!y||y.length===0))throw Error(`Signal send requires text or media`);let b={message:p};h.length>0&&(b[`text-style`]=h.map(e=>`${e.start}:${e.length}:${e.style}`)),d&&(b.account=d),y&&y.length>0&&(b.attachments=y);let x=A(f,{recipient:!0,group:!0,username:!0});if(!x)throw Error(`Signal recipient is required`);Object.assign(b,x);let S=(await T(`send`,b,{baseUrl:u,timeoutMs:a.timeoutMs}))?.timestamp;return{messageId:S?String(S):`unknown`,timestamp:S}}async function M(e,t={}){let{baseUrl:n,account:r}=O(t),i=A(k(e),{recipient:!0,group:!0});if(!i)return!1;let a={...i};return r&&(a.account=r),t.stop&&(a.stop=!0),await T(`sendTyping`,a,{baseUrl:n,timeoutMs:t.timeoutMs}),!0}async function N(e,t,n={}){if(!Number.isFinite(t)||t<=0)return!1;let{baseUrl:r,account:i}=O(n),a=A(k(e),{recipient:!0});if(!a)return!1;let o={...a,targetTimestamp:t,type:n.type??`read`};return i&&(o.account=i),await T(`sendReceipt`,o,{baseUrl:r,timeoutMs:n.timeoutMs}),!0}export{E as a,b as c,O as i,N as n,T as o,M as r,D as s,j as t};
|
|
7
|
-
//# sourceMappingURL=send-CWVTcDAW.js.map
|
package/dist/send-CciNyaWL.js
CHANGED
|
@@ -5,4 +5,3 @@ import{d as e,y as t}from"./paths-CrCoPIVK.js";import{E as n}from"./subsystem-Bc
|
|
|
5
5
|
`:``}${t}`,i=s.length+r.length,a=c+(n?0:1);(i>m||a>h)&&s.length>0&&u(),s.length>0?(s+=r,n||(c+=1)):(s=t,c=1)}l=a}if(s.length){let e=Xt(s,l);e.trim().length&&o.push(e)}return en(e,o)}function $t(e,t){if((t.chunkMode??`length`)!==`newline`)return Qt(e,t);let n=m(e,Math.max(1,Math.floor(t.maxChars??Gt)),`newline`),r=[];for(let e of n){let n=Qt(e,t);if(!n.length&&e){r.push(e);continue}r.push(...n)}return r}function en(e,t){if(t.length<=1||!(e.startsWith(`Reasoning:
|
|
6
6
|
_`)&&e.trimEnd().endsWith(`_`)))return t;let n=[...t];for(let e=0;e<n.length;e++){let t=e===n.length-1,r=n[e];if(r.trimEnd().endsWith(`_`)||(n[e]=`${r}_`),t)break;let i=n[e+1],a=i.length-i.trimStart().length,o=i.slice(0,a),s=i.slice(a);s.startsWith(`_`)||(n[e+1]=`${o}_${s}`)}return n}const tn=Object.entries(oe).filter(([,e])=>typeof e==`bigint`),nn=tn.reduce((e,[,t])=>e|t,0n),rn=oe.Administrator;function R(e,t){return t?e|BigInt(t):e}function an(e,t){return t?e&~BigInt(t):e}function on(e){return tn.filter(([,t])=>(e&t)===t).map(([e])=>e).toSorted()}function sn(e){return(e&rn)===rn}function cn(e,t){return(e&t)===t}function ln(e){return e===E.GuildNewsThread||e===E.GuildPublicThread||e===E.GuildPrivateThread}async function un(e){let t=await e.get(D.user(`@me`));if(!t?.id)throw Error(`Failed to resolve bot user id`);return t.id}async function dn(e,t,n={}){let r=L(n);try{let[n,i]=await Promise.all([r.get(D.guild(e)),r.get(D.guildMember(e,t))]),a=new Map((n.roles??[]).map(e=>[e.id,e])),o=a.get(e),s=0n;o?.permissions&&(s=R(s,o.permissions));for(let e of i.roles??[]){let t=a.get(e);t?.permissions&&(s=R(s,t.permissions))}return s}catch{return null}}async function fn(e,t,n,r,i={}){let a=await dn(e,t,i);return a===null?!1:sn(a)?!0:r(a,n)}async function pn(e,t,n,r={}){return await fn(e,t,n,(e,t)=>t.some(t=>cn(e,t)),r)}async function mn(e,t={}){let n=L(t),r=await n.get(D.channel(e)),i=`type`in r?r.type:void 0,a=`guild_id`in r?r.guild_id:void 0;if(!a)return{channelId:e,permissions:[],raw:`0`,isDm:!0,channelType:i};let o=await un(n),[s,c]=await Promise.all([n.get(D.guild(a)),n.get(D.guildMember(a,o))]),l=new Map((s.roles??[]).map(e=>[e.id,e])),u=l.get(a),d=0n;u?.permissions&&(d=R(d,u.permissions));for(let e of c.roles??[]){let t=l.get(e);t?.permissions&&(d=R(d,t.permissions))}if(sn(d))return{channelId:e,guildId:a,permissions:on(nn),raw:nn.toString(),isDm:!1,channelType:i};let f=d,p=`permission_overwrites`in r?r.permission_overwrites??[]:[];for(let e of p)e.id===a&&(f=an(f,e.deny??`0`),f=R(f,e.allow??`0`));for(let e of p)c.roles?.includes(e.id)&&(f=an(f,e.deny??`0`),f=R(f,e.allow??`0`));for(let e of p)e.id===o&&(f=an(f,e.deny??`0`),f=R(f,e.allow??`0`));return{channelId:e,guildId:a,permissions:on(f),raw:f.toString(),isDm:!1,channelType:i}}var hn=class extends Error{constructor(e,t){super(e),this.name=`DiscordSendError`,t&&Object.assign(this,t)}toString(){return this.message}};function gn(e){let t=e.trim();if(!t)throw Error(`emoji required`);let n=t.match(/^<a?:([^:>]+):(\d+)>$/),r=n?`${n[1]}:${n[2]}`:t.replace(/[\uFE0E\uFE0F]/g,``);return encodeURIComponent(r)}async function z(e,t,n){let r=n??l(),i=s({cfg:r,accountId:t}),a=e.trim(),o={ambiguousMessage:`Ambiguous Discord recipient "${a}". Use "user:${a}" for DMs or "channel:${a}" for channel messages.`},c=await Lt(e,{cfg:r,accountId:i.accountId},o);if(c)return{kind:c.kind,id:c.id};let u=F(e,o);if(!u)throw Error(`Recipient is required for Discord sends`);return{kind:u.kind,id:u.id}}function _n(e){let t=e.map(e=>e.trim()).filter(Boolean);if(t.length===0)throw Error(`At least one sticker id is required`);if(t.length>3)throw Error(`Discord supports up to 3 stickers per message`);return t}function B(e,t){let n=e.trim();if(!n)throw Error(`${t} is required`);return n}function vn(e){let t=ee(e,{maxOptions:10}),n=S(t.durationHours,{defaultHours:24,maxHours:768});return{question:{text:t.question},answers:t.options.map(e=>({poll_media:{text:e}})),duration:n,allow_multiselect:t.maxSelections>1,layout_type:ke.Default}}function yn(e){if(!e||typeof e!=`object`)return;let t=`code`in e&&e.code!==void 0?e.code:`rawError`in e&&e.rawError&&typeof e.rawError==`object`?e.rawError.code:void 0;if(typeof t==`number`)return t;if(typeof t==`string`&&/^\d+$/.test(t))return Number(t)}async function V(e,t){if(e instanceof hn)return e;let n=yn(e);if(n===50007)return new hn(`discord dm failed: user blocks dms or privacy settings disallow it`,{kind:`dm-blocked`});if(n!==50013)return e;let r=[];try{let e=await mn(t.channelId,{rest:t.rest,token:t.token}),n=new Set(e.permissions),i=[`ViewChannel`,`SendMessages`];ln(e.channelType)&&i.push(`SendMessagesInThreads`),t.hasMedia&&i.push(`AttachFiles`),r=i.filter(e=>!n.has(e))}catch{}return new hn(`${r.length?`missing permissions in channel ${t.channelId}: ${r.join(`, `)}`:`missing permissions in channel ${t.channelId}`}. bot might be muted or blocked by role/channel overrides`,{kind:`missing-permissions`,channelId:t.channelId,missingPermissions:r})}async function H(e,t,n){if(t.kind===`channel`)return{channelId:t.id};let r=await n(()=>e.post(D.userChannels(),{body:{recipient_id:t.id}}),`dm-channel`);if(!r?.id)throw Error(`Failed to create Discord DM channel`);return{channelId:r.id,dm:!0}}async function bn(e,t){try{return(await e.get(D.channel(t)))?.type}catch{return}}const U=4096;function xn(e,t={}){if(!e)return[];let n=$t(e,{maxChars:t.maxChars??2e3,maxLines:t.maxLinesPerMessage,chunkMode:t.chunkMode});return!n.length&&e&&n.push(e),n}function Sn(e){return!!e?.some(e=>`isV2`in e&&e.isV2)}function Cn(e){if(!(!e.components||!e.isFirst))return typeof e.components==`function`?e.components(e.text):e.components}function wn(e){if(e?.length)return e.map(e=>e instanceof fe?e:new fe(e))}function Tn(e){if(!(!e.embeds||!e.isFirst))return wn(e.embeds)}function En(e){let t={},n=Sn(e.components),r=e.text.trim();return!n&&r&&(t.content=e.text),e.components?.length&&(t.components=e.components),!n&&e.embeds?.length&&(t.embeds=e.embeds),e.flags!==void 0&&(t.flags=e.flags),e.files?.length&&(t.files=e.files),t}function W(e){return Object.fromEntries(Object.entries(e).filter(([,e])=>e!==void 0))}function Dn(e){if(e instanceof Blob)return e;let t=new ArrayBuffer(e.byteLength);return new Uint8Array(t).set(e),new Blob([t])}async function G(e,t,n,r,i,a,o,s,c,l){if(!n.trim())throw Error(`Message must be non-empty for Discord sends`);let u=r?{message_id:r,fail_if_not_exists:!1}:void 0,d=l?U:void 0,f=xn(n,{maxLinesPerMessage:a,chunkMode:c}),p=async(n,r)=>{let a=W({...j(En({text:n,components:Cn({components:o,text:n,isFirst:r}),embeds:Tn({embeds:s,isFirst:r}),flags:d})),...u?{message_reference:u}:{}});return await i(()=>e.post(D.channelMessages(t),{body:a}),`text`)};if(f.length===1)return await p(f[0],!0);let m=null;for(let[e,t]of f.entries())m=await p(t,e===0);if(!m)throw Error(`Discord send failed (empty chunk result)`);return m}async function On(e,t,n,r,i,a,o,s,c,l,u,d,f){let m=await p(r,x({maxBytes:a,mediaLocalRoots:i})),h=n?xn(n,{maxLinesPerMessage:c,chunkMode:d}):[],g=h[0]??``,_=o?{message_id:o,fail_if_not_exists:!1}:void 0,v=f?U:void 0,y=Dn(m.buffer),b=En({text:g,components:Cn({components:l,text:g,isFirst:!0}),embeds:Tn({embeds:u,isFirst:!0}),flags:v,files:[{data:y,name:m.fileName??`upload`}]}),ee=await s(()=>e.post(D.channelMessages(t),{body:W({...j(b),..._?{message_reference:_}:{}})}),`media`);for(let n of h.slice(1))n.trim()&&await G(e,t,n,o,s,c,void 0,void 0,d,f);return ee}function kn(e){return e.id&&e.name?`${e.name}:${e.id}`:e.name??``}function An(e){return kn(e)}async function jn(e,t={}){let n=L(t),r={name:e.name};return e.type!==void 0&&(r.type=e.type),e.parentId&&(r.parent_id=e.parentId),e.topic&&(r.topic=e.topic),e.position!==void 0&&(r.position=e.position),e.nsfw!==void 0&&(r.nsfw=e.nsfw),await n.post(D.guildChannels(e.guildId),{body:r})}async function Mn(e,t={}){let n=L(t),r={};return e.name!==void 0&&(r.name=e.name),e.topic!==void 0&&(r.topic=e.topic),e.position!==void 0&&(r.position=e.position),e.parentId!==void 0&&(r.parent_id=e.parentId),e.nsfw!==void 0&&(r.nsfw=e.nsfw),e.rateLimitPerUser!==void 0&&(r.rate_limit_per_user=e.rateLimitPerUser),e.archived!==void 0&&(r.archived=e.archived),e.locked!==void 0&&(r.locked=e.locked),e.autoArchiveDuration!==void 0&&(r.auto_archive_duration=e.autoArchiveDuration),e.availableTags!==void 0&&(r.available_tags=e.availableTags.map(e=>({...e.id!==void 0&&{id:e.id},name:e.name,...e.moderated!==void 0&&{moderated:e.moderated},...e.emoji_id!==void 0&&{emoji_id:e.emoji_id},...e.emoji_name!==void 0&&{emoji_name:e.emoji_name}}))),await n.patch(D.channel(e.channelId),{body:r})}async function Nn(e,t={}){return await L(t).delete(D.channel(e)),{ok:!0,channelId:e}}async function Pn(e,t={}){let n=L(t),r=[{id:e.channelId,...e.parentId!==void 0&&{parent_id:e.parentId},...e.position!==void 0&&{position:e.position}}];return await n.patch(D.guildChannels(e.guildId),{body:r}),{ok:!0}}async function Fn(e,t={}){let n=L(t),r={type:e.targetType};return e.allow!==void 0&&(r.allow=e.allow),e.deny!==void 0&&(r.deny=e.deny),await n.put(`/channels/${e.channelId}/permissions/${e.targetId}`,{body:r}),{ok:!0}}async function In(e,t,n={}){return await L(n).delete(`/channels/${e}/permissions/${t}`),{ok:!0}}async function Ln(e,t={}){return await L(t).get(D.guildEmojis(e))}async function Rn(e,t={}){let n=L(t),r=await g(e.mediaUrl,262144),i=r.contentType?.toLowerCase();if(!i||![`image/png`,`image/jpeg`,`image/jpg`,`image/gif`].includes(i))throw Error(`Discord emoji uploads require a PNG, JPG, or GIF image`);let a=`data:${i};base64,${r.buffer.toString(`base64`)}`,o=(e.roleIds??[]).map(e=>e.trim()).filter(Boolean);return await n.post(D.guildEmojis(e.guildId),{body:{name:B(e.name,`Emoji name`),image:a,roles:o.length?o:void 0}})}async function zn(e,t={}){let n=L(t),r=await g(e.mediaUrl,524288),i=r.contentType?.toLowerCase();if(!i||![`image/png`,`image/apng`,`application/json`].includes(i))throw Error(`Discord sticker uploads require a PNG, APNG, or Lottie JSON file`);return await n.post(D.guildStickers(e.guildId),{body:{name:B(e.name,`Sticker name`),description:B(e.description,`Sticker description`),tags:B(e.tags,`Sticker tags`),files:[{data:r.buffer,name:r.fileName??`sticker`,contentType:i}]}})}async function Bn(e,t,n={}){return await L(n).get(D.guildMember(e,t))}async function Vn(e,t={}){return await L(t).get(D.guildRoles(e))}async function Hn(e,t={}){return await L(t).put(D.guildMemberRole(e.guildId,e.userId,e.roleId)),{ok:!0}}async function Un(e,t={}){return await L(t).delete(D.guildMemberRole(e.guildId,e.userId,e.roleId)),{ok:!0}}async function Wn(e,t={}){return await L(t).get(D.channel(e))}async function Gn(e,t={}){return await L(t).get(D.guildChannels(e))}async function Kn(e,t,n={}){return await L(n).get(D.guildVoiceState(e,t))}async function qn(e,t={}){return await L(t).get(D.guildScheduledEvents(e))}async function Jn(e,t,n={}){return await L(n).post(D.guildScheduledEvents(e),{body:t})}async function Yn(e,t={}){let n=L(t),r=e.until;if(!r&&e.durationMinutes){let t=e.durationMinutes*60*1e3;r=new Date(Date.now()+t).toISOString()}return await n.patch(D.guildMember(e.guildId,e.userId),{body:{communication_disabled_until:r??null},headers:e.reason?{"X-Audit-Log-Reason":encodeURIComponent(e.reason)}:void 0})}async function Xn(e,t={}){return await L(t).delete(D.guildMember(e.guildId,e.userId),{headers:e.reason?{"X-Audit-Log-Reason":encodeURIComponent(e.reason)}:void 0}),{ok:!0}}async function Zn(e,t={}){let n=L(t),r=typeof e.deleteMessageDays==`number`&&Number.isFinite(e.deleteMessageDays)?Math.min(Math.max(Math.floor(e.deleteMessageDays),0),7):void 0;return await n.put(D.guildBan(e.guildId,e.userId),{body:r===void 0?void 0:{delete_message_days:r},headers:e.reason?{"X-Audit-Log-Reason":encodeURIComponent(e.reason)}:void 0}),{ok:!0}}async function Qn(e,t={},n={}){let r=L(n),i=typeof t.limit==`number`&&Number.isFinite(t.limit)?Math.min(Math.max(Math.floor(t.limit),1),100):void 0,a={};return i&&(a.limit=i),t.before&&(a.before=t.before),t.after&&(a.after=t.after),t.around&&(a.around=t.around),await r.get(D.channelMessages(e),a)}async function $n(e,t,n={}){return await L(n).get(D.channelMessage(e,t))}async function er(e,t,n,r={}){return await L(r).patch(D.channelMessage(e,t),{body:{content:n.content}})}async function tr(e,t,n={}){return await L(n).delete(D.channelMessage(e,t)),{ok:!0}}async function nr(e,t,n={}){return await L(n).put(D.channelPin(e,t)),{ok:!0}}async function rr(e,t,n={}){return await L(n).delete(D.channelPin(e,t)),{ok:!0}}async function ir(e,t={}){return await L(t).get(D.channelPins(e))}async function ar(e,t,n={}){let r=L(n),i={name:t.name};t.autoArchiveMinutes&&(i.auto_archive_duration=t.autoArchiveMinutes),!t.messageId&&t.type!==void 0&&(i.type=t.type);let a;if(!t.messageId)try{a=(await r.get(D.channel(e)))?.type}catch{a=void 0}let o=a===E.GuildForum||a===E.GuildMedia;o&&(i.message={content:t.content?.trim()?t.content:t.name},t.appliedTags?.length&&(i.applied_tags=t.appliedTags)),!t.messageId&&!o&&i.type===void 0&&(i.type=E.PublicThread);let s=t.messageId?D.threads(e,t.messageId):D.threads(e),c=await r.post(s,{body:i});return!o&&t.content?.trim()&&await r.post(D.channelMessages(c.id),{body:{content:t.content}}),c}async function or(e,t={}){let n=L(t);if(e.includeArchived){if(!e.channelId)throw Error(`channelId required to list archived threads`);let t={};return e.before&&(t.before=e.before),e.limit&&(t.limit=e.limit),await n.get(D.channelThreads(e.channelId,`public`),t)}return await n.get(D.guildActiveThreads(e.guildId))}async function sr(e,t={}){let n=L(t),r=new URLSearchParams;if(r.set(`content`,e.content),e.channelIds?.length)for(let t of e.channelIds)r.append(`channel_id`,t);if(e.authorIds?.length)for(let t of e.authorIds)r.append(`author_id`,t);if(e.limit){let t=Math.min(Math.max(Math.floor(e.limit),1),25);r.set(`limit`,String(t))}return await n.get(`/guilds/${e.guildId}/messages/search?${r.toString()}`)}async function cr(e){if(e)try{await C.unlink(e)}catch{}}const lr=/```[\s\S]*?```|`[^`\n]*`/g,ur=/(^|[\s([{"'.,;:!?])@([a-z0-9_.-]{2,32}(?:#[0-9]{4})?)/gi,dr=new Set([`everyone`,`here`]);function fr(e){let t=String(e??``).trim();return/^\d+$/.test(t)?t:null}function pr(e){let t=e.userId==null?null:fr(e.userId),n=e.roleId==null?null:fr(e.roleId),r=e.channelId==null?null:fr(e.channelId),i=[t?{kind:`user`,id:t}:null,n?{kind:`role`,id:n}:null,r?{kind:`channel`,id:r}:null].filter(e=>!!e);if(i.length!==1)throw Error(`formatMention requires exactly one of userId, roleId, or channelId`);let a=i[0];return a.kind===`user`?`<@${a.id}>`:a.kind===`role`?`<@&${a.id}>`:`<#${a.id}>`}function mr(e,t){return e.includes(`@`)?e.replace(ur,(e,n,r)=>{let i=String(r??``).trim();if(!i)return e;let a=i.toLowerCase();if(dr.has(a))return e;let o=kt({accountId:t,handle:i});return o?`${String(n??``)}${pr({userId:o})}`:e}):e}function K(e,t){if(!e.includes(`@`))return e;let n=``,r=0;lr.lastIndex=0;for(let i of e.matchAll(lr)){let a=i.index??0;n+=mr(e.slice(r,a),t.accountId),n+=i[0],r=a+i[0].length}return n+=mr(e.slice(r),t.accountId),n}const hr=ne(re);function gr(e,t){return{timeout:t?.timeoutMs??e,maxBuffer:t?.maxBufferBytes??10485760}}async function _r(e,t){let{stdout:n}=await hr(`ffprobe`,e,gr(1e4,t));return n.toString()}async function vr(e,t){let{stdout:n}=await hr(`ffmpeg`,e,gr(45e3,t));return n.toString()}function yr(e,t){return e.trim().toLowerCase().split(/[,\r\n]+/,t).map(e=>e.trim())}function br(e){let[t,n]=yr(e,2),r=t||null,i=n?Number.parseInt(n,10):NaN;return{codec:r,sampleRateHz:Number.isFinite(i)?i:null}}const xr=8192;async function Sr(e){try{let t=await _r([`-v`,`error`,`-show_entries`,`format=duration`,`-of`,`csv=p=0`,e]),n=parseFloat(t.trim());if(isNaN(n))throw Error(`Could not parse duration`);return Math.round(n*100)/100}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Failed to get audio duration: ${t}`,{cause:e})}}async function Cr(e){try{return await wr(e)}catch{return Tr()}}async function wr(e){let t=n(),r=w.join(t,`waveform-${ie.randomUUID()}.raw`);try{await vr([`-y`,`-i`,e,`-vn`,`-sn`,`-dn`,`-t`,`1200`,`-f`,`s16le`,`-acodec`,`pcm_s16le`,`-ac`,`1`,`-ar`,`8000`,r]);let t=await C.readFile(r),n=new Int16Array(t.buffer,t.byteOffset,t.byteLength/2),i=Math.max(1,Math.floor(n.length/256)),a=[];for(let e=0;e<256&&e*i<n.length;e++){let t=0,r=0;for(let a=0;a<i&&e*i+a<n.length;a++)t+=Math.abs(n[e*i+a]),r++;let o=r>0?t/r:0,s=Math.min(255,Math.round(o/32767*255));a.push(s)}for(;a.length<256;)a.push(0);return Buffer.from(a).toString(`base64`)}finally{await cr(r)}}function Tr(){let e=[];for(let t=0;t<256;t++){let n=Math.round(128+64*Math.sin(t/256*Math.PI*8));e.push(Math.min(255,Math.max(0,n)))}return Buffer.from(e).toString(`base64`)}async function Er(e){let t=e.trim();if(/^[a-z][a-z0-9+.-]*:\/\//i.test(t))throw Error(`Voice message conversion requires a local file path; received a URL/protocol source: ${t}`);if(w.extname(e).toLowerCase()===`.ogg`)try{let{codec:t,sampleRateHz:n}=br(await _r([`-v`,`error`,`-select_streams`,`a:0`,`-show_entries`,`stream=codec_name,sample_rate`,`-of`,`csv=p=0`,e]));if(t===`opus`&&n===48e3)return{path:e,cleanup:!1}}catch{}let r=n(),i=w.join(r,`voice-${ie.randomUUID()}.ogg`);return await vr([`-y`,`-i`,e,`-vn`,`-sn`,`-dn`,`-t`,`1200`,`-ar`,`48000`,`-c:a`,`libopus`,`-b:a`,`64k`,i]),{path:i,cleanup:!0}}async function Dr(e){let[t,n]=await Promise.all([Sr(e),Cr(e)]);return{durationSecs:t,waveform:n}}async function Or(e,t,n,r,i,a,o,s){let c=`voice-message.ogg`,l=n.byteLength,u=s;if(!u)throw Error(`Discord bot token is required for voice message upload`);let d=await a(async()=>{let n=`${e.options?.baseUrl??`https://discord.com/api`}/channels/${t}/attachments`,r=await fetch(n,{method:`POST`,headers:{Authorization:`Bot ${u}`,"Content-Type":`application/json`},body:JSON.stringify({files:[{filename:c,file_size:l,id:`0`}]})});if(!r.ok){if(r.status===429){let e=await r.json().catch(()=>({}));throw new be(r,{message:e.message??`You are being rate limited.`,retry_after:e.retry_after??1,global:e.global??!1})}let e=await r.json().catch(()=>null),t=Error(`Upload URL request failed: ${r.status} ${e?.message??``}`);throw e?.code!==void 0&&(t.code=e.code),t}return await r.json()},`voice-upload-url`);if(!d.attachments?.[0])throw Error(`Failed to get upload URL for voice message`);let{upload_url:f,upload_filename:p}=d.attachments[0],m=await fetch(f,{method:`PUT`,headers:{"Content-Type":`audio/ogg`},body:new Uint8Array(n)});if(!m.ok)throw Error(`Failed to upload voice message: ${m.status}`);let h={flags:o?xr|4096:xr,attachments:[{id:`0`,filename:c,uploaded_filename:p,duration_secs:r.durationSecs,waveform:r.waveform}]};return i&&(h.message_reference={message_id:i,fail_if_not_exists:!1}),await a(()=>e.post(`/channels/${t}/messages`,{body:h}),`voice-message`)}async function kr(e){for(let t of e.chunks)await G(e.rest,e.threadId,t,void 0,e.request,e.maxLinesPerMessage,void 0,void 0,e.chunkMode,e.silent)}function Ar(e){return(e.split(`
|
|
7
7
|
`).find(e=>e.trim())?.trim()??``).slice(0,100)||new Date().toISOString().slice(0,16)}function jr(e){return e===E.GuildForum||e===E.GuildMedia}function q(e,t){return{messageId:e.id?String(e.id):`unknown`,channelId:String(e.channel_id??t)}}async function Mr(e,t){let n=t.cfg??l(),{rest:r,request:i}=I(t,n),{channelId:a}=await H(r,await z(e,t.accountId,n),i);return{rest:r,request:i,channelId:a}}async function Nr(e,t,n={}){let r=n.cfg??l(),i=s({cfg:r,accountId:n.accountId}),a=_({cfg:r,channel:`discord`,accountId:i.accountId}),o=h(r,`discord`,i.accountId),c=typeof i.config.mediaMaxMb==`number`?i.config.mediaMaxMb*1024*1024:8*1024*1024,u=te(t??``,a),d=K(u,{accountId:i.accountId}),{token:f,rest:p,request:m}=I(n,r),{channelId:g}=await H(p,await z(e,n.accountId,r),m);if(jr(await bn(p,g))){let e=Ar(u),t=xn(d,{maxLinesPerMessage:i.config.maxLinesPerMessage,chunkMode:o}),r=t[0]?.trim()?t[0]:e,a=En({text:r,components:Cn({components:n.components,text:r,isFirst:!0}),embeds:Tn({embeds:n.embeds,isFirst:!0}),flags:n.silent?4096:void 0}),s;try{s=await m(()=>p.post(D.threads(g),{body:{name:e,message:W(j(a))}}),`forum-thread`)}catch(e){throw await V(e,{channelId:g,rest:p,token:f,hasMedia:!!n.mediaUrl})}let l=s.id,h=s.message?.id??l,_=s.message?.channel_id??l,v=t.slice(1);try{if(n.mediaUrl){let[e,...t]=v;await On(p,l,e??``,n.mediaUrl,n.mediaLocalRoots,c,void 0,m,i.config.maxLinesPerMessage,void 0,void 0,o,n.silent),await kr({rest:p,threadId:l,chunks:t,request:m,maxLinesPerMessage:i.config.maxLinesPerMessage,chunkMode:o,silent:n.silent})}else await kr({rest:p,threadId:l,chunks:v,request:m,maxLinesPerMessage:i.config.maxLinesPerMessage,chunkMode:o,silent:n.silent})}catch(e){throw await V(e,{channelId:l,rest:p,token:f,hasMedia:!!n.mediaUrl})}return y({channel:`discord`,accountId:i.accountId,direction:`outbound`}),q({id:h,channel_id:_},g)}let v;try{v=n.mediaUrl?await On(p,g,d,n.mediaUrl,n.mediaLocalRoots,c,n.replyTo,m,i.config.maxLinesPerMessage,n.components,n.embeds,o,n.silent):await G(p,g,d,n.replyTo,m,i.config.maxLinesPerMessage,n.components,n.embeds,o,n.silent)}catch(e){throw await V(e,{channelId:g,rest:p,token:f,hasMedia:!!n.mediaUrl})}return y({channel:`discord`,accountId:i.accountId,direction:`outbound`}),q(v,g)}function Pr(e){let t=new URL(`https://discord.com/api/v10/webhooks/${encodeURIComponent(e.webhookId)}/${encodeURIComponent(e.webhookToken)}`);return t.searchParams.set(`wait`,e.wait===!1?`false`:`true`),e.threadId!==void 0&&e.threadId!==null&&e.threadId!==``&&t.searchParams.set(`thread_id`,String(e.threadId)),t.toString()}async function Fr(e,t){let n=t.webhookId.trim(),r=t.webhookToken.trim();if(!n||!r)throw Error(`Discord webhook id/token are required`);let i=K(e,{accountId:t.accountId}),a=typeof t.replyTo==`string`?t.replyTo.trim():``,o=a?{message_id:a,fail_if_not_exists:!1}:void 0,c=await fetch(Pr({webhookId:n,webhookToken:r,threadId:t.threadId,wait:t.wait}),{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({content:i,username:t.username?.trim()||void 0,avatar_url:t.avatarUrl?.trim()||void 0,...o?{message_reference:o}:{}})});if(!c.ok){let e=await c.text().catch(()=>``);throw Error(`Discord webhook send failed (${c.status}${e?`: ${e.slice(0,200)}`:``})`)}let u=await c.json().catch(()=>({}));try{y({channel:`discord`,accountId:s({cfg:t.cfg??l(),accountId:t.accountId}).accountId,direction:`outbound`})}catch{}return{messageId:u.id?String(u.id):`unknown`,channelId:u.channel_id?String(u.channel_id):t.threadId?String(t.threadId):``}}async function Ir(e,t,n={}){let{rest:r,request:i,channelId:a}=await Mr(e,n),o=n.content?.trim(),s=o?K(o,{accountId:n.accountId}):void 0,c=_n(t);return q(await i(()=>r.post(D.channelMessages(a),{body:{content:s||void 0,sticker_ids:c}}),`sticker`),a)}async function Lr(e,t,n={}){let{rest:r,request:i,channelId:a}=await Mr(e,n),o=n.content?.trim(),s=o?K(o,{accountId:n.accountId}):void 0;if(t.durationSeconds!==void 0)throw Error(`Discord polls do not support durationSeconds; use durationHours`);let c=vn(t),l=n.silent?U:void 0;return q(await i(()=>r.post(D.channelMessages(a),{body:{content:s||void 0,poll:c,...l?{flags:l}:{}}}),`poll`),a)}async function Rr(r){let i=await g(r,t(`audio`)),a=i.fileName?w.extname(i.fileName):``,o=i.contentType?e(i.contentType):``,s=a||o||`.bin`,c=n(),l=w.join(c,`voice-src-${ie.randomUUID()}${s}`);return await C.writeFile(l,i.buffer,{mode:384}),{filePath:l}}async function zr(e,t,n={}){let{filePath:r}=await Rr(t),i=null,a=!1,o,c,u;try{let t=n.cfg??l(),d=s({cfg:t,accountId:n.accountId}),f=I(n,t);o=f.token,c=f.rest;let p=f.request,m=await z(e,n.accountId,t);u=(await H(c,m,p)).channelId;let h=await Er(r);i=h.path,a=h.cleanup;let g=await Dr(i),_=await C.readFile(i),v=await Or(c,u,_,g,n.replyTo,p,n.silent,o);return y({channel:`discord`,accountId:d.accountId,direction:`outbound`}),q(v,u)}catch(e){throw u&&c&&o?await V(e,{channelId:u,rest:c,token:o,hasMedia:!0}):e}finally{await cr(a?i:null),await cr(r)}}const J=new Map,Y=new Map;function Br(e,t){return typeof e.expiresAt==`number`&&e.expiresAt<=t}function Vr(e,t,n){let r=e.createdAt??t,i=e.expiresAt??r+n;return{...e,createdAt:r,expiresAt:i}}function Hr(e){let t=Date.now(),n=e.ttlMs??18e5;for(let r of e.entries){let i=Vr({...r,messageId:e.messageId??r.messageId},t,n);J.set(r.id,i)}for(let r of e.modals){let i=Vr({...r,messageId:e.messageId??r.messageId},t,n);Y.set(r.id,i)}}function Ur(e){let t=J.get(e.id);return t?Br(t,Date.now())?(J.delete(e.id),null):(e.consume!==!1&&J.delete(e.id),t):null}function Wr(e){let t=Y.get(e.id);return t?Br(t,Date.now())?(Y.delete(e.id),null):(e.consume!==!1&&Y.delete(e.id),t):null}const Gr=`attachment://`,Kr=new Map([[`row`,`actions`],[`action-row`,`actions`]]);function qr(e){return`${e}${ie.randomBytes(6).toString(`base64url`)}`}function X(e,t){if(!e||typeof e!=`object`||Array.isArray(e))throw Error(`${t} must be an object`);return e}function Z(e,t,n){if(typeof e!=`string`)throw Error(`${t} must be a string`);let r=e.trim();if(!n?.allowEmpty&&!r)throw Error(`${t} cannot be empty`);return n?.allowEmpty?e:r}function Q(e){return typeof e==`string`&&e.trim()||void 0}function Jr(e,t){if(e!==void 0){if(!Array.isArray(e))throw Error(`${t} must be an array`);if(e.length!==0)return e.map((e,n)=>Z(e,`${t}[${n}]`))}}function $(e){if(!(typeof e!=`number`||!Number.isFinite(e)))return e}function Yr(e,t){return e?.trim()||`field_${t+1}`}function Xr(e,t){let n=e.trim();if(!n.startsWith(`attachment://`))throw Error(`${t} must start with "${Gr}"`);let r=n.slice(13).trim();if(!r)throw Error(`${t} must include an attachment filename`);return`${Gr}${r}`}function Zr(e){let t=e.trim();if(!t.startsWith(`attachment://`))throw Error(`Attachment reference must start with "${Gr}"`);let n=t.slice(13).trim();if(!n)throw Error(`Attachment reference must include a filename`);return n}function Qr(e){switch((e??`primary`).toLowerCase()){case`secondary`:return T.Secondary;case`success`:return T.Success;case`danger`:return T.Danger;case`link`:return T.Link;default:return T.Primary}}function $r(e){return e===`paragraph`?se.Paragraph:se.Short}function ei(e){let t=e.trim().toLowerCase();return Kr.get(t)??t}function ti(e,t){if(e!==void 0){if(!Array.isArray(e))throw Error(`${t} must be an array`);return e.map((e,n)=>{let r=X(e,`${t}[${n}]`);return{label:Z(r.label,`${t}[${n}].label`),value:Z(r.value,`${t}[${n}].value`),description:Q(r.description),emoji:typeof r.emoji==`object`&&r.emoji&&!Array.isArray(r.emoji)?{name:Z(r.emoji.name,`${t}[${n}].emoji.name`),id:Q(r.emoji.id),animated:typeof r.emoji.animated==`boolean`?r.emoji.animated:void 0}:void 0,default:typeof r.default==`boolean`?r.default:void 0}})}}function ni(e,t){let n=X(e,t),r=Q(n.style),i=Q(n.url);if((r===`link`||i)&&!i)throw Error(`${t}.url is required for link buttons`);return{label:Z(n.label,`${t}.label`),style:r,url:i,emoji:typeof n.emoji==`object`&&n.emoji&&!Array.isArray(n.emoji)?{name:Z(n.emoji.name,`${t}.emoji.name`),id:Q(n.emoji.id),animated:typeof n.emoji.animated==`boolean`?n.emoji.animated:void 0}:void 0,disabled:typeof n.disabled==`boolean`?n.disabled:void 0,allowedUsers:Jr(n.allowedUsers,`${t}.allowedUsers`)}}function ri(e,t){let n=X(e,t),r=Q(n.type),i=[`string`,`user`,`role`,`mentionable`,`channel`];if(r&&!i.includes(r))throw Error(`${t}.type must be one of ${i.join(`, `)}`);return{type:r,placeholder:Q(n.placeholder),minValues:$(n.minValues),maxValues:$(n.maxValues),options:ti(n.options,`${t}.options`)}}function ii(e,t,n){let r=X(e,t),i=Z(r.type,`${t}.type`).toLowerCase(),a=[`text`,`checkbox`,`radio`,`select`,`role-select`,`user-select`];if(!a.includes(i))throw Error(`${t}.type must be one of ${a.join(`, `)}`);let o=ti(r.options,`${t}.options`);if([`checkbox`,`radio`,`select`].includes(i)&&(!o||o.length===0))throw Error(`${t}.options is required for ${i} fields`);return{type:i,name:Yr(Q(r.name),n),label:Z(r.label,`${t}.label`),description:Q(r.description),placeholder:Q(r.placeholder),required:typeof r.required==`boolean`?r.required:void 0,options:o,minValues:$(r.minValues),maxValues:$(r.maxValues),minLength:$(r.minLength),maxLength:$(r.maxLength),style:Q(r.style)}}function ai(e,t){let n=X(e,t);switch(ei(Z(n.type,`${t}.type`).toLowerCase())){case`text`:return{type:`text`,text:Z(n.text,`${t}.text`)};case`section`:{let e=Q(n.text),r=n.texts,i=Array.isArray(r)?r.map((e,n)=>Z(e,`${t}.texts[${n}]`)):void 0;if(!e&&(!i||i.length===0))throw Error(`${t}.text or ${t}.texts is required for section blocks`);let a;if(n.accessory!==void 0){let e=X(n.accessory,`${t}.accessory`),r=Z(e.type,`${t}.accessory.type`).toLowerCase();if(r===`thumbnail`)a={type:`thumbnail`,url:Z(e.url,`${t}.accessory.url`)};else if(r===`button`)a={type:`button`,button:ni(e.button,`${t}.accessory.button`)};else throw Error(`${t}.accessory.type must be "thumbnail" or "button"`)}return{type:`section`,text:e,texts:i,accessory:a}}case`separator`:{let e=n.spacing,r;if(e===`small`||e===`large`)r=e;else if(e===1||e===2)r=e;else if(e!==void 0)throw Error(`${t}.spacing must be "small", "large", 1, or 2`);let i=typeof n.divider==`boolean`?n.divider:void 0;return{type:`separator`,spacing:r,divider:i}}case`actions`:{let e=n.buttons,r=Array.isArray(e)?e.map((e,n)=>ni(e,`${t}.buttons[${n}]`)):void 0,i=n.select?ri(n.select,`${t}.select`):void 0;if((!r||r.length===0)&&!i)throw Error(`${t} requires buttons or select`);if(r&&i)throw Error(`${t} cannot include both buttons and select`);return{type:`actions`,buttons:r,select:i}}case`media-gallery`:{let e=n.items;if(!Array.isArray(e)||e.length===0)throw Error(`${t}.items must be a non-empty array`);return{type:`media-gallery`,items:e.map((e,n)=>{let r=X(e,`${t}.items[${n}]`);return{url:Z(r.url,`${t}.items[${n}].url`),description:Q(r.description),spoiler:typeof r.spoiler==`boolean`?r.spoiler:void 0}})}}case`file`:return{type:`file`,file:Xr(Z(n.file,`${t}.file`),`${t}.file`),spoiler:typeof n.spoiler==`boolean`?n.spoiler:void 0};default:throw Error(`${t}.type must be a supported component block`)}}function oi(e){if(e==null)return null;let t=X(e,`components`),n=t.blocks,r=Array.isArray(n)?n.map((e,t)=>ai(e,`components.blocks[${t}]`)):void 0,i=t.modal,a=typeof t.reusable==`boolean`?t.reusable:void 0,o;if(i!==void 0){let e=X(i,`components.modal`),t=e.fields;if(!Array.isArray(t)||t.length===0)throw Error(`components.modal.fields must be a non-empty array`);if(t.length>5)throw Error(`components.modal.fields supports up to 5 inputs`);let n=t.map((e,t)=>ii(e,`components.modal.fields[${t}]`,t));o={title:Z(e.title,`components.modal.title`),triggerLabel:Q(e.triggerLabel),triggerStyle:Q(e.triggerStyle),fields:n}}return{text:Q(t.text),reusable:a,container:typeof t.container==`object`&&t.container&&!Array.isArray(t.container)?{accentColor:t.container.accentColor,spoiler:typeof t.container.spoiler==`boolean`?t.container.spoiler:void 0}:void 0,blocks:r,modal:o}}function si(e){let t=`occomp:cid=${e.componentId}`;return e.modalId?`${t};mid=${e.modalId}`:t}function ci(e){return`ocmodal:mid=${e}`}function li(e){let t=A(e);if(t.key!==`occomp`)return null;let n=t.data.cid;if(typeof n!=`string`||!n.trim())return null;let r=t.data.mid;return{componentId:n,modalId:typeof r==`string`&&r.trim()?r:void 0}}function ui(e){let t=A(e);if(t.key!==`ocmodal`)return null;let n=t.data.mid;return typeof n!=`string`||!n.trim()?null:n}function di(e){return/^__openclaw_discord_component_[a-z_]+_wildcard__$/.test(e)}function fi(e){if(e===`*`||di(e))return{key:`*`,data:{}};let t=A(e);return t.key===`occomp`?{key:`*`,data:t.data}:t}function pi(e){if(e===`*`||di(e))return{key:`*`,data:{}};let t=A(e);return t.key===`ocmodal`?{key:`*`,data:t.data}:t}function mi(e,t){return t&&t.length>0?t.map(e=>new k(e)):e?[new k(e)]:[]}function hi(e){let t=Qr(e.spec.style);if(t===T.Link||e.spec.url){if(!e.spec.url)throw Error(`Link buttons require a url`);let t=e.spec.url;class n extends he{constructor(...n){super(...n),this.label=e.spec.label,this.url=t}}return{component:new n}}let n=e.componentId??qr(`btn_`),r=si({componentId:n,modalId:e.modalId});class i extends ce{constructor(...n){super(...n),this.label=e.spec.label,this.customId=r,this.style=t,this.emoji=e.spec.emoji,this.disabled=e.spec.disabled??!1}}return{component:new i,entry:{id:n,kind:e.modalId?`modal-trigger`:`button`,label:e.spec.label,modalId:e.modalId,allowedUsers:e.spec.allowedUsers}}}function gi(e){let t=(e.spec.type??`string`).toLowerCase(),n=e.componentId??qr(`sel_`),r=si({componentId:n});if(t===`string`){let t=e.spec.options??[];if(t.length===0)throw Error(`String select menus require options`);class i extends Te{constructor(...n){super(...n),this.customId=r,this.options=t,this.minValues=e.spec.minValues,this.maxValues=e.spec.maxValues,this.placeholder=e.spec.placeholder,this.disabled=!1}}return{component:new i,entry:{id:n,kind:`select`,label:e.spec.placeholder??`select`,selectType:`string`,options:t.map(e=>({value:e.value,label:e.label}))}}}if(t===`user`){class t extends Oe{constructor(...t){super(...t),this.customId=r,this.minValues=e.spec.minValues,this.maxValues=e.spec.maxValues,this.placeholder=e.spec.placeholder,this.disabled=!1}}return{component:new t,entry:{id:n,kind:`select`,label:e.spec.placeholder??`user select`,selectType:`user`}}}if(t===`role`){class t extends Se{constructor(...t){super(...t),this.customId=r,this.minValues=e.spec.minValues,this.maxValues=e.spec.maxValues,this.placeholder=e.spec.placeholder,this.disabled=!1}}return{component:new t,entry:{id:n,kind:`select`,label:e.spec.placeholder??`role select`,selectType:`role`}}}if(t===`mentionable`){class t extends _e{constructor(...t){super(...t),this.customId=r,this.minValues=e.spec.minValues,this.maxValues=e.spec.maxValues,this.placeholder=e.spec.placeholder,this.disabled=!1}}return{component:new t,entry:{id:n,kind:`select`,label:e.spec.placeholder??`mentionable select`,selectType:`mentionable`}}}class i extends le{constructor(...t){super(...t),this.customId=r,this.minValues=e.spec.minValues,this.maxValues=e.spec.maxValues,this.placeholder=e.spec.placeholder,this.disabled=!1}}return{component:new i,entry:{id:n,kind:`select`,label:e.spec.placeholder??`channel select`,selectType:`channel`}}}function _i(e){return e instanceof Te||e instanceof Oe||e instanceof Se||e instanceof _e||e instanceof le}function vi(e){if(e.type===`text`){class t extends Ee{constructor(...t){super(...t),this.customId=e.id,this.style=$r(e.style),this.placeholder=e.placeholder,this.required=e.required,this.minLength=e.minLength,this.maxLength=e.maxLength}}return new t}if(e.type===`select`){let t=e.options??[];class n extends Te{constructor(...n){super(...n),this.customId=e.id,this.options=t,this.required=e.required,this.minValues=e.minValues,this.maxValues=e.maxValues,this.placeholder=e.placeholder}}return new n}if(e.type===`role-select`){class t extends Se{constructor(...t){super(...t),this.customId=e.id,this.required=e.required,this.minValues=e.minValues,this.maxValues=e.maxValues,this.placeholder=e.placeholder}}return new t}if(e.type===`user-select`){class t extends Oe{constructor(...t){super(...t),this.customId=e.id,this.required=e.required,this.minValues=e.minValues,this.maxValues=e.maxValues,this.placeholder=e.placeholder}}return new t}if(e.type===`checkbox`){let t=e.options??[];class n extends ue{constructor(...n){super(...n),this.customId=e.id,this.options=t,this.required=e.required,this.minValues=e.minValues,this.maxValues=e.maxValues}}return new n}let t=e.options??[];class n extends ye{constructor(...n){super(...n),this.customId=e.id,this.options=t,this.required=e.required,this.minValues=e.minValues,this.maxValues=e.maxValues}}return new n}function yi(e){let t=[],n=[],r=[],i=[],a=n=>{t.push({...n,sessionKey:e.sessionKey,agentId:e.agentId,accountId:e.accountId,reusable:n.reusable??e.spec.reusable})},o=e.spec.text??e.fallbackText;o&&i.push(new k(o));for(let t of e.spec.blocks??[]){if(t.type===`text`){i.push(new k(t.text));continue}if(t.type===`section`){let e=mi(t.text,t.texts);if(e.length>3)throw Error(`Section blocks support up to 3 text displays`);let n;if(t.accessory?.type===`thumbnail`)n=new De(t.accessory.url);else if(t.accessory?.type===`button`){let{component:e,entry:r}=hi({spec:t.accessory.button});n=e,r&&a(r)}i.push(new Ce(e,n));continue}if(t.type===`separator`){i.push(new we({spacing:t.spacing,divider:t.divider}));continue}if(t.type===`media-gallery`){i.push(new ge(t.items));continue}if(t.type===`file`){i.push(new pe(t.file,t.spoiler));continue}if(t.type===`actions`){let e=[];if(t.buttons){if(t.buttons.length>5)throw Error(`Action rows support up to 5 buttons`);for(let n of t.buttons){let{component:t,entry:r}=hi({spec:n});e.push(t),r&&a(r)}}else if(t.select){let{component:n,entry:r}=gi({spec:t.select});e.push(n),a(r)}i.push(new O(e))}}if(e.spec.modal){let t=qr(`mdl_`),r=e.spec.modal.fields.map((e,t)=>({id:qr(`fld_`),name:Yr(e.name,t),label:e.label,type:e.type,description:e.description,placeholder:e.placeholder,required:e.required,options:e.options,minValues:e.minValues,maxValues:e.maxValues,minLength:e.minLength,maxLength:e.maxLength,style:e.style}));n.push({id:t,title:e.spec.modal.title,fields:r,sessionKey:e.sessionKey,agentId:e.agentId,accountId:e.accountId,reusable:e.spec.reusable});let{component:o,entry:s}=hi({spec:{label:e.spec.modal.triggerLabel??`Open form`,style:e.spec.modal.triggerStyle??`primary`},modalId:t});s&&a(s);let c=i.at(-1);if(c instanceof O){let e=c,t=e.components.some(e=>_i(e));e.components.length<5&&!t?e.addComponent(o):i.push(new O([o]))}else i.push(new O([o]))}if(i.length===0)throw Error(`components must include at least one block, text, or modal trigger`);let s=new de(i,e.spec.container);return r.push(s),{components:r,entries:t,modals:n}}function bi(e){return e.some(e=>e.isV2)?ae.IsComponentsV2:void 0}var xi=class extends ve{constructor(e){super(),this.customIdParser=pi,this.title=e.title,this.customId=ci(e.modalId),this.components=e.fields.map(e=>{let t=vi(e);class n extends me{constructor(...n){super(...n),this.label=e.label,this.description=e.description,this.component=t,this.customId=e.id}}return new n(t)})}async run(){throw Error(`Modal handler is not registered for dynamic forms`)}};function Si(e){return new xi({modalId:e.id,title:e.title,fields:e.fields})}function Ci(e){if(e.kind===`button`)return`Clicked "${e.label}".`;let t=e.values??[];return t.length===0?`Updated "${e.label}".`:`Selected ${t.join(`, `)} from "${e.label}".`}const wi=new Set([E.GuildForum,E.GuildMedia]);function Ti(e){let t=[];for(let n of e.blocks??[])n.type===`file`&&t.push(Zr(n.file));return t}async function Ei(e,t,n={}){let r=n.cfg??l(),i=s({cfg:r,accountId:n.accountId}),{token:a,rest:o,request:c}=I(n,r),{channelId:u}=await H(o,await z(e,n.accountId,r),c),d=await bn(o,u);if(d&&wi.has(d))throw Error(`Discord components are not supported in forum-style channels`);let f=yi({spec:t,sessionKey:n.sessionKey,agentId:n.agentId,accountId:i.accountId}),m=bi(f.components),h=n.silent?(m??0)|U:m??void 0,g=n.replyTo?{message_id:n.replyTo,fail_if_not_exists:!1}:void 0,_=Ti(t),v=[...new Set(_)];if(v.length>1)throw Error(`Discord component attachments currently support a single file. Use media-gallery for multiple files.`);let b=v[0],x;if(n.mediaUrl){let e=await p(n.mediaUrl,{localRoots:n.mediaLocalRoots}),t=n.filename?.trim()||e.fileName||`upload`;if(b&&b!==t)throw Error(`Component file block expects attachment "${b}", but the uploaded file is "${t}". Update components.blocks[].file or provide a matching filename.`);x=[{data:Dn(e.buffer),name:t}]}else if(b)throw Error(`Discord component file blocks require a media attachment (media/path/filePath).`);let ee=W({...j({components:f.components,...h?{flags:h}:{},...x?{files:x}:{}}),...g?{message_reference:g}:{}}),S;try{S=await c(()=>o.post(D.channelMessages(u),{body:ee}),`components`)}catch(e){throw await V(e,{channelId:u,rest:o,token:a,hasMedia:!!x?.length})}return Hr({entries:f.entries,modals:f.modals,messageId:S.id}),y({channel:`discord`,accountId:i.accountId,direction:`outbound`}),{messageId:S.id??`unknown`,channelId:S.channel_id??u}}async function Di(e,t,n,r={}){let{rest:i,request:a}=I(r,r.cfg??l()),o=gn(n);return await a(()=>i.put(D.channelMessageOwnReaction(e,t,o)),`react`),{ok:!0}}async function Oi(e,t,n,r={}){let{rest:i}=I(r,r.cfg??l()),a=gn(n);return await i.delete(D.channelMessageOwnReaction(e,t,a)),{ok:!0}}async function ki(e,t,n={}){let{rest:r}=I(n,n.cfg??l()),i=await r.get(D.channelMessage(e,t)),a=new Set;for(let e of i.reactions??[]){let t=kn(e.emoji);t&&a.add(t)}if(a.size===0)return{ok:!0,removed:[]};let o=[];return await Promise.allSettled(Array.from(a,n=>(o.push(n),r.delete(D.channelMessageOwnReaction(e,t,gn(n)))))),{ok:!0,removed:o}}async function Ai(e,t,n={}){let{rest:r}=I(n,n.cfg??l()),i=(await r.get(D.channelMessage(e,t))).reactions??[];if(i.length===0)return[];let a=typeof n.limit==`number`&&Number.isFinite(n.limit)?Math.min(Math.max(Math.floor(n.limit),1),100):100,o=[];for(let n of i){let i=kn(n.emoji);if(!i)continue;let s=encodeURIComponent(i),c=await r.get(D.channelMessageReaction(e,t,s),{limit:a});o.push({emoji:{id:n.emoji.id??null,name:n.emoji.name??null,raw:An(n.emoji)},count:n.count,users:c.map(e=>({id:e.id,username:e.username,tag:e.username&&e.discriminator?`${e.username}#${e.discriminator}`:e.username}))})}return o}export{W as $,rr as A,Ge as At,qn as B,er as C,Ze as Ct,nr as D,We as Dt,or as E,Xe as Et,Bn as F,Ne as Ft,zn as G,Yn as H,Vn as I,Me as It,Mn as J,jn as K,Kn as L,Fe as Lt,Zn as M,M as Mt,Jn as N,Ve as Nt,Qn as O,Ke as Ot,Wn as P,Ae as Pt,G as Q,Xn as R,tr as S,$e as St,ir as T,Ye as Tt,Ln as U,Un as V,Rn as W,In as X,Pn as Y,Fn as Z,Ir as _,ct as _t,Ei as a,F as at,pr as b,bt,li as c,Ft as ct,pi as d,P as dt,mn as et,oi as f,rt as ft,Lr as g,lt as gt,Nr as h,st as ht,Oi as i,Wt as it,Hn as j,Je as jt,sr as k,Ue as kt,fi as l,vt as lt,Wr as m,ut as mt,Di as n,$t as nt,Si as o,It as ot,Ur as p,ht as pt,Nn as q,ki as r,I as rt,Ci as s,Pt as st,Ai as t,pn as tt,ui as u,N as ut,zr as v,gt as vt,$n as w,et as wt,ar as x,Qe as xt,Fr as y,yt,Gn as z};
|
|
8
|
-
//# sourceMappingURL=send-CciNyaWL.js.map
|
package/dist/send-ChILboDj.js
CHANGED
|
@@ -4,4 +4,3 @@ import{Bn as e,jo as t}from"./auth-profiles-C8rZRS0X.js";import{l as n}from"./wi
|
|
|
4
4
|
`);continue}if(e.startsWith(`:`)){n=s.indexOf(`
|
|
5
5
|
`);continue}let[t,...r]=e.split(`:`),i=t.trim(),a=r.join(`:`),o=a.startsWith(` `)?a.slice(1):a;i===`event`?l.event=o:i===`data`?l.data=l.data?`${l.data}\n${o}`:o:i===`id`&&(l.id=o),n=s.indexOf(`
|
|
6
6
|
`)}}u()}function O(n,r){let i=!!n.baseUrl?.trim(),a=!!n.account?.trim(),o=r||(!i||!a?e({cfg:t(),accountId:n.accountId}):void 0),s=n.baseUrl?.trim()||o?.baseUrl;if(!s)throw Error(`Signal base URL is required`);return{baseUrl:s,account:n.account?.trim()||o?.config.account?.trim()}}function k(e){let t=e.trim();if(!t)throw Error(`Signal recipient is required`);t.toLowerCase().startsWith(`signal:`)&&(t=t.slice(7).trim());let n=t.toLowerCase();return n.startsWith(`group:`)?{type:`group`,groupId:t.slice(6).trim()}:n.startsWith(`username:`)?{type:`username`,username:t.slice(9).trim()}:n.startsWith(`u:`)?{type:`username`,username:t.trim()}:{type:`recipient`,recipient:t}}function A(e,t){return e.type===`recipient`?t.recipient?{recipient:[e.recipient]}:null:e.type===`group`?t.group?{groupId:e.groupId}:null:e.type===`username`&&t.username?{username:[e.username]}:null}async function j(r,i,a={}){let s=a.cfg??t(),c=e({cfg:s,accountId:a.accountId}),{baseUrl:u,account:d}=O(a,c),f=k(r),p=i??``,m=!1,h=[],_=a.textMode??`markdown`,v=typeof a.maxBytes==`number`?a.maxBytes:typeof c.config.mediaMaxMb==`number`?c.config.mediaMaxMb*1024*1024:typeof s.agents?.defaults?.mediaMaxMb==`number`?s.agents.defaults.mediaMaxMb*1024*1024:8*1024*1024,y;if(a.mediaUrl?.trim()){let e=await l(a.mediaUrl.trim(),v,{localRoots:a.mediaLocalRoots});y=[e.path];let t=n(e.contentType??void 0);!p&&t&&(p=t===`image`?`<media:image>`:`<media:${t}>`,m=!0)}if(p.trim()&&!m)if(_===`plain`)h=a.textStyles??[];else{let e=o({cfg:s,channel:`signal`,accountId:c.accountId}),t=g(p,{tableMode:e});p=t.text,h=t.styles}if(!p.trim()&&(!y||y.length===0))throw Error(`Signal send requires text or media`);let b={message:p};h.length>0&&(b[`text-style`]=h.map(e=>`${e.start}:${e.length}:${e.style}`)),d&&(b.account=d),y&&y.length>0&&(b.attachments=y);let x=A(f,{recipient:!0,group:!0,username:!0});if(!x)throw Error(`Signal recipient is required`);Object.assign(b,x);let S=(await T(`send`,b,{baseUrl:u,timeoutMs:a.timeoutMs}))?.timestamp;return{messageId:S?String(S):`unknown`,timestamp:S}}async function M(e,t={}){let{baseUrl:n,account:r}=O(t),i=A(k(e),{recipient:!0,group:!0});if(!i)return!1;let a={...i};return r&&(a.account=r),t.stop&&(a.stop=!0),await T(`sendTyping`,a,{baseUrl:n,timeoutMs:t.timeoutMs}),!0}async function N(e,t,n={}){if(!Number.isFinite(t)||t<=0)return!1;let{baseUrl:r,account:i}=O(n),a=A(k(e),{recipient:!0});if(!a)return!1;let o={...a,targetTimestamp:t,type:n.type??`read`};return i&&(o.account=i),await T(`sendReceipt`,o,{baseUrl:r,timeoutMs:n.timeoutMs}),!0}export{E as a,b as c,O as i,N as n,T as o,M as r,D as s,j as t};
|
|
7
|
-
//# sourceMappingURL=send-ChILboDj.js.map
|
package/dist/send-CyarIb2w.js
CHANGED
|
@@ -5,4 +5,3 @@ import{H as e}from"./subsystem-BLbY429l.js";import{Ll as t,Rl as n,jo as r}from"
|
|
|
5
5
|
`:``}${t}`,i=s.length+r.length,a=c+(n?0:1);(i>m||a>h)&&s.length>0&&u(),s.length>0?(s+=r,n||(c+=1)):(s=t,c=1)}l=a}if(s.length){let e=Bt(s,l);e.trim().length&&o.push(e)}return Wt(e,o)}function Ut(e,t){if((t.chunkMode??`length`)!==`newline`)return Ht(e,t);let n=m(e,Math.max(1,Math.floor(t.maxChars??Ft)),`newline`),r=[];for(let e of n){let n=Ht(e,t);if(!n.length&&e){r.push(e);continue}r.push(...n)}return r}function Wt(e,t){if(t.length<=1||!(e.startsWith(`Reasoning:
|
|
6
6
|
_`)&&e.trimEnd().endsWith(`_`)))return t;let n=[...t];for(let e=0;e<n.length;e++){let t=e===n.length-1,r=n[e];if(r.trimEnd().endsWith(`_`)||(n[e]=`${r}_`),t)break;let i=n[e+1],a=i.length-i.trimStart().length,o=i.slice(0,a),s=i.slice(a);s.startsWith(`_`)||(n[e+1]=`${o}_${s}`)}return n}const Gt=Object.entries(oe).filter(([,e])=>typeof e==`bigint`),Kt=Gt.reduce((e,[,t])=>e|t,0n),qt=oe.Administrator;function B(e,t){return t?e|BigInt(t):e}function Jt(e,t){return t?e&~BigInt(t):e}function Yt(e){return Gt.filter(([,t])=>(e&t)===t).map(([e])=>e).toSorted()}function Xt(e){return(e&qt)===qt}function Zt(e,t){return(e&t)===t}function Qt(e){return e===D.GuildNewsThread||e===D.GuildPublicThread||e===D.GuildPrivateThread}async function $t(e){let t=await e.get(O.user(`@me`));if(!t?.id)throw Error(`Failed to resolve bot user id`);return t.id}async function en(e,t,n={}){let r=z(n);try{let[n,i]=await Promise.all([r.get(O.guild(e)),r.get(O.guildMember(e,t))]),a=new Map((n.roles??[]).map(e=>[e.id,e])),o=a.get(e),s=0n;o?.permissions&&(s=B(s,o.permissions));for(let e of i.roles??[]){let t=a.get(e);t?.permissions&&(s=B(s,t.permissions))}return s}catch{return null}}async function tn(e,t,n,r,i={}){let a=await en(e,t,i);return a===null?!1:Xt(a)?!0:r(a,n)}async function nn(e,t,n,r={}){return await tn(e,t,n,(e,t)=>t.some(t=>Zt(e,t)),r)}async function rn(e,t={}){let n=z(t),r=await n.get(O.channel(e)),i=`type`in r?r.type:void 0,a=`guild_id`in r?r.guild_id:void 0;if(!a)return{channelId:e,permissions:[],raw:`0`,isDm:!0,channelType:i};let o=await $t(n),[s,c]=await Promise.all([n.get(O.guild(a)),n.get(O.guildMember(a,o))]),l=new Map((s.roles??[]).map(e=>[e.id,e])),u=l.get(a),d=0n;u?.permissions&&(d=B(d,u.permissions));for(let e of c.roles??[]){let t=l.get(e);t?.permissions&&(d=B(d,t.permissions))}if(Xt(d))return{channelId:e,guildId:a,permissions:Yt(Kt),raw:Kt.toString(),isDm:!1,channelType:i};let f=d,p=`permission_overwrites`in r?r.permission_overwrites??[]:[];for(let e of p)e.id===a&&(f=Jt(f,e.deny??`0`),f=B(f,e.allow??`0`));for(let e of p)c.roles?.includes(e.id)&&(f=Jt(f,e.deny??`0`),f=B(f,e.allow??`0`));for(let e of p)e.id===o&&(f=Jt(f,e.deny??`0`),f=B(f,e.allow??`0`));return{channelId:e,guildId:a,permissions:Yt(f),raw:f.toString(),isDm:!1,channelType:i}}var an=class extends Error{constructor(e,t){super(e),this.name=`DiscordSendError`,t&&Object.assign(this,t)}toString(){return this.message}};function on(e){let t=e.trim();if(!t)throw Error(`emoji required`);let n=t.match(/^<a?:([^:>]+):(\d+)>$/),r=n?`${n[1]}:${n[2]}`:t.replace(/[\uFE0E\uFE0F]/g,``);return encodeURIComponent(r)}async function V(e,t,n){let i=n??r(),o=a({cfg:i,accountId:t}),s=e.trim(),c={ambiguousMessage:`Ambiguous Discord recipient "${s}". Use "user:${s}" for DMs or "channel:${s}" for channel messages.`},l=await Dt(e,{cfg:i,accountId:o.accountId},c);if(l)return{kind:l.kind,id:l.id};let u=L(e,c);if(!u)throw Error(`Recipient is required for Discord sends`);return{kind:u.kind,id:u.id}}function sn(e){let t=e.map(e=>e.trim()).filter(Boolean);if(t.length===0)throw Error(`At least one sticker id is required`);if(t.length>3)throw Error(`Discord supports up to 3 stickers per message`);return t}function H(e,t){let n=e.trim();if(!n)throw Error(`${t} is required`);return n}function cn(e){let t=S(e,{maxOptions:10}),n=te(t.durationHours,{defaultHours:24,maxHours:768});return{question:{text:t.question},answers:t.options.map(e=>({poll_media:{text:e}})),duration:n,allow_multiselect:t.maxSelections>1,layout_type:ke.Default}}function ln(e){if(!e||typeof e!=`object`)return;let t=`code`in e&&e.code!==void 0?e.code:`rawError`in e&&e.rawError&&typeof e.rawError==`object`?e.rawError.code:void 0;if(typeof t==`number`)return t;if(typeof t==`string`&&/^\d+$/.test(t))return Number(t)}async function U(e,t){if(e instanceof an)return e;let n=ln(e);if(n===50007)return new an(`discord dm failed: user blocks dms or privacy settings disallow it`,{kind:`dm-blocked`});if(n!==50013)return e;let r=[];try{let e=await rn(t.channelId,{rest:t.rest,token:t.token}),n=new Set(e.permissions),i=[`ViewChannel`,`SendMessages`];Qt(e.channelType)&&i.push(`SendMessagesInThreads`),t.hasMedia&&i.push(`AttachFiles`),r=i.filter(e=>!n.has(e))}catch{}return new an(`${r.length?`missing permissions in channel ${t.channelId}: ${r.join(`, `)}`:`missing permissions in channel ${t.channelId}`}. bot might be muted or blocked by role/channel overrides`,{kind:`missing-permissions`,channelId:t.channelId,missingPermissions:r})}async function W(e,t,n){if(t.kind===`channel`)return{channelId:t.id};let r=await n(()=>e.post(O.userChannels(),{body:{recipient_id:t.id}}),`dm-channel`);if(!r?.id)throw Error(`Failed to create Discord DM channel`);return{channelId:r.id,dm:!0}}async function un(e,t){try{return(await e.get(O.channel(t)))?.type}catch{return}}const G=4096;function dn(e,t={}){if(!e)return[];let n=Ut(e,{maxChars:t.maxChars??2e3,maxLines:t.maxLinesPerMessage,chunkMode:t.chunkMode});return!n.length&&e&&n.push(e),n}function fn(e){return!!e?.some(e=>`isV2`in e&&e.isV2)}function pn(e){if(!(!e.components||!e.isFirst))return typeof e.components==`function`?e.components(e.text):e.components}function mn(e){if(e?.length)return e.map(e=>e instanceof fe?e:new fe(e))}function hn(e){if(!(!e.embeds||!e.isFirst))return mn(e.embeds)}function gn(e){let t={},n=fn(e.components),r=e.text.trim();return!n&&r&&(t.content=e.text),e.components?.length&&(t.components=e.components),!n&&e.embeds?.length&&(t.embeds=e.embeds),e.flags!==void 0&&(t.flags=e.flags),e.files?.length&&(t.files=e.files),t}function K(e){return Object.fromEntries(Object.entries(e).filter(([,e])=>e!==void 0))}function _n(e){if(e instanceof Blob)return e;let t=new ArrayBuffer(e.byteLength);return new Uint8Array(t).set(e),new Blob([t])}async function q(e,t,n,r,i,a,o,s,c,l){if(!n.trim())throw Error(`Message must be non-empty for Discord sends`);let u=r?{message_id:r,fail_if_not_exists:!1}:void 0,d=l?G:void 0,f=dn(n,{maxLinesPerMessage:a,chunkMode:c}),p=async(n,r)=>{let a=K({...M(gn({text:n,components:pn({components:o,text:n,isFirst:r}),embeds:hn({embeds:s,isFirst:r}),flags:d})),...u?{message_reference:u}:{}});return await i(()=>e.post(O.channelMessages(t),{body:a}),`text`)};if(f.length===1)return await p(f[0],!0);let m=null;for(let[e,t]of f.entries())m=await p(t,e===0);if(!m)throw Error(`Discord send failed (empty chunk result)`);return m}async function vn(e,t,n,r,i,a,o,s,c,l,u,d,f){let m=await p(r,ee({maxBytes:a,mediaLocalRoots:i})),h=n?dn(n,{maxLinesPerMessage:c,chunkMode:d}):[],g=h[0]??``,_=o?{message_id:o,fail_if_not_exists:!1}:void 0,v=f?G:void 0,y=_n(m.buffer),b=gn({text:g,components:pn({components:l,text:g,isFirst:!0}),embeds:hn({embeds:u,isFirst:!0}),flags:v,files:[{data:y,name:m.fileName??`upload`}]}),x=await s(()=>e.post(O.channelMessages(t),{body:K({...M(b),..._?{message_reference:_}:{}})}),`media`);for(let n of h.slice(1))n.trim()&&await q(e,t,n,o,s,c,void 0,void 0,d,f);return x}function yn(e){return e.id&&e.name?`${e.name}:${e.id}`:e.name??``}function bn(e){return yn(e)}async function xn(e,t={}){let n=z(t),r={name:e.name};return e.type!==void 0&&(r.type=e.type),e.parentId&&(r.parent_id=e.parentId),e.topic&&(r.topic=e.topic),e.position!==void 0&&(r.position=e.position),e.nsfw!==void 0&&(r.nsfw=e.nsfw),await n.post(O.guildChannels(e.guildId),{body:r})}async function Sn(e,t={}){let n=z(t),r={};return e.name!==void 0&&(r.name=e.name),e.topic!==void 0&&(r.topic=e.topic),e.position!==void 0&&(r.position=e.position),e.parentId!==void 0&&(r.parent_id=e.parentId),e.nsfw!==void 0&&(r.nsfw=e.nsfw),e.rateLimitPerUser!==void 0&&(r.rate_limit_per_user=e.rateLimitPerUser),e.archived!==void 0&&(r.archived=e.archived),e.locked!==void 0&&(r.locked=e.locked),e.autoArchiveDuration!==void 0&&(r.auto_archive_duration=e.autoArchiveDuration),e.availableTags!==void 0&&(r.available_tags=e.availableTags.map(e=>({...e.id!==void 0&&{id:e.id},name:e.name,...e.moderated!==void 0&&{moderated:e.moderated},...e.emoji_id!==void 0&&{emoji_id:e.emoji_id},...e.emoji_name!==void 0&&{emoji_name:e.emoji_name}}))),await n.patch(O.channel(e.channelId),{body:r})}async function Cn(e,t={}){return await z(t).delete(O.channel(e)),{ok:!0,channelId:e}}async function wn(e,t={}){let n=z(t),r=[{id:e.channelId,...e.parentId!==void 0&&{parent_id:e.parentId},...e.position!==void 0&&{position:e.position}}];return await n.patch(O.guildChannels(e.guildId),{body:r}),{ok:!0}}async function Tn(e,t={}){let n=z(t),r={type:e.targetType};return e.allow!==void 0&&(r.allow=e.allow),e.deny!==void 0&&(r.deny=e.deny),await n.put(`/channels/${e.channelId}/permissions/${e.targetId}`,{body:r}),{ok:!0}}async function En(e,t,n={}){return await z(n).delete(`/channels/${e}/permissions/${t}`),{ok:!0}}async function Dn(e,t={}){return await z(t).get(O.guildEmojis(e))}async function On(e,t={}){let n=z(t),r=await g(e.mediaUrl,262144),i=r.contentType?.toLowerCase();if(!i||![`image/png`,`image/jpeg`,`image/jpg`,`image/gif`].includes(i))throw Error(`Discord emoji uploads require a PNG, JPG, or GIF image`);let a=`data:${i};base64,${r.buffer.toString(`base64`)}`,o=(e.roleIds??[]).map(e=>e.trim()).filter(Boolean);return await n.post(O.guildEmojis(e.guildId),{body:{name:H(e.name,`Emoji name`),image:a,roles:o.length?o:void 0}})}async function kn(e,t={}){let n=z(t),r=await g(e.mediaUrl,524288),i=r.contentType?.toLowerCase();if(!i||![`image/png`,`image/apng`,`application/json`].includes(i))throw Error(`Discord sticker uploads require a PNG, APNG, or Lottie JSON file`);return await n.post(O.guildStickers(e.guildId),{body:{name:H(e.name,`Sticker name`),description:H(e.description,`Sticker description`),tags:H(e.tags,`Sticker tags`),files:[{data:r.buffer,name:r.fileName??`sticker`,contentType:i}]}})}async function An(e,t,n={}){return await z(n).get(O.guildMember(e,t))}async function jn(e,t={}){return await z(t).get(O.guildRoles(e))}async function Mn(e,t={}){return await z(t).put(O.guildMemberRole(e.guildId,e.userId,e.roleId)),{ok:!0}}async function Nn(e,t={}){return await z(t).delete(O.guildMemberRole(e.guildId,e.userId,e.roleId)),{ok:!0}}async function Pn(e,t={}){return await z(t).get(O.channel(e))}async function Fn(e,t={}){return await z(t).get(O.guildChannels(e))}async function In(e,t,n={}){return await z(n).get(O.guildVoiceState(e,t))}async function Ln(e,t={}){return await z(t).get(O.guildScheduledEvents(e))}async function Rn(e,t,n={}){return await z(n).post(O.guildScheduledEvents(e),{body:t})}async function zn(e,t={}){let n=z(t),r=e.until;if(!r&&e.durationMinutes){let t=e.durationMinutes*60*1e3;r=new Date(Date.now()+t).toISOString()}return await n.patch(O.guildMember(e.guildId,e.userId),{body:{communication_disabled_until:r??null},headers:e.reason?{"X-Audit-Log-Reason":encodeURIComponent(e.reason)}:void 0})}async function Bn(e,t={}){return await z(t).delete(O.guildMember(e.guildId,e.userId),{headers:e.reason?{"X-Audit-Log-Reason":encodeURIComponent(e.reason)}:void 0}),{ok:!0}}async function Vn(e,t={}){let n=z(t),r=typeof e.deleteMessageDays==`number`&&Number.isFinite(e.deleteMessageDays)?Math.min(Math.max(Math.floor(e.deleteMessageDays),0),7):void 0;return await n.put(O.guildBan(e.guildId,e.userId),{body:r===void 0?void 0:{delete_message_days:r},headers:e.reason?{"X-Audit-Log-Reason":encodeURIComponent(e.reason)}:void 0}),{ok:!0}}async function Hn(e,t={},n={}){let r=z(n),i=typeof t.limit==`number`&&Number.isFinite(t.limit)?Math.min(Math.max(Math.floor(t.limit),1),100):void 0,a={};return i&&(a.limit=i),t.before&&(a.before=t.before),t.after&&(a.after=t.after),t.around&&(a.around=t.around),await r.get(O.channelMessages(e),a)}async function Un(e,t,n={}){return await z(n).get(O.channelMessage(e,t))}async function Wn(e,t,n,r={}){return await z(r).patch(O.channelMessage(e,t),{body:{content:n.content}})}async function Gn(e,t,n={}){return await z(n).delete(O.channelMessage(e,t)),{ok:!0}}async function Kn(e,t,n={}){return await z(n).put(O.channelPin(e,t)),{ok:!0}}async function qn(e,t,n={}){return await z(n).delete(O.channelPin(e,t)),{ok:!0}}async function Jn(e,t={}){return await z(t).get(O.channelPins(e))}async function Yn(e,t,n={}){let r=z(n),i={name:t.name};t.autoArchiveMinutes&&(i.auto_archive_duration=t.autoArchiveMinutes),!t.messageId&&t.type!==void 0&&(i.type=t.type);let a;if(!t.messageId)try{a=(await r.get(O.channel(e)))?.type}catch{a=void 0}let o=a===D.GuildForum||a===D.GuildMedia;o&&(i.message={content:t.content?.trim()?t.content:t.name},t.appliedTags?.length&&(i.applied_tags=t.appliedTags)),!t.messageId&&!o&&i.type===void 0&&(i.type=D.PublicThread);let s=t.messageId?O.threads(e,t.messageId):O.threads(e),c=await r.post(s,{body:i});return!o&&t.content?.trim()&&await r.post(O.channelMessages(c.id),{body:{content:t.content}}),c}async function Xn(e,t={}){let n=z(t);if(e.includeArchived){if(!e.channelId)throw Error(`channelId required to list archived threads`);let t={};return e.before&&(t.before=e.before),e.limit&&(t.limit=e.limit),await n.get(O.channelThreads(e.channelId,`public`),t)}return await n.get(O.guildActiveThreads(e.guildId))}async function Zn(e,t={}){let n=z(t),r=new URLSearchParams;if(r.set(`content`,e.content),e.channelIds?.length)for(let t of e.channelIds)r.append(`channel_id`,t);if(e.authorIds?.length)for(let t of e.authorIds)r.append(`author_id`,t);if(e.limit){let t=Math.min(Math.max(Math.floor(e.limit),1),25);r.set(`limit`,String(t))}return await n.get(`/guilds/${e.guildId}/messages/search?${r.toString()}`)}async function Qn(e){if(e)try{await w.unlink(e)}catch{}}const $n=/```[\s\S]*?```|`[^`\n]*`/g,er=/(^|[\s([{"'.,;:!?])@([a-z0-9_.-]{2,32}(?:#[0-9]{4})?)/gi,tr=new Set([`everyone`,`here`]);function nr(e){let t=String(e??``).trim();return/^\d+$/.test(t)?t:null}function rr(e){let t=e.userId==null?null:nr(e.userId),n=e.roleId==null?null:nr(e.roleId),r=e.channelId==null?null:nr(e.channelId),i=[t?{kind:`user`,id:t}:null,n?{kind:`role`,id:n}:null,r?{kind:`channel`,id:r}:null].filter(e=>!!e);if(i.length!==1)throw Error(`formatMention requires exactly one of userId, roleId, or channelId`);let a=i[0];return a.kind===`user`?`<@${a.id}>`:a.kind===`role`?`<@&${a.id}>`:`<#${a.id}>`}function ir(e,t){return e.includes(`@`)?e.replace(er,(e,n,r)=>{let i=String(r??``).trim();if(!i)return e;let a=i.toLowerCase();if(tr.has(a))return e;let o=yt({accountId:t,handle:i});return o?`${String(n??``)}${rr({userId:o})}`:e}):e}function ar(e,t){if(!e.includes(`@`))return e;let n=``,r=0;$n.lastIndex=0;for(let i of e.matchAll($n)){let a=i.index??0;n+=ir(e.slice(r,a),t.accountId),n+=i[0],r=a+i[0].length}return n+=ir(e.slice(r),t.accountId),n}const or=ie(re);function sr(e,t){return{timeout:t?.timeoutMs??e,maxBuffer:t?.maxBufferBytes??10485760}}async function cr(e,t){let{stdout:n}=await or(`ffprobe`,e,sr(1e4,t));return n.toString()}async function lr(e,t){let{stdout:n}=await or(`ffmpeg`,e,sr(45e3,t));return n.toString()}function ur(e,t){return e.trim().toLowerCase().split(/[,\r\n]+/,t).map(e=>e.trim())}function dr(e){let[t,n]=ur(e,2),r=t||null,i=n?Number.parseInt(n,10):NaN;return{codec:r,sampleRateHz:Number.isFinite(i)?i:null}}const fr=8192;async function pr(e){try{let t=await cr([`-v`,`error`,`-show_entries`,`format=duration`,`-of`,`csv=p=0`,e]),n=parseFloat(t.trim());if(isNaN(n))throw Error(`Could not parse duration`);return Math.round(n*100)/100}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Failed to get audio duration: ${t}`,{cause:e})}}async function mr(e){try{return await hr(e)}catch{return gr()}}async function hr(t){let n=e(),r=C.join(n,`waveform-${T.randomUUID()}.raw`);try{await lr([`-y`,`-i`,t,`-vn`,`-sn`,`-dn`,`-t`,`1200`,`-f`,`s16le`,`-acodec`,`pcm_s16le`,`-ac`,`1`,`-ar`,`8000`,r]);let e=await w.readFile(r),n=new Int16Array(e.buffer,e.byteOffset,e.byteLength/2),i=Math.max(1,Math.floor(n.length/256)),a=[];for(let e=0;e<256&&e*i<n.length;e++){let t=0,r=0;for(let a=0;a<i&&e*i+a<n.length;a++)t+=Math.abs(n[e*i+a]),r++;let o=r>0?t/r:0,s=Math.min(255,Math.round(o/32767*255));a.push(s)}for(;a.length<256;)a.push(0);return Buffer.from(a).toString(`base64`)}finally{await Qn(r)}}function gr(){let e=[];for(let t=0;t<256;t++){let n=Math.round(128+64*Math.sin(t/256*Math.PI*8));e.push(Math.min(255,Math.max(0,n)))}return Buffer.from(e).toString(`base64`)}async function _r(t){let n=t.trim();if(/^[a-z][a-z0-9+.-]*:\/\//i.test(n))throw Error(`Voice message conversion requires a local file path; received a URL/protocol source: ${n}`);if(C.extname(t).toLowerCase()===`.ogg`)try{let{codec:e,sampleRateHz:n}=dr(await cr([`-v`,`error`,`-select_streams`,`a:0`,`-show_entries`,`stream=codec_name,sample_rate`,`-of`,`csv=p=0`,t]));if(e===`opus`&&n===48e3)return{path:t,cleanup:!1}}catch{}let r=e(),i=C.join(r,`voice-${T.randomUUID()}.ogg`);return await lr([`-y`,`-i`,t,`-vn`,`-sn`,`-dn`,`-t`,`1200`,`-ar`,`48000`,`-c:a`,`libopus`,`-b:a`,`64k`,i]),{path:i,cleanup:!0}}async function vr(e){let[t,n]=await Promise.all([pr(e),mr(e)]);return{durationSecs:t,waveform:n}}async function yr(e,t,n,r,i,a,o,s){let c=`voice-message.ogg`,l=n.byteLength,u=s;if(!u)throw Error(`Discord bot token is required for voice message upload`);let d=await a(async()=>{let n=`${e.options?.baseUrl??`https://discord.com/api`}/channels/${t}/attachments`,r=await fetch(n,{method:`POST`,headers:{Authorization:`Bot ${u}`,"Content-Type":`application/json`},body:JSON.stringify({files:[{filename:c,file_size:l,id:`0`}]})});if(!r.ok){if(r.status===429){let e=await r.json().catch(()=>({}));throw new be(r,{message:e.message??`You are being rate limited.`,retry_after:e.retry_after??1,global:e.global??!1})}let e=await r.json().catch(()=>null),t=Error(`Upload URL request failed: ${r.status} ${e?.message??``}`);throw e?.code!==void 0&&(t.code=e.code),t}return await r.json()},`voice-upload-url`);if(!d.attachments?.[0])throw Error(`Failed to get upload URL for voice message`);let{upload_url:f,upload_filename:p}=d.attachments[0],m=await fetch(f,{method:`PUT`,headers:{"Content-Type":`audio/ogg`},body:new Uint8Array(n)});if(!m.ok)throw Error(`Failed to upload voice message: ${m.status}`);let h={flags:o?fr|4096:fr,attachments:[{id:`0`,filename:c,uploaded_filename:p,duration_secs:r.durationSecs,waveform:r.waveform}]};return i&&(h.message_reference={message_id:i,fail_if_not_exists:!1}),await a(()=>e.post(`/channels/${t}/messages`,{body:h}),`voice-message`)}async function br(e){for(let t of e.chunks)await q(e.rest,e.threadId,t,void 0,e.request,e.maxLinesPerMessage,void 0,void 0,e.chunkMode,e.silent)}function xr(e){return(e.split(`
|
|
7
7
|
`).find(e=>e.trim())?.trim()??``).slice(0,100)||new Date().toISOString().slice(0,16)}function Sr(e){return e===D.GuildForum||e===D.GuildMedia}function J(e,t){return{messageId:e.id?String(e.id):`unknown`,channelId:String(e.channel_id??t)}}async function Cr(e,t){let n=t.cfg??r(),{rest:i,request:a}=R(t,n),{channelId:o}=await W(i,await V(e,t.accountId,n),a);return{rest:i,request:a,channelId:o}}async function wr(e,t,n={}){let i=n.cfg??r(),o=a({cfg:i,accountId:n.accountId}),s=_({cfg:i,channel:`discord`,accountId:o.accountId}),c=h(i,`discord`,o.accountId),l=typeof o.config.mediaMaxMb==`number`?o.config.mediaMaxMb*1024*1024:8*1024*1024,u=ne(t??``,s),d=ar(u,{accountId:o.accountId}),{token:f,rest:p,request:m}=R(n,i),{channelId:g}=await W(p,await V(e,n.accountId,i),m);if(Sr(await un(p,g))){let e=xr(u),t=dn(d,{maxLinesPerMessage:o.config.maxLinesPerMessage,chunkMode:c}),r=t[0]?.trim()?t[0]:e,i=gn({text:r,components:pn({components:n.components,text:r,isFirst:!0}),embeds:hn({embeds:n.embeds,isFirst:!0}),flags:n.silent?4096:void 0}),a;try{a=await m(()=>p.post(O.threads(g),{body:{name:e,message:K(M(i))}}),`forum-thread`)}catch(e){throw await U(e,{channelId:g,rest:p,token:f,hasMedia:!!n.mediaUrl})}let s=a.id,h=a.message?.id??s,_=a.message?.channel_id??s,v=t.slice(1);try{if(n.mediaUrl){let[e,...t]=v;await vn(p,s,e??``,n.mediaUrl,n.mediaLocalRoots,l,void 0,m,o.config.maxLinesPerMessage,void 0,void 0,c,n.silent),await br({rest:p,threadId:s,chunks:t,request:m,maxLinesPerMessage:o.config.maxLinesPerMessage,chunkMode:c,silent:n.silent})}else await br({rest:p,threadId:s,chunks:v,request:m,maxLinesPerMessage:o.config.maxLinesPerMessage,chunkMode:c,silent:n.silent})}catch(e){throw await U(e,{channelId:s,rest:p,token:f,hasMedia:!!n.mediaUrl})}return b({channel:`discord`,accountId:o.accountId,direction:`outbound`}),J({id:h,channel_id:_},g)}let v;try{v=n.mediaUrl?await vn(p,g,d,n.mediaUrl,n.mediaLocalRoots,l,n.replyTo,m,o.config.maxLinesPerMessage,n.components,n.embeds,c,n.silent):await q(p,g,d,n.replyTo,m,o.config.maxLinesPerMessage,n.components,n.embeds,c,n.silent)}catch(e){throw await U(e,{channelId:g,rest:p,token:f,hasMedia:!!n.mediaUrl})}return b({channel:`discord`,accountId:o.accountId,direction:`outbound`}),J(v,g)}function Tr(e){let t=new URL(`https://discord.com/api/v10/webhooks/${encodeURIComponent(e.webhookId)}/${encodeURIComponent(e.webhookToken)}`);return t.searchParams.set(`wait`,e.wait===!1?`false`:`true`),e.threadId!==void 0&&e.threadId!==null&&e.threadId!==``&&t.searchParams.set(`thread_id`,String(e.threadId)),t.toString()}async function Er(e,t){let n=t.webhookId.trim(),i=t.webhookToken.trim();if(!n||!i)throw Error(`Discord webhook id/token are required`);let o=ar(e,{accountId:t.accountId}),s=typeof t.replyTo==`string`?t.replyTo.trim():``,c=s?{message_id:s,fail_if_not_exists:!1}:void 0,l=await fetch(Tr({webhookId:n,webhookToken:i,threadId:t.threadId,wait:t.wait}),{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({content:o,username:t.username?.trim()||void 0,avatar_url:t.avatarUrl?.trim()||void 0,...c?{message_reference:c}:{}})});if(!l.ok){let e=await l.text().catch(()=>``);throw Error(`Discord webhook send failed (${l.status}${e?`: ${e.slice(0,200)}`:``})`)}let u=await l.json().catch(()=>({}));try{b({channel:`discord`,accountId:a({cfg:t.cfg??r(),accountId:t.accountId}).accountId,direction:`outbound`})}catch{}return{messageId:u.id?String(u.id):`unknown`,channelId:u.channel_id?String(u.channel_id):t.threadId?String(t.threadId):``}}async function Dr(e,t,n={}){let{rest:r,request:i,channelId:a}=await Cr(e,n),o=n.content?.trim(),s=o?ar(o,{accountId:n.accountId}):void 0,c=sn(t);return J(await i(()=>r.post(O.channelMessages(a),{body:{content:s||void 0,sticker_ids:c}}),`sticker`),a)}async function Or(e,t,n={}){let{rest:r,request:i,channelId:a}=await Cr(e,n),o=n.content?.trim(),s=o?ar(o,{accountId:n.accountId}):void 0;if(t.durationSeconds!==void 0)throw Error(`Discord polls do not support durationSeconds; use durationHours`);let c=cn(t),l=n.silent?G:void 0;return J(await i(()=>r.post(O.channelMessages(a),{body:{content:s||void 0,poll:c,...l?{flags:l}:{}}}),`poll`),a)}async function kr(t){let n=await g(t,c(`audio`)),r=n.fileName?C.extname(n.fileName):``,i=n.contentType?l(n.contentType):``,a=r||i||`.bin`,o=e(),s=C.join(o,`voice-src-${T.randomUUID()}${a}`);return await w.writeFile(s,n.buffer,{mode:384}),{filePath:s}}async function Ar(e,t,n={}){let{filePath:i}=await kr(t),o=null,s=!1,c,l,u;try{let t=n.cfg??r(),d=a({cfg:t,accountId:n.accountId}),f=R(n,t);c=f.token,l=f.rest;let p=f.request,m=await V(e,n.accountId,t);u=(await W(l,m,p)).channelId;let h=await _r(i);o=h.path,s=h.cleanup;let g=await vr(o),_=await w.readFile(o),v=await yr(l,u,_,g,n.replyTo,p,n.silent,c);return b({channel:`discord`,accountId:d.accountId,direction:`outbound`}),J(v,u)}catch(e){throw u&&l&&c?await U(e,{channelId:u,rest:l,token:c,hasMedia:!0}):e}finally{await Qn(s?o:null),await Qn(i)}}const jr=new Map,Mr=new Map;function Nr(e,t){return typeof e.expiresAt==`number`&&e.expiresAt<=t}function Pr(e,t,n){let r=e.createdAt??t,i=e.expiresAt??r+n;return{...e,createdAt:r,expiresAt:i}}function Fr(e){let t=Date.now(),n=e.ttlMs??18e5;for(let r of e.entries){let i=Pr({...r,messageId:e.messageId??r.messageId},t,n);jr.set(r.id,i)}for(let r of e.modals){let i=Pr({...r,messageId:e.messageId??r.messageId},t,n);Mr.set(r.id,i)}}function Ir(e){let t=jr.get(e.id);return t?Nr(t,Date.now())?(jr.delete(e.id),null):(e.consume!==!1&&jr.delete(e.id),t):null}function Lr(e){let t=Mr.get(e.id);return t?Nr(t,Date.now())?(Mr.delete(e.id),null):(e.consume!==!1&&Mr.delete(e.id),t):null}const Rr=`attachment://`,zr=new Map([[`row`,`actions`],[`action-row`,`actions`]]);function Y(e){return`${e}${T.randomBytes(6).toString(`base64url`)}`}function X(e,t){if(!e||typeof e!=`object`||Array.isArray(e))throw Error(`${t} must be an object`);return e}function Z(e,t,n){if(typeof e!=`string`)throw Error(`${t} must be a string`);let r=e.trim();if(!n?.allowEmpty&&!r)throw Error(`${t} cannot be empty`);return n?.allowEmpty?e:r}function Q(e){return typeof e==`string`&&e.trim()||void 0}function Br(e,t){if(e!==void 0){if(!Array.isArray(e))throw Error(`${t} must be an array`);if(e.length!==0)return e.map((e,n)=>Z(e,`${t}[${n}]`))}}function $(e){if(!(typeof e!=`number`||!Number.isFinite(e)))return e}function Vr(e,t){return e?.trim()||`field_${t+1}`}function Hr(e,t){let n=e.trim();if(!n.startsWith(`attachment://`))throw Error(`${t} must start with "${Rr}"`);let r=n.slice(13).trim();if(!r)throw Error(`${t} must include an attachment filename`);return`${Rr}${r}`}function Ur(e){let t=e.trim();if(!t.startsWith(`attachment://`))throw Error(`Attachment reference must start with "${Rr}"`);let n=t.slice(13).trim();if(!n)throw Error(`Attachment reference must include a filename`);return n}function Wr(e){switch((e??`primary`).toLowerCase()){case`secondary`:return E.Secondary;case`success`:return E.Success;case`danger`:return E.Danger;case`link`:return E.Link;default:return E.Primary}}function Gr(e){return e===`paragraph`?se.Paragraph:se.Short}function Kr(e){let t=e.trim().toLowerCase();return zr.get(t)??t}function qr(e,t){if(e!==void 0){if(!Array.isArray(e))throw Error(`${t} must be an array`);return e.map((e,n)=>{let r=X(e,`${t}[${n}]`);return{label:Z(r.label,`${t}[${n}].label`),value:Z(r.value,`${t}[${n}].value`),description:Q(r.description),emoji:typeof r.emoji==`object`&&r.emoji&&!Array.isArray(r.emoji)?{name:Z(r.emoji.name,`${t}[${n}].emoji.name`),id:Q(r.emoji.id),animated:typeof r.emoji.animated==`boolean`?r.emoji.animated:void 0}:void 0,default:typeof r.default==`boolean`?r.default:void 0}})}}function Jr(e,t){let n=X(e,t),r=Q(n.style),i=Q(n.url);if((r===`link`||i)&&!i)throw Error(`${t}.url is required for link buttons`);return{label:Z(n.label,`${t}.label`),style:r,url:i,emoji:typeof n.emoji==`object`&&n.emoji&&!Array.isArray(n.emoji)?{name:Z(n.emoji.name,`${t}.emoji.name`),id:Q(n.emoji.id),animated:typeof n.emoji.animated==`boolean`?n.emoji.animated:void 0}:void 0,disabled:typeof n.disabled==`boolean`?n.disabled:void 0,allowedUsers:Br(n.allowedUsers,`${t}.allowedUsers`)}}function Yr(e,t){let n=X(e,t),r=Q(n.type),i=[`string`,`user`,`role`,`mentionable`,`channel`];if(r&&!i.includes(r))throw Error(`${t}.type must be one of ${i.join(`, `)}`);return{type:r,placeholder:Q(n.placeholder),minValues:$(n.minValues),maxValues:$(n.maxValues),options:qr(n.options,`${t}.options`)}}function Xr(e,t,n){let r=X(e,t),i=Z(r.type,`${t}.type`).toLowerCase(),a=[`text`,`checkbox`,`radio`,`select`,`role-select`,`user-select`];if(!a.includes(i))throw Error(`${t}.type must be one of ${a.join(`, `)}`);let o=qr(r.options,`${t}.options`);if([`checkbox`,`radio`,`select`].includes(i)&&(!o||o.length===0))throw Error(`${t}.options is required for ${i} fields`);return{type:i,name:Vr(Q(r.name),n),label:Z(r.label,`${t}.label`),description:Q(r.description),placeholder:Q(r.placeholder),required:typeof r.required==`boolean`?r.required:void 0,options:o,minValues:$(r.minValues),maxValues:$(r.maxValues),minLength:$(r.minLength),maxLength:$(r.maxLength),style:Q(r.style)}}function Zr(e,t){let n=X(e,t);switch(Kr(Z(n.type,`${t}.type`).toLowerCase())){case`text`:return{type:`text`,text:Z(n.text,`${t}.text`)};case`section`:{let e=Q(n.text),r=n.texts,i=Array.isArray(r)?r.map((e,n)=>Z(e,`${t}.texts[${n}]`)):void 0;if(!e&&(!i||i.length===0))throw Error(`${t}.text or ${t}.texts is required for section blocks`);let a;if(n.accessory!==void 0){let e=X(n.accessory,`${t}.accessory`),r=Z(e.type,`${t}.accessory.type`).toLowerCase();if(r===`thumbnail`)a={type:`thumbnail`,url:Z(e.url,`${t}.accessory.url`)};else if(r===`button`)a={type:`button`,button:Jr(e.button,`${t}.accessory.button`)};else throw Error(`${t}.accessory.type must be "thumbnail" or "button"`)}return{type:`section`,text:e,texts:i,accessory:a}}case`separator`:{let e=n.spacing,r;if(e===`small`||e===`large`)r=e;else if(e===1||e===2)r=e;else if(e!==void 0)throw Error(`${t}.spacing must be "small", "large", 1, or 2`);let i=typeof n.divider==`boolean`?n.divider:void 0;return{type:`separator`,spacing:r,divider:i}}case`actions`:{let e=n.buttons,r=Array.isArray(e)?e.map((e,n)=>Jr(e,`${t}.buttons[${n}]`)):void 0,i=n.select?Yr(n.select,`${t}.select`):void 0;if((!r||r.length===0)&&!i)throw Error(`${t} requires buttons or select`);if(r&&i)throw Error(`${t} cannot include both buttons and select`);return{type:`actions`,buttons:r,select:i}}case`media-gallery`:{let e=n.items;if(!Array.isArray(e)||e.length===0)throw Error(`${t}.items must be a non-empty array`);return{type:`media-gallery`,items:e.map((e,n)=>{let r=X(e,`${t}.items[${n}]`);return{url:Z(r.url,`${t}.items[${n}].url`),description:Q(r.description),spoiler:typeof r.spoiler==`boolean`?r.spoiler:void 0}})}}case`file`:return{type:`file`,file:Hr(Z(n.file,`${t}.file`),`${t}.file`),spoiler:typeof n.spoiler==`boolean`?n.spoiler:void 0};default:throw Error(`${t}.type must be a supported component block`)}}function Qr(e){if(e==null)return null;let t=X(e,`components`),n=t.blocks,r=Array.isArray(n)?n.map((e,t)=>Zr(e,`components.blocks[${t}]`)):void 0,i=t.modal,a=typeof t.reusable==`boolean`?t.reusable:void 0,o;if(i!==void 0){let e=X(i,`components.modal`),t=e.fields;if(!Array.isArray(t)||t.length===0)throw Error(`components.modal.fields must be a non-empty array`);if(t.length>5)throw Error(`components.modal.fields supports up to 5 inputs`);let n=t.map((e,t)=>Xr(e,`components.modal.fields[${t}]`,t));o={title:Z(e.title,`components.modal.title`),triggerLabel:Q(e.triggerLabel),triggerStyle:Q(e.triggerStyle),fields:n}}return{text:Q(t.text),reusable:a,container:typeof t.container==`object`&&t.container&&!Array.isArray(t.container)?{accentColor:t.container.accentColor,spoiler:typeof t.container.spoiler==`boolean`?t.container.spoiler:void 0}:void 0,blocks:r,modal:o}}function $r(e){let t=`occomp:cid=${e.componentId}`;return e.modalId?`${t};mid=${e.modalId}`:t}function ei(e){return`ocmodal:mid=${e}`}function ti(e){let t=j(e);if(t.key!==`occomp`)return null;let n=t.data.cid;if(typeof n!=`string`||!n.trim())return null;let r=t.data.mid;return{componentId:n,modalId:typeof r==`string`&&r.trim()?r:void 0}}function ni(e){let t=j(e);if(t.key!==`ocmodal`)return null;let n=t.data.mid;return typeof n!=`string`||!n.trim()?null:n}function ri(e){return/^__openclaw_discord_component_[a-z_]+_wildcard__$/.test(e)}function ii(e){if(e===`*`||ri(e))return{key:`*`,data:{}};let t=j(e);return t.key===`occomp`?{key:`*`,data:t.data}:t}function ai(e){if(e===`*`||ri(e))return{key:`*`,data:{}};let t=j(e);return t.key===`ocmodal`?{key:`*`,data:t.data}:t}function oi(e,t){return t&&t.length>0?t.map(e=>new A(e)):e?[new A(e)]:[]}function si(e){let t=Wr(e.spec.style);if(t===E.Link||e.spec.url){if(!e.spec.url)throw Error(`Link buttons require a url`);let t=e.spec.url;class n extends he{constructor(...n){super(...n),this.label=e.spec.label,this.url=t}}return{component:new n}}let n=e.componentId??Y(`btn_`),r=$r({componentId:n,modalId:e.modalId});class i extends ce{constructor(...n){super(...n),this.label=e.spec.label,this.customId=r,this.style=t,this.emoji=e.spec.emoji,this.disabled=e.spec.disabled??!1}}return{component:new i,entry:{id:n,kind:e.modalId?`modal-trigger`:`button`,label:e.spec.label,modalId:e.modalId,allowedUsers:e.spec.allowedUsers}}}function ci(e){let t=(e.spec.type??`string`).toLowerCase(),n=e.componentId??Y(`sel_`),r=$r({componentId:n});if(t===`string`){let t=e.spec.options??[];if(t.length===0)throw Error(`String select menus require options`);class i extends Te{constructor(...n){super(...n),this.customId=r,this.options=t,this.minValues=e.spec.minValues,this.maxValues=e.spec.maxValues,this.placeholder=e.spec.placeholder,this.disabled=!1}}return{component:new i,entry:{id:n,kind:`select`,label:e.spec.placeholder??`select`,selectType:`string`,options:t.map(e=>({value:e.value,label:e.label}))}}}if(t===`user`){class t extends Oe{constructor(...t){super(...t),this.customId=r,this.minValues=e.spec.minValues,this.maxValues=e.spec.maxValues,this.placeholder=e.spec.placeholder,this.disabled=!1}}return{component:new t,entry:{id:n,kind:`select`,label:e.spec.placeholder??`user select`,selectType:`user`}}}if(t===`role`){class t extends Se{constructor(...t){super(...t),this.customId=r,this.minValues=e.spec.minValues,this.maxValues=e.spec.maxValues,this.placeholder=e.spec.placeholder,this.disabled=!1}}return{component:new t,entry:{id:n,kind:`select`,label:e.spec.placeholder??`role select`,selectType:`role`}}}if(t===`mentionable`){class t extends _e{constructor(...t){super(...t),this.customId=r,this.minValues=e.spec.minValues,this.maxValues=e.spec.maxValues,this.placeholder=e.spec.placeholder,this.disabled=!1}}return{component:new t,entry:{id:n,kind:`select`,label:e.spec.placeholder??`mentionable select`,selectType:`mentionable`}}}class i extends le{constructor(...t){super(...t),this.customId=r,this.minValues=e.spec.minValues,this.maxValues=e.spec.maxValues,this.placeholder=e.spec.placeholder,this.disabled=!1}}return{component:new i,entry:{id:n,kind:`select`,label:e.spec.placeholder??`channel select`,selectType:`channel`}}}function li(e){return e instanceof Te||e instanceof Oe||e instanceof Se||e instanceof _e||e instanceof le}function ui(e){if(e.type===`text`){class t extends Ee{constructor(...t){super(...t),this.customId=e.id,this.style=Gr(e.style),this.placeholder=e.placeholder,this.required=e.required,this.minLength=e.minLength,this.maxLength=e.maxLength}}return new t}if(e.type===`select`){let t=e.options??[];class n extends Te{constructor(...n){super(...n),this.customId=e.id,this.options=t,this.required=e.required,this.minValues=e.minValues,this.maxValues=e.maxValues,this.placeholder=e.placeholder}}return new n}if(e.type===`role-select`){class t extends Se{constructor(...t){super(...t),this.customId=e.id,this.required=e.required,this.minValues=e.minValues,this.maxValues=e.maxValues,this.placeholder=e.placeholder}}return new t}if(e.type===`user-select`){class t extends Oe{constructor(...t){super(...t),this.customId=e.id,this.required=e.required,this.minValues=e.minValues,this.maxValues=e.maxValues,this.placeholder=e.placeholder}}return new t}if(e.type===`checkbox`){let t=e.options??[];class n extends ue{constructor(...n){super(...n),this.customId=e.id,this.options=t,this.required=e.required,this.minValues=e.minValues,this.maxValues=e.maxValues}}return new n}let t=e.options??[];class n extends ye{constructor(...n){super(...n),this.customId=e.id,this.options=t,this.required=e.required,this.minValues=e.minValues,this.maxValues=e.maxValues}}return new n}function di(e){let t=[],n=[],r=[],i=[],a=n=>{t.push({...n,sessionKey:e.sessionKey,agentId:e.agentId,accountId:e.accountId,reusable:n.reusable??e.spec.reusable})},o=e.spec.text??e.fallbackText;o&&i.push(new A(o));for(let t of e.spec.blocks??[]){if(t.type===`text`){i.push(new A(t.text));continue}if(t.type===`section`){let e=oi(t.text,t.texts);if(e.length>3)throw Error(`Section blocks support up to 3 text displays`);let n;if(t.accessory?.type===`thumbnail`)n=new De(t.accessory.url);else if(t.accessory?.type===`button`){let{component:e,entry:r}=si({spec:t.accessory.button});n=e,r&&a(r)}i.push(new Ce(e,n));continue}if(t.type===`separator`){i.push(new we({spacing:t.spacing,divider:t.divider}));continue}if(t.type===`media-gallery`){i.push(new ge(t.items));continue}if(t.type===`file`){i.push(new pe(t.file,t.spoiler));continue}if(t.type===`actions`){let e=[];if(t.buttons){if(t.buttons.length>5)throw Error(`Action rows support up to 5 buttons`);for(let n of t.buttons){let{component:t,entry:r}=si({spec:n});e.push(t),r&&a(r)}}else if(t.select){let{component:n,entry:r}=ci({spec:t.select});e.push(n),a(r)}i.push(new k(e))}}if(e.spec.modal){let t=Y(`mdl_`),r=e.spec.modal.fields.map((e,t)=>({id:Y(`fld_`),name:Vr(e.name,t),label:e.label,type:e.type,description:e.description,placeholder:e.placeholder,required:e.required,options:e.options,minValues:e.minValues,maxValues:e.maxValues,minLength:e.minLength,maxLength:e.maxLength,style:e.style}));n.push({id:t,title:e.spec.modal.title,fields:r,sessionKey:e.sessionKey,agentId:e.agentId,accountId:e.accountId,reusable:e.spec.reusable});let{component:o,entry:s}=si({spec:{label:e.spec.modal.triggerLabel??`Open form`,style:e.spec.modal.triggerStyle??`primary`},modalId:t});s&&a(s);let c=i.at(-1);if(c instanceof k){let e=c,t=e.components.some(e=>li(e));e.components.length<5&&!t?e.addComponent(o):i.push(new k([o]))}else i.push(new k([o]))}if(i.length===0)throw Error(`components must include at least one block, text, or modal trigger`);let s=new de(i,e.spec.container);return r.push(s),{components:r,entries:t,modals:n}}function fi(e){return e.some(e=>e.isV2)?ae.IsComponentsV2:void 0}var pi=class extends ve{constructor(e){super(),this.customIdParser=ai,this.title=e.title,this.customId=ei(e.modalId),this.components=e.fields.map(e=>{let t=ui(e);class n extends me{constructor(...n){super(...n),this.label=e.label,this.description=e.description,this.component=t,this.customId=e.id}}return new n(t)})}async run(){throw Error(`Modal handler is not registered for dynamic forms`)}};function mi(e){return new pi({modalId:e.id,title:e.title,fields:e.fields})}function hi(e){if(e.kind===`button`)return`Clicked "${e.label}".`;let t=e.values??[];return t.length===0?`Updated "${e.label}".`:`Selected ${t.join(`, `)} from "${e.label}".`}const gi=new Set([D.GuildForum,D.GuildMedia]);function _i(e){let t=[];for(let n of e.blocks??[])n.type===`file`&&t.push(Ur(n.file));return t}async function vi(e,t,n={}){let i=n.cfg??r(),o=a({cfg:i,accountId:n.accountId}),{token:s,rest:c,request:l}=R(n,i),{channelId:u}=await W(c,await V(e,n.accountId,i),l),d=await un(c,u);if(d&&gi.has(d))throw Error(`Discord components are not supported in forum-style channels`);let f=di({spec:t,sessionKey:n.sessionKey,agentId:n.agentId,accountId:o.accountId}),m=fi(f.components),h=n.silent?(m??0)|G:m??void 0,g=n.replyTo?{message_id:n.replyTo,fail_if_not_exists:!1}:void 0,_=_i(t),v=[...new Set(_)];if(v.length>1)throw Error(`Discord component attachments currently support a single file. Use media-gallery for multiple files.`);let y=v[0],x;if(n.mediaUrl){let e=await p(n.mediaUrl,{localRoots:n.mediaLocalRoots}),t=n.filename?.trim()||e.fileName||`upload`;if(y&&y!==t)throw Error(`Component file block expects attachment "${y}", but the uploaded file is "${t}". Update components.blocks[].file or provide a matching filename.`);x=[{data:_n(e.buffer),name:t}]}else if(y)throw Error(`Discord component file blocks require a media attachment (media/path/filePath).`);let ee=K({...M({components:f.components,...h?{flags:h}:{},...x?{files:x}:{}}),...g?{message_reference:g}:{}}),S;try{S=await l(()=>c.post(O.channelMessages(u),{body:ee}),`components`)}catch(e){throw await U(e,{channelId:u,rest:c,token:s,hasMedia:!!x?.length})}return Fr({entries:f.entries,modals:f.modals,messageId:S.id}),b({channel:`discord`,accountId:o.accountId,direction:`outbound`}),{messageId:S.id??`unknown`,channelId:S.channel_id??u}}async function yi(e,t,n,i={}){let{rest:a,request:o}=R(i,i.cfg??r()),s=on(n);return await o(()=>a.put(O.channelMessageOwnReaction(e,t,s)),`react`),{ok:!0}}async function bi(e,t,n,i={}){let{rest:a}=R(i,i.cfg??r()),o=on(n);return await a.delete(O.channelMessageOwnReaction(e,t,o)),{ok:!0}}async function xi(e,t,n={}){let{rest:i}=R(n,n.cfg??r()),a=await i.get(O.channelMessage(e,t)),o=new Set;for(let e of a.reactions??[]){let t=yn(e.emoji);t&&o.add(t)}if(o.size===0)return{ok:!0,removed:[]};let s=[];return await Promise.allSettled(Array.from(o,n=>(s.push(n),i.delete(O.channelMessageOwnReaction(e,t,on(n)))))),{ok:!0,removed:s}}async function Si(e,t,n={}){let{rest:i}=R(n,n.cfg??r()),a=(await i.get(O.channelMessage(e,t))).reactions??[];if(a.length===0)return[];let o=typeof n.limit==`number`&&Number.isFinite(n.limit)?Math.min(Math.max(Math.floor(n.limit),1),100):100,s=[];for(let n of a){let r=yn(n.emoji);if(!r)continue;let a=encodeURIComponent(r),c=await i.get(O.channelMessageReaction(e,t,a),{limit:o});s.push({emoji:{id:n.emoji.id??null,name:n.emoji.name??null,raw:bn(n.emoji)},count:n.count,users:c.map(e=>({id:e.id,username:e.username,tag:e.username&&e.discriminator?`${e.username}#${e.discriminator}`:e.username}))})}return s}export{K as $,qn as A,Fe as At,Ln as B,Wn as C,Ve as Ct,Kn as D,Ae as Dt,Xn as E,P as Et,An as F,kn as G,zn as H,jn as I,Sn as J,xn as K,In as L,Vn as M,Rn as N,Hn as O,Ne as Ot,Pn as P,q as Q,Bn as R,Gn as S,Ue as St,Jn as T,N as Tt,Dn as U,Nn as V,On as W,En as X,wn as Y,Tn as Z,Dr as _,Qe as _t,vi as a,L as at,rr as b,ut as bt,ti as c,Tt as ct,ai as d,I as dt,rn as et,Qr as f,qe as ft,Or as g,$e as gt,wr as h,Ze as ht,bi as i,Pt as it,Mn as j,Zn as k,Me as kt,ii as l,ct as lt,Lr as m,et as mt,yi as n,Ut as nt,mi as o,Et as ot,Ir as p,at as pt,Cn as q,xi as r,R as rt,hi as s,wt as st,Si as t,nn as tt,ni as u,F as ut,Ar as v,ot as vt,Un as w,We as wt,Yn as x,He as xt,Er as y,lt as yt,Fn as z};
|
|
8
|
-
//# sourceMappingURL=send-CyarIb2w.js.map
|
package/dist/send-DiHS8tKf.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
import{R as e}from"./logger-DwWqfo66.js";import{Za as t,cr as n,dr as r}from"./model-selection-DvekK9rZ.js";import{i,n as a,r as o,t as s}from"./targets-CL5fYQi7.js";import{i as c}from"./tokens-B2fq-rL6.js";import{r as l,t as u}from"./fetch-guard-oWKGrwV4.js";import{a as d,d as f,h as p,m,n as h,s as g,t as _}from"./ir-B7mdG27k.js";import{t as v}from"./render-BXEUPIHe.js";import{WebClient as y}from"@slack/web-api";function b(e,t={}){let n=e.trim();return n?o({raw:n,mentionPattern:/^<@([A-Z0-9]+)>$/i,prefixes:[{prefix:`user:`,kind:`user`},{prefix:`channel:`,kind:`channel`},{prefix:`slack:`,kind:`user`}],atUserPattern:/^[A-Z0-9]+$/i,atUserErrorMessage:`Slack DMs require a user id (use user:<id> or <@id>)`})||(n.startsWith(`#`)?s(`channel`,a({candidate:n.slice(1).trim(),pattern:/^[A-Z0-9]+$/i,errorMessage:`Slack channels require a channel id (use channel:<id>)`}),n):t.defaultKind?s(t.defaultKind,n,n):s(`channel`,n,n)):void 0}function x(e){return i({platform:`Slack`,target:b(e,{defaultKind:`channel`}),kind:`channel`})}function S(e){if(typeof e!=`string`)return;let t=e.replace(/\s+/g,` `).trim();return t.length>0?t:void 0}function C(e){return S(e.text?.text)}function w(e){return S(e.text?.text)}function T(e){return S(e.alt_text)??S(e.title?.text)}function E(e){return S(e.title?.text)??S(e.alt_text)}function D(e){if(!Array.isArray(e.elements))return;let t=e.elements.map(e=>S(e.text)).filter(e=>!!e);return t.length>0?t.join(` `):void 0}function O(e){for(let t of e){let e=t;switch(e.type){case`header`:{let t=w(e);if(t)return t;break}case`section`:{let t=C(e);if(t)return t;break}case`image`:return T(e)||`Shared an image`;case`video`:return E(e)||`Shared a video`;case`file`:return`Shared a file`;case`context`:{let t=D(e);if(t)return t;break}default:break}}return`Shared a Block Kit message`}function k(e){try{return JSON.parse(e)}catch{throw Error(`blocks must be valid JSON`)}}function A(e){if(!Array.isArray(e))throw Error(`blocks must be an array`);if(e.length===0)throw Error(`blocks must contain at least one block`);if(e.length>50)throw Error(`blocks cannot exceed 50 items`);for(let t of e){if(!t||typeof t!=`object`||Array.isArray(t))throw Error(`each block must be an object`);let e=t.type;if(typeof e!=`string`||e.trim().length===0)throw Error(`each block must include a non-empty string type`)}}function j(e){return A(e),e}function M(e){if(e!=null)return j(typeof e==`string`?k(e):e)}const N={retries:2,factor:2,minTimeout:500,maxTimeout:3e3,randomize:!0};function P(e={}){return{...e,retryConfig:e.retryConfig??N}}function F(e,t={}){return new y(e,P(t))}function I(e){return e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`)}const L=/<[^>\n]+>/g;function R(e){if(!e.startsWith(`<`)||!e.endsWith(`>`))return!1;let t=e.slice(1,-1);return t.startsWith(`@`)||t.startsWith(`#`)||t.startsWith(`!`)||t.startsWith(`mailto:`)||t.startsWith(`tel:`)||t.startsWith(`http://`)||t.startsWith(`https://`)||t.startsWith(`slack://`)}function z(e){if(!e)return``;if(!e.includes(`&`)&&!e.includes(`<`)&&!e.includes(`>`))return e;L.lastIndex=0;let t=[],n=0;for(let r=L.exec(e);r;r=L.exec(e)){let i=r.index??0;t.push(I(e.slice(n,i)));let a=r[0]??``;t.push(R(a)?a:I(a)),n=i+a.length}return t.push(I(e.slice(n))),t.join(``)}function B(e){return e?!e.includes(`&`)&&!e.includes(`<`)&&!e.includes(`>`)?e:e.split(`
|
|
2
2
|
`).map(e=>e.startsWith(`> `)?`> ${z(e.slice(2))}`:z(e)).join(`
|
|
3
3
|
`):``}function V(e,t){let n=e.href.trim();if(!n)return null;let r=t.slice(e.start,e.end).trim(),i=n.startsWith(`mailto:`)?n.slice(7):n;if(!(r.length>0&&r!==n&&r!==i))return null;let a=I(n);return{start:e.start,end:e.end,open:`<${a}|`,close:`>`}}function H(){return{styleMarkers:{bold:{open:`*`,close:`*`},italic:{open:`_`,close:`_`},strikethrough:{open:`~`,close:`~`},code:{open:"`",close:"`"},code_block:{open:"```\n",close:"```"}},escapeText:B,buildLink:V}}function U(e,t={}){return v(h(e??``,{linkify:!1,autolink:!1,headingStyle:`bold`,blockquotePrefix:`> `,tableMode:t.tableMode}),H())}function W(e){return U(e??``)}function G(e,t,n={}){let r=_(h(e??``,{linkify:!1,autolink:!1,headingStyle:`bold`,blockquotePrefix:`> `,tableMode:n.tableMode}),t),i=H();return r.map(e=>v(e,i))}const K={allowedHostnames:[`*.slack.com`,`*.slack-edge.com`,`*.slack-files.com`],allowRfc2544BenchmarkRange:!0};function q(e){return!!(e?.username||e?.iconUrl||e?.iconEmoji)}function J(e){if(!(e instanceof Error))return!1;let t=e;return t.data?.error?.toLowerCase()===`missing_scope`?(t.data?.needed?.toLowerCase())?.includes(`chat:write.customize`)?!0:[...t.data?.response_metadata?.scopes??[],...t.data?.response_metadata?.acceptedScopes??[]].map(e=>e.toLowerCase()).includes(`chat:write.customize`):!1}async function Y(t){let n={channel:t.channelId,text:t.text,thread_ts:t.threadTs,...t.blocks?.length?{blocks:t.blocks}:{}};try{return t.identity?.iconUrl?await t.client.chat.postMessage({...n,...t.identity.username?{username:t.identity.username}:{},icon_url:t.identity.iconUrl}):t.identity?.iconEmoji?await t.client.chat.postMessage({...n,...t.identity.username?{username:t.identity.username}:{},icon_emoji:t.identity.iconEmoji}):await t.client.chat.postMessage({...n,...t.identity?.username?{username:t.identity.username}:{}})}catch(r){if(!q(t.identity)||!J(r))throw r;return e(`slack send: missing chat:write.customize, retrying without custom identity`),t.client.chat.postMessage(n)}}function X(t){let n=r(t.explicit);if(n)return n;let i=r(t.fallbackToken);if(!i)throw e(`slack send: missing bot token for account=${t.accountId} explicit=${!!t.explicit} source=${t.fallbackSource??`unknown`}`),Error(`Slack bot token missing for account "${t.accountId}" (set channels.slack.accounts.${t.accountId}.botToken or SLACK_BOT_TOKEN for default).`);return i}function Z(e){let t=b(e);if(!t)throw Error(`Recipient is required for Slack sends`);return{kind:t.kind,id:t.id}}async function Q(e,t){if(!(t.kind===`user`||/^U[A-Z0-9]+$/i.test(t.id)))return{channelId:t.id};let n=(await e.conversations.open({users:t.id})).channel?.id;if(!n)throw Error(`Failed to open Slack DM channel`);return{channelId:n,isDm:!0}}async function $(e){let{buffer:t,contentType:n,fileName:r}=await d(e.mediaUrl,{maxBytes:e.maxBytes,localRoots:e.mediaLocalRoots}),i=await e.client.files.getUploadURLExternal({filename:r??`upload`,length:t.length});if(!i.ok||!i.upload_url||!i.file_id)throw Error(`Failed to get upload URL: ${i.error??`unknown error`}`);let a=new Uint8Array(t),{response:o,release:s}=await u(l({url:i.upload_url,init:{method:`POST`,...n?{headers:{"Content-Type":n}}:{},body:a},policy:K,auditContext:`slack-upload-file`}));try{if(!o.ok)throw Error(`Failed to upload file: HTTP ${o.status}`)}finally{await s()}let c=await e.client.files.completeUploadExternal({files:[{id:i.file_id,title:r??`upload`}],channel_id:e.channelId,...e.caption?{initial_comment:e.caption}:{},...e.threadTs?{thread_ts:e.threadTs}:{}});if(!c.ok)throw Error(`Failed to complete upload: ${c.error??`unknown error`}`);return i.file_id}async function ee(r,i,a={}){let o=i?.trim()??``;if(c(o)&&!a.mediaUrl&&!a.blocks)return e(`slack send: suppressed NO_REPLY token before API call`),{messageId:`suppressed`,channelId:``};let s=a.blocks==null?void 0:j(a.blocks);if(!o&&!a.mediaUrl&&!s)throw Error(`Slack send requires text, blocks, or media`);let l=a.cfg??t(),u=n({cfg:l,accountId:a.accountId}),d=X({explicit:a.token,accountId:u.accountId,fallbackToken:u.botToken,fallbackSource:u.botTokenSource}),h=a.client??F(d),{channelId:_}=await Q(h,Z(r));if(s){if(a.mediaUrl)throw Error(`Slack send does not support blocks with mediaUrl`);return{messageId:(await Y({client:h,channelId:_,text:o||O(s),threadTs:a.threadTs,identity:a.identity,blocks:s})).ts??`unknown`,channelId:_}}let v=p(l,`slack`,u.accountId),y=Math.min(v,4e3),b=g({cfg:l,channel:`slack`,accountId:u.accountId}),x=m(l,`slack`,u.accountId),S=(x===`newline`?f(o,y,x):[o]).flatMap(e=>G(e,y,{tableMode:b}));!S.length&&o&&S.push(o);let C=typeof u.config.mediaMaxMb==`number`?u.config.mediaMaxMb*1024*1024:void 0,w=``;if(a.mediaUrl){let[e,...t]=S;w=await $({client:h,channelId:_,mediaUrl:a.mediaUrl,mediaLocalRoots:a.mediaLocalRoots,caption:e,threadTs:a.threadTs,maxBytes:C});for(let e of t)w=(await Y({client:h,channelId:_,text:e,threadTs:a.threadTs,identity:a.identity})).ts??w}else for(let e of S.length?S:[``])w=(await Y({client:h,channelId:_,text:e,threadTs:a.threadTs,identity:a.identity})).ts??w;return{messageId:w||`unknown`,channelId:_}}export{P as a,O as c,F as i,b as l,G as n,M as o,W as r,j as s,ee as t,x as u};
|
|
4
|
-
//# sourceMappingURL=send-DiHS8tKf.js.map
|
package/dist/send-Dj7NBAWg.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
1
|
import{S as e,t,v as n}from"./subsystem-BLbY429l.js";import{_ as r}from"./paths-BjD3T_xq.js";import{Bo as i,Io as a,jo as o,sc as s}from"./auth-profiles-C8rZRS0X.js";import{_ as c}from"./session-key-C7F_iqYg.js";import{t as l}from"./utils-CGdo13HV.js";import{u}from"./plugins-DNlgeTTc.js";import{a as d,c as f,l as p,u as m}from"./windows-spawn-7oINn5ao.js";import{n as h}from"./redact-CnRxK70G.js";import{i as g,n as _,r as v,s as y,t as b}from"./errors-6SQWM9dj.js";import{n as x,r as S,t as C}from"./targets-4EaxWBal.js";import{n as w}from"./proxy-fetch-gWETR3cl.js";import{a as ee,n as T,s as E,t as te}from"./ir-DdjufzKF.js";import{t as ne}from"./render-DrrPmnMI.js";import{i as D}from"./pairing-store-BaaVy1zB.js";import{i as re,n as O}from"./channel-activity-BhiLsKvM.js";import{t as ie}from"./load-options-DV4j6Aqb.js";import{n as k}from"./polls-DKJOFSzJ.js";import{n as A,r as j,t as M}from"./allow-from-DEeVIPKS.js";import{t as ae}from"./fetch-Ce-scEU-.js";import N from"node:path";import P from"node:fs";import oe from"json5";import{randomBytes as se}from"node:crypto";import{Bot as ce,HttpError as le,InputFile as ue}from"grammy";const de=new Set([`.oga`,`.ogg`,`.opus`,`.mp3`,`.m4a`]),fe=new Set([`audio/ogg`,`audio/opus`,`audio/mpeg`,`audio/mp3`,`audio/mp4`,`audio/x-m4a`,`audio/m4a`]);function pe(e){let t=m(e.contentType);if(t&&fe.has(t))return!0;let n=e.fileName?.trim();if(!n)return!1;let r=d(n);return r?de.has(r):!1}function me(e){return pe(e)}function he(e){let t=e.source??(e.isLive?`live`:e.name||e.address?`place`:`pin`),n=!!(e.isLive??t===`live`);return{...e,source:t,isLive:n}}function ge(e){return Number.isFinite(e)?` ±${Math.round(e??0)}m`:``}function _e(e,t){return`${e.toFixed(6)}, ${t.toFixed(6)}`}function ve(e){let t=he(e),n=_e(t.latitude,t.longitude),r=ge(t.accuracy),i=t.caption?.trim(),a=``;return a=t.source===`live`||t.isLive?`🛰 Live location: ${n}${r}`:t.name||t.address?`📍 ${[t.name,t.address].filter(Boolean).join(` — `)} (${n}${r})`:`📍 ${n}${r}`,i?`${a}\n${i}`:a}function ye(e){let t=he(e);return{LocationLat:t.latitude,LocationLon:t.longitude,LocationAccuracy:t.accuracy,LocationName:t.name,LocationAddress:t.address,LocationSource:t.source,LocationIsLive:t.isLive}}const be=new Set,xe=t(`telegram/bot-access`);function Se(e){if(!process.env.VITEST)for(let t of e)be.has(t)||(be.add(t),xe.warn([`Invalid allowFrom entry:`,JSON.stringify(t),`- allowFrom/groupAllowFrom authorization expects numeric Telegram sender user IDs only.`,`To allow a Telegram group or supergroup, add its negative chat ID under "channels.telegram.groups" instead.`,`If you had "@username" entries, re-run onboarding (it resolves @username to IDs) or replace them manually.`].join(` `)))}const Ce=e=>{let t=(e??[]).map(e=>String(e).trim()).filter(Boolean),n=t.includes(`*`),r=t.filter(e=>e!==`*`).map(e=>e.replace(/^(telegram|tg):/i,``)),i=r.filter(e=>!/^\d+$/.test(e));return i.length>0&&Se([...new Set(i)]),{entries:r.filter(e=>/^\d+$/.test(e)),hasWildcard:n,hasEntries:t.length>0,invalidEntries:i}},we=e=>Ce(j(e)),Te=e=>{let{allow:t,senderId:n}=e;return A(t,n,!0)},Ee=e=>{let{allow:t,senderId:n}=e;return t.hasWildcard?{allowed:!0,matchKey:`*`,matchSource:`wildcard`}:t.hasEntries&&n&&t.entries.includes(n)?{allowed:!0,matchKey:n,matchSource:`id`}:{allowed:!1}};async function De(e){let t=c(e.accountId),n=ke({isGroup:e.isGroup??!1,isForum:e.isForum,messageThreadId:e.messageThreadId}),r=n.scope===`forum`?n.id:void 0,i=n.scope===`dm`?n.id:void 0,a=r??i,o=await D(`telegram`,process.env,t).catch(()=>[]),{groupConfig:s,topicConfig:l}=e.resolveTelegramGroupConfig(e.chatId,a),u=M(l?.allowFrom,s?.allowFrom);return{resolvedThreadId:r,dmThreadId:i,storeAllowFrom:o,groupConfig:s,topicConfig:l,groupAllowOverride:u,effectiveGroupAllow:Ce(u??e.groupAllowFrom),hasGroupAllowOverride:u!==void 0}}function Oe(e){if(e.isForum)return e.messageThreadId==null?1:e.messageThreadId}function ke(e){return e.isGroup?{id:Oe({isForum:e.isForum,messageThreadId:e.messageThreadId}),scope:e.isForum?`forum`:`none`}:e.messageThreadId==null?{scope:`dm`}:{id:e.messageThreadId,scope:`dm`}}function Ae(e){if(e?.id==null)return;let t=Math.trunc(e.id);if(e.scope===`dm`)return t>0?{message_thread_id:t}:void 0;if(t!==1)return{message_thread_id:t}}function je(e){if(e!=null)return{message_thread_id:Math.trunc(e)}}function Me(e){return s(e)}function Ne(e,t){return t==null?String(e):`${e}:topic:${t}`}function Pe(e){return(e.senderId==null?``:String(e.senderId).trim())||String(e.chatId)}function Fe(e,t){return`telegram:group:${Ne(e,t)}`}function Ie(e){if(!(!e.isGroup||e.resolvedThreadId==null))return{kind:`group`,id:String(e.chatId)}}function F(e){return[e.from?.first_name,e.from?.last_name].filter(Boolean).join(` `).trim()||e.from?.username||void 0}function Le(e){if(e){if(e.photo)return`<media:image>`;if(e.video||e.video_note)return`<media:video>`;if(e.audio||e.voice)return`<media:audio>`;if(e.document)return`<media:document>`;if(e.sticker)return`<media:sticker>`}}function Re(e,t){let n=F(e),r=e.from?.username?`@${e.from.username}`:void 0,i=n;n&&r?i=`${n} (${r})`:!n&&r&&(i=r);let a=(t!=null&&`${t}`.trim()?`${t}`.trim():void 0)??(e.from?.id==null?void 0:String(e.from.id)),o=a?`id:${a}`:void 0;return i&&o?`${i} ${o}`:i||(o??`id:unknown`)}function ze(e,t,n){let r=e.chat?.title,i=n==null?``:` topic:${n}`;return r?`${r} id:${t}${i}`:`group:${t}${i}`}function Be(e){return{text:e.text??e.caption??``,entities:e.entities??e.caption_entities??[]}}function Ve(e){return e!=null&&/[a-z0-9_]/i.test(e)}function He(e,t){let n=0;for(;n<e.length;){let r=e.indexOf(t,n);if(r===-1)return!1;let i=r>0?e[r-1]:void 0,a=e[r+t.length];if(!Ve(i)&&!Ve(a))return!0;n=r+1}return!1}function Ue(e,t){let{text:n,entities:r}=Be(e),i=`@${t}`.toLowerCase();if(He(n.toLowerCase(),i))return!0;for(let e of r)if(e.type===`mention`&&n.slice(e.offset,e.offset+e.length).toLowerCase()===i)return!0;return!1}function We(e,t){if(!e||!t?.length)return e;let n=t.filter(e=>e.type===`text_link`&&!!e.url).toSorted((e,t)=>t.offset-e.offset);if(n.length===0)return e;let r=e;for(let t of n){let n=`[${e.slice(t.offset,t.offset+t.length)}](${t.url})`;r=r.slice(0,t.offset)+n+r.slice(t.offset+t.length)}return r}function Ge(e){if(!e)return;let t=Number(e);if(Number.isFinite(t))return t}function Ke(e){let t=e.reply_to_message,n=e.external_reply,r=e.quote?.text??n?.quote?.text,i=``,a=`reply`;typeof r==`string`&&(i=r.trim(),i&&(a=`quote`));let o=t??n;if(!i&&o&&(i=(o.text??o.caption??``).trim(),!i&&(i=Le(o)??``,!i))){let e=et(o);e&&(i=ve(e))}if(!i)return null;let s=(o?F(o):void 0)??`unknown sender`,c=o?.forward_origin?Qe(o.forward_origin)??void 0:void 0;return{id:o?.message_id?String(o.message_id):void 0,sender:s,body:i,kind:a,forwardedFrom:c}}function qe(e){let t=[e.first_name,e.last_name].filter(Boolean).join(` `).trim(),n=e.username?.trim()||void 0,r=String(e.id);return{display:(t&&n?`${t} (@${n})`:t||(n?`@${n}`:void 0))||`user:${r}`,name:t||void 0,username:n,id:r}}function Je(e,t){let n=e.title?.trim()||void 0,r=e.username?.trim()||void 0,i=String(e.id);return{display:n||(r?`@${r}`:void 0)||`${t}:${i}`,title:n,username:r,id:i}}function Ye(e){let{display:t,name:n,username:r,id:i}=qe(e.user);return t?{from:t,date:e.date,fromType:e.type,fromId:i,fromUsername:r,fromTitle:n}:null}function Xe(e){let t=e.name?.trim();return t?{from:t,date:e.date,fromType:e.type,fromTitle:t}:null}function Ze(e){let t=e.type===`channel`?`channel`:`chat`,{display:n,title:r,username:i,id:a}=Je(e.chat,t);if(!n)return null;let o=e.signature?.trim()||void 0,s=o?`${n} (${o})`:n,c=e.chat.type?.trim()||void 0;return{from:s,date:e.date,fromType:e.type,fromId:a,fromUsername:i,fromTitle:r,fromSignature:o,fromChatType:c,fromMessageId:e.messageId}}function Qe(e){switch(e.type){case`user`:return Ye({user:e.sender_user,date:e.date,type:`user`});case`hidden_user`:return Xe({name:e.sender_user_name,date:e.date,type:`hidden_user`});case`chat`:return Ze({chat:e.sender_chat,date:e.date,type:`chat`,signature:e.author_signature});case`channel`:return Ze({chat:e.chat,date:e.date,type:`channel`,signature:e.author_signature,messageId:e.message_id});default:return null}}function $e(e){return e.forward_origin?Qe(e.forward_origin):null}function et(e){let{venue:t,location:n}=e;if(t)return{latitude:t.location.latitude,longitude:t.location.longitude,accuracy:t.location.horizontal_accuracy,name:t.title,address:t.address,source:`place`,isLive:!1};if(n){let e=typeof n.live_period==`number`&&n.live_period>0;return{latitude:n.latitude,longitude:n.longitude,accuracy:n.horizontal_accuracy,source:e?`live`:`pin`,isLive:e}}return null}const tt=N.join(l,`cron`),nt=N.join(tt,`jobs.json`),I=new Map;function rt(e){if(e?.trim()){let t=e.trim();return t.startsWith(`~`)?N.resolve(r(t)):N.resolve(t)}return nt}async function it(e){try{let t=await P.promises.readFile(e,`utf-8`),n;try{n=oe.parse(t)}catch(t){throw Error(`Failed to parse cron store at ${e}: ${String(t)}`,{cause:t})}let r=n&&typeof n==`object`&&!Array.isArray(n)?n:{},i={version:1,jobs:(Array.isArray(r.jobs)?r.jobs:[]).filter(Boolean)};return I.set(e,JSON.stringify(i,null,2)),i}catch(t){if(t?.code===`ENOENT`)return I.delete(e),{version:1,jobs:[]};throw t}}async function L(e){await P.promises.chmod(e,384).catch(()=>void 0)}async function at(e,t,n){let r=N.dirname(e);await P.promises.mkdir(r,{recursive:!0,mode:448}),await P.promises.chmod(r,448).catch(()=>void 0);let i=JSON.stringify(t,null,2),a=I.get(e);if(a===i)return;let o=a??null;if(o===null)try{o=await P.promises.readFile(e,`utf-8`)}catch(e){if(e.code!==`ENOENT`)throw e}if(o===i){I.set(e,i);return}let s=`${e}.${process.pid}.${se(8).toString(`hex`)}.tmp`;if(await P.promises.writeFile(s,i,{encoding:`utf-8`,mode:384}),await L(s),o!==null&&!n?.skipBackup)try{let t=`${e}.bak`;await P.promises.copyFile(e,t),await L(t)}catch{}await ot(s,e),await L(e),I.set(e,i)}async function ot(e,t){for(let n=0;n<=3;n++)try{await P.promises.rename(e,t);return}catch(r){let i=r.code;if(i===`EBUSY`&&n<3){await new Promise(e=>setTimeout(e,50*2**n));continue}if(i===`EPERM`||i===`EEXIST`){await P.promises.copyFile(e,t),await P.promises.unlink(e).catch(()=>{});return}throw r}}function R(e){return e.trim().toLowerCase()}function st(e){if(!e)return[];let t=e.trim();if(!t)return[];let n=t.toLowerCase();return[`0`,`false`,`off`,`none`].includes(n)?[]:[`1`,`true`,`all`,`*`].includes(n)?[`*`]:t.split(/[,\s]+/).map(R).filter(Boolean)}function ct(e){let t=new Set,n=[];for(let r of e){let e=R(r);!e||t.has(e)||(t.add(e),n.push(e))}return n}function lt(e,t=process.env){let n=Array.isArray(e?.diagnostics?.flags)?e?.diagnostics?.flags:[],r=st(t.OPENCLAW_DIAGNOSTICS);return ct([...n,...r])}function ut(e,t){let n=R(e);if(!n)return!1;for(let e of t){let t=R(e);if(t){if(t===`*`||t===`all`)return!0;if(t.endsWith(`.*`)){let e=t.slice(0,-2);if(n===e||n.startsWith(`${e}.`))return!0}if(t.endsWith(`*`)){let e=t.slice(0,-1);if(n.startsWith(e))return!0}if(t===n)return!0}}return!1}function dt(e,t,n=process.env){return ut(e,lt(t,n))}const ft=t(`telegram/api`);function pt(e,t){return t||(e?.error?e.error:e=>ft.error(e))}async function mt({operation:e,fn:t,runtime:r,logger:i,shouldLog:a}){try{return await t()}catch(t){if(!a||a(t)){let a=v(t);pt(r,i)(n(`telegram ${e} failed: ${a}`))}throw t}}function ht(e){let t=e?.trim()??``;return t?t.length>1024?{caption:void 0,followUpText:t}:{caption:t,followUpText:void 0}:{caption:void 0,followUpText:void 0}}function z(e){return e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`)}function gt(e){return z(e).replace(/"/g,`"`)}const _t=new Set([`md`,`go`,`py`,`pl`,`sh`,`am`,`at`,`be`,`cc`]);function vt(e,t){if(e.replace(/^https?:\/\//i,``)!==t)return!1;let n=t.lastIndexOf(`.`);if(n<1)return!1;let r=t.slice(n+1).toLowerCase();if(!_t.has(r))return!1;let i=t.split(`/`);if(i.length>1){for(let e=0;e<i.length-1;e++)if(i[e].includes(`.`))return!1}return!0}function yt(e,t){let n=e.href.trim();if(!n||e.start===e.end||vt(n,t.slice(e.start,e.end)))return null;let r=gt(n);return{start:e.start,end:e.end,open:`<a href="${r}">`,close:`</a>`}}function bt(e){return ne(e,{styleMarkers:{bold:{open:`<b>`,close:`</b>`},italic:{open:`<i>`,close:`</i>`},strikethrough:{open:`<s>`,close:`</s>`},code:{open:`<code>`,close:`</code>`},code_block:{open:`<pre><code>`,close:`</code></pre>`},spoiler:{open:`<tg-spoiler>`,close:`</tg-spoiler>`},blockquote:{open:`<blockquote>`,close:`</blockquote>`}},escapeText:z,buildLink:yt})}function xt(e,t={}){let n=bt(T(e??``,{linkify:!0,enableSpoilers:!0,headingStyle:`none`,blockquotePrefix:``,tableMode:t.tableMode}));return t.wrapFileRefs===!1?n:kt(n)}function St(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}const Ct=Array.from(_t).map(St).join(`|`),wt=/<a\s+href="https?:\/\/([^"]+)"[^>]*>\1<\/a>/gi,Tt=RegExp(`(^|[^a-zA-Z0-9_\\-/])([a-zA-Z0-9_.\\-./]+\\.(?:${Ct}))(?=$|[^a-zA-Z0-9_\\-/])`,`gi`),Et=RegExp(`([^a-zA-Z0-9]|^)([A-Za-z]\\.(?:${Ct}))(?=[^a-zA-Z0-9/]|$)`,`g`),B=/(<\/?)([a-zA-Z][a-zA-Z0-9-]*)\b[^>]*?>/gi;function Dt(e,t,n){return n.startsWith(`//`)||/https?:\/\/$/i.test(t)?e:`${t}<code>${z(n)}</code>`}function Ot(e,t,n,r){return!e||t>0||n>0||r>0?e:e.replace(Tt,Dt).replace(Et,(e,t,n)=>t===`>`?e:`${t}<code>${z(n)}</code>`)}function kt(e){wt.lastIndex=0;let t=e.replace(wt,(e,t)=>vt(`http://${t}`,t)?`<code>${z(t)}</code>`:e),n=0,r=0,i=0,a=``,o=0;B.lastIndex=0;let s;for(;(s=B.exec(t))!==null;){let e=s.index,c=B.lastIndex,l=s[1]===`</`,u=s[2].toLowerCase(),d=t.slice(o,e);a+=Ot(d,n,r,i),u===`code`?n=l?Math.max(0,n-1):n+1:u===`pre`?r=l?Math.max(0,r-1):r+1:u===`a`&&(i=l?Math.max(0,i-1):i+1),a+=t.slice(e,c),o=c}let c=t.slice(o);return a+=Ot(c,n,r,i),a}function At(e,t={}){return(t.textMode??`markdown`)===`html`?e:xt(e,{tableMode:t.tableMode})}const jt=new Set([`br`]);function Mt(e){return e.map(e=>e.openTag).join(``)}function Nt(e){return e.slice().toReversed().map(e=>e.closeTag).join(``)}function Pt(e){return e.reduce((e,t)=>e+t.closeTag.length,0)}function Ft(e,t){if(e[t]!==`&`)return-1;let n=t+1;if(n>=e.length)return-1;if(e[n]===`#`){if(n+=1,n>=e.length)return-1;if(e[n]===`x`||e[n]===`X`){n+=1;let t=n;for(;/[0-9A-Fa-f]/.test(e[n]??``);)n+=1;if(n===t)return-1}else{let t=n;for(;/[0-9]/.test(e[n]??``);)n+=1;if(n===t)return-1}}else{let t=n;for(;/[A-Za-z0-9]/.test(e[n]??``);)n+=1;if(n===t)return-1}return e[n]===`;`?n:-1}function It(e,t){if(e.length<=t)return e.length;let n=Math.max(1,Math.floor(t)),r=e.lastIndexOf(`&`,n-1);if(r===-1||r<e.lastIndexOf(`;`,n-1))return n;let i=Ft(e,r);return i===-1||i<n?n:r}function Lt(e,t){for(let n=e.length-1;n>=0;--n)if(e[n]?.name===t){e.splice(n,1);return}}function Rt(e,t){if(!e)return[];let n=Math.max(1,Math.floor(t));if(e.length<=n)return[e];let r=[],i=[],a=``,o=!1,s=()=>{a=Mt(i),o=!1},c=()=>{o&&(r.push(`${a}${Nt(i)}`),s())},l=e=>{let t=e;for(;t.length>0;){let e=n-a.length-Pt(i);if(e<=0){if(!o)throw Error(`Telegram HTML chunk limit exceeded by tag overhead (limit=${n})`);c();continue}if(t.length<=e){a+=t,o=!0;break}let r=It(t,e);if(r<=0){if(!o)throw Error(`Telegram HTML chunk limit exceeded by leading entity (limit=${n})`);c();continue}a+=t.slice(0,r),o=!0,t=t.slice(r),c()}};s(),B.lastIndex=0;let u=0,d;for(;(d=B.exec(e))!==null;){let t=d.index,r=B.lastIndex;l(e.slice(u,t));let s=d[0],f=d[1]===`</`,p=d[2].toLowerCase(),m=!f&&(jt.has(p)||s.trimEnd().endsWith(`/>`));if(!f){let e=m?0:`</${p}>`.length;o&&a.length+s.length+Pt(i)+e>n&&c()}a+=s,m&&(o=!0),f?Lt(i,p):m||i.push({name:p,openTag:s,closeTag:`</${p}>`}),u=r}return l(e.slice(u)),c(),r.length>0?r:[e]}function zt(e,t,n){let r=e.text.length;if(r<=1)return[e];let i=Math.floor(r*t/Math.max(n,1)),a=Math.min(r-1,i),o=Ht(e,Number.isFinite(a)&&a>0?a:Math.max(1,Math.floor(r/2)));return o.length>1?o:Ht(e,Math.max(1,Math.floor(r/2)))}function Bt(e,t,n){return e.flatMap(e=>{if(e.end<=t||e.start>=n)return[];let r=Math.max(e.start,t)-t,i=Math.min(e.end,n)-t;return i<=r?[]:[{...e,start:r,end:i}]})}function Vt(e,t,n){return e.flatMap(e=>{if(e.end<=t||e.start>=n)return[];let r=Math.max(e.start,t)-t,i=Math.min(e.end,n)-t;return i<=r?[]:[{...e,start:r,end:i}]})}function Ht(e,t){if(!e.text)return[];let n=Math.max(1,Math.floor(t));if(n<=0||e.text.length<=n)return[e];let r=[],i=0;for(;i<e.text.length;){let t=Math.min(e.text.length,i+n);r.push({text:e.text.slice(i,t),styles:Bt(e.styles,i,t),links:Vt(e.links,i,t)}),i=t}return r}function Ut(e,t){let n=Math.max(1,Math.floor(t)),r=te(e,n),i=[];for(;r.length>0;){let e=r.shift();if(!e)continue;let t=kt(bt(e));if(t.length<=n||e.text.length<=1){i.push({html:t,text:e.text});continue}let a=zt(e,n,t.length);if(a.length<=1){i.push({html:t,text:e.text});continue}r.unshift(...a)}return i}function Wt(e,t,n={}){return Ut(T(e??``,{linkify:!0,enableSpoilers:!0,headingStyle:`none`,blockquotePrefix:``,tableMode:n.tableMode}),t)}const Gt=new Set([`ECONNRESET`,`ECONNREFUSED`,`EPIPE`,`ETIMEDOUT`,`ESOCKETTIMEDOUT`,`ENETUNREACH`,`EHOSTUNREACH`,`ENOTFOUND`,`EAI_AGAIN`,`UND_ERR_CONNECT_TIMEOUT`,`UND_ERR_HEADERS_TIMEOUT`,`UND_ERR_BODY_TIMEOUT`,`UND_ERR_SOCKET`,`UND_ERR_ABORTED`,`ECONNABORTED`,`ERR_NETWORK`]),Kt=new Set([`ECONNREFUSED`,`ENOTFOUND`,`EAI_AGAIN`,`ENETUNREACH`,`EHOSTUNREACH`]),qt=new Set([`AbortError`,`TimeoutError`,`ConnectTimeoutError`,`HeadersTimeoutError`,`BodyTimeoutError`]),Jt=new Set([`fetch failed`,`typeerror: fetch failed`]),Yt=/^network request(?:\s+for\s+["']?[^"']+["']?)?\s+failed\s+after\b.*[!.]?$/i,Xt=[`undici`,`network error`,`network request`,`client network socket disconnected`,`socket hang up`,`getaddrinfo`,`timeout`,`timed out`];function Zt(e){return b(e,e=>{let t=[e.cause,e.reason];return Array.isArray(e.errors)&&t.push(...e.errors),y(e)===`HttpError`&&t.push(e.error),t})}function Qt(e){return e?.trim().toUpperCase()??``}function $t(e){let t=_(e);if(t)return t;if(!e||typeof e!=`object`)return;let n=e.errno;if(typeof n==`string`)return n;if(typeof n==`number`)return String(n)}function en(e){if(!e)return!1;for(let t of Zt(e)){let e=Qt($t(t));if(e&&Kt.has(e))return!0}return!1}function tn(e,t){for(let n of Zt(e)){if(!n||typeof n!=`object`||!(`error_code`in n))continue;let e=n.error_code;if(typeof e==`number`&&t(e))return!0}return!1}function nn(e){return tn(e,e=>e>=500)}function rn(e){return tn(e,e=>e>=400&&e<500)}function V(e,t={}){if(!e)return!1;let n=typeof t.allowMessageMatch==`boolean`?t.allowMessageMatch:t.context!==`send`;for(let t of Zt(e)){let e=Qt($t(t));if(e&&Gt.has(e))return!0;let r=y(t);if(r&&qt.has(r))return!0;let i=v(t).trim().toLowerCase();if(i&&Jt.has(i)||i&&Yt.test(i)||n&&i&&Xt.some(e=>i.includes(e)))return!0}return!1}const an=new Map;function on(e){return String(e)}function sn(e){let t=Date.now();for(let[n,r]of e.timestamps)t-r>864e5&&e.timestamps.delete(n)}function H(e,t){let n=on(e),r=an.get(n);r||(r={timestamps:new Map},an.set(n,r)),r.timestamps.set(t,Date.now()),r.timestamps.size>100&&sn(r)}function cn(e,t){let n=on(e),r=an.get(n);return r?(sn(r),r.timestamps.has(t)):!1}const U=t(`telegram/target-writeback`);function ln(e){return!e||typeof e!=`object`||Array.isArray(e)?null:e}function un(e){let t=x(e);if(t)return t.startsWith(`@`)?t.toLowerCase():t}function dn(e){let t=S(e),n=un(t.chatId);if(n)return`${n}|${t.messageThreadId==null?``:String(t.messageThreadId)}`}function fn(e){let{raw:t,parsed:n,resolvedChatId:r}=e;return n.messageThreadId==null?r:t.includes(`:topic:`)?`${r}:topic:${n.messageThreadId}`:`${r}:${n.messageThreadId}`}function pn(e){let t=S(e.raw);if(C(t.chatId))return null;let n=un(t.chatId);return n?{matchKey:`${n}|${t.messageThreadId==null?``:String(t.messageThreadId)}`,resolvedTarget:fn({raw:e.raw,parsed:t,resolvedChatId:e.resolvedChatId})}:null}function mn(e){if(typeof e.rawValue!=`string`&&typeof e.rawValue!=`number`)return null;let t=String(e.rawValue).trim();return!t||dn(t)!==e.matchKey?null:e.resolvedTarget}function hn(e){let t=!1,n=ln(e.cfg.channels?.telegram);if(!n)return t;let r=(n,r)=>{let i=mn({rawValue:n[r],matchKey:e.matchKey,resolvedTarget:e.resolvedTarget});i&&(n[r]=i,t=!0)};r(n,`defaultTo`);let i=ln(n.accounts);if(!i)return t;for(let e of Object.keys(i)){let t=ln(i[e]);t&&r(t,`defaultTo`)}return t}async function gn(e){let t=e.rawTarget.trim();if(!t)return;let n=pn({raw:t,resolvedChatId:e.resolvedChatId});if(!n)return;let{matchKey:r,resolvedTarget:o}=n;try{let{snapshot:n,writeOptions:s}=await a(),c=structuredClone(n.config??{});hn({cfg:c,matchKey:r,resolvedTarget:o})&&(await i(c,s),e.verbose&&U.warn(`resolved Telegram defaultTo target ${t} -> ${o}`))}catch(n){e.verbose&&U.warn(`failed to persist Telegram defaultTo target ${t}: ${String(n)}`)}try{let n=rt(e.cfg.cron?.store),i=await it(n),a=!1;for(let e of i.jobs){if(e.delivery?.channel!==`telegram`)continue;let t=mn({rawValue:e.delivery.to,matchKey:r,resolvedTarget:o});t&&(e.delivery.to=t,a=!0)}a&&(await at(n,i),e.verbose&&U.warn(`resolved Telegram cron delivery target ${t} -> ${o}`))}catch(n){e.verbose&&U.warn(`failed to persist Telegram cron target ${t}: ${String(n)}`)}}function _n(e){return e.wantsVoice?pe(e)?{useVoice:!0}:{useVoice:!1,reason:`media is ${e.contentType??`unknown`} (${e.fileName??`unknown`})`}:{useVoice:!1}}function vn(e){let t=_n(e);return t.reason&&e.logFallback&&e.logFallback(`Telegram voice requested but ${t.reason}; sending as audio file instead.`),{useVoice:t.useVoice}}function W(e,t){if(typeof e?.message_id==`number`&&Number.isFinite(e.message_id))return Math.trunc(e.message_id);throw Error(`Telegram ${t} returned no message_id`)}function yn(e,t){if(!e)return[];let n=Math.max(1,Math.floor(t)),r=[];for(let t=0;t<e.length;t+=n)r.push(e.slice(t,t+n));return r}function bn(e,t,n){if(!e)return[];let r=Math.max(1,Math.floor(n)),i=yn(e,r);if(t<=1||i.length>=t)return i;let a=[],o=0;for(let n=0;n<t;n+=1){let i=e.length-o,s=t-n,c=s===1?i:Math.min(r,Math.ceil(i/s));a.push(e.slice(o,o+c)),o+=c}return a}const xn=/can't parse entities|parse entities|find end of the entity/i,Sn=/400:\s*Bad Request:\s*message thread not found/i,Cn=/400:\s*Bad Request:\s*message is not modified|MESSAGE_NOT_MODIFIED/i,wn=/400: Bad Request: chat not found/i,Tn=t(`telegram/send`),En=t(`telegram/diagnostic`),G=new Map;function Dn(e){return dt(`telegram.http`,e)?(e,t)=>{if(!(t instanceof le))return;let n=h(g(t.error??t));En.warn(`telegram http error (${e}): ${n}`)}:()=>{}}function On(){return!process.env.VITEST&&!0}function kn(e){let t=e.account.config.proxy?.trim()??``,n=e.account.config.network?.autoSelectFamily,r=typeof n==`boolean`?String(n):`default`,i=e.account.config.network?.dnsResultOrder??`default`,a=typeof e.timeoutSeconds==`number`?String(e.timeoutSeconds):`default`;return`${e.account.accountId}::${t}::${r}::${i}::${a}`}function An(e,t){if(G.set(e,t),G.size>64){let e=G.keys().next().value;e!==void 0&&G.delete(e)}return t}function jn(e){let t=typeof e.config.timeoutSeconds==`number`&&Number.isFinite(e.config.timeoutSeconds)?Math.max(1,Math.floor(e.config.timeoutSeconds)):void 0,n=On()?kn({account:e,timeoutSeconds:t}):null;if(n&&G.has(n))return G.get(n);let r=e.config.proxy?.trim(),i=ae(r?w(r):void 0,{network:e.config.network}),a=i||t?{...i?{fetch:i}:{},...t?{timeoutSeconds:t}:{}}:void 0;return n?An(n,a):a}function Mn(e,t){if(e?.trim())return e.trim();if(!t.token)throw Error(`Telegram bot token missing for account "${t.accountId}" (set channels.telegram.accounts.${t.accountId}.botToken/tokenFile or TELEGRAM_BOT_TOKEN for default).`);return t.token.trim()}async function Nn(e,t){let n=C(e);if(n)return n;let r=x(e),i=t.api.getChat;if(!r||typeof i!=`function`)throw Error(`Telegram recipient must be a numeric chat ID`);try{let e=await i.call(t.api,r),n=C(String(e?.id??``));if(!n)throw Error(`resolved chat id is not numeric (${String(e?.id??``)})`);return t.verbose&&Tn.warn(`telegram recipient ${r} resolved to numeric chat id ${n}`),n}catch(e){let t=v(e);throw Error(`Telegram recipient ${r} could not be resolved to a numeric chat ID (${t})`,{cause:e})}}async function K(e){let t=await Nn(e.lookupTarget,{api:e.api,verbose:e.verbose});return await gn({cfg:e.cfg,rawTarget:e.persistTarget,resolvedChatId:t,verbose:e.verbose}),t}function q(e){if(typeof e==`number`&&Number.isFinite(e))return Math.trunc(e);if(typeof e==`string`){let t=e.trim();if(!t)throw Error(`Message id is required for Telegram actions`);let n=Number.parseInt(t,10);if(Number.isFinite(n))return n}throw Error(`Message id is required for Telegram actions`)}function Pn(e){return Sn.test(v(e))}function J(e){return Cn.test(v(e))}function Fn(e){if(!e)return!1;let t=e.message_thread_id;return typeof t==`number`?Number.isFinite(t):typeof t==`string`?t.trim().length>0:!1}function In(e){if(!e||!Fn(e))return e;let t={...e};return delete t.message_thread_id,Object.keys(t).length>0?t:void 0}function Ln(e){return xn.test(v(e))}function Y(e){let t=e.messageThreadId==null?e.targetMessageThreadId:e.messageThreadId,n=e.chatType===`direct`?`dm`:`forum`,r=Ae(t==null?void 0:{id:t,scope:n}),i=r?{...r}:{};if(e.replyToMessageId!=null){let t=Math.trunc(e.replyToMessageId);e.quoteText?.trim()?i.reply_parameters={message_id:t,quote:e.quoteText.trim()}:i.reply_to_message_id=t}return i}async function Rn(e){try{return await e.requestHtml(e.label)}catch(t){if(!Ln(t))throw t;return e.verbose&&Tn.warn(`telegram ${e.label} failed with HTML parse error, retrying as plain text: ${v(t)}`),await e.requestPlain(`${e.label}-plain`)}}function X(e){let t=e.cfg??o(),n=u({cfg:t,accountId:e.accountId}),r=Mn(e.token,n),i=jn(n);return{cfg:t,account:n,api:e.api??new ce(r,i?{client:i}:void 0).api}}function Z(e){let t=re({retry:e.retry,configRetry:e.account.config.retry,verbose:e.verbose,...e.shouldRetry?{shouldRetry:e.shouldRetry}:{},...e.strictShouldRetry?{strictShouldRetry:!0}:{}}),n=Dn(e.cfg);return(r,i,a)=>{let o=()=>t(r,i);return(e.useApiErrorLogging===!1?o():mt({operation:i??`request`,fn:o,...a?.shouldLog?{shouldLog:a.shouldLog}:{}})).catch(e=>{throw n(i??`request`,e),e})}}function zn(e,t){return wn.test(v(e))?Error([`Telegram send failed: chat not found (chat_id=${t.chatId}).`,`Likely: bot not started in DM, bot removed from group/channel, group migrated (new -100… id), or wrong bot token.`,`Input was: ${JSON.stringify(t.input)}.`].join(` `)):e}async function Q(e,t,n,r){try{return await r(e,t)}catch(i){if(!Fn(e)||!Pn(i))throw i;return n&&Tn.warn(`telegram ${t} failed with message_thread_id, retrying without thread: ${v(i)}`),await r(In(e),`${t}-threadless`)}}function Bn(e){return async(t,n)=>e.requestWithDiag(t,n).catch(t=>{throw zn(t,{chatId:e.chatId,input:e.input})})}function Vn(e){return Z({cfg:e.cfg,account:e.account,retry:e.retry,verbose:e.verbose,useApiErrorLogging:e.useApiErrorLogging,shouldRetry:e=>en(e),strictShouldRetry:!0})}function $(e){if(!e?.length)return;let t=e.map(e=>e.filter(e=>e?.text&&e?.callback_data).map(e=>({text:e.text,callback_data:e.callback_data,...e.style?{style:e.style}:{}}))).filter(e=>e.length>0);if(t.length!==0)return{inline_keyboard:t}}async function Hn(t,n,r={}){let{cfg:i,account:a,api:o}=X(r),s=S(t),c=await K({cfg:i,api:o,lookupTarget:s.chatId,persistTarget:t,verbose:r.verbose}),l=r.mediaUrl?.trim(),u=r.maxBytes??(typeof a.config.mediaMaxMb==`number`?a.config.mediaMaxMb:100)*1024*1024,d=$(r.buttons),m=Y({targetMessageThreadId:s.messageThreadId,messageThreadId:r.messageThreadId,chatType:s.chatType,replyToMessageId:r.replyToMessageId,quoteText:r.quoteText}),h=Object.keys(m).length>0,g=Bn({requestWithDiag:Vn({cfg:i,account:a,retry:r.retry,verbose:r.verbose}),chatId:c,input:t}),_=r.textMode??`markdown`,y=E({cfg:i,channel:`telegram`,accountId:a.accountId}),b=e=>At(e,{textMode:_,tableMode:y}),x=a.config.linkPreview??!0?void 0:{is_disabled:!0},C=async(e,t)=>await Q(t,`message`,r.verbose,async(t,n)=>{let i=t?{...t}:{};x&&(i.link_preview_options=x);let a={...i,...r.silent===!0?{disable_notification:!0}:{}},s=Object.keys(a).length>0,l=t=>g(()=>s?o.sendMessage(c,e.plainText,a):o.sendMessage(c,e.plainText),t);if(!e.htmlText)return await l(n);let u=e.htmlText,d={parse_mode:`HTML`,...a};return await Rn({label:n,verbose:r.verbose,requestHtml:e=>g(()=>o.sendMessage(c,u,d),e),requestPlain:l})}),w=e=>h||e&&d?{...m,...e&&d?{reply_markup:d}:{}}:void 0,T=async(e,t)=>{let n=``,r=c;for(let i=0;i<e.length;i+=1){let a=e[i];if(!a)continue;let o=await C(a,w(i===e.length-1)),s=W(o,t);H(c,s),n=String(s),r=String(o?.chat?.id??c)}return{messageId:n,chatId:r}},te=(t,n)=>{let i=r.plainText??t,a;try{a=Rt(t,4e3)}catch(t){return e(`telegram ${n} failed HTML chunk planning, retrying as plain text: ${v(t)}`),yn(i,4e3).map(e=>({plainText:e}))}let o=yn(i,4e3);if(o.length>a.length)return e(`telegram ${n} plain-text fallback needs more chunks than HTML; sending plain text`),o.map(e=>({plainText:e}));let s=bn(i,a.length,4e3);return a.map((e,t)=>({htmlText:e,plainText:s[t]??e}))},ne=async(e,t)=>await T(te(e,t),t);if(l){let t=await ee(l,ie({maxBytes:u,mediaLocalRoots:r.mediaLocalRoots})),i=p(t.contentType??void 0),s=f({contentType:t.contentType,fileName:t.fileName}),v=i===`video`&&r.asVideoNote===!0,y=t.fileName??(s?`animation.gif`:Jn(i??`document`))??`file`,x=new ue(t.buffer,y),S,C;if(v)S=void 0,C=n.trim()?n:void 0;else{let e=ht(n);S=e.caption,C=e.followUpText}let w=S?b(S):void 0,E=!!C,te={...h?m:{},...!E&&d?{reply_markup:d}:{}},D={...w?{caption:w,parse_mode:`HTML`}:{},...te,...r.silent===!0?{disable_notification:!0}:{}},re=async(e,t)=>await Q(D,e,r.verbose,async(e,n)=>g(()=>t(e),n)),k=(()=>{if(s)return{label:`animation`,sender:e=>o.sendAnimation(c,x,e)};if(i===`image`)return{label:`photo`,sender:e=>o.sendPhoto(c,x,e)};if(i===`video`)return v?{label:`video_note`,sender:e=>o.sendVideoNote(c,x,e)}:{label:`video`,sender:e=>o.sendVideo(c,x,e)};if(i===`audio`){let{useVoice:n}=vn({wantsVoice:r.asVoice===!0,contentType:t.contentType,fileName:y,logFallback:e});return n?{label:`voice`,sender:e=>o.sendVoice(c,x,e)}:{label:`audio`,sender:e=>o.sendAudio(c,x,e)}}return{label:`document`,sender:e=>o.sendDocument(c,x,e)}})(),A=await re(k.label,k.sender),j=W(A,`media send`),M=String(A?.chat?.id??c);return H(c,j),O({channel:`telegram`,accountId:a.accountId,direction:`outbound`}),E&&C?_===`html`?{messageId:(await ne(C,`text follow-up send`)).messageId,chatId:M}:{messageId:(await T([{plainText:C,htmlText:b(C)}],`text follow-up send`)).messageId,chatId:M}:{messageId:String(j),chatId:M}}if(!n||!n.trim())throw Error(`Message must be non-empty for Telegram sends`);let D;return D=_===`html`?await ne(n,`text send`):await T([{plainText:r.plainText??n,htmlText:b(n)}],`text send`),O({channel:`telegram`,accountId:a.accountId,direction:`outbound`}),D}async function Un(e,t={}){let{cfg:n,account:r,api:i}=X(t),a=S(e),o=await K({cfg:n,api:i,lookupTarget:a.chatId,persistTarget:e,verbose:t.verbose}),s=Z({cfg:n,account:r,retry:t.retry,verbose:t.verbose,shouldRetry:e=>V(e,{context:`send`})}),c=je(a.messageThreadId??t.messageThreadId);return await s(()=>i.sendChatAction(o,`typing`,c),`typing`),{ok:!0}}async function Wn(e,t,n,r={}){let{cfg:i,account:a,api:o}=X(r),s=String(e),c=await K({cfg:i,api:o,lookupTarget:s,persistTarget:s,verbose:r.verbose}),l=q(t),u=Z({cfg:i,account:a,retry:r.retry,verbose:r.verbose,shouldRetry:e=>V(e,{context:`send`})}),d=r.remove===!0,f=n.trim(),p=d||!f?[]:[{type:`emoji`,emoji:f}];if(typeof o.setMessageReaction!=`function`)throw Error(`Telegram reactions are unavailable in this bot API.`);try{await u(()=>o.setMessageReaction(c,l,p),`reaction`)}catch(e){let t=e instanceof Error?e.message:String(e);if(/REACTION_INVALID/i.test(t))return{ok:!1,warning:`Reaction unavailable: ${f}`};throw e}return{ok:!0}}async function Gn(t,n,r={}){let{cfg:i,account:a,api:o}=X(r),s=String(t),c=await K({cfg:i,api:o,lookupTarget:s,persistTarget:s,verbose:r.verbose}),l=q(n);return await Z({cfg:i,account:a,retry:r.retry,verbose:r.verbose,shouldRetry:e=>V(e,{context:`send`})})(()=>o.deleteMessage(c,l),`deleteMessage`),e(`[telegram] Deleted message ${l} from chat ${c}`),{ok:!0}}async function Kn(t,n,r,i={}){let{cfg:a,account:o,api:s}=X({...i,cfg:i.cfg}),c=String(t),l=await K({cfg:a,api:s,lookupTarget:c,persistTarget:c,verbose:i.verbose}),u=q(n),d=Z({cfg:a,account:o,retry:i.retry,verbose:i.verbose}),f=$(r)??{inline_keyboard:[]};try{await d(()=>s.editMessageReplyMarkup(l,u,{reply_markup:f}),`editMessageReplyMarkup`,{shouldLog:e=>!J(e)})}catch(e){if(!J(e))throw e}return e(`[telegram] Edited reply markup for message ${u} in chat ${l}`),{ok:!0,messageId:String(u),chatId:l}}async function qn(t,n,r,i={}){let{cfg:a,account:o,api:s}=X({...i,cfg:i.cfg}),c=String(t),l=await K({cfg:a,api:s,lookupTarget:c,persistTarget:c,verbose:i.verbose}),u=q(n),d=Z({cfg:a,account:o,retry:i.retry,verbose:i.verbose,shouldRetry:e=>V(e,{allowMessageMatch:!0})||nn(e)}),f=(e,t,n)=>d(e,t,n?{shouldLog:n}:void 0),p=At(r,{textMode:i.textMode??`markdown`,tableMode:E({cfg:a,channel:`telegram`,accountId:o.accountId})}),m=i.buttons!==void 0,h=m?$(i.buttons):void 0,g=m?h??{inline_keyboard:[]}:void 0,_={parse_mode:`HTML`};i.linkPreview===!1&&(_.link_preview_options={is_disabled:!0}),g!==void 0&&(_.reply_markup=g);let v={};i.linkPreview===!1&&(v.link_preview_options={is_disabled:!0}),g!==void 0&&(v.reply_markup=g);try{await Rn({label:`editMessage`,verbose:i.verbose,requestHtml:e=>f(()=>s.editMessageText(l,u,p,_),e,e=>!J(e)),requestPlain:e=>f(()=>Object.keys(v).length>0?s.editMessageText(l,u,r,v):s.editMessageText(l,u,r),e,e=>!J(e))})}catch(e){if(!J(e))throw e}return e(`[telegram] Edited message ${u} in chat ${l}`),{ok:!0,messageId:String(u),chatId:l}}function Jn(e){switch(e){case`image`:return`image.jpg`;case`video`:return`video.mp4`;case`audio`:return`audio.ogg`;default:return`file.bin`}}async function Yn(e,t,n={}){if(!t?.trim())throw Error(`Telegram sticker file_id is required`);let{cfg:r,account:i,api:a}=X(n),o=S(e),s=await K({cfg:r,api:a,lookupTarget:o.chatId,persistTarget:e,verbose:n.verbose}),c=Y({targetMessageThreadId:o.messageThreadId,messageThreadId:n.messageThreadId,chatType:o.chatType,replyToMessageId:n.replyToMessageId}),l=Object.keys(c).length>0,u=Bn({requestWithDiag:Z({cfg:r,account:i,retry:n.retry,verbose:n.verbose,useApiErrorLogging:!1}),chatId:s,input:e}),d=await Q(l?c:void 0,`sticker`,n.verbose,async(e,n)=>u(()=>a.sendSticker(s,t.trim(),e),n)),f=W(d,`sticker send`),p=String(d?.chat?.id??s);return H(s,f),O({channel:`telegram`,accountId:i.accountId,direction:`outbound`}),{messageId:String(f),chatId:p}}async function Xn(e,t,n={}){let{cfg:r,account:i,api:a}=X(n),o=S(e),s=await K({cfg:r,api:a,lookupTarget:o.chatId,persistTarget:e,verbose:n.verbose}),c=k(t,{maxOptions:10}),l=Y({targetMessageThreadId:o.messageThreadId,messageThreadId:n.messageThreadId,chatType:o.chatType,replyToMessageId:n.replyToMessageId}),u=c.options,d=Bn({requestWithDiag:Vn({cfg:r,account:i,retry:n.retry,verbose:n.verbose}),chatId:s,input:e}),f=c.durationSeconds;if(f===void 0&&c.durationHours!==void 0)throw Error(`Telegram poll durationHours is not supported. Use durationSeconds (5-600) instead.`);if(f!==void 0&&(f<5||f>600))throw Error(`Telegram poll durationSeconds must be between 5 and 600`);let p=await Q({allows_multiple_answers:c.maxSelections>1,is_anonymous:n.isAnonymous??!0,...f===void 0?{}:{open_period:f},...Object.keys(l).length>0?l:{},...n.silent===!0?{disable_notification:!0}:{}},`poll`,n.verbose,async(e,t)=>d(()=>a.sendPoll(s,c.question,u,e),t)),m=W(p,`poll send`),h=String(p?.chat?.id??s),g=p?.poll?.id;return H(s,m),O({channel:`telegram`,accountId:i.accountId,direction:`outbound`}),{messageId:String(m),chatId:h,pollId:g}}async function Zn(e,t,n={}){if(!t?.trim())throw Error(`Forum topic name is required`);let r=t.trim();if(r.length>128)throw Error(`Forum topic name must be 128 characters or fewer`);let{cfg:i,account:a,api:o}=X(n),s=await K({cfg:i,api:o,lookupTarget:S(e).chatId,persistTarget:e,verbose:n.verbose}),c=Vn({cfg:i,account:a,retry:n.retry,verbose:n.verbose}),l={};n.iconColor!=null&&(l.icon_color=n.iconColor),n.iconCustomEmojiId?.trim()&&(l.icon_custom_emoji_id=n.iconCustomEmojiId.trim());let u=Object.keys(l).length>0,d=await c(()=>o.createForumTopic(s,r,u?l:void 0),`createForumTopic`),f=d.message_thread_id;return O({channel:`telegram`,accountId:a.accountId,direction:`outbound`}),{topicId:f,name:d.name??r,chatId:s}}export{Ie as A,Oe as B,rt as C,F as D,Re as E,et as F,ke as G,Le as H,Be as I,we as J,Te as K,Ue as L,je as M,Ke as N,Fe as O,We as P,me as Q,$e as R,it as S,ze as T,Ge as U,De as V,Me as W,ve as X,Ee as Y,ye as Z,xt as _,qn as a,ht as b,Xn as c,vn as d,cn as f,Wt as g,rn as h,Kn as i,Ae as j,Ne as k,Yn as l,en as m,Zn as n,Wn as o,V as p,Ce as q,Gn as r,Hn as s,$ as t,Un as u,At as v,at as w,mt as x,kt as y,Pe as z};
|
|
2
|
-
//# sourceMappingURL=send-Dj7NBAWg.js.map
|
package/dist/send-DmHpf5Fz.js
CHANGED
|
@@ -4,4 +4,3 @@ import{Qr as e,qs as t}from"./model-selection-BLbnMb5E.js";import{l as n}from"./
|
|
|
4
4
|
`);continue}if(e.startsWith(`:`)){n=c.indexOf(`
|
|
5
5
|
`);continue}let[t,...r]=e.split(`:`),i=t.trim(),a=r.join(`:`),o=a.startsWith(` `)?a.slice(1):a;i===`event`?l.event=o:i===`data`?l.data=l.data?`${l.data}\n${o}`:o:i===`id`&&(l.id=o),n=c.indexOf(`
|
|
6
6
|
`)}}u()}function O(n,r){let i=!!n.baseUrl?.trim(),a=!!n.account?.trim(),o=r||(!i||!a?e({cfg:t(),accountId:n.accountId}):void 0),s=n.baseUrl?.trim()||o?.baseUrl;if(!s)throw Error(`Signal base URL is required`);return{baseUrl:s,account:n.account?.trim()||o?.config.account?.trim()}}function k(e){let t=e.trim();if(!t)throw Error(`Signal recipient is required`);t.toLowerCase().startsWith(`signal:`)&&(t=t.slice(7).trim());let n=t.toLowerCase();return n.startsWith(`group:`)?{type:`group`,groupId:t.slice(6).trim()}:n.startsWith(`username:`)?{type:`username`,username:t.slice(9).trim()}:n.startsWith(`u:`)?{type:`username`,username:t.trim()}:{type:`recipient`,recipient:t}}function A(e,t){return e.type===`recipient`?t.recipient?{recipient:[e.recipient]}:null:e.type===`group`?t.group?{groupId:e.groupId}:null:e.type===`username`&&t.username?{username:[e.username]}:null}async function j(r,i,a={}){let o=a.cfg??t(),c=e({cfg:o,accountId:a.accountId}),{baseUrl:u,account:d}=O(a,c),f=k(r),p=i??``,m=!1,h=[],_=a.textMode??`markdown`,v=typeof a.maxBytes==`number`?a.maxBytes:typeof c.config.mediaMaxMb==`number`?c.config.mediaMaxMb*1024*1024:typeof o.agents?.defaults?.mediaMaxMb==`number`?o.agents.defaults.mediaMaxMb*1024*1024:8*1024*1024,y;if(a.mediaUrl?.trim()){let e=await l(a.mediaUrl.trim(),v,{localRoots:a.mediaLocalRoots});y=[e.path];let t=n(e.contentType??void 0);!p&&t&&(p=t===`image`?`<media:image>`:`<media:${t}>`,m=!0)}if(p.trim()&&!m)if(_===`plain`)h=a.textStyles??[];else{let e=s({cfg:o,channel:`signal`,accountId:c.accountId}),t=g(p,{tableMode:e});p=t.text,h=t.styles}if(!p.trim()&&(!y||y.length===0))throw Error(`Signal send requires text or media`);let b={message:p};h.length>0&&(b[`text-style`]=h.map(e=>`${e.start}:${e.length}:${e.style}`)),d&&(b.account=d),y&&y.length>0&&(b.attachments=y);let x=A(f,{recipient:!0,group:!0,username:!0});if(!x)throw Error(`Signal recipient is required`);Object.assign(b,x);let S=(await T(`send`,b,{baseUrl:u,timeoutMs:a.timeoutMs}))?.timestamp;return{messageId:S?String(S):`unknown`,timestamp:S}}async function M(e,t={}){let{baseUrl:n,account:r}=O(t),i=A(k(e),{recipient:!0,group:!0});if(!i)return!1;let a={...i};return r&&(a.account=r),t.stop&&(a.stop=!0),await T(`sendTyping`,a,{baseUrl:n,timeoutMs:t.timeoutMs}),!0}async function N(e,t,n={}){if(!Number.isFinite(t)||t<=0)return!1;let{baseUrl:r,account:i}=O(n),a=A(k(e),{recipient:!0});if(!a)return!1;let o={...a,targetTimestamp:t,type:n.type??`read`};return i&&(o.account=i),await T(`sendReceipt`,o,{baseUrl:r,timeoutMs:n.timeoutMs}),!0}export{E as a,b as c,O as i,N as n,T as o,M as r,D as s,j as t};
|
|
7
|
-
//# sourceMappingURL=send-DmHpf5Fz.js.map
|
package/dist/send-NbU9-scF2.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
1
|
import{_ as e}from"./paths-B4IRk3wi.js";import{S as t,t as n,v as r}from"./subsystem-C5XF2Fy5.js";import{t as i}from"./utils-UGOV_184.js";import{Qs as a,Tl as o,nc as s,qs as c}from"./model-selection-BLbnMb5E.js";import{_ as l}from"./session-key-D3P0tf5P.js";import{u}from"./plugins-CYLrFT4h.js";import{a as d,c as f,l as p,u as m}from"./windows-spawn-AB7ItGAE.js";import{n as h}from"./redact-3_CiXMY6.js";import{i as g,n as _,r as v,s as y,t as b}from"./errors-Bunti32V.js";import{n as x}from"./proxy-fetch-BADsUK4d.js";import{i as S}from"./pairing-store-EmfFQVcs.js";import{n as C,r as w,t as T}from"./targets-m_41k_Mv.js";import{a as ee,n as E,s as D,t as O}from"./ir-CNTx85qV.js";import{t as k}from"./render-D8OWO2hT.js";import{n as te}from"./polls-Bh5wc9-6.js";import{t as ne}from"./load-options-BsOW74dp.js";import{n as A,r as re,t as ie}from"./allow-from-B6dI7oz8.js";import{i as j,n as M}from"./channel-activity-Dw6F-ehJ.js";import{t as ae}from"./fetch-Bn0mWg6a.js";import N from"node:fs";import P from"node:path";import oe from"json5";import{randomBytes as se}from"node:crypto";import{Bot as ce,HttpError as le,InputFile as ue}from"grammy";const de=new Set([`.oga`,`.ogg`,`.opus`,`.mp3`,`.m4a`]),fe=new Set([`audio/ogg`,`audio/opus`,`audio/mpeg`,`audio/mp3`,`audio/mp4`,`audio/x-m4a`,`audio/m4a`]);function pe(e){let t=m(e.contentType);if(t&&fe.has(t))return!0;let n=e.fileName?.trim();if(!n)return!1;let r=d(n);return r?de.has(r):!1}function me(e){return pe(e)}function he(e){let t=e.source??(e.isLive?`live`:e.name||e.address?`place`:`pin`),n=!!(e.isLive??t===`live`);return{...e,source:t,isLive:n}}function ge(e){return Number.isFinite(e)?` ±${Math.round(e??0)}m`:``}function _e(e,t){return`${e.toFixed(6)}, ${t.toFixed(6)}`}function ve(e){let t=he(e),n=_e(t.latitude,t.longitude),r=ge(t.accuracy),i=t.caption?.trim(),a=``;return a=t.source===`live`||t.isLive?`🛰 Live location: ${n}${r}`:t.name||t.address?`📍 ${[t.name,t.address].filter(Boolean).join(` — `)} (${n}${r})`:`📍 ${n}${r}`,i?`${a}\n${i}`:a}function ye(e){let t=he(e);return{LocationLat:t.latitude,LocationLon:t.longitude,LocationAccuracy:t.accuracy,LocationName:t.name,LocationAddress:t.address,LocationSource:t.source,LocationIsLive:t.isLive}}const be=new Set,xe=n(`telegram/bot-access`);function Se(e){if(!process.env.VITEST)for(let t of e)be.has(t)||(be.add(t),xe.warn([`Invalid allowFrom entry:`,JSON.stringify(t),`- allowFrom/groupAllowFrom authorization expects numeric Telegram sender user IDs only.`,`To allow a Telegram group or supergroup, add its negative chat ID under "channels.telegram.groups" instead.`,`If you had "@username" entries, re-run onboarding (it resolves @username to IDs) or replace them manually.`].join(` `)))}const F=e=>{let t=(e??[]).map(e=>String(e).trim()).filter(Boolean),n=t.includes(`*`),r=t.filter(e=>e!==`*`).map(e=>e.replace(/^(telegram|tg):/i,``)),i=r.filter(e=>!/^\d+$/.test(e));return i.length>0&&Se([...new Set(i)]),{entries:r.filter(e=>/^\d+$/.test(e)),hasWildcard:n,hasEntries:t.length>0,invalidEntries:i}},Ce=e=>F(re(e)),we=e=>{let{allow:t,senderId:n}=e;return A(t,n,!0)},Te=e=>{let{allow:t,senderId:n}=e;return t.hasWildcard?{allowed:!0,matchKey:`*`,matchSource:`wildcard`}:t.hasEntries&&n&&t.entries.includes(n)?{allowed:!0,matchKey:n,matchSource:`id`}:{allowed:!1}};async function Ee(e){let t=l(e.accountId),n=Oe({isGroup:e.isGroup??!1,isForum:e.isForum,messageThreadId:e.messageThreadId}),r=n.scope===`forum`?n.id:void 0,i=n.scope===`dm`?n.id:void 0,a=r??i,o=await S(`telegram`,process.env,t).catch(()=>[]),{groupConfig:s,topicConfig:c}=e.resolveTelegramGroupConfig(e.chatId,a),u=ie(c?.allowFrom,s?.allowFrom);return{resolvedThreadId:r,dmThreadId:i,storeAllowFrom:o,groupConfig:s,topicConfig:c,groupAllowOverride:u,effectiveGroupAllow:F(u??e.groupAllowFrom),hasGroupAllowOverride:u!==void 0}}function De(e){if(e.isForum)return e.messageThreadId==null?1:e.messageThreadId}function Oe(e){return e.isGroup?{id:De({isForum:e.isForum,messageThreadId:e.messageThreadId}),scope:e.isForum?`forum`:`none`}:e.messageThreadId==null?{scope:`dm`}:{id:e.messageThreadId,scope:`dm`}}function ke(e){if(e?.id==null)return;let t=Math.trunc(e.id);if(e.scope===`dm`)return t>0?{message_thread_id:t}:void 0;if(t!==1)return{message_thread_id:t}}function Ae(e){if(e!=null)return{message_thread_id:Math.trunc(e)}}function je(e){return o(e)}function Me(e,t){return t==null?String(e):`${e}:topic:${t}`}function Ne(e){return(e.senderId==null?``:String(e.senderId).trim())||String(e.chatId)}function Pe(e,t){return`telegram:group:${Me(e,t)}`}function Fe(e){if(!(!e.isGroup||e.resolvedThreadId==null))return{kind:`group`,id:String(e.chatId)}}function Ie(e){return[e.from?.first_name,e.from?.last_name].filter(Boolean).join(` `).trim()||e.from?.username||void 0}function Le(e){if(e){if(e.photo)return`<media:image>`;if(e.video||e.video_note)return`<media:video>`;if(e.audio||e.voice)return`<media:audio>`;if(e.document)return`<media:document>`;if(e.sticker)return`<media:sticker>`}}function Re(e,t){let n=Ie(e),r=e.from?.username?`@${e.from.username}`:void 0,i=n;n&&r?i=`${n} (${r})`:!n&&r&&(i=r);let a=(t!=null&&`${t}`.trim()?`${t}`.trim():void 0)??(e.from?.id==null?void 0:String(e.from.id)),o=a?`id:${a}`:void 0;return i&&o?`${i} ${o}`:i||(o??`id:unknown`)}function ze(e,t,n){let r=e.chat?.title,i=n==null?``:` topic:${n}`;return r?`${r} id:${t}${i}`:`group:${t}${i}`}function Be(e){return{text:e.text??e.caption??``,entities:e.entities??e.caption_entities??[]}}function Ve(e){return e!=null&&/[a-z0-9_]/i.test(e)}function He(e,t){let n=0;for(;n<e.length;){let r=e.indexOf(t,n);if(r===-1)return!1;let i=r>0?e[r-1]:void 0,a=e[r+t.length];if(!Ve(i)&&!Ve(a))return!0;n=r+1}return!1}function Ue(e,t){let{text:n,entities:r}=Be(e),i=`@${t}`.toLowerCase();if(He(n.toLowerCase(),i))return!0;for(let e of r)if(e.type===`mention`&&n.slice(e.offset,e.offset+e.length).toLowerCase()===i)return!0;return!1}function We(e,t){if(!e||!t?.length)return e;let n=t.filter(e=>e.type===`text_link`&&!!e.url).toSorted((e,t)=>t.offset-e.offset);if(n.length===0)return e;let r=e;for(let t of n){let n=`[${e.slice(t.offset,t.offset+t.length)}](${t.url})`;r=r.slice(0,t.offset)+n+r.slice(t.offset+t.length)}return r}function Ge(e){if(!e)return;let t=Number(e);if(Number.isFinite(t))return t}function Ke(e){let t=e.reply_to_message,n=e.external_reply,r=e.quote?.text??n?.quote?.text,i=``,a=`reply`;typeof r==`string`&&(i=r.trim(),i&&(a=`quote`));let o=t??n;if(!i&&o&&(i=(o.text??o.caption??``).trim(),!i&&(i=Le(o)??``,!i))){let e=et(o);e&&(i=ve(e))}if(!i)return null;let s=(o?Ie(o):void 0)??`unknown sender`,c=o?.forward_origin?Qe(o.forward_origin)??void 0:void 0;return{id:o?.message_id?String(o.message_id):void 0,sender:s,body:i,kind:a,forwardedFrom:c}}function qe(e){let t=[e.first_name,e.last_name].filter(Boolean).join(` `).trim(),n=e.username?.trim()||void 0,r=String(e.id);return{display:(t&&n?`${t} (@${n})`:t||(n?`@${n}`:void 0))||`user:${r}`,name:t||void 0,username:n,id:r}}function Je(e,t){let n=e.title?.trim()||void 0,r=e.username?.trim()||void 0,i=String(e.id);return{display:n||(r?`@${r}`:void 0)||`${t}:${i}`,title:n,username:r,id:i}}function Ye(e){let{display:t,name:n,username:r,id:i}=qe(e.user);return t?{from:t,date:e.date,fromType:e.type,fromId:i,fromUsername:r,fromTitle:n}:null}function Xe(e){let t=e.name?.trim();return t?{from:t,date:e.date,fromType:e.type,fromTitle:t}:null}function Ze(e){let t=e.type===`channel`?`channel`:`chat`,{display:n,title:r,username:i,id:a}=Je(e.chat,t);if(!n)return null;let o=e.signature?.trim()||void 0,s=o?`${n} (${o})`:n,c=e.chat.type?.trim()||void 0;return{from:s,date:e.date,fromType:e.type,fromId:a,fromUsername:i,fromTitle:r,fromSignature:o,fromChatType:c,fromMessageId:e.messageId}}function Qe(e){switch(e.type){case`user`:return Ye({user:e.sender_user,date:e.date,type:`user`});case`hidden_user`:return Xe({name:e.sender_user_name,date:e.date,type:`hidden_user`});case`chat`:return Ze({chat:e.sender_chat,date:e.date,type:`chat`,signature:e.author_signature});case`channel`:return Ze({chat:e.chat,date:e.date,type:`channel`,signature:e.author_signature,messageId:e.message_id});default:return null}}function $e(e){return e.forward_origin?Qe(e.forward_origin):null}function et(e){let{venue:t,location:n}=e;if(t)return{latitude:t.location.latitude,longitude:t.location.longitude,accuracy:t.location.horizontal_accuracy,name:t.title,address:t.address,source:`place`,isLive:!1};if(n){let e=typeof n.live_period==`number`&&n.live_period>0;return{latitude:n.latitude,longitude:n.longitude,accuracy:n.horizontal_accuracy,source:e?`live`:`pin`,isLive:e}}return null}function I(e){return e.trim().toLowerCase()}function tt(e){if(!e)return[];let t=e.trim();if(!t)return[];let n=t.toLowerCase();return[`0`,`false`,`off`,`none`].includes(n)?[]:[`1`,`true`,`all`,`*`].includes(n)?[`*`]:t.split(/[,\s]+/).map(I).filter(Boolean)}function nt(e){let t=new Set,n=[];for(let r of e){let e=I(r);!e||t.has(e)||(t.add(e),n.push(e))}return n}function rt(e,t=process.env){let n=Array.isArray(e?.diagnostics?.flags)?e?.diagnostics?.flags:[],r=tt(t.OPENCLAW_DIAGNOSTICS);return nt([...n,...r])}function it(e,t){let n=I(e);if(!n)return!1;for(let e of t){let t=I(e);if(t){if(t===`*`||t===`all`)return!0;if(t.endsWith(`.*`)){let e=t.slice(0,-2);if(n===e||n.startsWith(`${e}.`))return!0}if(t.endsWith(`*`)){let e=t.slice(0,-1);if(n.startsWith(e))return!0}if(t===n)return!0}}return!1}function at(e,t,n=process.env){return it(e,rt(t,n))}const ot=n(`telegram/api`);function st(e,t){return t||(e?.error?e.error:e=>ot.error(e))}async function ct({operation:e,fn:t,runtime:n,logger:i,shouldLog:a}){try{return await t()}catch(t){if(!a||a(t)){let a=v(t);st(n,i)(r(`telegram ${e} failed: ${a}`))}throw t}}function lt(e){let t=e?.trim()??``;return t?t.length>1024?{caption:void 0,followUpText:t}:{caption:t,followUpText:void 0}:{caption:void 0,followUpText:void 0}}function L(e){return e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`)}function ut(e){return L(e).replace(/"/g,`"`)}const dt=new Set([`md`,`go`,`py`,`pl`,`sh`,`am`,`at`,`be`,`cc`]);function ft(e,t){if(e.replace(/^https?:\/\//i,``)!==t)return!1;let n=t.lastIndexOf(`.`);if(n<1)return!1;let r=t.slice(n+1).toLowerCase();if(!dt.has(r))return!1;let i=t.split(`/`);if(i.length>1){for(let e=0;e<i.length-1;e++)if(i[e].includes(`.`))return!1}return!0}function pt(e,t){let n=e.href.trim();if(!n||e.start===e.end||ft(n,t.slice(e.start,e.end)))return null;let r=ut(n);return{start:e.start,end:e.end,open:`<a href="${r}">`,close:`</a>`}}function mt(e){return k(e,{styleMarkers:{bold:{open:`<b>`,close:`</b>`},italic:{open:`<i>`,close:`</i>`},strikethrough:{open:`<s>`,close:`</s>`},code:{open:`<code>`,close:`</code>`},code_block:{open:`<pre><code>`,close:`</code></pre>`},spoiler:{open:`<tg-spoiler>`,close:`</tg-spoiler>`},blockquote:{open:`<blockquote>`,close:`</blockquote>`}},escapeText:L,buildLink:pt})}function ht(e,t={}){let n=mt(E(e??``,{linkify:!0,enableSpoilers:!0,headingStyle:`none`,blockquotePrefix:``,tableMode:t.tableMode}));return t.wrapFileRefs===!1?n:Ct(n)}function gt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}const _t=Array.from(dt).map(gt).join(`|`),vt=/<a\s+href="https?:\/\/([^"]+)"[^>]*>\1<\/a>/gi,yt=RegExp(`(^|[^a-zA-Z0-9_\\-/])([a-zA-Z0-9_.\\-./]+\\.(?:${_t}))(?=$|[^a-zA-Z0-9_\\-/])`,`gi`),bt=RegExp(`([^a-zA-Z0-9]|^)([A-Za-z]\\.(?:${_t}))(?=[^a-zA-Z0-9/]|$)`,`g`),R=/(<\/?)([a-zA-Z][a-zA-Z0-9-]*)\b[^>]*?>/gi;function xt(e,t,n){return n.startsWith(`//`)||/https?:\/\/$/i.test(t)?e:`${t}<code>${L(n)}</code>`}function St(e,t,n,r){return!e||t>0||n>0||r>0?e:e.replace(yt,xt).replace(bt,(e,t,n)=>t===`>`?e:`${t}<code>${L(n)}</code>`)}function Ct(e){vt.lastIndex=0;let t=e.replace(vt,(e,t)=>ft(`http://${t}`,t)?`<code>${L(t)}</code>`:e),n=0,r=0,i=0,a=``,o=0;R.lastIndex=0;let s;for(;(s=R.exec(t))!==null;){let e=s.index,c=R.lastIndex,l=s[1]===`</`,u=s[2].toLowerCase(),d=t.slice(o,e);a+=St(d,n,r,i),u===`code`?n=l?Math.max(0,n-1):n+1:u===`pre`?r=l?Math.max(0,r-1):r+1:u===`a`&&(i=l?Math.max(0,i-1):i+1),a+=t.slice(e,c),o=c}let c=t.slice(o);return a+=St(c,n,r,i),a}function wt(e,t={}){return(t.textMode??`markdown`)===`html`?e:ht(e,{tableMode:t.tableMode})}const Tt=new Set([`br`]);function Et(e){return e.map(e=>e.openTag).join(``)}function Dt(e){return e.slice().toReversed().map(e=>e.closeTag).join(``)}function Ot(e){return e.reduce((e,t)=>e+t.closeTag.length,0)}function kt(e,t){if(e[t]!==`&`)return-1;let n=t+1;if(n>=e.length)return-1;if(e[n]===`#`){if(n+=1,n>=e.length)return-1;if(e[n]===`x`||e[n]===`X`){n+=1;let t=n;for(;/[0-9A-Fa-f]/.test(e[n]??``);)n+=1;if(n===t)return-1}else{let t=n;for(;/[0-9]/.test(e[n]??``);)n+=1;if(n===t)return-1}}else{let t=n;for(;/[A-Za-z0-9]/.test(e[n]??``);)n+=1;if(n===t)return-1}return e[n]===`;`?n:-1}function At(e,t){if(e.length<=t)return e.length;let n=Math.max(1,Math.floor(t)),r=e.lastIndexOf(`&`,n-1);if(r===-1||r<e.lastIndexOf(`;`,n-1))return n;let i=kt(e,r);return i===-1||i<n?n:r}function jt(e,t){for(let n=e.length-1;n>=0;--n)if(e[n]?.name===t){e.splice(n,1);return}}function Mt(e,t){if(!e)return[];let n=Math.max(1,Math.floor(t));if(e.length<=n)return[e];let r=[],i=[],a=``,o=!1,s=()=>{a=Et(i),o=!1},c=()=>{o&&(r.push(`${a}${Dt(i)}`),s())},l=e=>{let t=e;for(;t.length>0;){let e=n-a.length-Ot(i);if(e<=0){if(!o)throw Error(`Telegram HTML chunk limit exceeded by tag overhead (limit=${n})`);c();continue}if(t.length<=e){a+=t,o=!0;break}let r=At(t,e);if(r<=0){if(!o)throw Error(`Telegram HTML chunk limit exceeded by leading entity (limit=${n})`);c();continue}a+=t.slice(0,r),o=!0,t=t.slice(r),c()}};s(),R.lastIndex=0;let u=0,d;for(;(d=R.exec(e))!==null;){let t=d.index,r=R.lastIndex;l(e.slice(u,t));let s=d[0],f=d[1]===`</`,p=d[2].toLowerCase(),m=!f&&(Tt.has(p)||s.trimEnd().endsWith(`/>`));if(!f){let e=m?0:`</${p}>`.length;o&&a.length+s.length+Ot(i)+e>n&&c()}a+=s,m&&(o=!0),f?jt(i,p):m||i.push({name:p,openTag:s,closeTag:`</${p}>`}),u=r}return l(e.slice(u)),c(),r.length>0?r:[e]}function Nt(e,t,n){let r=e.text.length;if(r<=1)return[e];let i=Math.floor(r*t/Math.max(n,1)),a=Math.min(r-1,i),o=It(e,Number.isFinite(a)&&a>0?a:Math.max(1,Math.floor(r/2)));return o.length>1?o:It(e,Math.max(1,Math.floor(r/2)))}function Pt(e,t,n){return e.flatMap(e=>{if(e.end<=t||e.start>=n)return[];let r=Math.max(e.start,t)-t,i=Math.min(e.end,n)-t;return i<=r?[]:[{...e,start:r,end:i}]})}function Ft(e,t,n){return e.flatMap(e=>{if(e.end<=t||e.start>=n)return[];let r=Math.max(e.start,t)-t,i=Math.min(e.end,n)-t;return i<=r?[]:[{...e,start:r,end:i}]})}function It(e,t){if(!e.text)return[];let n=Math.max(1,Math.floor(t));if(n<=0||e.text.length<=n)return[e];let r=[],i=0;for(;i<e.text.length;){let t=Math.min(e.text.length,i+n);r.push({text:e.text.slice(i,t),styles:Pt(e.styles,i,t),links:Ft(e.links,i,t)}),i=t}return r}function Lt(e,t){let n=Math.max(1,Math.floor(t)),r=O(e,n),i=[];for(;r.length>0;){let e=r.shift();if(!e)continue;let t=Ct(mt(e));if(t.length<=n||e.text.length<=1){i.push({html:t,text:e.text});continue}let a=Nt(e,n,t.length);if(a.length<=1){i.push({html:t,text:e.text});continue}r.unshift(...a)}return i}function Rt(e,t,n={}){return Lt(E(e??``,{linkify:!0,enableSpoilers:!0,headingStyle:`none`,blockquotePrefix:``,tableMode:n.tableMode}),t)}const zt=new Set([`ECONNRESET`,`ECONNREFUSED`,`EPIPE`,`ETIMEDOUT`,`ESOCKETTIMEDOUT`,`ENETUNREACH`,`EHOSTUNREACH`,`ENOTFOUND`,`EAI_AGAIN`,`UND_ERR_CONNECT_TIMEOUT`,`UND_ERR_HEADERS_TIMEOUT`,`UND_ERR_BODY_TIMEOUT`,`UND_ERR_SOCKET`,`UND_ERR_ABORTED`,`ECONNABORTED`,`ERR_NETWORK`]),Bt=new Set([`ECONNREFUSED`,`ENOTFOUND`,`EAI_AGAIN`,`ENETUNREACH`,`EHOSTUNREACH`]),Vt=new Set([`AbortError`,`TimeoutError`,`ConnectTimeoutError`,`HeadersTimeoutError`,`BodyTimeoutError`]),Ht=new Set([`fetch failed`,`typeerror: fetch failed`]),Ut=/^network request(?:\s+for\s+["']?[^"']+["']?)?\s+failed\s+after\b.*[!.]?$/i,Wt=[`undici`,`network error`,`network request`,`client network socket disconnected`,`socket hang up`,`getaddrinfo`,`timeout`,`timed out`];function Gt(e){return b(e,e=>{let t=[e.cause,e.reason];return Array.isArray(e.errors)&&t.push(...e.errors),y(e)===`HttpError`&&t.push(e.error),t})}function Kt(e){return e?.trim().toUpperCase()??``}function qt(e){let t=_(e);if(t)return t;if(!e||typeof e!=`object`)return;let n=e.errno;if(typeof n==`string`)return n;if(typeof n==`number`)return String(n)}function Jt(e){if(!e)return!1;for(let t of Gt(e)){let e=Kt(qt(t));if(e&&Bt.has(e))return!0}return!1}function Yt(e,t){for(let n of Gt(e)){if(!n||typeof n!=`object`||!(`error_code`in n))continue;let e=n.error_code;if(typeof e==`number`&&t(e))return!0}return!1}function Xt(e){return Yt(e,e=>e>=500)}function Zt(e){return Yt(e,e=>e>=400&&e<500)}function z(e,t={}){if(!e)return!1;let n=typeof t.allowMessageMatch==`boolean`?t.allowMessageMatch:t.context!==`send`;for(let t of Gt(e)){let e=Kt(qt(t));if(e&&zt.has(e))return!0;let r=y(t);if(r&&Vt.has(r))return!0;let i=v(t).trim().toLowerCase();if(i&&Ht.has(i)||i&&Ut.test(i)||n&&i&&Wt.some(e=>i.includes(e)))return!0}return!1}const Qt=new Map;function $t(e){return String(e)}function en(e){let t=Date.now();for(let[n,r]of e.timestamps)t-r>864e5&&e.timestamps.delete(n)}function B(e,t){let n=$t(e),r=Qt.get(n);r||(r={timestamps:new Map},Qt.set(n,r)),r.timestamps.set(t,Date.now()),r.timestamps.size>100&&en(r)}function tn(e,t){let n=$t(e),r=Qt.get(n);return r?(en(r),r.timestamps.has(t)):!1}const nn=P.join(i,`cron`),rn=P.join(nn,`jobs.json`),V=new Map;function an(t){if(t?.trim()){let n=t.trim();return n.startsWith(`~`)?P.resolve(e(n)):P.resolve(n)}return rn}async function on(e){try{let t=await N.promises.readFile(e,`utf-8`),n;try{n=oe.parse(t)}catch(t){throw Error(`Failed to parse cron store at ${e}: ${String(t)}`,{cause:t})}let r=n&&typeof n==`object`&&!Array.isArray(n)?n:{},i={version:1,jobs:(Array.isArray(r.jobs)?r.jobs:[]).filter(Boolean)};return V.set(e,JSON.stringify(i,null,2)),i}catch(t){if(t?.code===`ENOENT`)return V.delete(e),{version:1,jobs:[]};throw t}}async function sn(e){await N.promises.chmod(e,384).catch(()=>void 0)}async function cn(e,t,n){let r=P.dirname(e);await N.promises.mkdir(r,{recursive:!0,mode:448}),await N.promises.chmod(r,448).catch(()=>void 0);let i=JSON.stringify(t,null,2),a=V.get(e);if(a===i)return;let o=a??null;if(o===null)try{o=await N.promises.readFile(e,`utf-8`)}catch(e){if(e.code!==`ENOENT`)throw e}if(o===i){V.set(e,i);return}let s=`${e}.${process.pid}.${se(8).toString(`hex`)}.tmp`;if(await N.promises.writeFile(s,i,{encoding:`utf-8`,mode:384}),await sn(s),o!==null&&!n?.skipBackup)try{let t=`${e}.bak`;await N.promises.copyFile(e,t),await sn(t)}catch{}await ln(s,e),await sn(e),V.set(e,i)}async function ln(e,t){for(let n=0;n<=3;n++)try{await N.promises.rename(e,t);return}catch(r){let i=r.code;if(i===`EBUSY`&&n<3){await new Promise(e=>setTimeout(e,50*2**n));continue}if(i===`EPERM`||i===`EEXIST`){await N.promises.copyFile(e,t),await N.promises.unlink(e).catch(()=>{});return}throw r}}const H=n(`telegram/target-writeback`);function U(e){return!e||typeof e!=`object`||Array.isArray(e)?null:e}function un(e){let t=C(e);if(t)return t.startsWith(`@`)?t.toLowerCase():t}function dn(e){let t=w(e),n=un(t.chatId);if(n)return`${n}|${t.messageThreadId==null?``:String(t.messageThreadId)}`}function fn(e){let{raw:t,parsed:n,resolvedChatId:r}=e;return n.messageThreadId==null?r:t.includes(`:topic:`)?`${r}:topic:${n.messageThreadId}`:`${r}:${n.messageThreadId}`}function pn(e){let t=w(e.raw);if(T(t.chatId))return null;let n=un(t.chatId);return n?{matchKey:`${n}|${t.messageThreadId==null?``:String(t.messageThreadId)}`,resolvedTarget:fn({raw:e.raw,parsed:t,resolvedChatId:e.resolvedChatId})}:null}function mn(e){if(typeof e.rawValue!=`string`&&typeof e.rawValue!=`number`)return null;let t=String(e.rawValue).trim();return!t||dn(t)!==e.matchKey?null:e.resolvedTarget}function hn(e){let t=!1,n=U(e.cfg.channels?.telegram);if(!n)return t;let r=(n,r)=>{let i=mn({rawValue:n[r],matchKey:e.matchKey,resolvedTarget:e.resolvedTarget});i&&(n[r]=i,t=!0)};r(n,`defaultTo`);let i=U(n.accounts);if(!i)return t;for(let e of Object.keys(i)){let t=U(i[e]);t&&r(t,`defaultTo`)}return t}async function gn(e){let t=e.rawTarget.trim();if(!t)return;let n=pn({raw:t,resolvedChatId:e.resolvedChatId});if(!n)return;let{matchKey:r,resolvedTarget:i}=n;try{let{snapshot:n,writeOptions:o}=await a(),c=structuredClone(n.config??{});hn({cfg:c,matchKey:r,resolvedTarget:i})&&(await s(c,o),e.verbose&&H.warn(`resolved Telegram defaultTo target ${t} -> ${i}`))}catch(n){e.verbose&&H.warn(`failed to persist Telegram defaultTo target ${t}: ${String(n)}`)}try{let n=an(e.cfg.cron?.store),a=await on(n),o=!1;for(let e of a.jobs){if(e.delivery?.channel!==`telegram`)continue;let t=mn({rawValue:e.delivery.to,matchKey:r,resolvedTarget:i});t&&(e.delivery.to=t,o=!0)}o&&(await cn(n,a),e.verbose&&H.warn(`resolved Telegram cron delivery target ${t} -> ${i}`))}catch(n){e.verbose&&H.warn(`failed to persist Telegram cron target ${t}: ${String(n)}`)}}function _n(e){return e.wantsVoice?pe(e)?{useVoice:!0}:{useVoice:!1,reason:`media is ${e.contentType??`unknown`} (${e.fileName??`unknown`})`}:{useVoice:!1}}function vn(e){let t=_n(e);return t.reason&&e.logFallback&&e.logFallback(`Telegram voice requested but ${t.reason}; sending as audio file instead.`),{useVoice:t.useVoice}}function W(e,t){if(typeof e?.message_id==`number`&&Number.isFinite(e.message_id))return Math.trunc(e.message_id);throw Error(`Telegram ${t} returned no message_id`)}function G(e,t){if(!e)return[];let n=Math.max(1,Math.floor(t)),r=[];for(let t=0;t<e.length;t+=n)r.push(e.slice(t,t+n));return r}function yn(e,t,n){if(!e)return[];let r=Math.max(1,Math.floor(n)),i=G(e,r);if(t<=1||i.length>=t)return i;let a=[],o=0;for(let n=0;n<t;n+=1){let i=e.length-o,s=t-n,c=s===1?i:Math.min(r,Math.ceil(i/s));a.push(e.slice(o,o+c)),o+=c}return a}const bn=/can't parse entities|parse entities|find end of the entity/i,xn=/400:\s*Bad Request:\s*message thread not found/i,Sn=/400:\s*Bad Request:\s*message is not modified|MESSAGE_NOT_MODIFIED/i,Cn=/400: Bad Request: chat not found/i,wn=n(`telegram/send`),Tn=n(`telegram/diagnostic`),K=new Map;function En(e){return at(`telegram.http`,e)?(e,t)=>{if(!(t instanceof le))return;let n=h(g(t.error??t));Tn.warn(`telegram http error (${e}): ${n}`)}:()=>{}}function Dn(){return!process.env.VITEST&&!0}function On(e){let t=e.account.config.proxy?.trim()??``,n=e.account.config.network?.autoSelectFamily,r=typeof n==`boolean`?String(n):`default`,i=e.account.config.network?.dnsResultOrder??`default`,a=typeof e.timeoutSeconds==`number`?String(e.timeoutSeconds):`default`;return`${e.account.accountId}::${t}::${r}::${i}::${a}`}function kn(e,t){if(K.set(e,t),K.size>64){let e=K.keys().next().value;e!==void 0&&K.delete(e)}return t}function An(e){let t=typeof e.config.timeoutSeconds==`number`&&Number.isFinite(e.config.timeoutSeconds)?Math.max(1,Math.floor(e.config.timeoutSeconds)):void 0,n=Dn()?On({account:e,timeoutSeconds:t}):null;if(n&&K.has(n))return K.get(n);let r=e.config.proxy?.trim(),i=ae(r?x(r):void 0,{network:e.config.network}),a=i||t?{...i?{fetch:i}:{},...t?{timeoutSeconds:t}:{}}:void 0;return n?kn(n,a):a}function jn(e,t){if(e?.trim())return e.trim();if(!t.token)throw Error(`Telegram bot token missing for account "${t.accountId}" (set channels.telegram.accounts.${t.accountId}.botToken/tokenFile or TELEGRAM_BOT_TOKEN for default).`);return t.token.trim()}async function Mn(e,t){let n=T(e);if(n)return n;let r=C(e),i=t.api.getChat;if(!r||typeof i!=`function`)throw Error(`Telegram recipient must be a numeric chat ID`);try{let e=await i.call(t.api,r),n=T(String(e?.id??``));if(!n)throw Error(`resolved chat id is not numeric (${String(e?.id??``)})`);return t.verbose&&wn.warn(`telegram recipient ${r} resolved to numeric chat id ${n}`),n}catch(e){let t=v(e);throw Error(`Telegram recipient ${r} could not be resolved to a numeric chat ID (${t})`,{cause:e})}}async function q(e){let t=await Mn(e.lookupTarget,{api:e.api,verbose:e.verbose});return await gn({cfg:e.cfg,rawTarget:e.persistTarget,resolvedChatId:t,verbose:e.verbose}),t}function J(e){if(typeof e==`number`&&Number.isFinite(e))return Math.trunc(e);if(typeof e==`string`){let t=e.trim();if(!t)throw Error(`Message id is required for Telegram actions`);let n=Number.parseInt(t,10);if(Number.isFinite(n))return n}throw Error(`Message id is required for Telegram actions`)}function Nn(e){return xn.test(v(e))}function Y(e){return Sn.test(v(e))}function Pn(e){if(!e)return!1;let t=e.message_thread_id;return typeof t==`number`?Number.isFinite(t):typeof t==`string`?t.trim().length>0:!1}function Fn(e){if(!e||!Pn(e))return e;let t={...e};return delete t.message_thread_id,Object.keys(t).length>0?t:void 0}function In(e){return bn.test(v(e))}function Ln(e){let t=e.messageThreadId==null?e.targetMessageThreadId:e.messageThreadId,n=e.chatType===`direct`?`dm`:`forum`,r=ke(t==null?void 0:{id:t,scope:n}),i=r?{...r}:{};if(e.replyToMessageId!=null){let t=Math.trunc(e.replyToMessageId);e.quoteText?.trim()?i.reply_parameters={message_id:t,quote:e.quoteText.trim()}:i.reply_to_message_id=t}return i}async function Rn(e){try{return await e.requestHtml(e.label)}catch(t){if(!In(t))throw t;return e.verbose&&wn.warn(`telegram ${e.label} failed with HTML parse error, retrying as plain text: ${v(t)}`),await e.requestPlain(`${e.label}-plain`)}}function X(e){let t=e.cfg??c(),n=u({cfg:t,accountId:e.accountId}),r=jn(e.token,n),i=An(n);return{cfg:t,account:n,api:e.api??new ce(r,i?{client:i}:void 0).api}}function Z(e){let t=j({retry:e.retry,configRetry:e.account.config.retry,verbose:e.verbose,...e.shouldRetry?{shouldRetry:e.shouldRetry}:{},...e.strictShouldRetry?{strictShouldRetry:!0}:{}}),n=En(e.cfg);return(r,i,a)=>{let o=()=>t(r,i);return(e.useApiErrorLogging===!1?o():ct({operation:i??`request`,fn:o,...a?.shouldLog?{shouldLog:a.shouldLog}:{}})).catch(e=>{throw n(i??`request`,e),e})}}function zn(e,t){return Cn.test(v(e))?Error([`Telegram send failed: chat not found (chat_id=${t.chatId}).`,`Likely: bot not started in DM, bot removed from group/channel, group migrated (new -100… id), or wrong bot token.`,`Input was: ${JSON.stringify(t.input)}.`].join(` `)):e}async function Q(e,t,n,r){try{return await r(e,t)}catch(i){if(!Pn(e)||!Nn(i))throw i;return n&&wn.warn(`telegram ${t} failed with message_thread_id, retrying without thread: ${v(i)}`),await r(Fn(e),`${t}-threadless`)}}function Bn(e){return async(t,n)=>e.requestWithDiag(t,n).catch(t=>{throw zn(t,{chatId:e.chatId,input:e.input})})}function Vn(e){return Z({cfg:e.cfg,account:e.account,retry:e.retry,verbose:e.verbose,useApiErrorLogging:e.useApiErrorLogging,shouldRetry:e=>Jt(e),strictShouldRetry:!0})}function $(e){if(!e?.length)return;let t=e.map(e=>e.filter(e=>e?.text&&e?.callback_data).map(e=>({text:e.text,callback_data:e.callback_data,...e.style?{style:e.style}:{}}))).filter(e=>e.length>0);if(t.length!==0)return{inline_keyboard:t}}async function Hn(e,n,r={}){let{cfg:i,account:a,api:o}=X(r),s=w(e),c=await q({cfg:i,api:o,lookupTarget:s.chatId,persistTarget:e,verbose:r.verbose}),l=r.mediaUrl?.trim(),u=r.maxBytes??(typeof a.config.mediaMaxMb==`number`?a.config.mediaMaxMb:100)*1024*1024,d=$(r.buttons),m=Ln({targetMessageThreadId:s.messageThreadId,messageThreadId:r.messageThreadId,chatType:s.chatType,replyToMessageId:r.replyToMessageId,quoteText:r.quoteText}),h=Object.keys(m).length>0,g=Bn({requestWithDiag:Vn({cfg:i,account:a,retry:r.retry,verbose:r.verbose}),chatId:c,input:e}),_=r.textMode??`markdown`,y=D({cfg:i,channel:`telegram`,accountId:a.accountId}),b=e=>wt(e,{textMode:_,tableMode:y}),x=a.config.linkPreview??!0?void 0:{is_disabled:!0},S=async(e,t)=>await Q(t,`message`,r.verbose,async(t,n)=>{let i=t?{...t}:{};x&&(i.link_preview_options=x);let a={...i,...r.silent===!0?{disable_notification:!0}:{}},s=Object.keys(a).length>0,l=t=>g(()=>s?o.sendMessage(c,e.plainText,a):o.sendMessage(c,e.plainText),t);if(!e.htmlText)return await l(n);let u=e.htmlText,d={parse_mode:`HTML`,...a};return await Rn({label:n,verbose:r.verbose,requestHtml:e=>g(()=>o.sendMessage(c,u,d),e),requestPlain:l})}),C=e=>h||e&&d?{...m,...e&&d?{reply_markup:d}:{}}:void 0,T=async(e,t)=>{let n=``,r=c;for(let i=0;i<e.length;i+=1){let a=e[i];if(!a)continue;let o=await S(a,C(i===e.length-1)),s=W(o,t);B(c,s),n=String(s),r=String(o?.chat?.id??c)}return{messageId:n,chatId:r}},E=(e,n)=>{let i=r.plainText??e,a;try{a=Mt(e,4e3)}catch(e){return t(`telegram ${n} failed HTML chunk planning, retrying as plain text: ${v(e)}`),G(i,4e3).map(e=>({plainText:e}))}let o=G(i,4e3);if(o.length>a.length)return t(`telegram ${n} plain-text fallback needs more chunks than HTML; sending plain text`),o.map(e=>({plainText:e}));let s=yn(i,a.length,4e3);return a.map((e,t)=>({htmlText:e,plainText:s[t]??e}))},O=async(e,t)=>await T(E(e,t),t);if(l){let e=await ee(l,ne({maxBytes:u,mediaLocalRoots:r.mediaLocalRoots})),i=p(e.contentType??void 0),s=f({contentType:e.contentType,fileName:e.fileName}),v=i===`video`&&r.asVideoNote===!0,y=e.fileName??(s?`animation.gif`:Jn(i??`document`))??`file`,x=new ue(e.buffer,y),S,C;if(v)S=void 0,C=n.trim()?n:void 0;else{let e=lt(n);S=e.caption,C=e.followUpText}let w=S?b(S):void 0,E=!!C,D={...h?m:{},...!E&&d?{reply_markup:d}:{}},k={...w?{caption:w,parse_mode:`HTML`}:{},...D,...r.silent===!0?{disable_notification:!0}:{}},te=async(e,t)=>await Q(k,e,r.verbose,async(e,n)=>g(()=>t(e),n)),A=(()=>{if(s)return{label:`animation`,sender:e=>o.sendAnimation(c,x,e)};if(i===`image`)return{label:`photo`,sender:e=>o.sendPhoto(c,x,e)};if(i===`video`)return v?{label:`video_note`,sender:e=>o.sendVideoNote(c,x,e)}:{label:`video`,sender:e=>o.sendVideo(c,x,e)};if(i===`audio`){let{useVoice:n}=vn({wantsVoice:r.asVoice===!0,contentType:e.contentType,fileName:y,logFallback:t});return n?{label:`voice`,sender:e=>o.sendVoice(c,x,e)}:{label:`audio`,sender:e=>o.sendAudio(c,x,e)}}return{label:`document`,sender:e=>o.sendDocument(c,x,e)}})(),re=await te(A.label,A.sender),ie=W(re,`media send`),j=String(re?.chat?.id??c);return B(c,ie),M({channel:`telegram`,accountId:a.accountId,direction:`outbound`}),E&&C?_===`html`?{messageId:(await O(C,`text follow-up send`)).messageId,chatId:j}:{messageId:(await T([{plainText:C,htmlText:b(C)}],`text follow-up send`)).messageId,chatId:j}:{messageId:String(ie),chatId:j}}if(!n||!n.trim())throw Error(`Message must be non-empty for Telegram sends`);let k;return k=_===`html`?await O(n,`text send`):await T([{plainText:r.plainText??n,htmlText:b(n)}],`text send`),M({channel:`telegram`,accountId:a.accountId,direction:`outbound`}),k}async function Un(e,t={}){let{cfg:n,account:r,api:i}=X(t),a=w(e),o=await q({cfg:n,api:i,lookupTarget:a.chatId,persistTarget:e,verbose:t.verbose}),s=Z({cfg:n,account:r,retry:t.retry,verbose:t.verbose,shouldRetry:e=>z(e,{context:`send`})}),c=Ae(a.messageThreadId??t.messageThreadId);return await s(()=>i.sendChatAction(o,`typing`,c),`typing`),{ok:!0}}async function Wn(e,t,n,r={}){let{cfg:i,account:a,api:o}=X(r),s=String(e),c=await q({cfg:i,api:o,lookupTarget:s,persistTarget:s,verbose:r.verbose}),l=J(t),u=Z({cfg:i,account:a,retry:r.retry,verbose:r.verbose,shouldRetry:e=>z(e,{context:`send`})}),d=r.remove===!0,f=n.trim(),p=d||!f?[]:[{type:`emoji`,emoji:f}];if(typeof o.setMessageReaction!=`function`)throw Error(`Telegram reactions are unavailable in this bot API.`);try{await u(()=>o.setMessageReaction(c,l,p),`reaction`)}catch(e){let t=e instanceof Error?e.message:String(e);if(/REACTION_INVALID/i.test(t))return{ok:!1,warning:`Reaction unavailable: ${f}`};throw e}return{ok:!0}}async function Gn(e,n,r={}){let{cfg:i,account:a,api:o}=X(r),s=String(e),c=await q({cfg:i,api:o,lookupTarget:s,persistTarget:s,verbose:r.verbose}),l=J(n);return await Z({cfg:i,account:a,retry:r.retry,verbose:r.verbose,shouldRetry:e=>z(e,{context:`send`})})(()=>o.deleteMessage(c,l),`deleteMessage`),t(`[telegram] Deleted message ${l} from chat ${c}`),{ok:!0}}async function Kn(e,n,r,i={}){let{cfg:a,account:o,api:s}=X({...i,cfg:i.cfg}),c=String(e),l=await q({cfg:a,api:s,lookupTarget:c,persistTarget:c,verbose:i.verbose}),u=J(n),d=Z({cfg:a,account:o,retry:i.retry,verbose:i.verbose}),f=$(r)??{inline_keyboard:[]};try{await d(()=>s.editMessageReplyMarkup(l,u,{reply_markup:f}),`editMessageReplyMarkup`,{shouldLog:e=>!Y(e)})}catch(e){if(!Y(e))throw e}return t(`[telegram] Edited reply markup for message ${u} in chat ${l}`),{ok:!0,messageId:String(u),chatId:l}}async function qn(e,n,r,i={}){let{cfg:a,account:o,api:s}=X({...i,cfg:i.cfg}),c=String(e),l=await q({cfg:a,api:s,lookupTarget:c,persistTarget:c,verbose:i.verbose}),u=J(n),d=Z({cfg:a,account:o,retry:i.retry,verbose:i.verbose,shouldRetry:e=>z(e,{allowMessageMatch:!0})||Xt(e)}),f=(e,t,n)=>d(e,t,n?{shouldLog:n}:void 0),p=wt(r,{textMode:i.textMode??`markdown`,tableMode:D({cfg:a,channel:`telegram`,accountId:o.accountId})}),m=i.buttons!==void 0,h=m?$(i.buttons):void 0,g=m?h??{inline_keyboard:[]}:void 0,_={parse_mode:`HTML`};i.linkPreview===!1&&(_.link_preview_options={is_disabled:!0}),g!==void 0&&(_.reply_markup=g);let v={};i.linkPreview===!1&&(v.link_preview_options={is_disabled:!0}),g!==void 0&&(v.reply_markup=g);try{await Rn({label:`editMessage`,verbose:i.verbose,requestHtml:e=>f(()=>s.editMessageText(l,u,p,_),e,e=>!Y(e)),requestPlain:e=>f(()=>Object.keys(v).length>0?s.editMessageText(l,u,r,v):s.editMessageText(l,u,r),e,e=>!Y(e))})}catch(e){if(!Y(e))throw e}return t(`[telegram] Edited message ${u} in chat ${l}`),{ok:!0,messageId:String(u),chatId:l}}function Jn(e){switch(e){case`image`:return`image.jpg`;case`video`:return`video.mp4`;case`audio`:return`audio.ogg`;default:return`file.bin`}}async function Yn(e,t,n={}){if(!t?.trim())throw Error(`Telegram sticker file_id is required`);let{cfg:r,account:i,api:a}=X(n),o=w(e),s=await q({cfg:r,api:a,lookupTarget:o.chatId,persistTarget:e,verbose:n.verbose}),c=Ln({targetMessageThreadId:o.messageThreadId,messageThreadId:n.messageThreadId,chatType:o.chatType,replyToMessageId:n.replyToMessageId}),l=Object.keys(c).length>0,u=Bn({requestWithDiag:Z({cfg:r,account:i,retry:n.retry,verbose:n.verbose,useApiErrorLogging:!1}),chatId:s,input:e}),d=await Q(l?c:void 0,`sticker`,n.verbose,async(e,n)=>u(()=>a.sendSticker(s,t.trim(),e),n)),f=W(d,`sticker send`),p=String(d?.chat?.id??s);return B(s,f),M({channel:`telegram`,accountId:i.accountId,direction:`outbound`}),{messageId:String(f),chatId:p}}async function Xn(e,t,n={}){let{cfg:r,account:i,api:a}=X(n),o=w(e),s=await q({cfg:r,api:a,lookupTarget:o.chatId,persistTarget:e,verbose:n.verbose}),c=te(t,{maxOptions:10}),l=Ln({targetMessageThreadId:o.messageThreadId,messageThreadId:n.messageThreadId,chatType:o.chatType,replyToMessageId:n.replyToMessageId}),u=c.options,d=Bn({requestWithDiag:Vn({cfg:r,account:i,retry:n.retry,verbose:n.verbose}),chatId:s,input:e}),f=c.durationSeconds;if(f===void 0&&c.durationHours!==void 0)throw Error(`Telegram poll durationHours is not supported. Use durationSeconds (5-600) instead.`);if(f!==void 0&&(f<5||f>600))throw Error(`Telegram poll durationSeconds must be between 5 and 600`);let p=await Q({allows_multiple_answers:c.maxSelections>1,is_anonymous:n.isAnonymous??!0,...f===void 0?{}:{open_period:f},...Object.keys(l).length>0?l:{},...n.silent===!0?{disable_notification:!0}:{}},`poll`,n.verbose,async(e,t)=>d(()=>a.sendPoll(s,c.question,u,e),t)),m=W(p,`poll send`),h=String(p?.chat?.id??s),g=p?.poll?.id;return B(s,m),M({channel:`telegram`,accountId:i.accountId,direction:`outbound`}),{messageId:String(m),chatId:h,pollId:g}}async function Zn(e,t,n={}){if(!t?.trim())throw Error(`Forum topic name is required`);let r=t.trim();if(r.length>128)throw Error(`Forum topic name must be 128 characters or fewer`);let{cfg:i,account:a,api:o}=X(n),s=await q({cfg:i,api:o,lookupTarget:w(e).chatId,persistTarget:e,verbose:n.verbose}),c=Vn({cfg:i,account:a,retry:n.retry,verbose:n.verbose}),l={};n.iconColor!=null&&(l.icon_color=n.iconColor),n.iconCustomEmojiId?.trim()&&(l.icon_custom_emoji_id=n.iconCustomEmojiId.trim());let u=Object.keys(l).length>0,d=await c(()=>o.createForumTopic(s,r,u?l:void 0),`createForumTopic`),f=d.message_thread_id;return M({channel:`telegram`,accountId:a.accountId,direction:`outbound`}),{topicId:f,name:d.name??r,chatId:s}}export{Fe as A,De as B,lt as C,Ie as D,Re as E,et as F,Oe as G,Le as H,Be as I,Ce as J,we as K,Ue as L,Ae as M,Ke as N,Pe as O,We as P,me as Q,$e as R,Ct as S,ze as T,Ge as U,Ee as V,je as W,ve as X,Te as Y,ye as Z,Jt as _,qn as a,ht as b,Xn as c,vn as d,on as f,z as g,tn as h,Kn as i,ke as j,Me as k,Yn as l,cn as m,Zn as n,Wn as o,an as p,F as q,Gn as r,Hn as s,$ as t,Un as u,Zt as v,ct as w,wt as x,Rt as y,Ne as z};
|
|
2
|
-
//# sourceMappingURL=send-NbU9-scF2.js.map
|
package/dist/send-hlES-kRl2.js
CHANGED
|
@@ -4,4 +4,3 @@ import{g as e}from"./paths-CrCoPIVK.js";import{Za as t,pr as n,wi as r}from"./mo
|
|
|
4
4
|
`);continue}if(e.startsWith(`:`)){n=s.indexOf(`
|
|
5
5
|
`);continue}let[t,...r]=e.split(`:`),i=t.trim(),a=r.join(`:`),o=a.startsWith(` `)?a.slice(1):a;i===`event`?l.event=o:i===`data`?l.data=l.data?`${l.data}\n${o}`:o:i===`id`&&(l.id=o),n=s.indexOf(`
|
|
6
6
|
`)}}u()}function O(e,r){let i=!!e.baseUrl?.trim(),a=!!e.account?.trim(),o=r||(!i||!a?n({cfg:t(),accountId:e.accountId}):void 0),s=e.baseUrl?.trim()||o?.baseUrl;if(!s)throw Error(`Signal base URL is required`);return{baseUrl:s,account:e.account?.trim()||o?.config.account?.trim()}}function k(e){let t=e.trim();if(!t)throw Error(`Signal recipient is required`);t.toLowerCase().startsWith(`signal:`)&&(t=t.slice(7).trim());let n=t.toLowerCase();return n.startsWith(`group:`)?{type:`group`,groupId:t.slice(6).trim()}:n.startsWith(`username:`)?{type:`username`,username:t.slice(9).trim()}:n.startsWith(`u:`)?{type:`username`,username:t.trim()}:{type:`recipient`,recipient:t}}function A(e,t){return e.type===`recipient`?t.recipient?{recipient:[e.recipient]}:null:e.type===`group`?t.group?{groupId:e.groupId}:null:e.type===`username`&&t.username?{username:[e.username]}:null}async function j(r,i,a={}){let s=a.cfg??t(),c=n({cfg:s,accountId:a.accountId}),{baseUrl:u,account:d}=O(a,c),f=k(r),p=i??``,m=!1,h=[],_=a.textMode??`markdown`,v=typeof a.maxBytes==`number`?a.maxBytes:typeof c.config.mediaMaxMb==`number`?c.config.mediaMaxMb*1024*1024:typeof s.agents?.defaults?.mediaMaxMb==`number`?s.agents.defaults.mediaMaxMb*1024*1024:8*1024*1024,y;if(a.mediaUrl?.trim()){let t=await l(a.mediaUrl.trim(),v,{localRoots:a.mediaLocalRoots});y=[t.path];let n=e(t.contentType??void 0);!p&&n&&(p=n===`image`?`<media:image>`:`<media:${n}>`,m=!0)}if(p.trim()&&!m)if(_===`plain`)h=a.textStyles??[];else{let e=o({cfg:s,channel:`signal`,accountId:c.accountId}),t=g(p,{tableMode:e});p=t.text,h=t.styles}if(!p.trim()&&(!y||y.length===0))throw Error(`Signal send requires text or media`);let b={message:p};h.length>0&&(b[`text-style`]=h.map(e=>`${e.start}:${e.length}:${e.style}`)),d&&(b.account=d),y&&y.length>0&&(b.attachments=y);let x=A(f,{recipient:!0,group:!0,username:!0});if(!x)throw Error(`Signal recipient is required`);Object.assign(b,x);let S=(await T(`send`,b,{baseUrl:u,timeoutMs:a.timeoutMs}))?.timestamp;return{messageId:S?String(S):`unknown`,timestamp:S}}async function M(e,t={}){let{baseUrl:n,account:r}=O(t),i=A(k(e),{recipient:!0,group:!0});if(!i)return!1;let a={...i};return r&&(a.account=r),t.stop&&(a.stop=!0),await T(`sendTyping`,a,{baseUrl:n,timeoutMs:t.timeoutMs}),!0}async function N(e,t,n={}){if(!Number.isFinite(t)||t<=0)return!1;let{baseUrl:r,account:i}=O(n),a=A(k(e),{recipient:!0});if(!a)return!1;let o={...a,targetTimestamp:t,type:n.type??`read`};return i&&(o.account=i),await T(`sendReceipt`,o,{baseUrl:r,timeoutMs:n.timeoutMs}),!0}export{E as a,b as c,O as i,N as n,T as o,M as r,D as s,j as t};
|
|
7
|
-
//# sourceMappingURL=send-hlES-kRl2.js.map
|
package/dist/send-swTiQAeK2.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
1
|
import{g as e}from"./paths-piJASC5k.js";import{h as t,y as n}from"./logger-DwWqfo66.js";import{Ar as r,Nr as i,Za as a}from"./model-selection-DvekK9rZ.js";import{s as o}from"./ir-B7mdG27k.js";import{t as s}from"./tables-D6J-isob.js";import{t as c}from"./outbound-attachment-Bah4dvuM.js";import{spawn as l}from"node:child_process";import{createInterface as u}from"node:readline";function d(e,t){return e.slice(t.length).trim()}function f(e,t){return t.some(t=>e.startsWith(t))}function p(e){for(let{prefix:t,service:n}of e.servicePrefixes){if(!e.lower.startsWith(t))continue;let r=d(e.trimmed,t);if(!r)throw Error(`${t} target is required`);let i=r.toLowerCase();return e.isChatTarget(i)?e.parseTarget(r):{kind:`handle`,to:r,service:n}}return null}function m(e){let t=[...e.chatIdPrefixes,...e.chatGuidPrefixes,...e.chatIdentifierPrefixes,...e.extraChatPrefixes??[]];return p({trimmed:e.trimmed,lower:e.lower,servicePrefixes:e.servicePrefixes,isChatTarget:e=>f(e,t),parseTarget:e.parseTarget})}function h(e){for(let t of e.chatIdPrefixes)if(e.lower.startsWith(t)){let n=d(e.trimmed,t),r=Number.parseInt(n,10);if(!Number.isFinite(r))throw Error(`Invalid chat_id: ${n}`);return{kind:`chat_id`,chatId:r}}for(let t of e.chatGuidPrefixes)if(e.lower.startsWith(t)){let n=d(e.trimmed,t);if(!n)throw Error(`chat_guid is required`);return{kind:`chat_guid`,chatGuid:n}}for(let t of e.chatIdentifierPrefixes)if(e.lower.startsWith(t)){let n=d(e.trimmed,t);if(!n)throw Error(`chat_identifier is required`);return{kind:`chat_identifier`,chatIdentifier:n}}return null}function g(e){for(let{prefix:t}of e.servicePrefixes){if(!e.lower.startsWith(t))continue;let n=d(e.trimmed,t);return n?e.parseAllowTarget(n):{kind:`handle`,handle:``}}return null}function _(e){return g({trimmed:e.trimmed,lower:e.lower,servicePrefixes:e.servicePrefixes,parseAllowTarget:e.parseAllowTarget})||y({trimmed:e.trimmed,lower:e.lower,chatIdPrefixes:e.chatIdPrefixes,chatGuidPrefixes:e.chatGuidPrefixes,chatIdentifierPrefixes:e.chatIdentifierPrefixes})||null}function v(e){return t=>i({allowFrom:t.allowFrom,sender:t.sender,chatId:t.chatId,chatGuid:t.chatGuid,chatIdentifier:t.chatIdentifier,normalizeSender:e.normalizeSender,parseAllowTarget:e.parseAllowTarget})}function y(e){for(let t of e.chatIdPrefixes)if(e.lower.startsWith(t)){let n=d(e.trimmed,t),r=Number.parseInt(n,10);if(Number.isFinite(r))return{kind:`chat_id`,chatId:r}}for(let t of e.chatGuidPrefixes)if(e.lower.startsWith(t)){let n=d(e.trimmed,t);if(n)return{kind:`chat_guid`,chatGuid:n}}for(let t of e.chatIdentifierPrefixes)if(e.lower.startsWith(t)){let n=d(e.trimmed,t);if(n)return{kind:`chat_identifier`,chatIdentifier:n}}return null}const b=[`chat_id:`,`chatid:`,`chat:`],x=[`chat_guid:`,`chatguid:`,`guid:`],S=[`chat_identifier:`,`chatidentifier:`,`chatident:`],C=[{prefix:`imessage:`,service:`imessage`},{prefix:`sms:`,service:`sms`},{prefix:`auto:`,service:`auto`}];function w(e){let n=e.trim();if(!n)return``;let r=n.toLowerCase();if(r.startsWith(`imessage:`))return w(n.slice(9));if(r.startsWith(`sms:`))return w(n.slice(4));if(r.startsWith(`auto:`))return w(n.slice(5));for(let e of b)if(r.startsWith(e))return`chat_id:${n.slice(e.length).trim()}`;for(let e of x)if(r.startsWith(e))return`chat_guid:${n.slice(e.length).trim()}`;for(let e of S)if(r.startsWith(e))return`chat_identifier:${n.slice(e.length).trim()}`;return n.includes(`@`)?n.toLowerCase():t(n)||n.replace(/\s+/g,``)}function T(e){let t=e.trim();if(!t)throw Error(`iMessage target is required`);let n=t.toLowerCase();return m({trimmed:t,lower:n,servicePrefixes:C,chatIdPrefixes:b,chatGuidPrefixes:x,chatIdentifierPrefixes:S,parseTarget:T})||h({trimmed:t,lower:n,chatIdPrefixes:b,chatGuidPrefixes:x,chatIdentifierPrefixes:S})||{kind:`handle`,to:t,service:`auto`}}function E(e){let t=e.trim();return t?_({trimmed:t,lower:t.toLowerCase(),servicePrefixes:C,parseAllowTarget:E,chatIdPrefixes:b,chatGuidPrefixes:x,chatIdentifierPrefixes:S})||{kind:`handle`,handle:w(t)}:{kind:`handle`,handle:``}}const D=v({normalizeSender:w,parseAllowTarget:E});function O(e){return D(e)}function k(e){return!e||!Number.isFinite(e)?``:`chat_id:${e}`}const A=1e4;function j(){return!!process.env.VITEST?.trim().toLowerCase()}var M=class{constructor(e={}){this.pending=new Map,this.closedResolve=null,this.child=null,this.reader=null,this.nextId=1,this.cliPath=e.cliPath?.trim()||`imsg`,this.dbPath=e.dbPath?.trim()?n(e.dbPath):void 0,this.runtime=e.runtime,this.onNotification=e.onNotification,this.closed=new Promise(e=>{this.closedResolve=e})}async start(){if(this.child)return;if(j())throw Error(`Refusing to start imsg rpc in test environment; mock iMessage RPC client`);let e=[`rpc`];this.dbPath&&e.push(`--db`,this.dbPath);let t=l(this.cliPath,e,{stdio:[`pipe`,`pipe`,`pipe`]});this.child=t,this.reader=u({input:t.stdout}),this.reader.on(`line`,e=>{let t=e.trim();t&&this.handleLine(t)}),t.stderr?.on(`data`,e=>{let t=e.toString().split(/\r?\n/);for(let e of t)e.trim()&&this.runtime?.error?.(`imsg rpc: ${e.trim()}`)}),t.on(`error`,e=>{this.failAll(e instanceof Error?e:Error(String(e))),this.closedResolve?.()}),t.on(`close`,(e,t)=>{if(e!==0&&e!==null){let n=t?`signal ${t}`:`code ${e}`;this.failAll(Error(`imsg rpc exited (${n})`))}else this.failAll(Error(`imsg rpc closed`));this.closedResolve?.()})}async stop(){if(!this.child)return;this.reader?.close(),this.reader=null,this.child.stdin?.end();let e=this.child;this.child=null,await Promise.race([this.closed,new Promise(t=>{setTimeout(()=>{e.killed||e.kill(`SIGTERM`),t()},500)})])}async waitForClose(){await this.closed}async request(e,t,n){if(!this.child||!this.child.stdin)throw Error(`imsg rpc not running`);let r=this.nextId++,i={jsonrpc:`2.0`,id:r,method:e,params:t??{}},a=`${JSON.stringify(i)}\n`,o=n?.timeoutMs??1e4,s=new Promise((t,n)=>{let i=String(r),a=o>0?setTimeout(()=>{this.pending.delete(i),n(Error(`imsg rpc timeout (${e})`))},o):void 0;this.pending.set(i,{resolve:e=>t(e),reject:n,timer:a})});return this.child.stdin.write(a),await s}handleLine(e){let t;try{t=JSON.parse(e)}catch(t){let n=t instanceof Error?t.message:String(t);this.runtime?.error?.(`imsg rpc: failed to parse ${e}: ${n}`);return}if(t.id!==void 0&&t.id!==null){let e=String(t.id),n=this.pending.get(e);if(!n)return;if(n.timer&&clearTimeout(n.timer),this.pending.delete(e),t.error){let e=t.error.message??`imsg rpc error`,r=t.error.data,i=t.error.code,a=[];if(typeof i==`number`&&a.push(`code=${i}`),r!==void 0){let e=typeof r==`string`?r:JSON.stringify(r,null,2);e&&a.push(e)}let o=a.length>0?`${e}: ${a.join(` `)}`:e;n.reject(Error(o));return}n.resolve(t.result);return}t.method&&this.onNotification?.({method:t.method,params:t.params})}failAll(e){for(let[t,n]of this.pending.entries())n.timer&&clearTimeout(n.timer),n.reject(e),this.pending.delete(t)}};async function N(e={}){let t=new M(e);return await t.start(),t}const P=/^\s*\[\[\s*reply_to\s*:\s*([^\]\n]+)\s*\]\]\s*/i;function F(e){let t=``;for(let n of e){let e=n.charCodeAt(0);e>=0&&e<=31||e===127||n===`[`||n===`]`||(t+=n)}return t}function I(e){let t=e?.trim();if(!t)return;let n=F(t).trim();if(n)return n.length>256?n.slice(0,256):n}function L(e,t){let n=I(t);if(!n)return e;let r=`[[reply_to:${n}]]`,i=e.match(P);if(i){let t=e.slice(i[0].length).trimStart();return t?`${r} ${t}`:r}let a=e.trimStart();return a?`${r} ${a}`:r}function R(e){if(!e)return null;let t=typeof e.messageId==`string`&&e.messageId.trim()||typeof e.message_id==`string`&&e.message_id.trim()||typeof e.id==`string`&&e.id.trim()||typeof e.guid==`string`&&e.guid.trim()||(typeof e.message_id==`number`?String(e.message_id):null)||(typeof e.id==`number`?String(e.id):null);return t?String(t).trim():null}async function z(t,n,i={}){let l=i.config??a(),u=i.account??r({cfg:l,accountId:i.accountId}),d=i.cliPath?.trim()||u.config.cliPath?.trim()||`imsg`,f=i.dbPath?.trim()||u.config.dbPath?.trim(),p=T(i.chatId?k(i.chatId):t),m=i.service??(p.kind===`handle`?p.service:void 0)??u.config.service,h=i.region?.trim()||u.config.region?.trim()||`US`,g=typeof i.maxBytes==`number`?i.maxBytes:typeof u.config.mediaMaxMb==`number`?u.config.mediaMaxMb*1024*1024:16*1024*1024,_=n??``,v;if(i.mediaUrl?.trim()){let t=await(i.resolveAttachmentImpl??c)(i.mediaUrl.trim(),g,{localRoots:i.mediaLocalRoots});if(v=t.path,!_.trim()){let n=e(t.contentType??void 0);n&&(_=n===`image`?`<media:image>`:`<media:${n}>`)}}if(!_.trim()&&!v)throw Error(`iMessage send requires text or media`);if(_.trim()){let e=o({cfg:l,channel:`imessage`,accountId:u.accountId});_=s(_,e)}_=L(_,i.replyToId);let y={text:_,service:m||`auto`,region:h};v&&(y.file=v),p.kind===`chat_id`?y.chat_id=p.chatId:p.kind===`chat_guid`?y.chat_guid=p.chatGuid:p.kind===`chat_identifier`?y.chat_identifier=p.chatIdentifier:y.to=p.to;let b=i.client??(i.createClient?await i.createClient({cliPath:d,dbPath:f}):await N({cliPath:d,dbPath:f})),x=!i.client;try{let e=await b.request(`send`,y,{timeoutMs:i.timeoutMs});return{messageId:R(e)??(e?.ok?`ok`:`unknown`)}}finally{x&&await b.stop()}}export{O as a,k as i,N as n,w as o,A as r,T as s,z as t};
|
|
2
|
-
//# sourceMappingURL=send-swTiQAeK2.js.map
|
package/dist/send-vNcod64S.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
import{S as e}from"./subsystem-BLbY429l.js";import{jo as t}from"./auth-profiles-C8rZRS0X.js";import{O as n,j as r}from"./plugins-DNlgeTTc.js";import{i,n as a,r as o,t as s}from"./targets-BJTo7bqu.js";import{i as c}from"./tokens-DRM8vzJx.js";import{r as l,t as u}from"./fetch-guard-DaZmvp-L.js";import{a as d,d as f,h as p,m,n as h,s as g,t as _}from"./ir-DdjufzKF.js";import{t as v}from"./render-DrrPmnMI.js";import{WebClient as y}from"@slack/web-api";function b(e,t={}){let n=e.trim();return n?o({raw:n,mentionPattern:/^<@([A-Z0-9]+)>$/i,prefixes:[{prefix:`user:`,kind:`user`},{prefix:`channel:`,kind:`channel`},{prefix:`slack:`,kind:`user`}],atUserPattern:/^[A-Z0-9]+$/i,atUserErrorMessage:`Slack DMs require a user id (use user:<id> or <@id>)`})||(n.startsWith(`#`)?s(`channel`,a({candidate:n.slice(1).trim(),pattern:/^[A-Z0-9]+$/i,errorMessage:`Slack channels require a channel id (use channel:<id>)`}),n):t.defaultKind?s(t.defaultKind,n,n):s(`channel`,n,n)):void 0}function x(e){return i({platform:`Slack`,target:b(e,{defaultKind:`channel`}),kind:`channel`})}function S(e){if(typeof e!=`string`)return;let t=e.replace(/\s+/g,` `).trim();return t.length>0?t:void 0}function C(e){return S(e.text?.text)}function w(e){return S(e.text?.text)}function T(e){return S(e.alt_text)??S(e.title?.text)}function E(e){return S(e.title?.text)??S(e.alt_text)}function D(e){if(!Array.isArray(e.elements))return;let t=e.elements.map(e=>S(e.text)).filter(e=>!!e);return t.length>0?t.join(` `):void 0}function O(e){for(let t of e){let e=t;switch(e.type){case`header`:{let t=w(e);if(t)return t;break}case`section`:{let t=C(e);if(t)return t;break}case`image`:return T(e)||`Shared an image`;case`video`:return E(e)||`Shared a video`;case`file`:return`Shared a file`;case`context`:{let t=D(e);if(t)return t;break}default:break}}return`Shared a Block Kit message`}function k(e){try{return JSON.parse(e)}catch{throw Error(`blocks must be valid JSON`)}}function A(e){if(!Array.isArray(e))throw Error(`blocks must be an array`);if(e.length===0)throw Error(`blocks must contain at least one block`);if(e.length>50)throw Error(`blocks cannot exceed 50 items`);for(let t of e){if(!t||typeof t!=`object`||Array.isArray(t))throw Error(`each block must be an object`);let e=t.type;if(typeof e!=`string`||e.trim().length===0)throw Error(`each block must include a non-empty string type`)}}function j(e){return A(e),e}function M(e){if(e!=null)return j(typeof e==`string`?k(e):e)}const N={retries:2,factor:2,minTimeout:500,maxTimeout:3e3,randomize:!0};function P(e={}){return{...e,retryConfig:e.retryConfig??N}}function F(e,t={}){return new y(e,P(t))}function I(e){return e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`)}const L=/<[^>\n]+>/g;function R(e){if(!e.startsWith(`<`)||!e.endsWith(`>`))return!1;let t=e.slice(1,-1);return t.startsWith(`@`)||t.startsWith(`#`)||t.startsWith(`!`)||t.startsWith(`mailto:`)||t.startsWith(`tel:`)||t.startsWith(`http://`)||t.startsWith(`https://`)||t.startsWith(`slack://`)}function z(e){if(!e)return``;if(!e.includes(`&`)&&!e.includes(`<`)&&!e.includes(`>`))return e;L.lastIndex=0;let t=[],n=0;for(let r=L.exec(e);r;r=L.exec(e)){let i=r.index??0;t.push(I(e.slice(n,i)));let a=r[0]??``;t.push(R(a)?a:I(a)),n=i+a.length}return t.push(I(e.slice(n))),t.join(``)}function B(e){return e?!e.includes(`&`)&&!e.includes(`<`)&&!e.includes(`>`)?e:e.split(`
|
|
2
2
|
`).map(e=>e.startsWith(`> `)?`> ${z(e.slice(2))}`:z(e)).join(`
|
|
3
3
|
`):``}function V(e,t){let n=e.href.trim();if(!n)return null;let r=t.slice(e.start,e.end).trim(),i=n.startsWith(`mailto:`)?n.slice(7):n;if(!(r.length>0&&r!==n&&r!==i))return null;let a=I(n);return{start:e.start,end:e.end,open:`<${a}|`,close:`>`}}function H(){return{styleMarkers:{bold:{open:`*`,close:`*`},italic:{open:`_`,close:`_`},strikethrough:{open:`~`,close:`~`},code:{open:"`",close:"`"},code_block:{open:"```\n",close:"```"}},escapeText:B,buildLink:V}}function U(e,t={}){return v(h(e??``,{linkify:!1,autolink:!1,headingStyle:`bold`,blockquotePrefix:`> `,tableMode:t.tableMode}),H())}function W(e){return U(e??``)}function G(e,t,n={}){let r=_(h(e??``,{linkify:!1,autolink:!1,headingStyle:`bold`,blockquotePrefix:`> `,tableMode:n.tableMode}),t),i=H();return r.map(e=>v(e,i))}const K={allowedHostnames:[`*.slack.com`,`*.slack-edge.com`,`*.slack-files.com`],allowRfc2544BenchmarkRange:!0};function q(e){return!!(e?.username||e?.iconUrl||e?.iconEmoji)}function J(e){if(!(e instanceof Error))return!1;let t=e;return t.data?.error?.toLowerCase()===`missing_scope`?(t.data?.needed?.toLowerCase())?.includes(`chat:write.customize`)?!0:[...t.data?.response_metadata?.scopes??[],...t.data?.response_metadata?.acceptedScopes??[]].map(e=>e.toLowerCase()).includes(`chat:write.customize`):!1}async function Y(t){let n={channel:t.channelId,text:t.text,thread_ts:t.threadTs,...t.blocks?.length?{blocks:t.blocks}:{}};try{return t.identity?.iconUrl?await t.client.chat.postMessage({...n,...t.identity.username?{username:t.identity.username}:{},icon_url:t.identity.iconUrl}):t.identity?.iconEmoji?await t.client.chat.postMessage({...n,...t.identity.username?{username:t.identity.username}:{},icon_emoji:t.identity.iconEmoji}):await t.client.chat.postMessage({...n,...t.identity?.username?{username:t.identity.username}:{}})}catch(r){if(!q(t.identity)||!J(r))throw r;return e(`slack send: missing chat:write.customize, retrying without custom identity`),t.client.chat.postMessage(n)}}function X(t){let n=r(t.explicit);if(n)return n;let i=r(t.fallbackToken);if(!i)throw e(`slack send: missing bot token for account=${t.accountId} explicit=${!!t.explicit} source=${t.fallbackSource??`unknown`}`),Error(`Slack bot token missing for account "${t.accountId}" (set channels.slack.accounts.${t.accountId}.botToken or SLACK_BOT_TOKEN for default).`);return i}function Z(e){let t=b(e);if(!t)throw Error(`Recipient is required for Slack sends`);return{kind:t.kind,id:t.id}}async function Q(e,t){if(!(t.kind===`user`||/^U[A-Z0-9]+$/i.test(t.id)))return{channelId:t.id};let n=(await e.conversations.open({users:t.id})).channel?.id;if(!n)throw Error(`Failed to open Slack DM channel`);return{channelId:n,isDm:!0}}async function $(e){let{buffer:t,contentType:n,fileName:r}=await d(e.mediaUrl,{maxBytes:e.maxBytes,localRoots:e.mediaLocalRoots}),i=await e.client.files.getUploadURLExternal({filename:r??`upload`,length:t.length});if(!i.ok||!i.upload_url||!i.file_id)throw Error(`Failed to get upload URL: ${i.error??`unknown error`}`);let a=new Uint8Array(t),{response:o,release:s}=await u(l({url:i.upload_url,init:{method:`POST`,...n?{headers:{"Content-Type":n}}:{},body:a},policy:K,auditContext:`slack-upload-file`}));try{if(!o.ok)throw Error(`Failed to upload file: HTTP ${o.status}`)}finally{await s()}let c=await e.client.files.completeUploadExternal({files:[{id:i.file_id,title:r??`upload`}],channel_id:e.channelId,...e.caption?{initial_comment:e.caption}:{},...e.threadTs?{thread_ts:e.threadTs}:{}});if(!c.ok)throw Error(`Failed to complete upload: ${c.error??`unknown error`}`);return i.file_id}async function ee(r,i,a={}){let o=i?.trim()??``;if(c(o)&&!a.mediaUrl&&!a.blocks)return e(`slack send: suppressed NO_REPLY token before API call`),{messageId:`suppressed`,channelId:``};let s=a.blocks==null?void 0:j(a.blocks);if(!o&&!a.mediaUrl&&!s)throw Error(`Slack send requires text, blocks, or media`);let l=a.cfg??t(),u=n({cfg:l,accountId:a.accountId}),d=X({explicit:a.token,accountId:u.accountId,fallbackToken:u.botToken,fallbackSource:u.botTokenSource}),h=a.client??F(d),{channelId:_}=await Q(h,Z(r));if(s){if(a.mediaUrl)throw Error(`Slack send does not support blocks with mediaUrl`);return{messageId:(await Y({client:h,channelId:_,text:o||O(s),threadTs:a.threadTs,identity:a.identity,blocks:s})).ts??`unknown`,channelId:_}}let v=p(l,`slack`,u.accountId),y=Math.min(v,4e3),b=g({cfg:l,channel:`slack`,accountId:u.accountId}),x=m(l,`slack`,u.accountId),S=(x===`newline`?f(o,y,x):[o]).flatMap(e=>G(e,y,{tableMode:b}));!S.length&&o&&S.push(o);let C=typeof u.config.mediaMaxMb==`number`?u.config.mediaMaxMb*1024*1024:void 0,w=``;if(a.mediaUrl){let[e,...t]=S;w=await $({client:h,channelId:_,mediaUrl:a.mediaUrl,mediaLocalRoots:a.mediaLocalRoots,caption:e,threadTs:a.threadTs,maxBytes:C});for(let e of t)w=(await Y({client:h,channelId:_,text:e,threadTs:a.threadTs,identity:a.identity})).ts??w}else for(let e of S.length?S:[``])w=(await Y({client:h,channelId:_,text:e,threadTs:a.threadTs,identity:a.identity})).ts??w;return{messageId:w||`unknown`,channelId:_}}export{P as a,O as c,F as i,b as l,G as n,M as o,W as r,j as s,ee as t,x as u};
|
|
4
|
-
//# sourceMappingURL=send-vNcod64S.js.map
|
package/dist/server-C-lb98FO.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
1
|
import"./paths-B4IRk3wi.js";import{t as e}from"./subsystem-C5XF2Fy5.js";import"./utils-UGOV_184.js";import{$i as t,Ba as n,Fi as r,Ni as i,Pi as a,Qi as o,ea as s,pa as c,qs as l,za as u}from"./model-selection-BLbnMb5E.js";import"./agent-scope-DXZc3eNT.js";import"./openclaw-root-D_0Q6--h.js";import"./github-copilot-token-DGYAlOmV.js";import"./boolean-Ch3DfXPy.js";import"./env-D7wNuBx1.js";import"./env-overrides-DXJbFrwI.js";import"./registry-hFAtCSWG.js";import"./skills-CzUpDbU-.js";import"./frontmatter-BkZkwkVO.js";import"./plugins-CYLrFT4h.js";import"./logger-Bl8URnrW.js";import"./exec-DHqLtFYt.js";import"./windows-spawn-AB7ItGAE.js";import"./redact-3_CiXMY6.js";import"./path-alias-guards-mvyLCPlN.js";import"./errors-Bunti32V.js";import"./paths-yLEk_25I.js";import"./chat-envelope-HVpKusFc.js";import d from"express";let f=null;const p=e(`browser`).child(`server`);async function m(){if(f)return f;let e=l(),t=c(e.browser,e);if(!t.enabled)return null;let m=n(e),h=!1;try{let t=await u({cfg:e});m=t.auth,t.generatedToken&&p.info(`No browser auth configured; generated gateway.auth.token automatically.`)}catch(e){p.warn(`failed to auto-configure browser auth: ${String(e)}`),h=!0}if(h&&!m.token&&!m.password)return p.error(`browser control startup aborted: authentication bootstrap failed and no fallback auth is configured.`),null;let g=d();a(g),i(g,m),r(g,s({getState:()=>f,refreshConfigFromDisk:!0}));let _=t.controlPort,v=await new Promise((e,t)=>{let n=g.listen(_,`127.0.0.1`,()=>e(n));n.once(`error`,t)}).catch(e=>(p.error(`openclaw browser server failed to bind 127.0.0.1:${_}: ${String(e)}`),null));if(!v)return null;f=await o({server:v,port:_,resolved:t,onWarn:e=>p.warn(e)});let y=m.token?`token`:m.password?`password`:`off`;return p.info(`Browser control listening on http://127.0.0.1:${_}/ (auth=${y})`),f}async function h(){await t({current:f,getState:()=>f,clearState:()=>{f=null},closeServer:!0,onWarn:e=>p.warn(e)})}export{m as startBrowserControlServerFromConfig,h as stopBrowserControlServer};
|
|
2
|
-
//# sourceMappingURL=server-C-lb98FO.js.map
|
package/dist/server-DwSkpKgC.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
1
|
import{t as e}from"./subsystem-BLbY429l.js";import"./paths-BjD3T_xq.js";import"./boolean-D15s2V33.js";import{Br as t,Cr as n,Hr as r,Qr as i,Sr as a,Ti as o,Vr as s,jo as c,wi as l,xr as u}from"./auth-profiles-C8rZRS0X.js";import"./agent-scope-DAWJwFfl.js";import"./utils-CGdo13HV.js";import"./openclaw-root-CnsBf6ZU.js";import"./github-copilot-token-C79yeDKS.js";import"./env-overrides-DHtB4kK3.js";import"./version-q3SkUw2K.js";import"./registry-BptzrW8D.js";import"./skills-Bz_S4lPh.js";import"./frontmatter-C7mzDNxd.js";import"./plugins-DNlgeTTc.js";import"./logger-kQAOe3qp.js";import"./exec-B3eleY5O.js";import"./windows-spawn-7oINn5ao.js";import"./redact-CnRxK70G.js";import"./path-alias-guards-kY_ZbWs-.js";import"./errors-6SQWM9dj.js";import"./paths-BfjJY2VL.js";import"./chat-envelope-Bznn2SoS.js";import d from"express";let f=null;const p=e(`browser`).child(`server`);async function m(){if(f)return f;let e=c(),s=i(e.browser,e);if(!s.enabled)return null;let m=o(e),h=!1;try{let t=await l({cfg:e});m=t.auth,t.generatedToken&&p.info(`No browser auth configured; generated gateway.auth.token automatically.`)}catch(e){p.warn(`failed to auto-configure browser auth: ${String(e)}`),h=!0}if(h&&!m.token&&!m.password)return p.error(`browser control startup aborted: authentication bootstrap failed and no fallback auth is configured.`),null;let g=d();a(g),u(g,m),n(g,r({getState:()=>f,refreshConfigFromDisk:!0}));let _=s.controlPort,v=await new Promise((e,t)=>{let n=g.listen(_,`127.0.0.1`,()=>e(n));n.once(`error`,t)}).catch(e=>(p.error(`openclaw browser server failed to bind 127.0.0.1:${_}: ${String(e)}`),null));if(!v)return null;f=await t({server:v,port:_,resolved:s,onWarn:e=>p.warn(e)});let y=m.token?`token`:m.password?`password`:`off`;return p.info(`Browser control listening on http://127.0.0.1:${_}/ (auth=${y})`),f}async function h(){await s({current:f,getState:()=>f,clearState:()=>{f=null},closeServer:!0,onWarn:e=>p.warn(e)})}export{m as startBrowserControlServerFromConfig,h as stopBrowserControlServer};
|
|
2
|
-
//# sourceMappingURL=server-DwSkpKgC.js.map
|