@openclaw/imessage 2026.10.1 → 2026.10.5-beta.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.
Files changed (30) hide show
  1. package/dist/.setup/{accounts-evTpvJMv.mjs → accounts-DacCvDBt.mjs} +23 -45
  2. package/dist/.setup/{actions-DJqbUmbN.mjs → actions-Hxh12myO.mjs} +54 -101
  3. package/dist/.setup/{actions.runtime-DL5i-Y4J.mjs → actions.runtime-DOIX6Fkf.mjs} +29 -37
  4. package/dist/.setup/{api-oq_MryN7.mjs → api-BV8qHfLl.mjs} +7 -7
  5. package/dist/.setup/{api-SAVMfMoY.mjs → api-DC1yHVGj.mjs} +8 -8
  6. package/dist/.setup/{approval-handler.runtime-Bj2NGNXF.mjs → approval-handler.runtime-Dc3KzakG.mjs} +38 -66
  7. package/dist/.setup/{approval-reactions-L9Ul7PAu.mjs → approval-reactions-JvzJCJ4a.mjs} +26 -33
  8. package/dist/.setup/{channel-CL73qdMG.mjs → channel-9TWBUDkP.mjs} +14 -16
  9. package/dist/.setup/{channel.runtime-DY7JJ0_9.mjs → channel.runtime-DrLDEY4R.mjs} +198 -362
  10. package/dist/.setup/{client-12apu4Ip.mjs → client-HixFQQWY.mjs} +34 -38
  11. package/dist/.setup/{media-contract-DjQGZlfl.mjs → media-contract-BwWs5PM7.mjs} +1 -1
  12. package/dist/.setup/{message-tool-api-CqfRxLlT.mjs → message-tool-api-B5NfPnFL.mjs} +2 -2
  13. package/dist/.setup/{question-reactions-DJV-TnA8.mjs → question-reactions-9jrqVZgE.mjs} +20 -25
  14. package/dist/.setup/{reaction-context-By7kUMBC.mjs → reaction-context-CRXpeYAr.mjs} +1 -1
  15. package/dist/.setup/{remote-file-BU7pA-Zi.mjs → remote-file-Dq5Asi_F.mjs} +10 -16
  16. package/dist/.setup/{sanitize-outbound-C0x4BPky.mjs → sanitize-outbound-DpdQERYJ.mjs} +27 -62
  17. package/dist/.setup/{send-pkYwL6Rt.mjs → send-BZZzMbdi.mjs} +186 -251
  18. package/dist/.setup/{setup-core-DqOBe-n0.mjs → setup-core-CaRGbZOL.mjs} +15 -46
  19. package/dist/.setup/{setup-surface-zKhIinwY.mjs → setup-surface-BMWS7VuY.mjs} +2 -2
  20. package/dist/.setup/{targets-BicBiYsM.mjs → targets-B4oU7n-v.mjs} +47 -69
  21. package/dist/api.js +7 -7
  22. package/dist/channel-plugin-api.js +1 -1
  23. package/dist/contract-api.js +1 -1
  24. package/dist/doctor-contract-api.js +21 -45
  25. package/dist/media-contract-api.js +1 -1
  26. package/dist/message-tool-api.js +1 -1
  27. package/dist/runtime-api.js +1 -1
  28. package/dist/setup-entry.js +1 -1
  29. package/dist/src/chat-db.worker.js +1 -1
  30. package/package.json +4 -4
