@openclaw/whatsapp 2026.7.2-beta.4 → 2026.7.2-beta.5

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.
Files changed (47) hide show
  1. package/README.md +1 -1
  2. package/dist/{access-control-CRz_v6bR.js → access-control-pZcxTmd5.js} +4 -4
  3. package/dist/{accounts-CxPuEFi-.js → accounts-CSqLvCY5.js} +0 -1
  4. package/dist/{action-runtime-CHU7xb6o.js → action-runtime-B2bNDUwE.js} +3 -3
  5. package/dist/action-runtime-api.js +1 -1
  6. package/dist/action-runtime.runtime.js +1 -1
  7. package/dist/api.js +13 -19
  8. package/dist/{approval-handler.runtime-C4ddB7Kc.js → approval-handler.runtime-CmtqgLSQ.js} +5 -5
  9. package/dist/{approval-reactions-P2HXjmln.js → approval-reactions-Cu66aYdq.js} +3 -3
  10. package/dist/{auth-store-DirYMTbo.js → auth-store-DcEpIOmE.js} +2 -2
  11. package/dist/call-tool-api.js +2 -2
  12. package/dist/{channel-B9xjrOGG.js → channel-DcWBc3Hb.js} +23 -60
  13. package/dist/channel-config-api.js +1 -1
  14. package/dist/channel-plugin-api.js +1 -1
  15. package/dist/{channel-react-action-CBW-PA8q.js → channel-react-action-DUIkjl6w.js} +5 -5
  16. package/dist/{channel.runtime-DdKuhlNu.js → channel.runtime-Q5fJ2I2b.js} +4 -4
  17. package/dist/{channel.setup-DXUCPHel.js → channel.setup-C_1u6HN6.js} +1 -1
  18. package/dist/{config-schema-C6IeKIC0.js → config-schema-DARep0Nn.js} +1 -5
  19. package/dist/{connection-controller-BVRExqrB.js → connection-controller-BOB2MVKY.js} +3 -3
  20. package/dist/contract-api.js +2 -2
  21. package/dist/{directory-config-BTbJkV1W.js → directory-config-DalGrfGN.js} +5 -5
  22. package/dist/directory-contract-api.js +1 -1
  23. package/dist/{group-session-key-DJSdYfnb.js → group-session-key-DVMZlO3x.js} +5 -5
  24. package/dist/{identity-BM4_wZeM.js → identity-CPrT5aEU.js} +2 -2
  25. package/dist/light-runtime-api.js +1 -1
  26. package/dist/{login-BKUm7KSk.js → login-CvY2Dhch.js} +4 -4
  27. package/dist/{login-qr-DagJvMbg.js → login-qr-Bncpb6js.js} +4 -4
  28. package/dist/login-qr-runtime.js +1 -1
  29. package/dist/{monitor-CBVNJ2lb.js → monitor-B7phZF9w.js} +258 -330
  30. package/dist/normalize-C7Hkc_vE.js +2 -0
  31. package/dist/{normalize-target-DSZnHkKF.js → normalize-target-CugRyONv.js} +6 -2
  32. package/dist/{question-reactions-CaOrSYzU.js → question-reactions-CRsnyoMK.js} +1 -1
  33. package/dist/{resolve-outbound-target-BR97fAbB.js → resolve-outbound-target-1GqbT1uX.js} +1 -1
  34. package/dist/runtime-api.js +7 -7
  35. package/dist/{send-DhJVN30g.js → send-BTXJAyK4.js} +5 -5
  36. package/dist/{send-api-CpHwbor_.js → send-api-BY_AkSiB.js} +7 -7
  37. package/dist/{setup-finalize-9XzKdFq6.js → setup-finalize-C-m-vCl9.js} +4 -4
  38. package/dist/setup-plugin-api.js +1 -1
  39. package/dist/{setup-surface-Kv3mPki2.js → setup-surface-BjvUbR6M.js} +3 -3
  40. package/dist/{shared-CuqHFnKd.js → shared-UcAwtJaq.js} +6 -6
  41. package/dist/{socket-close-BoSHhQNJ.js → socket-close-DridEuzz.js} +1 -1
  42. package/dist/{targets-runtime-CKFrhoX4.js → targets-runtime-TMk0lGuy.js} +4 -13
  43. package/dist/{text-runtime-CU_IlbK5.js → text-runtime-CaKLhowd.js} +1 -1
  44. package/openclaw.plugin.json +2 -18
  45. package/package.json +4 -5
  46. package/dist/normalize-C-Z16y7Q.js +0 -2
  47. package/npm-shrinkwrap.json +0 -954
package/README.md CHANGED
@@ -5,7 +5,7 @@ Official OpenClaw channel plugin for WhatsApp Web chats.
5
5
  Install from OpenClaw:
6
6
 
7
7
  ```bash
8
- openclaw plugin add @openclaw/whatsapp
8
+ openclaw plugins install @openclaw/whatsapp
9
9
  ```
10
10
 
11
11
  Link a WhatsApp account through the plugin's setup flow, then configure which chats OpenClaw agents should monitor and reply to.
@@ -1,7 +1,7 @@
1
- import { a as resolveWhatsAppAccount } from "./accounts-CxPuEFi-.js";
2
- import { n as isSelfChatMode } from "./targets-runtime-CKFrhoX4.js";
3
- import { t as normalizeE164 } from "./text-runtime-CU_IlbK5.js";
4
- import { a as getSelfIdentity, o as getSenderIdentity } from "./identity-BM4_wZeM.js";
1
+ import { a as resolveWhatsAppAccount } from "./accounts-CSqLvCY5.js";
2
+ import { n as isSelfChatMode } from "./targets-runtime-TMk0lGuy.js";
3
+ import { t as normalizeE164 } from "./text-runtime-CaKLhowd.js";
4
+ import { a as getSelfIdentity, o as getSenderIdentity } from "./identity-CPrT5aEU.js";
5
5
  import { defaultRuntime } from "openclaw/plugin-sdk/runtime-env";
6
6
  import { resolveChannelGroupPolicy, resolveChannelGroupRequireMention } from "openclaw/plugin-sdk/channel-policy";
7
7
  import { createChannelPairingChallengeIssuer } from "openclaw/plugin-sdk/channel-pairing";
@@ -135,7 +135,6 @@ function resolveWhatsAppAccount(params) {
135
135
  reactionLevel: merged.reactionLevel,
136
136
  groups: merged.groups,
137
137
  direct: merged.direct,
138
- debounceMs: merged.debounceMs,
139
138
  replyToMode: merged.replyToMode
140
139
  };
141
140
  }
@@ -1,6 +1,6 @@
1
- import { a as resolveWhatsAppAccount } from "./accounts-CxPuEFi-.js";
2
- import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-BR97fAbB.js";
3
- import { r as sendReactionWhatsApp, u as resolveWhatsAppReactionLevel } from "./send-DhJVN30g.js";
1
+ import { a as resolveWhatsAppAccount } from "./accounts-CSqLvCY5.js";
2
+ import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-1GqbT1uX.js";
3
+ import { r as sendReactionWhatsApp, u as resolveWhatsAppReactionLevel } from "./send-BTXJAyK4.js";
4
4
  import { ToolAuthorizationError, createActionGate, jsonResult, readReactionParams, readStringParam } from "openclaw/plugin-sdk/channel-actions";