@@ -1,11 +1,11 @@
1
- import { c as parseIMessageTarget, u as normalizeIMessageMessagingTarget } from "./targets-BicBiYsM.mjs";
2
- import { o as resolveIMessageAccount } from "./accounts-evTpvJMv.mjs";
3
- import { n as getCachedIMessagePrivateApiStatus } from "./message-tool-api-CqfRxLlT.mjs";
4
- import { a as normalizeIMessageMessageId } from "./actions-DJqbUmbN.mjs";
5
- import { d as getIMessageApprovalApprovers } from "./channel-CL73qdMG.mjs";
6
- import { i as extractMarkdownFormatRuns } from "./sanitize-outbound-C0x4BPky.mjs";
7
- import { a as unregisterIMessageApprovalReactionTarget, c as buildIMessageApprovalConversationKeyForTarget, i as registerIMessageApprovalReactionTarget } from "./approval-reactions-L9Ul7PAu.mjs";
8
- import { a as iMessageApprovalPollTargets, c as iMessageApprovalControlBindings, i as buildApprovalPollOptions, o as mapSentPollOptionsToDecisions, t as sendMessageIMessage } from "./send-pkYwL6Rt.mjs";
1
+ import { c as parseIMessageTarget, d as normalizeIMessageMessagingTarget } from "./targets-B4oU7n-v.mjs";
2
+ import { o as resolveIMessageAccount } from "./accounts-DacCvDBt.mjs";
3
+ import { n as getCachedIMessagePrivateApiStatus } from "./message-tool-api-B5NfPnFL.mjs";
4
+ import { a as normalizeIMessageMessageId } from "./actions-Hxh12myO.mjs";
5
+ import { d as getIMessageApprovalApprovers } from "./channel-9TWBUDkP.mjs";
6
+ import { i as extractMarkdownFormatRuns } from "./sanitize-outbound-DpdQERYJ.mjs";
7
+ import { a as unregisterIMessageApprovalReactionTarget, c as buildIMessageApprovalConversationKeyForTarget, i as registerIMessageApprovalReactionTarget } from "./approval-reactions-JvzJCJ4a.mjs";
8
+ import { a as iMessageApprovalPollTargets, c as iMessageApprovalControlBindings, i as buildApprovalPollOptions, o as mapSentPollOptionsToDecisions, t as sendMessageIMessage } from "./send-BZZzMbdi.mjs";
9
9
  import { createLazyRuntimeNamedExport } from "openclaw/plugin-sdk/lazy-runtime";
10
10
  import { createActionGate } from "openclaw/plugin-sdk/channel-actions";
11
11
  import { createSubsystemLogger } from "openclaw/plugin-sdk/runtime-env";
@@ -15,7 +15,7 @@ import { setTimeout } from "node:timers/promises";
15
15
  import { buildChannelApprovalExpiredText, buildChannelApprovalResolvedText, createChannelApprovalNativeRuntimeAdapter, resolvePreparedApprovalAccountId } from "openclaw/plugin-sdk/approval-handler-runtime";
16
16
  //#region extensions/imessage/src/approval-handler.runtime.ts
17
17
  const log = createSubsystemLogger("imessage/approvals");
18
- const loadIMessageActionsRuntime = createLazyRuntimeNamedExport(() => import("./actions.runtime-DL5i-Y4J.mjs"), "imessageActionsRuntime");
18
+ const loadIMessageActionsRuntime = createLazyRuntimeNamedExport(() => import("./actions.runtime-DOIX6Fkf.mjs"), "imessageActionsRuntime");
19
19
  const DEFAULT_PROBE_TIMEOUT_MS = 5e3;
20
20
  const APPROVAL_POLL_ORDERING_DELAY_MS = 1100;
21
21
  function classifyIMessageApprovalTargetTransport(params) {
@@ -56,27 +56,28 @@ function canIMessageApprovalUsePoll(params) {
56
56
  return false;
57
57
  }
58
58
  }
59
- function resolveIMessageApprovalCliOptions(params) {
60
- const account = resolveIMessageAccount({
61
- cfg: params.cfg,
62
- accountId: params.target.accountId
63
- });
64
- return {
65
- cliPath: account.config.cliPath?.trim() || "imsg",
66
- dbPath: account.config.dbPath?.trim() || void 0,
67
- timeoutMs: account.config.probeTimeoutMs ?? DEFAULT_PROBE_TIMEOUT_MS
68
- };
69
- }
70
59
  async function deliverIMessageApprovalPoll(params) {
71
60
  const options = buildApprovalPollOptions({ allowedDecisions: params.allowedDecisions });
72
61
  try {
73
- const cliOptions = resolveIMessageApprovalCliOptions({
62
+ const account = resolveIMessageAccount({
74
63
  cfg: params.cfg,
75
- target: params.target
64
+ accountId: params.target.accountId
76
65
  });
77
- const chatGuid = await resolveIMessageApprovalChatGuid({
78
- to: params.target.to,
79
- cliOptions
66
+ const cliOptions = {
67
+ cliPath: account.config.cliPath?.trim() || "imsg",
68
+ dbPath: account.config.dbPath?.trim() || void 0,
69
+ timeoutMs: account.config.probeTimeoutMs ?? DEFAULT_PROBE_TIMEOUT_MS
70
+ };
71
+ const target = parseIMessageTarget(params.target.to);
72
+ let chatGuid;
73
+ if (target.kind === "chat_guid") chatGuid = target.chatGuid;
74
+ else chatGuid = await (await loadIMessageActionsRuntime()).resolveChatGuidForTarget({
75
+ target: target.kind === "handle" ? {
76
+ kind: "chat_identifier",
77
+ chatIdentifier: `${target.service === "sms" ? "SMS" : "iMessage"};-;${target.to}`
78
+ } : target,
79
+ options: cliOptions,
80
+ conversationReadOrigin: "direct-operator"
80
81
  });
81
82
  if (!chatGuid || /^SMS;/i.test(chatGuid)) return null;
82
83
  await setTimeout(APPROVAL_POLL_ORDERING_DELAY_MS);
@@ -139,40 +140,6 @@ async function deliverIMessageApprovalPoll(params) {
139
140
  return null;
140
141
  }
141
142
  }
142
- async function resolveIMessageApprovalChatGuid(params) {
143
- const target = parseIMessageTarget(params.to);
144
- if (target.kind === "chat_guid") return target.chatGuid;
145
- const runtime = await loadIMessageActionsRuntime();
146
- if (target.kind === "chat_id" || target.kind === "chat_identifier") return await runtime.resolveChatGuidForTarget({
147
- target,
148
- options: params.cliOptions,
149
- conversationReadOrigin: "direct-operator"
150
- });
151
- if (target.kind !== "handle") return null;
152
- const service = target.service === "sms" ? "SMS" : "iMessage";
153
- return await runtime.resolveChatGuidForTarget({
154
- target: {
155
- kind: "chat_identifier",
156
- chatIdentifier: `${service};-;${target.to}`
157
- },
158
- options: params.cliOptions,
159
- conversationReadOrigin: "direct-operator"
160
- });
161
- }
162
- async function recoverIMessageApprovalTextFallback(params) {
163
- try {
164
- return (await sendMessageIMessage(params.target.to, params.fallbackText, {
165
- config: params.cfg,
166
- approvalPrompt: params.approvalPrompt,
167
- conversationReadOrigin: "direct-operator",
168
- ...params.target.accountId ? { accountId: params.target.accountId } : {},
169
- ...params.promptMessageId ? { replyToId: params.promptMessageId } : {}
170
- })).guid;
171
- } catch (error) {
172
- log.error(`imessage approvals: text-fallback recovery failed: ${String(error)}`);
173
- return;
174
- }
175
- }
176
143
  /** Clear both controls together; a stale binding would resolve a dead approval. */
177
144
  async function clearIMessageApprovalBindings(entry) {
178
145
  const accountId = entry.accountId?.trim();
@@ -337,13 +304,18 @@ const imessageApprovalNativeRuntime = createChannelApprovalNativeRuntimeAdapter(
337
304
  question: pendingPayload.pollText,
338
305
  allowedDecisions: pendingPayload.allowedDecisions
339
306
  }) : null;
340
- const hintMessageId = expectPoll && !poll && !reactionFallbackVisible ? await recoverIMessageApprovalTextFallback({
341
- cfg,
342
- target: preparedTarget,
343
- promptMessageId: result.guid,
344
- fallbackText: pendingPayload.text,
345
- approvalPrompt
346
- }) : void 0;
307
+ let hintMessageId;
308
+ if (expectPoll && !poll && !reactionFallbackVisible) try {
309
+ hintMessageId = (await sendMessageIMessage(preparedTarget.to, pendingPayload.text, {
310
+ config: cfg,
311
+ approvalPrompt,
312
+ conversationReadOrigin: "direct-operator",
313
+ ...preparedTarget.accountId ? { accountId: preparedTarget.accountId } : {},
314
+ replyToId: result.guid
315
+ })).guid;
316
+ } catch (error) {
317
+ log.error(`imessage approvals: text-fallback recovery failed: ${String(error)}`);
318
+ }
347
319
  const entry = {
348
320
  accountId,
349
321
  to: preparedTarget.to,
@@ -1,9 +1,9 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-BBjsoOtd.mjs";
2
- import { c as parseIMessageTarget, o as normalizeIMessageHandle } from "./targets-BicBiYsM.mjs";
3
- import { i as normalizeIMessageGuid } from "./actions-DJqbUmbN.mjs";
2
+ import { c as parseIMessageTarget, o as normalizeIMessageHandle } from "./targets-B4oU7n-v.mjs";
3
+ import { i as normalizeIMessageGuid } from "./actions-Hxh12myO.mjs";
4
4
  import { n as getOptionalIMessageRuntime } from "./runtime-Cza4CY5T.mjs";
5
- import { d as getIMessageApprovalApprovers, f as imessageApprovalAuth } from "./channel-CL73qdMG.mjs";
6
- import { t as resolveIMessageReactionContext } from "./reaction-context-By7kUMBC.mjs";
5
+ import { d as getIMessageApprovalApprovers, f as imessageApprovalAuth } from "./channel-9TWBUDkP.mjs";
6
+ import { t as resolveIMessageReactionContext } from "./reaction-context-CRXpeYAr.mjs";
7
7
  import { asOptionalRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
8
8
  import { createLazyRuntimeSurface } from "openclaw/plugin-sdk/lazy-runtime";
9
9
  import { asDateTimestampMs, isFutureDateTimestampMs, resolveExpiresAtMsFromDurationMs } from "openclaw/plugin-sdk/number-runtime";
@@ -56,14 +56,19 @@ function buildIMessageApprovalConversationKeyForTarget(to) {
56
56
  }
57
57
  }
58
58
  /** Conversation key for an inbound event, mirroring the outbound key forms. */
59
- function buildIMessageApprovalConversationKeyForInbound(params) {
59
+ function buildIMessageApprovalConversationKeyForInbound(message, actorHandle) {
60
60
  return {
61
- ...params.chatGuid?.trim() ? { chatGuid: params.chatGuid.trim() } : {},
62
- ...params.chatIdentifier?.trim() ? { chatIdentifier: params.chatIdentifier.trim() } : {},
63
- ...chatIdToKeyValue(params.chatId ?? void 0) ? { chatId: params.chatId } : {},
64
- ...params.isGroup ? {} : { handle: params.actorHandle }
61
+ ...message.chat_guid?.trim() ? { chatGuid: message.chat_guid.trim() } : {},
62
+ ...message.chat_identifier?.trim() ? { chatIdentifier: message.chat_identifier.trim() } : {},
63
+ ...chatIdToKeyValue(message.chat_id ?? void 0) ? { chatId: message.chat_id } : {},
64
+ ...message.is_group ? {} : { handle: actorHandle }
65
65
  };
66
66
  }
67
+ function resolveIMessageApprovalControlActor(message) {
68
+ const sender = normalizeIMessageHandle(message.sender ?? "");
69
+ const destination = normalizeIMessageHandle(message.destination_caller_id ?? "");
70
+ return (message.is_from_me !== true && Boolean(sender) && sender === destination ? "" : sender) || (message.is_from_me === true ? destination : "");
71
+ }
67
72
  //#endregion
68
73
  //#region extensions/imessage/src/approval-reaction-poll-targets.ts
69
74
  const PERSISTENT_POLL_TARGET_NAMESPACE = "imessage.approval-reaction-poll-targets";
@@ -382,14 +387,6 @@ async function unregisterIMessageApprovalReactionTarget(params) {
382
387
  const keys = enumerateApprovalTargetKeys(params);
383
388
  await Promise.all([...keys.map((key) => imessageApprovalReactionTargets.delete(key)), deleteIMessageApprovalReactionPollTargets(keys)]);
384
389
  }
385
- function resolveTarget(params) {
386
- const target = resolveTypedApprovalReactionTarget(params);
387
- return target ? {
388
- approvalId: target.approvalId,
389
- approvalKind: target.approvalKind,
390
- decision: target.decision
391
- } : null;
392
- }
393
390
  function formatCanonicalApprovalTerminalState(approval) {
394
391
  const decision = approval.status === "allowed" || approval.status === "denied" ? ` decision=${approval.decision}` : "";
395
392
  return `status=${approval.status}${decision} reason=${approval.reason}`;
@@ -397,35 +394,31 @@ function formatCanonicalApprovalTerminalState(approval) {
397
394
  async function resolveIMessageApprovalReactionTargetWithPersistence(params) {
398
395
  const keys = enumerateApprovalTargetKeys(params);
399
396
  for (const key of keys) {
400
- const target = resolveTarget({
397
+ const target = resolveTypedApprovalReactionTarget({
401
398
  target: await imessageApprovalReactionTargets.lookup(key),
402
399
  reactionKey: params.reactionKey
403
400
  });
404
- if (target) return target;
401
+ if (target) return {
402
+ approvalId: target.approvalId,
403
+ approvalKind: target.approvalKind,
404
+ decision: target.decision
405
+ };
405
406
  }
406
407
  return null;
407
408
  }
408
409
  function readApprovalReactionEvent(message, bodyText) {
409
410
  const reaction = resolveIMessageReactionContext(message, bodyText);
410
411
  if (!reaction) return null;
411
- const reactionKey = reaction.emoji.trim();
412
- const candidates = (reaction.targetGuids ?? []).map((value) => value.trim()).filter((value) => value.length > 0);
413
- const primary = reaction.targetGuid?.trim() || candidates[0] || "";
414
- const messageIdCandidates = candidates.length > 0 ? candidates : primary ? [primary] : [];
415
- const actorHandle = normalizeIMessageHandle((message.sender ?? "").trim());
412
+ const reactionKey = reaction.emoji;
413
+ const primary = reaction.targetGuid;
414
+ const actorHandle = normalizeIMessageHandle(message.sender ?? "");
416
415
  if (!reactionKey || !primary || !actorHandle) return null;
417
- const conversation = buildIMessageApprovalConversationKeyForInbound({
418
- chatGuid: message.chat_guid,
419
- chatIdentifier: message.chat_identifier,
420
- chatId: message.chat_id,
421
- isGroup: message.is_group,
422
- actorHandle
423
- });
416
+ const conversation = buildIMessageApprovalConversationKeyForInbound(message, actorHandle);
424
417
  if (!normalizeConversationKey(conversation)) return null;
425
418
  return {
426
419
  conversation,
427
420
  messageId: primary,
428
- messageIdCandidates,
421
+ messageIdCandidates: reaction.targetGuids ?? [],
429
422
  actorHandle,
430
423
  reactionKey,
431
424
  action: reaction.action
@@ -521,4 +514,4 @@ function clearIMessageApprovalReactionTargetsForTest() {
521
514
  loadResolveApprovalOverGateway.clear();
522
515
  }
523
516
  //#endregion
524
- export { unregisterIMessageApprovalReactionTarget as a, buildIMessageApprovalConversationKeyForTarget as c, normalizeConversationKey as d, registerIMessageApprovalReactionTarget as i, enumerateApprovalTargetKeys as l, handleIMessageApprovalReaction as n, listPendingIMessageApprovalReactionPollTargets as o, maybeResolveIMessageApprovalReaction as r, buildIMessageApprovalConversationKeyForInbound as s, approval_reactions_exports as t, enumerateConversationKeyForms as u };
517
+ export { unregisterIMessageApprovalReactionTarget as a, buildIMessageApprovalConversationKeyForTarget as c, normalizeConversationKey as d, resolveIMessageApprovalControlActor as f, registerIMessageApprovalReactionTarget as i, enumerateApprovalTargetKeys as l, handleIMessageApprovalReaction as n, listPendingIMessageApprovalReactionPollTargets as o, maybeResolveIMessageApprovalReaction as r, buildIMessageApprovalConversationKeyForInbound as s, approval_reactions_exports as t, enumerateConversationKeyForms as u };
@@ -1,12 +1,12 @@
1
- import { a as looksLikeIMessageExplicitTargetId, c as parseIMessageTarget, d as isIMessagePhoneLikeHandle, n as inferIMessageTargetChatType, o as normalizeIMessageHandle, u as normalizeIMessageMessagingTarget } from "./targets-BicBiYsM.mjs";
2
- import { a as resolveDefaultIMessageAccountId, i as listIMessageAccountIds, o as resolveIMessageAccount, t as collectIMessageDuplicateAccountSourceWarnings } from "./accounts-evTpvJMv.mjs";
3
- import { C as resolveIMessageDirectChatService } from "./client-12apu4Ip.mjs";
4
- import { t as imessageMessageActions } from "./actions-DJqbUmbN.mjs";
5
- import { i as createIMessageSetupWizardProxy, s as imessageSetupContract } from "./setup-core-DqOBe-n0.mjs";
1
+ import { a as looksLikeIMessageExplicitTargetId, c as parseIMessageTarget, d as normalizeIMessageMessagingTarget, f as isIMessagePhoneLikeHandle, n as inferIMessageTargetChatType, o as normalizeIMessageHandle } from "./targets-B4oU7n-v.mjs";
2
+ import { a as resolveDefaultIMessageAccountId, i as listIMessageAccountIds, o as resolveIMessageAccount, t as collectIMessageDuplicateAccountSourceWarnings } from "./accounts-DacCvDBt.mjs";
3
+ import { C as resolveIMessageDirectChatService } from "./client-HixFQQWY.mjs";
4
+ import { t as imessageMessageActions } from "./actions-Hxh12myO.mjs";
5
+ import { i as createIMessageSetupWizardProxy, s as imessageSetupContract } from "./setup-core-CaRGbZOL.mjs";
6
6
  import { t as createIMessageConversationBindingManager } from "./conversation-bindings-GDQ_Laxj.mjs";
7
- import { n as sanitizeIMessageFinalOutboundText, r as sanitizeOutboundText } from "./sanitize-outbound-C0x4BPky.mjs";
7
+ import { n as sanitizeIMessageFinalOutboundText, r as sanitizeOutboundText } from "./sanitize-outbound-DpdQERYJ.mjs";
8
8
  import { t as IMessageChannelConfigSchema } from "./config-schema-DXwa_3V5.mjs";
9
- import { n as resolveIMessageAttachmentRoots, r as resolveIMessageRemoteAttachmentRoots } from "./media-contract-DjQGZlfl.mjs";
9
+ import { n as resolveIMessageAttachmentRoots, r as resolveIMessageRemoteAttachmentRoots } from "./media-contract-BwWs5PM7.mjs";
10
10
  import { normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
11
11
  import { DEFAULT_ACCOUNT_ID } from "openclaw/plugin-sdk/account-id";
12
12
  import { buildDmGroupAccountAllowlistAdapter } from "openclaw/plugin-sdk/allowlist-config-edit";
@@ -32,9 +32,7 @@ import { buildChannelGroupsScopeTree, createRestrictSendersChannelSecurity, reso
32
32
  import { createChannelPluginBase, getChatChannelMeta } from "openclaw/plugin-sdk/core";
33
33
  //#region extensions/imessage/src/approval-auth.ts
34
34
  function normalizeIMessageApproverId(value) {
35
- const raw = String(value).trim();
36
- if (!raw) return;
37
- const normalized = normalizeIMessageHandle(raw);
35
+ const normalized = normalizeIMessageHandle(String(value));
38
36
  if (!normalized || normalized.startsWith("chat_id:") || normalized.startsWith("chat_guid:") || normalized.startsWith("chat_identifier:")) return;
39
37
  return normalized;
40
38
  }
@@ -120,7 +118,7 @@ const imessageApproval = createApproverRestrictedNativeApprovalCapabilityFromFor
120
118
  approvalKind,
121
119
  request
122
120
  }),
123
- load: async () => (await import("./approval-handler.runtime-Bj2NGNXF.mjs")).imessageApprovalNativeRuntime
121
+ load: async () => (await import("./approval-handler.runtime-Dc3KzakG.mjs")).imessageApprovalNativeRuntime
124
122
  })
125
123
  });
126
124
  const imessageApprovalRouting = imessageApproval.routing;
@@ -289,7 +287,7 @@ function resolveIMessageGroupSystemPrompt(params) {
289
287
  //#endregion
290
288
  //#region extensions/imessage/src/shared.ts
291
289
  const IMESSAGE_CHANNEL = "imessage";
292
- const imessageSetupWizard = createIMessageSetupWizardProxy(async () => (await import("./setup-surface-zKhIinwY.mjs")).imessageSetupWizard);
290
+ const imessageSetupWizard = createIMessageSetupWizardProxy(async () => (await import("./setup-surface-BMWS7VuY.mjs")).imessageSetupWizard);
293
291
  const imessageConfigAdapter = createScopedChannelConfigAdapter({
294
292
  sectionKey: IMESSAGE_CHANNEL,
295
293
  listAccountIds: listIMessageAccountIds,
@@ -373,7 +371,7 @@ function createIMessagePluginBase(params) {
373
371
  }
374
372
  //#endregion
375
373
  //#region extensions/imessage/src/channel.ts
376
- const loadIMessageChannelRuntime = createLazyRuntimeModule(() => import("./channel.runtime-DY7JJ0_9.mjs"));
374
+ const loadIMessageChannelRuntime = createLazyRuntimeModule(() => import("./channel.runtime-DrLDEY4R.mjs"));
377
375
  async function sendIMessageOutbound(ctx, kind, options = {}) {
378
376
  return await (await loadIMessageChannelRuntime()).sendIMessageOutbound({
379
377
  cfg: ctx.cfg,
@@ -409,8 +407,8 @@ function toIMessageMessageSendResult(result, kind, replyToId) {
409
407
  ...result.meta && Object.keys(result.meta).length > 0 ? { meta: result.meta } : {}
410
408
  };
411
409
  }
412
- const loadIMessageApprovalReactionsModule = createLazyRuntimeModule(() => import("./approval-reactions-L9Ul7PAu.mjs").then((n) => n.t));
413
- const loadIMessageQuestionReactionsModule = createLazyRuntimeModule(() => import("./question-reactions-DJV-TnA8.mjs").then((n) => n.r));
410
+ const loadIMessageApprovalReactionsModule = createLazyRuntimeModule(() => import("./approval-reactions-JvzJCJ4a.mjs").then((n) => n.t));
411
+ const loadIMessageQuestionReactionsModule = createLazyRuntimeModule(() => import("./question-reactions-9jrqVZgE.mjs").then((n) => n.r));
414
412
  const imessageMessageAdapter = defineChannelMessageAdapter({
415
413
  id: "imessage",
416
414
  durableFinal: { capabilities: {
@@ -528,7 +526,7 @@ const imessagePlugin = createChatChannelPlugin({
528
526
  messaging: {
529
527
  normalizeTarget: normalizeIMessageMessagingTarget,
530
528
  inferTargetChatType: ({ to }) => inferIMessageTargetChatType(to),
531
- resolveOutboundSessionRoute: (params) => resolveIMessageOutboundSessionRoute(params),
529
+ resolveOutboundSessionRoute: resolveIMessageOutboundSessionRoute,
532
530
  targetResolver: {
533
531
  looksLikeId: looksLikeIMessageExplicitTargetId,
534
532
  hint: "<phone|email|chat_id:ID|auto:contact|imessage:contact|sms:contact>",