5
5
  //#region extensions/whatsapp/src/action-runtime-target-auth.ts
6
6
  function resolveAuthorizedWhatsAppOutboundTarget(params) {
@@ -1,2 +1,2 @@
1
- import { t as handleWhatsAppAction } from "./action-runtime-CHU7xb6o.js";
1
+ import { t as handleWhatsAppAction } from "./action-runtime-B2bNDUwE.js";
2
2
  export { handleWhatsAppAction };
@@ -1,2 +1,2 @@
1
- import { t as handleWhatsAppAction } from "./action-runtime-CHU7xb6o.js";
1
+ import { t as handleWhatsAppAction } from "./action-runtime-B2bNDUwE.js";
2
2
  export { handleWhatsAppAction };
package/dist/api.js CHANGED
@@ -1,25 +1,19 @@
1
- import { a as resolveWhatsAppAccount, i as listWhatsAppAuthDirs, n as hasAnyWhatsAppAuth, o as resolveWhatsAppAuthDir, r as listEnabledWhatsAppAccounts, s as resolveWhatsAppMediaMaxBytes, t as DEFAULT_WHATSAPP_MEDIA_MAX_MB } from "./accounts-CxPuEFi-.js";
1
+ import { a as resolveWhatsAppAccount, i as listWhatsAppAuthDirs, n as hasAnyWhatsAppAuth, o as resolveWhatsAppAuthDir, r as listEnabledWhatsAppAccounts, s as resolveWhatsAppMediaMaxBytes, t as DEFAULT_WHATSAPP_MEDIA_MAX_MB } from "./accounts-CSqLvCY5.js";
2
2
  import { r as resolveDefaultWhatsAppAccountId, t as listAccountIds } from "./account-ids-CB5SOWjc.js";
3
- import { a as normalizeWhatsAppAllowFromEntries, c as normalizeWhatsAppTarget, i as looksLikeWhatsAppTargetId, r as isWhatsAppUserTarget, s as normalizeWhatsAppMessagingTarget, t as isWhatsAppGroupJid } from "./normalize-target-DSZnHkKF.js";
4
- import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-BR97fAbB.js";
5
- import "./send-DhJVN30g.js";
6
- import { c as toWhatsappJid, i as markdownToWhatsApp, l as toWhatsappJidWithLid, n as isSelfChatMode, r as jidToE164, s as resolveJidToE164, t as assertWebChannel } from "./targets-runtime-CKFrhoX4.js";
7
- import { n as resolveUserPath, t as normalizeE164 } from "./text-runtime-CU_IlbK5.js";
8
- import { n as resolveWhatsAppGroupIntroHint, r as WHATSAPP_LEGACY_OUTBOUND_SEND_DEP_KEYS, t as whatsappPlugin } from "./channel-B9xjrOGG.js";
9
- import { a as resolveWhatsAppGroupRequireMention, o as resolveWhatsAppGroupToolPolicy } from "./shared-CuqHFnKd.js";
3
+ import { a as normalizeWhatsAppAllowFromEntries, c as normalizeWhatsAppTarget, i as looksLikeWhatsAppTargetId, r as isWhatsAppUserTarget, s as normalizeWhatsAppMessagingTarget, t as isWhatsAppGroupJid } from "./normalize-target-CugRyONv.js";
4
+ import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-1GqbT1uX.js";
5
+ import { c as toWhatsappJid, i as markdownToWhatsApp, l as toWhatsappJidWithLid, n as isSelfChatMode, r as jidToE164, s as resolveJidToE164, t as assertWebChannel } from "./targets-runtime-TMk0lGuy.js";
6
+ import { n as resolveUserPath, t as normalizeE164 } from "./text-runtime-CaKLhowd.js";
7
+ import { n as WHATSAPP_LEGACY_OUTBOUND_SEND_DEP_KEYS, t as whatsappPlugin } from "./channel-DcWBc3Hb.js";
8
+ import { a as resolveWhatsAppGroupRequireMention, o as resolveWhatsAppGroupToolPolicy } from "./shared-UcAwtJaq.js";
10
9
  import { t as whatsappCommandPolicy } from "./command-policy-BIOSHySD.js";
11
- import "./config-schema-C6IeKIC0.js";
12
- import { t as whatsappSetupPlugin } from "./channel.setup-DXUCPHel.js";
10
+ import { t as whatsappSetupPlugin } from "./channel.setup-C_1u6HN6.js";
13
11
  import { t as DEFAULT_WEB_MEDIA_BYTES } from "./constants-HU41RHGI.js";
14
- import { a as waitForWaConnection, o as DEFAULT_WHATSAPP_SOCKET_TIMING, r as createWaSocket, s as createWhatsAppSocketOperationTimeoutAdapter } from "./socket-close-BoSHhQNJ.js";
12
+ import { a as waitForWaConnection, o as DEFAULT_WHATSAPP_SOCKET_TIMING, r as createWaSocket, s as createWhatsAppSocketOperationTimeoutAdapter } from "./socket-close-DridEuzz.js";
15
13
  import { n as getStatusCode, t as formatError } from "./session-errors-JuazczrA.js";
16
- import { n as listWhatsAppDirectoryGroupsFromConfig, r as listWhatsAppDirectoryPeersFromConfig } from "./directory-config-BTbJkV1W.js";
17
- import { n as testing } from "./access-control-CRz_v6bR.js";
18
- import { d as normalizeMessageContent, f as describeReplyContext, g as extractLocationData, m as extractContextInfo, t as createWebSendApi, x as resolveInboundMediaMimetype, y as extractText } from "./send-api-CpHwbor_.js";
19
- import "openclaw/plugin-sdk/channel-actions";
20
- import "openclaw/plugin-sdk/account-resolution";
21
- import "openclaw/plugin-sdk/core";
22
- import "openclaw/plugin-sdk/account-id";
14
+ import { n as listWhatsAppDirectoryGroupsFromConfig, r as listWhatsAppDirectoryPeersFromConfig } from "./directory-config-DalGrfGN.js";
15
+ import { n as testing } from "./access-control-pZcxTmd5.js";
16
+ import { d as normalizeMessageContent, f as describeReplyContext, g as extractLocationData, m as extractContextInfo, t as createWebSendApi, x as resolveInboundMediaMimetype, y as extractText } from "./send-api-BY_AkSiB.js";
23
17
  import { formatLocationText } from "openclaw/plugin-sdk/channel-inbound";
24
18
  //#region extensions/whatsapp/src/qa-driver.runtime.ts
25
19
  function isRecord(value) {
@@ -309,4 +303,4 @@ async function startWhatsAppQaDriverSession(params) {
309
303
  };
310
304
  }
311
305
  //#endregion
312
- export { DEFAULT_WEB_MEDIA_BYTES, DEFAULT_WHATSAPP_MEDIA_MAX_MB, WHATSAPP_LEGACY_OUTBOUND_SEND_DEP_KEYS, assertWebChannel, hasAnyWhatsAppAuth, isSelfChatMode, isWhatsAppGroupJid, isWhatsAppUserTarget, jidToE164, listEnabledWhatsAppAccounts, listAccountIds as listWhatsAppAccountIds, listWhatsAppAuthDirs, listWhatsAppDirectoryGroupsFromConfig, listWhatsAppDirectoryPeersFromConfig, looksLikeWhatsAppTargetId, markdownToWhatsApp, normalizeE164, normalizeWhatsAppAllowFromEntries, normalizeWhatsAppMessagingTarget, normalizeWhatsAppTarget, resolveDefaultWhatsAppAccountId, resolveJidToE164, resolveUserPath, resolveWhatsAppAccount, resolveWhatsAppAuthDir, resolveWhatsAppGroupIntroHint, resolveWhatsAppGroupRequireMention, resolveWhatsAppGroupToolPolicy, resolveWhatsAppMediaMaxBytes, resolveWhatsAppOutboundTarget, startWhatsAppQaDriverSession, toWhatsappJid, toWhatsappJidWithLid, testing as whatsappAccessControlTesting, whatsappCommandPolicy, whatsappPlugin, whatsappSetupPlugin };
306
+ export { DEFAULT_WEB_MEDIA_BYTES, DEFAULT_WHATSAPP_MEDIA_MAX_MB, WHATSAPP_LEGACY_OUTBOUND_SEND_DEP_KEYS, assertWebChannel, hasAnyWhatsAppAuth, isSelfChatMode, isWhatsAppGroupJid, isWhatsAppUserTarget, jidToE164, listEnabledWhatsAppAccounts, listAccountIds as listWhatsAppAccountIds, listWhatsAppAuthDirs, listWhatsAppDirectoryGroupsFromConfig, listWhatsAppDirectoryPeersFromConfig, looksLikeWhatsAppTargetId, markdownToWhatsApp, normalizeE164, normalizeWhatsAppAllowFromEntries, normalizeWhatsAppMessagingTarget, normalizeWhatsAppTarget, resolveDefaultWhatsAppAccountId, resolveJidToE164, resolveUserPath, resolveWhatsAppAccount, resolveWhatsAppAuthDir, resolveWhatsAppGroupRequireMention, resolveWhatsAppGroupToolPolicy, resolveWhatsAppMediaMaxBytes, resolveWhatsAppOutboundTarget, startWhatsAppQaDriverSession, toWhatsappJid, toWhatsappJidWithLid, testing as whatsappAccessControlTesting, whatsappCommandPolicy, whatsappPlugin, whatsappSetupPlugin };
@@ -1,10 +1,10 @@
1
- import "./accounts-CxPuEFi-.js";
1
+ import "./accounts-CSqLvCY5.js";
2
2
  import { r as resolveDefaultWhatsAppAccountId } from "./account-ids-CB5SOWjc.js";
3
- import { s as normalizeWhatsAppMessagingTarget } from "./normalize-target-DSZnHkKF.js";
4
- import { i as sendTypingWhatsApp, t as sendMessageWhatsApp } from "./send-DhJVN30g.js";
3
+ import { s as normalizeWhatsAppMessagingTarget } from "./normalize-target-CugRyONv.js";
4
+ import { i as sendTypingWhatsApp, t as sendMessageWhatsApp } from "./send-BTXJAyK4.js";
5
5
  import { i as getWhatsAppRuntime } from "./runtime-BLlToOi6.js";
6
- import "./normalize-C-Z16y7Q.js";
7
- import { i as unregisterWhatsAppApprovalReactionTarget, r as registerWhatsAppApprovalReactionTarget } from "./approval-reactions-P2HXjmln.js";
6
+ import "./normalize-C7Hkc_vE.js";
7
+ import { i as unregisterWhatsAppApprovalReactionTarget, r as registerWhatsAppApprovalReactionTarget } from "./approval-reactions-Cu66aYdq.js";
8
8
  import { createSubsystemLogger } from "openclaw/plugin-sdk/runtime-env";
9
9
  import { DEFAULT_ACCOUNT_ID } from "openclaw/plugin-sdk/account-id";
10
10
  import { buildChannelApprovalNativeTargetKey } from "openclaw/plugin-sdk/approval-native-runtime";
@@ -1,7 +1,7 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-D7D4PA-g.js";
2
- import { a as resolveWhatsAppAccount } from "./accounts-CxPuEFi-.js";
2
+ import { a as resolveWhatsAppAccount } from "./accounts-CSqLvCY5.js";
3
3
  import { n as getOptionalWhatsAppRuntime } from "./runtime-BLlToOi6.js";
4
- import { c as getWhatsAppApprovalApprovers, l as whatsappApprovalAuth } from "./group-session-key-DJSdYfnb.js";
4
+ import { c as getWhatsAppApprovalApprovers, l as whatsappApprovalAuth } from "./group-session-key-DVMZlO3x.js";
5
5
  import { createLazyRuntimeModule } from "openclaw/plugin-sdk/lazy-runtime";
6
6
  import { createApprovalReactionTargetStore, listApprovalReactionBindings, resolveTypedApprovalReactionTarget } from "openclaw/plugin-sdk/approval-reaction-runtime";
7
7
  //#region extensions/whatsapp/src/approval-reactions.ts
@@ -113,7 +113,7 @@ function readTypedApprovalDeliveryBinding(params) {
113
113
  return metadata;
114
114
  }
115
115
  function visibleApprovalBindingMatches(text, binding) {
116
- const lines = (text ?? "").split(/\r?\n/);
116
+ const lines = (text ?? "").split(/\r?\n/).map((line) => line.replace(/\*\*/g, ""));
117
117
  const kindMatches = lines.map((line) => line.match(APPROVAL_KIND_LINE_RE)).filter((match) => Boolean(match));
118
118
  const idMatches = lines.map((line) => line.match(APPROVAL_ID_LINE_RE)).filter((match) => Boolean(match));
119
119
  const visibleKind = kindMatches[0]?.[1]?.toLowerCase();
@@ -1,7 +1,7 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-D7D4PA-g.js";
2
2
  import { a as readWebCredsJsonRawSync, c as statWebCredsFileSync, i as readWebCredsJsonRaw, o as resolveWebCredsBackupPath, r as hasWebCredsSync, s as resolveWebCredsPath, t as assertWebCredsPathRegularFileOrMissing } from "./creds-files-B1kSWtBg.js";
3
- import { n as resolveUserPath } from "./text-runtime-CU_IlbK5.js";
4
- import { c as resolveComparableIdentity } from "./identity-BM4_wZeM.js";
3
+ import { n as resolveUserPath } from "./text-runtime-CaKLhowd.js";
4
+ import { c as resolveComparableIdentity } from "./identity-CPrT5aEU.js";
5
5
  import path from "node:path";
6
6
  import { resolveOAuthDir as resolveOAuthDir$1 } from "openclaw/plugin-sdk/state-paths";
7
7
  import { replaceFileAtomic } from "openclaw/plugin-sdk/security-runtime";
@@ -1,6 +1,6 @@
1
- import { a as resolveWhatsAppAccount } from "./accounts-CxPuEFi-.js";
1
+ import { a as resolveWhatsAppAccount } from "./accounts-CSqLvCY5.js";
2
2
  import { r as getWhatsAppConnectionController } from "./connection-controller-runtime-context-DG0tuYuw.js";
3
- import { s as resolveJidToE164 } from "./targets-runtime-CKFrhoX4.js";
3
+ import { s as resolveJidToE164 } from "./targets-runtime-TMk0lGuy.js";
4
4
  import { createActionGate, stringEnum } from "openclaw/plugin-sdk/channel-actions";
5
5
  import path from "node:path";
6
6
  import { resolveOAuthDir } from "openclaw/plugin-sdk/state-paths";
@@ -1,21 +1,21 @@
1
- import { a as resolveWhatsAppAccount } from "./accounts-CxPuEFi-.js";
1
+ import { a as resolveWhatsAppAccount } from "./accounts-CSqLvCY5.js";
2
2
  import { r as resolveDefaultWhatsAppAccountId, t as listAccountIds } from "./account-ids-CB5SOWjc.js";
3
- import { c as normalizeWhatsAppTarget, i as looksLikeWhatsAppTargetId, n as isWhatsAppNewsletterJid, o as normalizeWhatsAppAllowFromEntry, s as normalizeWhatsAppMessagingTarget, t as isWhatsAppGroupJid } from "./normalize-target-DSZnHkKF.js";
4
- import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-BR97fAbB.js";
5
- import { a as normalizeWhatsAppOutboundPayload, i as sendTypingWhatsApp, n as sendPollWhatsApp, o as normalizeWhatsAppPayloadText, s as normalizeWhatsAppPayloadTextPreservingIndentation, t as sendMessageWhatsApp, u as resolveWhatsAppReactionLevel } from "./send-DhJVN30g.js";
3
+ import { c as normalizeWhatsAppTarget, i as looksLikeWhatsAppTargetId, n as isWhatsAppNewsletterJid, o as normalizeWhatsAppAllowFromEntry, s as normalizeWhatsAppMessagingTarget, t as isWhatsAppGroupJid } from "./normalize-target-CugRyONv.js";
4
+ import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-1GqbT1uX.js";
5
+ import { a as normalizeWhatsAppOutboundPayload, i as sendTypingWhatsApp, n as sendPollWhatsApp, o as normalizeWhatsAppPayloadText, s as normalizeWhatsAppPayloadTextPreservingIndentation, t as sendMessageWhatsApp, u as resolveWhatsAppReactionLevel } from "./send-BTXJAyK4.js";
6
6
  import { i as getWhatsAppRuntime } from "./runtime-BLlToOi6.js";
7
- import "./normalize-C-Z16y7Q.js";
8
- import { c as toWhatsappJid } from "./targets-runtime-CKFrhoX4.js";
9
- import "./text-runtime-CU_IlbK5.js";
7
+ import "./normalize-C7Hkc_vE.js";
8
+ import { c as toWhatsappJid } from "./targets-runtime-TMk0lGuy.js";
9
+ import "./text-runtime-CaKLhowd.js";
10
10
  import { t as createWhatsAppLoginTool } from "./agent-tools-login-DfyToBpG.js";
11
- import { c as getWhatsAppApprovalApprovers, l as whatsappApprovalAuth, s as lookupInboundMessageMetaForTarget, t as resolveWhatsAppGroupSessionKey } from "./group-session-key-DJSdYfnb.js";
12
- import { a as resolveWhatsAppGroupRequireMention, c as isWhatsAppAuthConfigured, i as whatsappSetupContract, l as loadWhatsAppChannelRuntime, n as whatsappSetupWizardProxy, o as resolveWhatsAppGroupToolPolicy, r as whatsappSetupAdapter, s as formatWhatsAppConfigAllowFromEntries, t as createWhatsAppPluginBase } from "./shared-CuqHFnKd.js";
11
+ import { c as getWhatsAppApprovalApprovers, l as whatsappApprovalAuth, s as lookupInboundMessageMetaForTarget, t as resolveWhatsAppGroupSessionKey } from "./group-session-key-DVMZlO3x.js";
12
+ import { a as resolveWhatsAppGroupRequireMention, c as isWhatsAppAuthConfigured, i as whatsappSetupContract, l as loadWhatsAppChannelRuntime, n as whatsappSetupWizardProxy, o as resolveWhatsAppGroupToolPolicy, r as whatsappSetupAdapter, s as formatWhatsAppConfigAllowFromEntries, t as createWhatsAppPluginBase } from "./shared-UcAwtJaq.js";
13
13
  import { t as whatsappCommandPolicy } from "./command-policy-BIOSHySD.js";
14
- import { f as readWebAuthExistsForDecision, n as WHATSAPP_AUTH_UNSTABLE_CODE } from "./auth-store-DirYMTbo.js";
14
+ import { f as readWebAuthExistsForDecision, n as WHATSAPP_AUTH_UNSTABLE_CODE } from "./auth-store-DcEpIOmE.js";
15
15
  import { t as detectWhatsAppLegacyStateMigrations } from "./state-migrations-CAMTrs2U.js";
16
16
  import { createActionGate as createActionGate$1 } from "openclaw/plugin-sdk/channel-actions";
17
17
  import { normalizeOptionalAccountId } from "openclaw/plugin-sdk/account-core";
18
- import { normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
18
+ import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
19
19
  import { asString, collectIssuesForEnabledAccounts, createAsyncComputedAccountStatusAdapter, createDefaultChannelRuntimeState, isRecord as isRecord$1, readAccountStatusSnapshot } from "openclaw/plugin-sdk/status-helpers";
20
20
  import { formatCliCommand } from "openclaw/plugin-sdk/cli-runtime";
21
21
  import { buildChannelOutboundSessionRoute } from "openclaw/plugin-sdk/core";
@@ -28,45 +28,23 @@ import { createChatChannelPlugin } from "openclaw/plugin-sdk/channel-core";
28
28
  import { createLazyRuntimeModule } from "openclaw/plugin-sdk/lazy-runtime";
29
29
  import { createChannelApprovalCapability } from "openclaw/plugin-sdk/approval-delivery-runtime";
30
30
  import { createLazyChannelApprovalNativeRuntimeAdapter } from "openclaw/plugin-sdk/approval-handler-adapter-runtime";
31
- import { createChannelApproverDmTargetResolver, createChannelNativeOriginTargetResolver, createNativeApprovalChannelRouteGates, createNativeApprovalForwardingFallbackSuppressor } from "openclaw/plugin-sdk/approval-native-runtime";
31
+ import { createChannelApproverDmTargetResolver, createChannelNativeOriginTargetResolver, createNativeApprovalChannelRouteGates, createNativeApprovalForwardingFallbackSuppressor, createNativeApprovalMessagingTargetResolvers } from "openclaw/plugin-sdk/approval-native-runtime";
32
32
  import { buildApprovalReactionPromptPayloadForRequest } from "openclaw/plugin-sdk/approval-reaction-runtime";
33
33
  import { buildTypedApprovalPresentation } from "openclaw/plugin-sdk/approval-reply-runtime";
34
34
  import { questionGatewayRuntime } from "openclaw/plugin-sdk/question-gateway-runtime";
35
35
  import { attachChannelToResult, createAttachedChannelResultAdapter } from "openclaw/plugin-sdk/channel-send-result";
36
36
  //#region extensions/whatsapp/src/approval-native.ts
37
37
  const DEFAULT_APPROVAL_FORWARDING_MODE = "session";
38
+ const { normalizeForwardTarget: normalizeWhatsAppForwardTarget, normalizeTarget: normalizeWhatsAppApprovalTarget, resolveSessionTarget: resolveSessionWhatsAppOriginTarget, resolveTurnSourceTarget: resolveTurnSourceWhatsAppOriginTarget } = createNativeApprovalMessagingTargetResolvers({
39
+ channel: "whatsapp",
40
+ normalizeTo: normalizeWhatsAppMessagingTarget
41
+ });
38
42
  function isWhatsAppApprovalTransportEnabled(params) {
39
43
  return resolveWhatsAppAccount({
40
44
  cfg: params.cfg,
41
45
  accountId: params.accountId
42
46
  }).enabled;
43
47
  }
44
- function normalizeWhatsAppForwardTarget(target) {
45
- if (normalizeLowercaseStringOrEmpty(target.channel) !== "whatsapp") return null;
46
- const to = normalizeWhatsAppMessagingTarget(target.to);
47
- if (!to) return null;
48
- return {
49
- to,
50
- accountId: normalizeOptionalString(target.accountId),
51
- threadId: target.threadId ?? null
52
- };
53
- }
54
- function resolveTurnSourceWhatsAppOriginTarget(request) {
55
- if (normalizeLowercaseStringOrEmpty(request.request.turnSourceChannel) !== "whatsapp") return null;
56
- const to = normalizeWhatsAppMessagingTarget(request.request.turnSourceTo ?? "");
57
- if (!to) return null;
58
- return {
59
- to,
60
- accountId: normalizeOptionalString(request.request.turnSourceAccountId)
61
- };
62
- }
63
- function resolveSessionWhatsAppOriginTarget(sessionTarget) {
64
- const to = normalizeWhatsAppMessagingTarget(sessionTarget.to);
65
- return to ? {
66
- to,
67
- accountId: normalizeOptionalString(sessionTarget.accountId)
68
- } : null;
69
- }
70
48
  const { canApprovalPotentiallyRouteToChannel: canApprovalPotentiallyRouteToWhatsApp, canAnyApprovalPotentiallyRouteToChannel: canAnyApprovalPotentiallyRouteToWhatsApp, isSessionApprovalEligible: isWhatsAppSessionApprovalEligible, isExplicitTargetEligible: isWhatsAppExplicitTargetEligible, shouldHandleApprovalRequest: shouldHandleWhatsAppApprovalRequest } = createNativeApprovalChannelRouteGates({
71
49
  channel: "whatsapp",
72
50
  defaultForwardingMode: DEFAULT_APPROVAL_FORWARDING_MODE,
@@ -81,13 +59,7 @@ const resolveWhatsAppOriginTargetBase = createChannelNativeOriginTargetResolver(
81
59
  shouldHandleRequest: shouldHandleWhatsAppApprovalRequest,
82
60
  resolveTurnSourceTarget: resolveTurnSourceWhatsAppOriginTarget,
83
61
  resolveSessionTarget: resolveSessionWhatsAppOriginTarget,
84
- normalizeTarget: (target) => {
85
- const to = normalizeWhatsAppMessagingTarget(target.to);
86
- return to ? {
87
- ...target,
88
- to
89
- } : null;
90
- }
62
+ normalizeTarget: normalizeWhatsAppApprovalTarget
91
63
  });
92
64
  function resolveWhatsAppOriginTarget(params) {
93
65
  const target = resolveWhatsAppOriginTargetBase(params);
@@ -225,7 +197,7 @@ const whatsappApprovalCapability = createChannelApprovalCapability({
225
197
  approvalKind,
226
198
  request
227
199
  }),
228
- load: async () => (await import("./approval-handler.runtime-C4ddB7Kc.js")).whatsappApprovalNativeRuntime
200
+ load: async () => (await import("./approval-handler.runtime-CmtqgLSQ.js")).whatsappApprovalNativeRuntime
229
201
  })
230
202
  });
231
203
  //#endregion
@@ -392,8 +364,8 @@ function createWhatsAppOutboundBase({ chunker, sendMessageWhatsApp, sendPollWhat
392
364
  }
393
365
  //#endregion
394
366
  //#region extensions/whatsapp/src/channel-outbound.ts
395
- const loadWhatsAppApprovalReactionsModule = createLazyRuntimeModule(() => import("./approval-reactions-P2HXjmln.js").then((n) => n.t));
396
- const loadWhatsAppQuestionReactionsModule = createLazyRuntimeModule(() => import("./question-reactions-CaOrSYzU.js").then((n) => n.n));
367
+ const loadWhatsAppApprovalReactionsModule = createLazyRuntimeModule(() => import("./approval-reactions-Cu66aYdq.js").then((n) => n.t));
368
+ const loadWhatsAppQuestionReactionsModule = createLazyRuntimeModule(() => import("./question-reactions-CRsnyoMK.js").then((n) => n.n));
397
369
  function normalizeWhatsAppChannelPayloadText(text) {
398
370
  return normalizeWhatsAppPayloadTextPreservingIndentation(text);
399
371
  }
@@ -474,15 +446,6 @@ const whatsappMessageAdapter = defineChannelMessageAdapter({
474
446
  });
475
447
  //#endregion
476
448
  //#region extensions/whatsapp/src/group-intro.ts
477
- const WHATSAPP_GROUP_INTRO_HINT = "WhatsApp IDs: SenderId is the participant JID (group participant id).";
478
- /**
479
- * @deprecated Core never consumed the group intro hint adapter; this export
480
- * remains only for the plugin API surface and is removed after the next
481
- * release train together with ChannelGroupAdapter.resolveGroupIntroHint.
482
- */
483
- function resolveWhatsAppGroupIntroHint() {
484
- return WHATSAPP_GROUP_INTRO_HINT;
485
- }
486
449
  function resolveWhatsAppMentionStripRegexes(ctx) {
487
450
  const selfE164 = (ctx.To ?? "").replace(/^whatsapp:/i, "");
488
451
  if (!selfE164) return [];
@@ -666,8 +629,8 @@ function collectWhatsAppStatusIssues(accounts) {
666
629
  }
667
630
  //#endregion
668
631
  //#region extensions/whatsapp/src/channel.ts
669
- const loadWhatsAppDirectoryConfig = createLazyRuntimeModule(() => import("./directory-config-BTbJkV1W.js").then((n) => n.t));
670
- const loadWhatsAppChannelReactAction = createLazyRuntimeModule(() => import("./channel-react-action-CBW-PA8q.js"));
632
+ const loadWhatsAppDirectoryConfig = createLazyRuntimeModule(() => import("./directory-config-DalGrfGN.js").then((n) => n.t));
633
+ const loadWhatsAppChannelReactAction = createLazyRuntimeModule(() => import("./channel-react-action-DUIkjl6w.js"));
671
634
  function resolveWhatsAppTargetInfo(raw) {
672
635
  const normalized = normalizeWhatsAppTarget(raw);
673
636
  if (!normalized) return null;
@@ -945,4 +908,4 @@ const whatsappPlugin = createChatChannelPlugin({
945
908
  }
946
909
  });
947
910
  //#endregion
948
- export { resolveWhatsAppGroupIntroHint as n, WHATSAPP_LEGACY_OUTBOUND_SEND_DEP_KEYS as r, whatsappPlugin as t };
911
+ export { WHATSAPP_LEGACY_OUTBOUND_SEND_DEP_KEYS as n, whatsappPlugin as t };
@@ -1,2 +1,2 @@
1
- import { t as WhatsAppChannelConfigSchema } from "./config-schema-C6IeKIC0.js";
1
+ import { t as WhatsAppChannelConfigSchema } from "./config-schema-DARep0Nn.js";
2
2
  export { WhatsAppChannelConfigSchema };
@@ -1,2 +1,2 @@
1
- import { t as whatsappPlugin } from "./channel-B9xjrOGG.js";
1
+ import { t as whatsappPlugin } from "./channel-DcWBc3Hb.js";
2
2
  export { whatsappPlugin };
@@ -1,8 +1,8 @@
1
- import { a as resolveWhatsAppAccount, s as resolveWhatsAppMediaMaxBytes } from "./accounts-CxPuEFi-.js";
2
- import { c as normalizeWhatsAppTarget, t as isWhatsAppGroupJid } from "./normalize-target-DSZnHkKF.js";
3
- import { r as resolveAuthorizedWhatsAppOutboundTarget, t as handleWhatsAppAction } from "./action-runtime-CHU7xb6o.js";
4
- import { t as sendMessageWhatsApp } from "./send-DhJVN30g.js";
5
- import "./normalize-C-Z16y7Q.js";
1
+ import { a as resolveWhatsAppAccount, s as resolveWhatsAppMediaMaxBytes } from "./accounts-CSqLvCY5.js";
2
+ import { c as normalizeWhatsAppTarget, t as isWhatsAppGroupJid } from "./normalize-target-CugRyONv.js";
3
+ import { r as resolveAuthorizedWhatsAppOutboundTarget, t as handleWhatsAppAction } from "./action-runtime-B2bNDUwE.js";
4
+ import { t as sendMessageWhatsApp } from "./send-BTXJAyK4.js";
5
+ import "./normalize-C7Hkc_vE.js";
6
6
  import { jsonResult, readStringOrNumberParam, readStringParam as readStringParam$1, resolveReactionMessageId } from "openclaw/plugin-sdk/channel-actions";
7
7
  import { canonicalizeBase64, estimateBase64DecodedBytes } from "openclaw/plugin-sdk/media-runtime";
8
8
  import { readBooleanParam } from "openclaw/plugin-sdk/boolean-param";
@@ -1,9 +1,9 @@
1
1
  import { startWebLoginWithQr as startWebLoginWithQr$1, waitForWebLogin as waitForWebLogin$1 } from "./login-qr-runtime.js";
2
- import { c as logoutWeb$1, d as readWebAuthExistsBestEffort$1, f as readWebAuthExistsForDecision$1, g as readWebSelfId$1, h as readWebAuthState$1, m as readWebAuthSnapshotBestEffort$1, o as getWebAuthAgeMs$1, p as readWebAuthSnapshot$1, s as logWebSelfId$1, x as webAuthExists$1 } from "./auth-store-DirYMTbo.js";
2
+ import { c as logoutWeb$1, d as readWebAuthExistsBestEffort$1, f as readWebAuthExistsForDecision$1, g as readWebSelfId$1, h as readWebAuthState$1, m as readWebAuthSnapshotBestEffort$1, o as getWebAuthAgeMs$1, p as readWebAuthSnapshot$1, s as logWebSelfId$1, x as webAuthExists$1 } from "./auth-store-DcEpIOmE.js";
3
3
  import { t as getActiveWebListener$1 } from "./active-listener-BEjWsCNM.js";
4
- import { t as monitorWebChannel$1 } from "./monitor-CBVNJ2lb.js";
5
- import { t as loginWeb$1 } from "./login-BKUm7KSk.js";
6
- import { whatsappSetupWizard as whatsappSetupWizard$1 } from "./setup-surface-Kv3mPki2.js";
4
+ import { t as monitorWebChannel$1 } from "./monitor-B7phZF9w.js";
5
+ import { t as loginWeb$1 } from "./login-CvY2Dhch.js";
6
+ import { whatsappSetupWizard as whatsappSetupWizard$1 } from "./setup-surface-BjvUbR6M.js";
7
7
  //#region extensions/whatsapp/src/channel.runtime.ts
8
8
  function getActiveWebListener(...args) {
9
9
  return getActiveWebListener$1(...args);
@@ -1,4 +1,4 @@
1
- import { a as resolveWhatsAppGroupRequireMention, c as isWhatsAppAuthConfigured, i as whatsappSetupContract, n as whatsappSetupWizardProxy, o as resolveWhatsAppGroupToolPolicy, r as whatsappSetupAdapter, t as createWhatsAppPluginBase } from "./shared-CuqHFnKd.js";
1
+ import { a as resolveWhatsAppGroupRequireMention, c as isWhatsAppAuthConfigured, i as whatsappSetupContract, n as whatsappSetupWizardProxy, o as resolveWhatsAppGroupToolPolicy, r as whatsappSetupAdapter, t as createWhatsAppPluginBase } from "./shared-UcAwtJaq.js";
2
2
  import { t as detectWhatsAppLegacyStateMigrations } from "./state-migrations-CAMTrs2U.js";
3
3
  //#region extensions/whatsapp/src/channel.setup.ts
4
4
  const whatsappSetupPlugin = {
@@ -6,7 +6,7 @@ import { WhatsAppConfigSchema } from "openclaw/plugin-sdk/bundled-channel-config
6
6
  const WhatsAppChannelConfigSchema = buildChannelConfigSchema(WhatsAppConfigSchema, { uiHints: {
7
7
  "": {
8
8
  label: "WhatsApp",
9
- help: "WhatsApp channel provider configuration for access policy and message batching behavior. Use this section to tune responsiveness and direct-message routing safety for WhatsApp chats."
9
+ help: "WhatsApp channel provider configuration for access policy and direct-message routing safety."
10
10
  },
11
11
  ...createChannelConfigUiHints({
12
12
  channelLabel: "WhatsApp",
@@ -22,10 +22,6 @@ const WhatsAppChannelConfigSchema = buildChannelConfigSchema(WhatsAppConfigSchem
22
22
  label: "WhatsApp Self-Phone Mode",
23
23
  help: "Same-phone setup (bot uses your personal WhatsApp number)."
24
24
  },
25
- debounceMs: {
26
- label: "WhatsApp Message Debounce (ms)",
27
- help: "Debounce window (ms) for batching rapid consecutive messages from the same sender (0 to disable)."
28
- },
29
25
  ...createChannelConfigUiHints({
30
26
  channelLabel: "WhatsApp",
31
27
  configWrites: true
@@ -1,8 +1,8 @@
1
1
  import { r as getWhatsAppChannelRuntime } from "./runtime-BLlToOi6.js";
2
2
  import { n as WHATSAPP_CONNECTION_OWNER_PENDING_CAPABILITY, t as WHATSAPP_CONNECTION_CONTROLLER_CAPABILITY } from "./connection-controller-runtime-context-DG0tuYuw.js";
3
- import { c as logoutWeb, f as readWebAuthExistsForDecision, r as WhatsAppAuthUnstableError, w as waitForCredsSaveQueueWithTimeout } from "./auth-store-DirYMTbo.js";
4
- import { c as resolveComparableIdentity } from "./identity-BM4_wZeM.js";
5
- import { a as waitForWaConnection, m as acquireWhatsAppGatewayConnectionOwner, o as DEFAULT_WHATSAPP_SOCKET_TIMING, r as createWaSocket, t as closeWhatsAppSocketAndWait } from "./socket-close-BoSHhQNJ.js";
3
+ import { c as logoutWeb, f as readWebAuthExistsForDecision, r as WhatsAppAuthUnstableError, w as waitForCredsSaveQueueWithTimeout } from "./auth-store-DcEpIOmE.js";
4
+ import { c as resolveComparableIdentity } from "./identity-CPrT5aEU.js";
5
+ import { a as waitForWaConnection, m as acquireWhatsAppGatewayConnectionOwner, o as DEFAULT_WHATSAPP_SOCKET_TIMING, r as createWaSocket, t as closeWhatsAppSocketAndWait } from "./socket-close-DridEuzz.js";
6
6
  import { n as getStatusCode, t as formatError } from "./session-errors-JuazczrA.js";
7
7
  import { computeBackoff, info, sleepWithAbort } from "openclaw/plugin-sdk/runtime-env";
8
8
  import { registerChannelRuntimeContext } from "openclaw/plugin-sdk/channel-runtime-context";
@@ -1,8 +1,8 @@
1
- import { c as normalizeWhatsAppTarget$1, t as isWhatsAppGroupJid$1 } from "./normalize-target-DSZnHkKF.js";
1
+ import { c as normalizeWhatsAppTarget$1, t as isWhatsAppGroupJid$1 } from "./normalize-target-CugRyONv.js";
2
2
  import { t as whatsappCommandPolicy$1 } from "./command-policy-BIOSHySD.js";
3
3
  import { t as resolveLegacyGroupSessionKey$1 } from "./group-session-contract-DDnZSsJ1.js";
4
4
  import { r as isLegacyGroupSessionKey$1, t as canonicalizeLegacySessionKey$1 } from "./session-contract-DMTm6Q_L.js";
5
- import { a as resolveWhatsAppRuntimeGroupPolicy$1, n as testing } from "./access-control-CRz_v6bR.js";
5
+ import { a as resolveWhatsAppRuntimeGroupPolicy$1, n as testing } from "./access-control-pZcxTmd5.js";
6
6
  //#region extensions/whatsapp/contract-api.ts
7
7
  const canonicalizeLegacySessionKey = canonicalizeLegacySessionKey$1;
8
8
  const isLegacyGroupSessionKey = isLegacyGroupSessionKey$1;
@@ -1,11 +1,11 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-D7D4PA-g.js";
2
- import { c as resolveMergedWhatsAppAccountConfig, o as resolveWhatsAppAuthDir } from "./accounts-CxPuEFi-.js";
3
- import { c as normalizeWhatsAppTarget, t as isWhatsAppGroupJid } from "./normalize-target-DSZnHkKF.js";
2
+ import { c as resolveMergedWhatsAppAccountConfig, o as resolveWhatsAppAuthDir } from "./accounts-CSqLvCY5.js";
3
+ import { c as normalizeWhatsAppTarget, t as isWhatsAppGroupJid } from "./normalize-target-CugRyONv.js";
4
4
  import { i as hasPendingWhatsAppConnectionOwner, r as getWhatsAppConnectionController } from "./connection-controller-runtime-context-DG0tuYuw.js";
5
- import "./normalize-C-Z16y7Q.js";
6
- import { f as readWebAuthExistsForDecision, w as waitForCredsSaveQueueWithTimeout } from "./auth-store-DirYMTbo.js";
5
+ import "./normalize-C7Hkc_vE.js";
6
+ import { f as readWebAuthExistsForDecision, w as waitForCredsSaveQueueWithTimeout } from "./auth-store-DcEpIOmE.js";
7
7
  import { n as resolveWebAccountId } from "./active-listener-BEjWsCNM.js";
8
- import { a as waitForWaConnection, h as acquireWhatsAppStandaloneConnectionOwner, n as createWaDirectorySocket, p as WhatsAppConnectionOwnerBusyError, t as closeWhatsAppSocketAndWait } from "./socket-close-BoSHhQNJ.js";
8
+ import { a as waitForWaConnection, h as acquireWhatsAppStandaloneConnectionOwner, n as createWaDirectorySocket, p as WhatsAppConnectionOwnerBusyError, t as closeWhatsAppSocketAndWait } from "./socket-close-DridEuzz.js";
9
9
  import { listResolvedDirectoryGroupEntriesFromMapKeys, listResolvedDirectoryUserEntriesFromAllowFrom } from "openclaw/plugin-sdk/directory-config-runtime";
10
10
  //#region extensions/whatsapp/src/directory-config.ts
11
11
  var directory_config_exports = /* @__PURE__ */ __exportAll({
@@ -1,4 +1,4 @@
1
- import { n as listWhatsAppDirectoryGroupsFromConfig, r as listWhatsAppDirectoryPeersFromConfig } from "./directory-config-BTbJkV1W.js";
1
+ import { n as listWhatsAppDirectoryGroupsFromConfig, r as listWhatsAppDirectoryPeersFromConfig } from "./directory-config-DalGrfGN.js";
2
2
  //#region extensions/whatsapp/directory-contract-api.ts
3
3
  const whatsappDirectoryContractPlugin = {
4
4
  id: "whatsapp",
@@ -1,8 +1,8 @@
1
- import { a as resolveWhatsAppAccount } from "./accounts-CxPuEFi-.js";
2
- import { c as normalizeWhatsAppTarget } from "./normalize-target-DSZnHkKF.js";
3
- import "./normalize-C-Z16y7Q.js";
4
- import { r as jidToE164 } from "./targets-runtime-CKFrhoX4.js";
5
- import "./text-runtime-CU_IlbK5.js";
1
+ import { a as resolveWhatsAppAccount } from "./accounts-CSqLvCY5.js";
2
+ import { c as normalizeWhatsAppTarget } from "./normalize-target-CugRyONv.js";
3
+ import "./normalize-C7Hkc_vE.js";
4
+ import { r as jidToE164 } from "./targets-runtime-TMk0lGuy.js";
5
+ import "./text-runtime-CaKLhowd.js";
6
6
  import { createChannelApprovalAuth } from "openclaw/plugin-sdk/approval-auth-runtime";
7
7
  import { formatMediaPlaceholderText } from "openclaw/plugin-sdk/channel-inbound";
8
8
  import { DEFAULT_ACCOUNT_ID, normalizeAccountId, resolveThreadSessionKeys } from "openclaw/plugin-sdk/routing";
@@ -1,5 +1,5 @@
1
- import { r as jidToE164 } from "./targets-runtime-CKFrhoX4.js";
2
- import { t as normalizeE164 } from "./text-runtime-CU_IlbK5.js";
1
+ import { r as jidToE164 } from "./targets-runtime-TMk0lGuy.js";
2
+ import { t as normalizeE164 } from "./text-runtime-CaKLhowd.js";
3
3
  //#region extensions/whatsapp/src/identity.ts
4
4
  const WHATSAPP_LID_RE = /@(lid|hosted\.lid)$/i;
5
5
  function normalizeDeviceScopedJid(jid) {
@@ -1,5 +1,5 @@
1
1
  import { t as createWhatsAppLoginTool } from "./agent-tools-login-DfyToBpG.js";
2
- import { c as logoutWeb, g as readWebSelfId, l as pickWebChannel, o as getWebAuthAgeMs, s as logWebSelfId, t as WA_WEB_AUTH_DIR, x as webAuthExists, y as resolveDefaultWebAuthDir } from "./auth-store-DirYMTbo.js";
2
+ import { c as logoutWeb, g as readWebSelfId, l as pickWebChannel, o as getWebAuthAgeMs, s as logWebSelfId, t as WA_WEB_AUTH_DIR, x as webAuthExists, y as resolveDefaultWebAuthDir } from "./auth-store-DcEpIOmE.js";
3
3
  import { t as getActiveWebListener } from "./active-listener-BEjWsCNM.js";
4
4
  import { n as getStatusCode, t as formatError } from "./session-errors-JuazczrA.js";
5
5
  export { WA_WEB_AUTH_DIR, createWhatsAppLoginTool, formatError, getActiveWebListener, getStatusCode, getWebAuthAgeMs, logWebSelfId, logoutWeb, pickWebChannel, readWebSelfId, resolveDefaultWebAuthDir, webAuthExists };
@@ -1,8 +1,8 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-D7D4PA-g.js";
2
- import { a as resolveWhatsAppAccount } from "./accounts-CxPuEFi-.js";
3
- import { b as restoreCredsFromBackupIfNeeded } from "./auth-store-DirYMTbo.js";
4
- import { f as renderQrTerminal, r as createWaSocket, u as resolveWhatsAppSocketTiming } from "./socket-close-BoSHhQNJ.js";
5
- import { a as closeWaSocketSoon, o as waitForWhatsAppLoginResult } from "./connection-controller-BVRExqrB.js";
2
+ import { a as resolveWhatsAppAccount } from "./accounts-CSqLvCY5.js";
3
+ import { b as restoreCredsFromBackupIfNeeded } from "./auth-store-DcEpIOmE.js";
4
+ import { f as renderQrTerminal, r as createWaSocket, u as resolveWhatsAppSocketTiming } from "./socket-close-DridEuzz.js";
5
+ import { a as closeWaSocketSoon, o as waitForWhatsAppLoginResult } from "./connection-controller-BOB2MVKY.js";
6
6
  import { formatCliCommand } from "openclaw/plugin-sdk/cli-runtime";
7
7
  import { logInfo } from "openclaw/plugin-sdk/logging-core";
8
8
  import { danger, defaultRuntime, success } from "openclaw/plugin-sdk/runtime-env";
@@ -1,9 +1,9 @@
1
- import { a as resolveWhatsAppAccount } from "./accounts-CxPuEFi-.js";
2
- import { c as logoutWeb, f as readWebAuthExistsForDecision, g as readWebSelfId, n as WHATSAPP_AUTH_UNSTABLE_CODE } from "./auth-store-DirYMTbo.js";
1
+ import { a as resolveWhatsAppAccount } from "./accounts-CSqLvCY5.js";
2
+ import { c as logoutWeb, f as readWebAuthExistsForDecision, g as readWebSelfId, n as WHATSAPP_AUTH_UNSTABLE_CODE } from "./auth-store-DcEpIOmE.js";
3
3
  import { t as getActiveWebListener } from "./active-listener-BEjWsCNM.js";
4
- import { r as createWaSocket, u as resolveWhatsAppSocketTiming } from "./socket-close-BoSHhQNJ.js";
4
+ import { r as createWaSocket, u as resolveWhatsAppSocketTiming } from "./socket-close-DridEuzz.js";
5
5
  import { t as formatError } from "./session-errors-JuazczrA.js";
6
- import { i as closeWaSocket, o as waitForWhatsAppLoginResult, t as WHATSAPP_LOGGED_OUT_QR_MESSAGE } from "./connection-controller-BVRExqrB.js";
6
+ import { i as closeWaSocket, o as waitForWhatsAppLoginResult, t as WHATSAPP_LOGGED_OUT_QR_MESSAGE } from "./connection-controller-BOB2MVKY.js";
7
7
  import { logInfo } from "openclaw/plugin-sdk/logging-core";
8
8
  import { danger, defaultRuntime, info, success } from "openclaw/plugin-sdk/runtime-env";
9
9
  import { renderQrPngDataUrl } from "openclaw/plugin-sdk/media-runtime";
@@ -1,6 +1,6 @@
1
1
  import { createLazyRuntimeModule } from "openclaw/plugin-sdk/lazy-runtime";
2
2
  //#region extensions/whatsapp/login-qr-runtime.ts
3
- const loadLoginQrModule = createLazyRuntimeModule(() => import("./login-qr-DagJvMbg.js"));
3
+ const loadLoginQrModule = createLazyRuntimeModule(() => import("./login-qr-Bncpb6js.js"));
4
4
  async function startWebLoginWithQr(...args) {
5
5
  const { startWebLoginWithQr: startWebLoginWithQrLocal } = await loadLoginQrModule();
6
6
  return await startWebLoginWithQrLocal(...args);