@openclaw/slack 2026.10.5-beta.3 → 2026.10.10-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 (60) hide show
  1. package/dist/.setup/{account-inspect-D58VVDjk.mjs → account-inspect-CmkKiSb9.mjs} +1 -1
  2. package/dist/.setup/{accounts-BMg9YLIv.mjs → accounts-msihSF3-.mjs} +1 -1
  3. package/dist/.setup/{action-runtime-BiRZNsIG.mjs → action-runtime-CgYsBWl6.mjs} +5 -5
  4. package/dist/.setup/action-runtime.runtime-WS3mGjut.mjs +1 -0
  5. package/dist/.setup/{actions-KGKwTAKO.mjs → actions-CafoV8hS.mjs} +4 -4
  6. package/dist/.setup/{approval-handler.runtime-DYrsG2Ox.mjs → approval-handler.runtime-Pty8hAZ9.mjs} +8 -8
  7. package/dist/.setup/{approval-message-updates-CwdDew9i.mjs → approval-message-updates-DCnXFLf3.mjs} +1 -1
  8. package/dist/.setup/{channel-C7MY-Hhg.mjs → channel-B-jnk0Gl.mjs} +51 -55
  9. package/dist/.setup/{channel-type-NjX2SwvS.mjs → channel-type-BrbGGbzI.mjs} +3 -3
  10. package/dist/.setup/{channel.setup-BFpQowO3.mjs → channel.setup-u6QQdbTa.mjs} +4 -4
  11. package/dist/.setup/{config-schema-BH0K9-Um.mjs → config-schema-DNnh6bWU.mjs} +1 -1
  12. package/dist/.setup/{directory-config-BEDZPfDn.mjs → directory-config-Cjj0N8R0.mjs} +1 -1
  13. package/dist/.setup/{directory-live-FipfeCwt.mjs → directory-live-BIKD-5B_.mjs} +2 -2
  14. package/dist/.setup/http-C9sM-FXe.mjs +2 -0
  15. package/dist/.setup/{message-tool-api-C7im5ETh.mjs → message-tool-api-BS5ekEA_.mjs} +2 -2
  16. package/dist/.setup/{monitor-BnN2px0N.mjs → monitor-DmJ-Qbx4.mjs} +181 -145
  17. package/dist/.setup/{outbound-adapter-4HdGq-8r.mjs → outbound-adapter-BlN9vmT-.mjs} +4 -4
  18. package/dist/.setup/{pipeline.runtime-ByPbC6MN.mjs → pipeline.runtime-DOf1Ghcz.mjs} +66 -129
  19. package/dist/.setup/{plugin-routes-B8tooDLj.mjs → plugin-routes-D4qozHVn.mjs} +1 -1
  20. package/dist/.setup/{policy-BaY9_eh1.mjs → policy-D4eNyn8m.mjs} +2 -2
  21. package/dist/.setup/{probe-CyX52GtD.mjs → probe-IiHogLQN.mjs} +3 -9
  22. package/dist/.setup/{registry-CIbMfuf8.mjs → registry-DizWcnNp.mjs} +4 -11
  23. package/dist/.setup/{relay-source-CVfH-fBO.mjs → relay-source-CUVJNz6R.mjs} +2 -2
  24. package/dist/.setup/{replies-WmfwvQxc.mjs → replies-Cs9SqIIs.mjs} +4 -4
  25. package/dist/.setup/{reply-blocks-rqHQ_3pr.mjs → reply-blocks-CoZ_dGM_.mjs} +1 -1
  26. package/dist/.setup/{resolve-channels-B96cgprw.mjs → resolve-channels-DRRhElwz.mjs} +1 -1
  27. package/dist/.setup/{resolve-users-Xz9aPdns.mjs → resolve-users-Cz8e17ky.mjs} +1 -1
  28. package/dist/.setup/runtime-setter-api-Cx_PV-xu.mjs +2 -0
  29. package/dist/.setup/{scopes-aMcMHhXk.mjs → scopes-DfQVi8Jw.mjs} +1 -1
  30. package/dist/.setup/secret-contract-api-DB6CMdgc.mjs +2 -0
  31. package/dist/.setup/{send-CLmsR42r.mjs → send-pi6r24yv.mjs} +5 -5
  32. package/dist/.setup/{session-status-CcXe10zN.mjs → session-status-DQY4hZLd.mjs} +73 -29
  33. package/dist/.setup/setup-plugin-api-B18kDKtr.mjs +2 -0
  34. package/dist/.setup/{setup-surface-368jx6Uc.mjs → setup-surface-9WVQgYCT.mjs} +6 -6
  35. package/dist/.setup/{shared-CtprVh_G.mjs → shared-DpHCoKy2.mjs} +7 -6
  36. package/dist/.setup/{slash-dispatch.runtime-Dzwj6TPI.mjs → slash-dispatch.runtime-BlBuHX9x.mjs} +3 -2
  37. package/dist/account-inspect-api.js +1 -1
  38. package/dist/api.js +15 -14
  39. package/dist/channel-config-api.js +1 -2
  40. package/dist/channel-plugin-api.js +1 -2
  41. package/dist/directory-contract-api.js +1 -2
  42. package/dist/doctor-contract-api.js +1 -2
  43. package/dist/http-routes-api.js +1 -2
  44. package/dist/index.js +1 -1
  45. package/dist/message-tool-api.js +1 -2
  46. package/dist/runtime-api.js +11 -11
  47. package/dist/runtime-setter-api.js +1 -2
  48. package/dist/secret-contract-api.js +1 -2
  49. package/dist/security-contract-api.js +1 -2
  50. package/dist/setup-entry.js +3 -3
  51. package/dist/setup-plugin-api.js +1 -2
  52. package/node_modules/typebox/build/value/clean/from_object.mjs +1 -1
  53. package/node_modules/typebox/package.json +1 -1
  54. package/openclaw.plugin.json +1 -1
  55. package/package.json +5 -5
  56. package/dist/.setup/action-runtime.runtime-C5xceJoS.mjs +0 -2
  57. package/dist/.setup/runtime-setter-api-CMFvhrAr.mjs +0 -3
  58. package/dist/.setup/secret-contract-api-DmUVxIRs.mjs +0 -3
  59. package/dist/.setup/setup-plugin-api-D92P5p51.mjs +0 -3
  60. package/dist/.setup/{security-audit-C1nOGzJa.mjs → security-audit-DFGiFLqd.mjs} +1 -1
@@ -1,5 +1,5 @@
1
1
  import { t as hasSlackAccountCredentials } from "./account-configured-zcR9TJJN.mjs";
2
- import { a as mergeSlackAccountConfig, g as buildSlackAccountSurfaceFields, o as resolveDefaultSlackAccountId } from "./accounts-BMg9YLIv.mjs";
2
+ import { a as mergeSlackAccountConfig, g as buildSlackAccountSurfaceFields, o as resolveDefaultSlackAccountId } from "./accounts-msihSF3-.mjs";
3
3
  import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "openclaw/plugin-sdk/account-resolution";
4
4
  import { hasConfiguredSecretInput, normalizeSecretInputString } from "openclaw/plugin-sdk/secret-input";
5
5
  import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
@@ -29,7 +29,7 @@ function formatSlackBotTokenIdentityWarning(params) {
29
29
  const botId = params.auth.bot_id?.trim();
30
30
  if (!userId || botId) return;
31
31
  const accountId = params.accountId?.trim() || "default";
32
- return `Slack auth.test identified account "${accountId}" as user ${userId} without bot_id. ${accountId === "default" ? "channels.slack.botToken, channels.slack.accounts.default.botToken, or SLACK_BOT_TOKEN" : `channels.slack.accounts.${accountId}.botToken`} appears to contain a user token; replace it with a Bot User OAuth Token. Until replaced, explicit bot-mention detection is disabled and required-mention channels fail closed.`;
32
+ return `Slack auth.test identified account "${accountId}" as user ${userId} without bot_id. ${accountId === "default" ? "channels.slack.botToken, channels.slack.accounts.default.botToken, or SLACK_BOT_TOKEN" : `channels.slack.accounts.${accountId}.botToken`} appears to contain a user token; replace it with a Bot User OAuth Token. Until replaced, explicit bot-mention detection is disabled and required-mention channels ignore messages.`;
33
33
  }
34
34
  function createSlackTokenResolver(defaultPath) {
35
35
  return (raw, path = defaultPath) => normalizeResolvedSecretInputString({
@@ -1,7 +1,7 @@
1
1
  import { a as parseSlackTarget, n as formatSlackTarget, o as resolveSlackChannelId } from "./target-parsing-FFE26kOV.mjs";
2
2
  import { t as slackContextTargetsMatch } from "./targets-C6LZQL1Q.mjs";
3
- import { Bt as resolveSlackAutoThreadId, f as assertSlackDetachedTargetAllowed, kt as getSlackInstallationKind, pt as parseSlackBlocksInput, r as buildSlackChannelIdCandidates, v as hasSlackNativeDataBlock, zt as SLACK_PRIVATE_ACTION_DELIVERY_RESULT } from "./session-status-CcXe10zN.mjs";
4
- import { n as resolveSlackChannelConfig, t as isSlackChannelAllowedByPolicy } from "./policy-BaY9_eh1.mjs";
3
+ import { Ht as resolveSlackAutoThreadId, Vt as SLACK_PRIVATE_ACTION_DELIVERY_RESULT, b as hasSlackNativeDataBlock, ht as parseSlackBlocksInput, jt as getSlackInstallationKind, m as assertSlackDetachedTargetAllowed, r as buildSlackChannelIdCandidates } from "./session-status-DQY4hZLd.mjs";
4
+ import { n as resolveSlackChannelConfig, t as isSlackChannelAllowedByPolicy } from "./policy-D4eNyn8m.mjs";
5
5
  import { t as mergeSlackSendResults } from "./send-results-eeOu_HYm.mjs";
6
6
  import { normalizeAccountId } from "openclaw/plugin-sdk/account-resolution";
7
7
  import { normalizeOptionalLowercaseString } from "openclaw/plugin-sdk/string-coerce-runtime";
@@ -30,10 +30,10 @@ const SLACK_REACTION_RESULT_LIMIT = 100;
30
30
  function readSlackResultLimit(params) {
31
31
  return Math.min(readPositiveIntegerParam(params, "limit", { message: "limit must be a positive integer." }) ?? SLACK_REACTION_RESULT_LIMIT, SLACK_REACTION_RESULT_LIMIT);
32
32
  }
33
- const loadSlackActionsRuntime = createLazyRuntimeModule(() => import("./actions-KGKwTAKO.mjs").then((n) => n.t));
33
+ const loadSlackActionsRuntime = createLazyRuntimeModule(() => import("./actions-CafoV8hS.mjs").then((n) => n.t));
34
34
  const bindSlackAction = createLazyRuntimeMethodBinder(loadSlackActionsRuntime);
35
- const loadSlackAccountsRuntime = createLazyRuntimeModule(() => import("./accounts-BMg9YLIv.mjs").then((n) => n.t));
36
- const loadSlackChannelTypeRuntime = createLazyRuntimeModule(() => import("./channel-type-NjX2SwvS.mjs").then((n) => n.t));
35
+ const loadSlackAccountsRuntime = createLazyRuntimeModule(() => import("./accounts-msihSF3-.mjs").then((n) => n.t));
36
+ const loadSlackChannelTypeRuntime = createLazyRuntimeModule(() => import("./channel-type-BrbGGbzI.mjs").then((n) => n.t));
37
37
  const bindSlackChannelType = createLazyRuntimeMethodBinder(loadSlackChannelTypeRuntime);
38
38
  const slackActionRuntime = {
39
39
  deleteSlackMessage: bindSlackAction((runtime) => runtime.deleteSlackMessage),
@@ -0,0 +1 @@
1
+ export { t as handleSlackAction } from "./action-runtime-CgYsBWl6.mjs";
@@ -1,9 +1,9 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-B4FMCO8f.mjs";
2
- import { h as resolveSlackBotToken, o as resolveDefaultSlackAccountId, s as resolveSlackAccount } from "./accounts-BMg9YLIv.mjs";
2
+ import { h as resolveSlackBotToken, o as resolveDefaultSlackAccountId, s as resolveSlackAccount } from "./accounts-msihSF3-.mjs";
3
3
  import { n as formatSlackTarget } from "./target-parsing-FFE26kOV.mjs";
4
- import { C as stripSlackNativeDataBlocks, D as SLACK_EDIT_TEXT_MAX_BYTES, E as renderSlackBlockFallbackText, N as truncateSlackTextByUtf8Bytes, T as buildSlackCompleteBlocksFallbackText, X as normalizeSlackOutboundText, at as escapeSlackMrkdwn, f as assertSlackDetachedTargetAllowed, h as appendSlackNativeDataPlainTextFallback, j as countSlackTextUtf8Bytes, m as appendSlackNativeDataFallbackText, mt as validateSlackBlocksArray, v as hasSlackNativeDataBlock, w as buildSlackBlocksFallbackText, y as isSlackInvalidBlocksError, zt as SLACK_PRIVATE_ACTION_DELIVERY_RESULT } from "./session-status-CcXe10zN.mjs";
5
- import { _ as getSlackWriteClient, h as createSlackWriteClient, u as createSlackLookupClient } from "./probe-CyX52GtD.mjs";
6
- import { m as buildSlackNativeDataDeliveryPlan, t as sendMessageSlack } from "./send-CLmsR42r.mjs";
4
+ import { D as buildSlackCompleteBlocksFallbackText, E as buildSlackBlocksFallbackText, F as truncateSlackTextByUtf8Bytes, N as countSlackTextUtf8Bytes, O as renderSlackBlockFallbackText, Q as normalizeSlackOutboundText, T as stripSlackNativeDataBlocks, Vt as SLACK_PRIVATE_ACTION_DELIVERY_RESULT, _ as appendSlackNativeDataPlainTextFallback, b as hasSlackNativeDataBlock, g as appendSlackNativeDataFallbackText, gt as validateSlackBlocksArray, k as SLACK_EDIT_TEXT_MAX_BYTES, m as assertSlackDetachedTargetAllowed, st as escapeSlackMrkdwn, x as isSlackInvalidBlocksError } from "./session-status-DQY4hZLd.mjs";
5
+ import { _ as getSlackWriteClient, h as createSlackWriteClient, u as createSlackLookupClient } from "./probe-IiHogLQN.mjs";
6
+ import { m as buildSlackNativeDataDeliveryPlan, t as sendMessageSlack } from "./send-pi6r24yv.mjs";
7
7
  import { normalizeAccountId } from "openclaw/plugin-sdk/account-resolution";
8
8
  import { asOptionalObjectRecord, asOptionalRecord, isRecord, normalizeLowercaseStringOrEmpty, normalizeOptionalLowercaseString, normalizeOptionalString, readNonBlankString } from "openclaw/plugin-sdk/string-coerce-runtime";
9
9
  import { createSubsystemLogger, logVerbose } from "openclaw/plugin-sdk/runtime-env";
@@ -1,14 +1,14 @@
1
1
  import { a as parseSlackTarget } from "./target-parsing-FFE26kOV.mjs";
2
- import { Ct as shouldHandleSlackNativeApprovalRequest, D as SLACK_EDIT_TEXT_MAX_BYTES, Ft as normalizeSlackApproverId, M as truncateSlackText, N as truncateSlackTextByUtf8Bytes, ht as isSlackAnyNativeApprovalClientEnabled, n as setSlackSessionStatus, ot as SLACK_APPROVAL_HEADER_BLOCK_ID } from "./session-status-CcXe10zN.mjs";
3
- import { g as getSlackListenerWriteClient } from "./probe-CyX52GtD.mjs";
4
- import { s as resolveSlackReplyBlocks } from "./reply-blocks-rqHQ_3pr.mjs";
5
- import { t as sendMessageSlack } from "./send-CLmsR42r.mjs";
6
- import { n as runSlackApprovalMessageUpdate } from "./approval-message-updates-CwdDew9i.mjs";
2
+ import { F as truncateSlackTextByUtf8Bytes, Lt as normalizeSlackApproverId, P as truncateSlackText, Tt as shouldHandleSlackNativeApprovalRequest, _t as isSlackAnyNativeApprovalClientEnabled, ct as SLACK_APPROVAL_HEADER_BLOCK_ID, k as SLACK_EDIT_TEXT_MAX_BYTES, n as setSlackSessionStatus } from "./session-status-DQY4hZLd.mjs";
3
+ import { g as getSlackListenerWriteClient } from "./probe-IiHogLQN.mjs";
4
+ import { s as resolveSlackReplyBlocks } from "./reply-blocks-CoZ_dGM_.mjs";
5
+ import { t as sendMessageSlack } from "./send-pi6r24yv.mjs";
6
+ import { n as runSlackApprovalMessageUpdate } from "./approval-message-updates-DCnXFLf3.mjs";
7
7
  import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
8
8
  import { buildChannelApprovalNativeTargetKey } from "openclaw/plugin-sdk/approval-native-runtime";
9
9
  import { buildApprovalPresentationFromActionDescriptors } from "openclaw/plugin-sdk/approval-reply-runtime";
10
10
  import { logError } from "openclaw/plugin-sdk/logging-core";
11
- import { createChannelApprovalNativeRuntimeAdapter } from "openclaw/plugin-sdk/approval-handler-runtime";
11
+ import { createChannelApprovalNativeRuntimeAdapterAsync } from "openclaw/plugin-sdk/approval-handler-runtime";
12
12
  import { formatChannelApprovalResolvedLabel } from "openclaw/plugin-sdk/approval-runtime";
13
13
  //#region extensions/slack/src/approval-handler.runtime.ts
14
14
  const SLACK_CONTEXT_ELEMENTS_MAX = 10;
@@ -124,7 +124,7 @@ async function updateMessage(client, accountId, { channelId, messageTs }, { text
124
124
  logError(`slack approvals: failed to update message: ${String(err)}`);
125
125
  }
126
126
  }
127
- const slackApprovalNativeRuntime = createChannelApprovalNativeRuntimeAdapter({
127
+ const slackApprovalNativeRuntime = createChannelApprovalNativeRuntimeAdapterAsync({
128
128
  eventKinds: [
129
129
  "exec",
130
130
  "plugin",
@@ -138,7 +138,7 @@ const slackApprovalNativeRuntime = createChannelApprovalNativeRuntimeAdapter({
138
138
  accountId: resolved.accountId
139
139
  }) : false;
140
140
  },
141
- shouldHandle: (params) => {
141
+ shouldHandle: async (params) => {
142
142
  const resolved = resolveHandlerContext(params);
143
143
  if (!resolved) return false;
144
144
  return shouldHandleSlackNativeApprovalRequest({
@@ -1,4 +1,4 @@
1
- import { V as isSlackApprovalActionId, st as decodeSlackApprovalAction } from "./session-status-CcXe10zN.mjs";
1
+ import { U as isSlackApprovalActionId, lt as decodeSlackApprovalAction } from "./session-status-DQY4hZLd.mjs";
2
2
  import { asOptionalRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
3
3
  import { KeyedAsyncQueue } from "openclaw/plugin-sdk/keyed-async-queue";
4
4
  //#region extensions/slack/src/approval-message-updates.ts
@@ -1,16 +1,16 @@
1
1
  import { r as isSlackPluginAccountConfigured } from "./account-configured-zcR9TJJN.mjs";
2
- import { c as resolveSlackAccountAllowFrom, d as resolveSlackOperationToken, f as resolveSlackReplyToMode, i as listSlackAccountIds, n as hasImplicitDefaultSlackAccount, o as resolveDefaultSlackAccountId, s as resolveSlackAccount } from "./accounts-BMg9YLIv.mjs";
2
+ import { c as resolveSlackAccountAllowFrom, d as resolveSlackOperationToken, f as resolveSlackReplyToMode, i as listSlackAccountIds, n as hasImplicitDefaultSlackAccount, o as resolveDefaultSlackAccountId, s as resolveSlackAccount } from "./accounts-msihSF3-.mjs";
3
3
  import { a as parseSlackTarget, i as normalizeSlackMessagingTarget, n as formatSlackTarget, o as resolveSlackChannelId, r as looksLikeSlackTargetId, t as canonicalizeSlackApiTargetId } from "./target-parsing-FFE26kOV.mjs";
4
4
  import { t as slackContextTargetsMatch } from "./targets-C6LZQL1Q.mjs";
5
- import { A as SLACK_TEXT_LIMIT, At as isSlackWorkspaceInstallation, Bt as resolveSlackAutoThreadId, Ct as shouldHandleSlackNativeApprovalRequest, D as SLACK_EDIT_TEXT_MAX_BYTES, Dt as isSlackPluginApprovalAuthorizedSender, Et as getSlackApprovalApproversForTeam, It as resolveSlackExecApprovalTarget, Lt as shouldSuppressLocalSlackExecApprovalPrompt, Mt as getSlackExecApprovalApprovers, Nt as isSlackExecApprovalAuthorizedSender, Ot as resolveSlackApprovalTeamId, Pt as isSlackExecApprovalClientEnabled, Rt as resolvePluginApprovalSlackApprovers, St as resolveTurnSourceSlackOriginTarget, Tt as slackTargetsMatch, X as normalizeSlackOutboundText, _t as normalizeSlackForwardTarget, a as resolveSlackGroupRequireMention, bt as resolveSlackApproverDmTargets, c as qualifySlackRoutePeerId, d as resolveSlackConversationBindingRoute, f as assertSlackDetachedTargetAllowed, gt as isSlackPluginApprovalRequest, ht as isSlackAnyNativeApprovalClientEnabled, it as renderSlackMessagePresentationFallbackText, j as countSlackTextUtf8Bytes, kt as getSlackInstallationKind, n as setSlackSessionStatus, o as resolveSlackGroupToolPolicy, s as qualifySlackConversationId, u as normalizeSlackRouteBindingConfig, ut as SLACK_PRESENTATION_CAPABILITIES, vt as normalizeSlackOriginTarget, wt as shouldHandleSlackPluginViaForwardingSession, xt as resolveSlackFallbackOriginTarget, yt as resolveSessionSlackOriginTarget } from "./session-status-CcXe10zN.mjs";
6
- import { _ as getSlackWriteClient, c as collectSlackCursorPages, o as formatSlackError, u as createSlackLookupClient } from "./probe-CyX52GtD.mjs";
7
- import { c as resolveSlackReplyDeliveryMessages, o as resolveSlackReplyBlockResolution, p as buildSlackPresentationBlocksIfComplete, r as normalizeSlackReplyPayload, s as resolveSlackReplyBlocks } from "./reply-blocks-rqHQ_3pr.mjs";
5
+ import { At as resolveSlackApprovalTeamId, Bt as resolvePluginApprovalSlackApprovers, Ct as resolveSlackFallbackOriginTarget, Dt as slackTargetsMatch, Et as shouldHandleSlackPluginViaForwardingSession, Ft as isSlackExecApprovalAuthorizedSender, Ht as resolveSlackAutoThreadId, It as isSlackExecApprovalClientEnabled, M as SLACK_TEXT_LIMIT, Mt as isSlackWorkspaceInstallation, N as countSlackTextUtf8Bytes, Ot as getSlackApprovalApproversForTeam, Pt as getSlackExecApprovalApprovers, Q as normalizeSlackOutboundText, Rt as resolveSlackExecApprovalTarget, St as resolveSlackApproverDmTargets, Tt as shouldHandleSlackNativeApprovalRequest, _t as isSlackAnyNativeApprovalClientEnabled, a as resolveSlackGroupRequireMention, bt as normalizeSlackOriginTarget, c as qualifySlackConversationId, d as normalizeSlackRouteBindingConfig, f as resolveSlackConversationBindingRoute, ft as SLACK_PRESENTATION_CAPABILITIES, jt as getSlackInstallationKind, k as SLACK_EDIT_TEXT_MAX_BYTES, kt as isSlackPluginApprovalAuthorizedSender, l as qualifySlackRoutePeerId, m as assertSlackDetachedTargetAllowed, n as setSlackSessionStatus, o as resolveSlackGroupToolPolicy, ot as renderSlackMessagePresentationFallbackText, vt as isSlackPluginApprovalRequest, wt as resolveTurnSourceSlackOriginTarget, xt as resolveSessionSlackOriginTarget, yt as normalizeSlackForwardTarget, zt as shouldSuppressLocalSlackExecApprovalPrompt } from "./session-status-DQY4hZLd.mjs";
6
+ import { _ as getSlackWriteClient, c as collectSlackCursorPages, o as formatSlackError, u as createSlackLookupClient } from "./probe-IiHogLQN.mjs";
7
+ import { c as resolveSlackReplyDeliveryMessages, o as resolveSlackReplyBlockResolution, p as buildSlackPresentationBlocksIfComplete, r as normalizeSlackReplyPayload, s as resolveSlackReplyBlocks } from "./reply-blocks-CoZ_dGM_.mjs";
8
8
  import { n as resolveSlackReplyThreadTs, r as resolveSlackThreadTsValue, t as normalizeSlackThreadTsCandidate } from "./thread-ts-Cvt7WD6B.mjs";
9
- import { n as extractSlackToolSend, t as describeSlackMessageTool } from "./message-tool-api-C7im5ETh.mjs";
10
- import { n as resolveSlackChannelType, r as resolveSlackConversationInfo } from "./channel-type-NjX2SwvS.mjs";
9
+ import { n as extractSlackToolSend, t as describeSlackMessageTool } from "./message-tool-api-BS5ekEA_.mjs";
10
+ import { n as resolveSlackChannelType, r as resolveSlackConversationInfo } from "./channel-type-BrbGGbzI.mjs";
11
11
  import { t as getOptionalSlackRuntime } from "./runtime-JSVZSWAj.mjs";
12
- import { n as slackPluginBase, r as slackSecurityAdapter, t as slackConfigAdapter } from "./shared-CtprVh_G.mjs";
13
- import { i as SLACK_CHANNEL } from "./channel.setup-BFpQowO3.mjs";
12
+ import { n as slackPluginBase, r as slackSecurityAdapter, t as slackConfigAdapter } from "./shared-DpHCoKy2.mjs";
13
+ import { i as SLACK_CHANNEL } from "./channel.setup-u6QQdbTa.mjs";
14
14
  import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "openclaw/plugin-sdk/account-id";
15
15
  import { normalizeAccountId as normalizeAccountId$1 } from "openclaw/plugin-sdk/account-resolution";
16
16
  import { normalizeLowercaseStringOrEmpty, normalizeOptionalLowercaseString, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
@@ -27,9 +27,9 @@ import { logVerbose } from "openclaw/plugin-sdk/runtime-env";
27
27
  import { createComputedAccountStatusAdapter, createDefaultChannelRuntimeState } from "openclaw/plugin-sdk/status-helpers";
28
28
  import { sanitizeAssistantVisibleText } from "openclaw/plugin-sdk/text-chunking";
29
29
  import { escapeRegExp } from "openclaw/plugin-sdk/text-utility-runtime";
30
- import { createApproverRestrictedNativeApprovalCapability } from "openclaw/plugin-sdk/approval-delivery-runtime";
31
- import { createLazyChannelApprovalNativeRuntimeAdapter } from "openclaw/plugin-sdk/approval-handler-adapter-runtime";
32
- import { createChannelNativeOriginTargetResolver, createNativeApprovalForwardingFallbackSuppressor } from "openclaw/plugin-sdk/approval-native-runtime";
30
+ import { createApproverRestrictedNativeApprovalCapabilityAsync } from "openclaw/plugin-sdk/approval-delivery-runtime";
31
+ import { createLazyChannelApprovalNativeRuntimeAdapterAsync } from "openclaw/plugin-sdk/approval-handler-adapter-runtime";
32
+ import { createChannelNativeOriginTargetResolverAsync, createNativeApprovalForwardingFallbackSuppressorAsync } from "openclaw/plugin-sdk/approval-native-runtime";
33
33
  import { readBooleanParam } from "openclaw/plugin-sdk/boolean-param";
34
34
  import { resolveReactionMessageId } from "openclaw/plugin-sdk/channel-actions";
35
35
  import { normalizeLegacyInteractiveReply, normalizeMessagePresentation } from "openclaw/plugin-sdk/interactive-runtime";
@@ -44,7 +44,7 @@ function shouldConsiderSlackNativeForwardingSuppression(input) {
44
44
  if (input.approvalKind === "plugin") return true;
45
45
  return normalizeMessageChannel(input.request.request.turnSourceChannel) === "slack";
46
46
  }
47
- const resolveSlackOriginTarget = createChannelNativeOriginTargetResolver({
47
+ const resolveSlackOriginTarget = createChannelNativeOriginTargetResolverAsync({
48
48
  channel: "slack",
49
49
  shouldHandleRequest: shouldHandleSlackNativeApprovalRequest,
50
50
  resolveTurnSourceTarget: resolveTurnSourceSlackOriginTarget,
@@ -53,7 +53,7 @@ const resolveSlackOriginTarget = createChannelNativeOriginTargetResolver({
53
53
  targetsMatch: slackTargetsMatch,
54
54
  resolveFallbackTarget: resolveSlackFallbackOriginTarget
55
55
  });
56
- const shouldSuppressSlackForwardingFallback = createNativeApprovalForwardingFallbackSuppressor({
56
+ const shouldSuppressSlackForwardingFallback = createNativeApprovalForwardingFallbackSuppressorAsync({
57
57
  channel: "slack",
58
58
  normalizeForwardTarget: normalizeSlackForwardTarget,
59
59
  resolveAccountId: resolveSlackNativeSuppressionAccountId,
@@ -63,7 +63,7 @@ const shouldSuppressSlackForwardingFallback = createNativeApprovalForwardingFall
63
63
  resolveApproverDmTargets: resolveSlackApproverDmTargets,
64
64
  targetsMatch: slackTargetsMatch
65
65
  });
66
- const baseSlackApprovalCapability = createApproverRestrictedNativeApprovalCapability({
66
+ const baseSlackApprovalCapability = createApproverRestrictedNativeApprovalCapabilityAsync({
67
67
  channel: "slack",
68
68
  channelLabel: "Slack",
69
69
  describeExecApprovalSetup: ({ accountId }) => {
@@ -77,20 +77,20 @@ const baseSlackApprovalCapability = createApproverRestrictedNativeApprovalCapabi
77
77
  accountId
78
78
  }).length > 0,
79
79
  isExecAuthorizedSender: isSlackExecApprovalAuthorizedSender,
80
- isPluginAuthorizedSender: (params) => isSlackPluginApprovalAuthorizedSender(params) && (!params.request || resolvePluginApprovalSlackApprovers(params.cfg, params.request) === void 0 || shouldHandleSlackNativeApprovalRequest({
80
+ isPluginAuthorizedSender: async (params) => isSlackPluginApprovalAuthorizedSender(params) && (!params.request || resolvePluginApprovalSlackApprovers(params.cfg, params.request) === void 0 || await shouldHandleSlackNativeApprovalRequest({
81
81
  cfg: params.cfg,
82
82
  accountId: params.accountId,
83
83
  approvalKind: "plugin",
84
84
  request: params.request
85
85
  })),
86
- isNativeDeliveryEnabled: isSlackExecApprovalClientEnabled,
86
+ isNativeDeliveryEnabled: async (params) => isSlackExecApprovalClientEnabled(params),
87
87
  resolveNativeDeliveryMode: resolveSlackExecApprovalTarget,
88
88
  requireMatchingTurnSourceChannel: true,
89
89
  resolveSuppressionAccountId: resolveSlackNativeSuppressionAccountId,
90
90
  resolveOriginTarget: resolveSlackOriginTarget,
91
91
  resolveApproverDmTargets: resolveSlackApproverDmTargets,
92
92
  notifyOriginWhenDmOnly: true,
93
- nativeRuntime: createLazyChannelApprovalNativeRuntimeAdapter({
93
+ nativeRuntimeAsync: createLazyChannelApprovalNativeRuntimeAdapterAsync({
94
94
  capabilityBoundary: true,
95
95
  eventKinds: [
96
96
  "exec",
@@ -99,10 +99,10 @@ const baseSlackApprovalCapability = createApproverRestrictedNativeApprovalCapabi
99
99
  ],
100
100
  isConfigured: isSlackAnyNativeApprovalClientEnabled,
101
101
  shouldHandle: shouldHandleSlackNativeApprovalRequest,
102
- load: async () => (await import("./approval-handler.runtime-DYrsG2Ox.mjs")).slackApprovalNativeRuntime
102
+ load: async () => (await import("./approval-handler.runtime-Pty8hAZ9.mjs")).slackApprovalNativeRuntime
103
103
  })
104
104
  });
105
- const baseSlackNativeAdapter = baseSlackApprovalCapability.native;
105
+ const baseSlackNativeAdapter = baseSlackApprovalCapability.nativeAsync;
106
106
  const slackApprovalCapability = {
107
107
  ...baseSlackApprovalCapability,
108
108
  supportsScopedPluginApprovalApprovers: true,
@@ -118,7 +118,7 @@ const slackApprovalCapability = {
118
118
  return senderId ?? void 0;
119
119
  }
120
120
  },
121
- getActionAvailabilityState: (params) => params.approvalKind === "plugin" && params.cfg.approvals?.plugin?.slack && (!params.request || !isSlackPluginApprovalRequest(params.request) || resolvePluginApprovalSlackApprovers(params.cfg, params.request) !== void 0) ? { kind: params.request && !shouldHandleSlackNativeApprovalRequest({
121
+ getActionAvailabilityStateAsync: async (params) => params.approvalKind === "plugin" && params.cfg.approvals?.plugin?.slack && (!params.request || !isSlackPluginApprovalRequest(params.request) || resolvePluginApprovalSlackApprovers(params.cfg, params.request) !== void 0) ? { kind: params.request && !await shouldHandleSlackNativeApprovalRequest({
122
122
  ...params,
123
123
  approvalKind: "plugin",
124
124
  request: params.request
@@ -126,10 +126,10 @@ const slackApprovalCapability = {
126
126
  delivery: {
127
127
  ...baseSlackApprovalCapability.delivery,
128
128
  shouldBlockForwardingFallback: (input) => shouldConsiderSlackNativeForwardingSuppression(input) && input.approvalKind === "plugin" && isSlackPluginApprovalRequest(input.request) && resolvePluginApprovalSlackApprovers(input.cfg, input.request) !== void 0,
129
- shouldSuppressForwardingFallback: (input) => {
129
+ shouldSuppressForwardingFallbackAsync: async (input) => {
130
130
  if (!shouldConsiderSlackNativeForwardingSuppression(input)) return false;
131
131
  if (input.approvalKind === "plugin" && !isSlackPluginApprovalRequest(input.request)) return true;
132
- const canHandleNative = shouldHandleSlackNativeApprovalRequest({
132
+ const canHandleNative = await shouldHandleSlackNativeApprovalRequest({
133
133
  cfg: input.cfg,
134
134
  accountId: resolveSlackNativeSuppressionAccountId(input),
135
135
  approvalKind: input.approvalKind,
@@ -139,14 +139,14 @@ const slackApprovalCapability = {
139
139
  return shouldSuppressSlackForwardingFallback(input);
140
140
  }
141
141
  },
142
- native: baseSlackNativeAdapter ? {
142
+ nativeAsync: baseSlackNativeAdapter ? {
143
143
  ...baseSlackNativeAdapter,
144
- describeDeliveryCapabilities: (params) => {
145
- const capabilities = baseSlackNativeAdapter.describeDeliveryCapabilities(params);
144
+ describeDeliveryCapabilities: async (params) => {
145
+ const capabilities = await baseSlackNativeAdapter.describeDeliveryCapabilities(params);
146
146
  const { request, approvalKind } = params;
147
147
  const described = {
148
148
  ...capabilities,
149
- enabled: shouldHandleSlackNativeApprovalRequest(params)
149
+ enabled: await shouldHandleSlackNativeApprovalRequest(params)
150
150
  };
151
151
  if (approvalKind !== "plugin" || !isSlackPluginApprovalRequest(request)) return described;
152
152
  if (resolvePluginApprovalSlackApprovers(params.cfg, request) !== void 0) return {
@@ -154,7 +154,7 @@ const slackApprovalCapability = {
154
154
  preferredSurface: "approver-dm",
155
155
  supportsApproverDmSurface: true
156
156
  };
157
- if (!shouldHandleSlackPluginViaForwardingSession(params)) return described;
157
+ if (!await shouldHandleSlackPluginViaForwardingSession(params)) return described;
158
158
  return {
159
159
  ...described,
160
160
  preferredSurface: "origin",
@@ -378,7 +378,7 @@ const SLACK_TOOL_DELIVERY_ACTIONS = /* @__PURE__ */ new Set([
378
378
  "unpinMessage",
379
379
  "uploadFile"
380
380
  ]);
381
- const loadSlackActionRuntime$1 = createLazyRuntimeModule(() => import("./action-runtime.runtime-C5xceJoS.mjs"));
381
+ const loadSlackActionRuntime$1 = createLazyRuntimeModule(() => import("./action-runtime.runtime-WS3mGjut.mjs"));
382
382
  function resolveSlackActionContext(ctx, toolContext) {
383
383
  if (!toolContext && !ctx.mediaAccess && !ctx.mediaLocalRoots && !ctx.mediaReadFile && !ctx.conversationReadOrigin && !ctx.requesterAccountId && !ctx.requesterSenderId && !ctx.assertDirectAdapterHandoff) return;
384
384
  return {
@@ -431,10 +431,6 @@ function shouldUseWorkspaceAwareSlackActionSend(rawTarget, context) {
431
431
  }
432
432
  //#endregion
433
433
  //#region extensions/slack/src/conversation-route-owner.ts
434
- function inspectSlackConversationRouteOwner(params) {
435
- const prepared = prepareSlackConversationRouteOwner(params);
436
- return prepared.kind === "prepared" ? prepared.resolve() : prepared.owner;
437
- }
438
434
  function prepareSlackConversationRouteOwner(params) {
439
435
  const accountId = normalizeAccountId(params.accountId);
440
436
  const accountConfig = resolveAccountEntry(params.cfg.channels?.slack?.accounts, accountId);
@@ -520,9 +516,9 @@ function prepareSlackConversationRouteOwner(params) {
520
516
  }
521
517
  };
522
518
  }
523
- function prepareSlackConversationRouteOwners(inputs, inspectBindings) {
519
+ async function prepareSlackConversationRouteOwnersAsync(inputs, inspectBindings) {
524
520
  const prepared = inputs.map(prepareSlackConversationRouteOwner);
525
- const inspections = inspectBindings(prepared.flatMap((item) => item.kind === "prepared" && item.route.bindingsEnabled ? [{
521
+ const inspect = await inspectBindings(prepared.flatMap((item) => item.kind === "prepared" && item.route.bindingsEnabled ? [{
526
522
  channel: "slack",
527
523
  accountId: item.route.accountId,
528
524
  conversationId: item.route.baseConversationId
@@ -534,27 +530,27 @@ function prepareSlackConversationRouteOwners(inputs, inspectBindings) {
534
530
  }] : []] : []));
535
531
  let index = 0;
536
532
  const nextInspection = () => {
537
- const inspection = inspections[index++];
538
- if (!inspection) throw new Error("Slack binding owner returned an incomplete selection");
539
- return inspection;
533
+ const position = index++;
534
+ return () => {
535
+ const inspection = inspect()[position];
536
+ if (!inspection) throw new Error("Slack binding owner returned an incomplete selection");
537
+ return inspection;
538
+ };
540
539
  };
541
540
  return prepared.map((item) => {
542
541
  if (item.kind === "terminal") return () => item.owner;
543
- const base = item.route.bindingsEnabled ? nextInspection() : {
542
+ const base = item.route.bindingsEnabled ? nextInspection() : () => ({
544
543
  status: "available",
545
544
  binding: null
546
- };
545
+ });
547
546
  const thread = item.route.bindingsEnabled && item.route.runtimeBindingThreadId ? nextInspection() : base;
548
547
  return () => item.resolve({
549
- base,
550
- thread
548
+ base: base(),
549
+ thread: thread()
551
550
  });
552
551
  });
553
552
  }
554
- const slackConversationRouteOwners = {
555
- resolveConversationRouteOwner: inspectSlackConversationRouteOwner,
556
- prepareConversationRouteOwners: prepareSlackConversationRouteOwners
557
- };
553
+ const slackConversationRouteOwners = { prepareConversationRouteOwnersAsync: prepareSlackConversationRouteOwnersAsync };
558
554
  //#endregion
559
555
  //#region extensions/slack/src/enterprise-user-route.ts
560
556
  /** Resolve a workspace for a detached Enterprise DM without opening a conversation. */
@@ -616,20 +612,20 @@ function buildSlackThreadingToolContext(params) {
616
612
  //#region extensions/slack/src/channel.ts
617
613
  const loadExtensionSharedSdk = createLazyRuntimeModule(() => import("openclaw/plugin-sdk/extension-shared"));
618
614
  const loadTargetResolverRuntimeSdk = createLazyRuntimeModule(() => import("openclaw/plugin-sdk/target-resolver-runtime"));
619
- const loadSlackScopesModule = createLazyRuntimeModule(() => import("./scopes-aMcMHhXk.mjs"));
620
- const loadSlackOutboundAdapterModule = createLazyRuntimeModule(() => import("./outbound-adapter-4HdGq-8r.mjs"));
615
+ const loadSlackScopesModule = createLazyRuntimeModule(() => import("./scopes-DfQVi8Jw.mjs"));
616
+ const loadSlackOutboundAdapterModule = createLazyRuntimeModule(() => import("./outbound-adapter-BlN9vmT-.mjs"));
621
617
  const bindSlackOutbound = createLazyRuntimeMethodBinder(loadSlackOutboundAdapterModule);
622
618
  async function resolveSlackHandleAction() {
623
619
  return getOptionalSlackRuntime()?.channel?.slack?.handleSlackAction ?? (await loadSlackActionRuntime()).handleSlackAction;
624
620
  }
625
- const loadSlackDirectoryConfigModule = createLazyRuntimeModule(() => import("./directory-config-BEDZPfDn.mjs").then((n) => n.t));
626
- const loadSlackResolveChannelsModule = createLazyRuntimeModule(() => import("./resolve-channels-B96cgprw.mjs").then((n) => n.n));
627
- const loadSlackResolveUsersModule = createLazyRuntimeModule(() => import("./resolve-users-Xz9aPdns.mjs").then((n) => n.n));
628
- const loadSlackActionRuntime = createLazyRuntimeModule(() => import("./action-runtime.runtime-C5xceJoS.mjs"));
629
- const loadSlackSendRuntime = createLazyRuntimeModule(() => import("./send-CLmsR42r.mjs").then((n) => n.n));
630
- const loadSlackProbeModule = createLazyRuntimeModule(() => import("./probe-CyX52GtD.mjs").then((n) => n.n));
631
- const loadSlackMonitorModule = createLazyRuntimeModule(() => import("./monitor-BnN2px0N.mjs").then((n) => n.t));
632
- const loadSlackDirectoryLiveModule = createLazyRuntimeModule(() => import("./directory-live-FipfeCwt.mjs").then((n) => n.t));
621
+ const loadSlackDirectoryConfigModule = createLazyRuntimeModule(() => import("./directory-config-Cjj0N8R0.mjs").then((n) => n.t));
622
+ const loadSlackResolveChannelsModule = createLazyRuntimeModule(() => import("./resolve-channels-DRRhElwz.mjs").then((n) => n.n));
623
+ const loadSlackResolveUsersModule = createLazyRuntimeModule(() => import("./resolve-users-Cz8e17ky.mjs").then((n) => n.n));
624
+ const loadSlackActionRuntime = createLazyRuntimeModule(() => import("./action-runtime.runtime-WS3mGjut.mjs"));
625
+ const loadSlackSendRuntime = createLazyRuntimeModule(() => import("./send-pi6r24yv.mjs").then((n) => n.n));
626
+ const loadSlackProbeModule = createLazyRuntimeModule(() => import("./probe-IiHogLQN.mjs").then((n) => n.n));
627
+ const loadSlackMonitorModule = createLazyRuntimeModule(() => import("./monitor-DmJ-Qbx4.mjs").then((n) => n.t));
628
+ const loadSlackDirectoryLiveModule = createLazyRuntimeModule(() => import("./directory-live-BIKD-5B_.mjs").then((n) => n.t));
633
629
  async function setSlackHeartbeatThreadStatus(params) {
634
630
  const threadTs = resolveSlackThreadTsValue({ threadId: params.threadId });
635
631
  const target = parseSlackTarget(params.to, { defaultKind: "channel" });
@@ -1,7 +1,7 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-B4FMCO8f.mjs";
2
- import { d as resolveSlackOperationToken, s as resolveSlackAccount } from "./accounts-BMg9YLIv.mjs";
3
- import { f as assertSlackDetachedTargetAllowed } from "./session-status-CcXe10zN.mjs";
4
- import { d as createSlackReadClient, m as createSlackWebClient, y as readLruMapEntry } from "./probe-CyX52GtD.mjs";
2
+ import { d as resolveSlackOperationToken, s as resolveSlackAccount } from "./accounts-msihSF3-.mjs";
3
+ import { m as assertSlackDetachedTargetAllowed } from "./session-status-DQY4hZLd.mjs";
4
+ import { d as createSlackReadClient, m as createSlackWebClient, y as readLruMapEntry } from "./probe-IiHogLQN.mjs";
5
5
  import { normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
6
6
  import { normalizeStringEntriesLower } from "openclaw/plugin-sdk/string-normalization-runtime";
7
7
  import { pruneMapToMaxSize } from "openclaw/plugin-sdk/collection-runtime";
@@ -1,8 +1,8 @@
1
1
  import { i as isSlackSetupAccountConfigured } from "./account-configured-zcR9TJJN.mjs";
2
- import { i as listSlackAccountIds, o as resolveDefaultSlackAccountId, s as resolveSlackAccount, u as resolveSlackConfigAccessorAccount } from "./accounts-BMg9YLIv.mjs";
3
- import { t as inspectSlackAccount } from "./account-inspect-D58VVDjk.mjs";
2
+ import { i as listSlackAccountIds, o as resolveDefaultSlackAccountId, s as resolveSlackAccount, u as resolveSlackConfigAccessorAccount } from "./accounts-msihSF3-.mjs";
3
+ import { t as inspectSlackAccount } from "./account-inspect-CmkKiSb9.mjs";
4
4
  import { t as DEFAULT_SLACK_SUGGESTED_PROMPTS } from "./channel-meta-C443t-lI.mjs";
5
- import { t as SlackChannelConfigSchema } from "./config-schema-BH0K9-Um.mjs";
5
+ import { t as SlackChannelConfigSchema } from "./config-schema-DNnh6bWU.mjs";
6
6
  import { normalizeSecretInputString } from "openclaw/plugin-sdk/secret-input";
7
7
  import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
8
8
  import { adaptScopedAccountAccessor, createScopedChannelConfigAdapter } from "openclaw/plugin-sdk/channel-config-helpers";
@@ -550,7 +550,7 @@ const slackSetupPlugin = {
550
550
  markdownCapable: true,
551
551
  preferSessionLookupForAnnounceTarget: true
552
552
  },
553
- setupWizard: createSlackSetupWizardProxy(() => import("./setup-surface-368jx6Uc.mjs")),
553
+ setupWizard: createSlackSetupWizardProxy(() => import("./setup-surface-9WVQgYCT.mjs")),
554
554
  capabilities: {
555
555
  chatTypes: [
556
556
  "direct",
@@ -41,7 +41,7 @@ const slackChannelConfigUiHints = {
41
41
  implicitMentions: true,
42
42
  streaming: {
43
43
  "": "Unified Slack stream preview mode: \"off\" | \"partial\" | \"block\" | \"progress\" (default). Legacy boolean/streamMode keys are auto-mapped.",
44
- mode: "Canonical Slack preview mode: \"off\" | \"partial\" | \"block\" | \"progress\" (default). Default progress outside reply threads uses only a temporary typing reaction. Any explicit streaming.progress setting opts top-level turns into a preview, except nativeTaskCards: true, which only affects threads.",
44
+ mode: "Slack preview mode: \"off\" | \"partial\" | \"block\" | \"progress\" (default). Default progress outside reply threads uses only a temporary typing reaction. Any explicit streaming.progress setting opts top-level turns into a preview, except nativeTaskCards: true, which only affects threads.",
45
45
  chunkMode: "Chunking mode for outbound Slack text delivery: \"length\" (default) or \"newline\".",
46
46
  "block.enabled": "Enable chunked block-style Slack preview delivery when channels.slack.streaming.mode=\"block\".",
47
47
  "block.coalesce": "Merge streamed Slack block replies before final delivery.",
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-B4FMCO8f.mjs";
2
- import { a as mergeSlackAccountConfig, c as resolveSlackAccountAllowFrom, o as resolveDefaultSlackAccountId } from "./accounts-BMg9YLIv.mjs";
2
+ import { a as mergeSlackAccountConfig, c as resolveSlackAccountAllowFrom, o as resolveDefaultSlackAccountId } from "./accounts-msihSF3-.mjs";
3
3
  import { a as parseSlackTarget } from "./target-parsing-FFE26kOV.mjs";
4
4
  import "./targets-C6LZQL1Q.mjs";
5
5
  import { normalizeAccountId } from "openclaw/plugin-sdk/account-resolution";
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-B4FMCO8f.mjs";
2
- import { s as resolveSlackAccount } from "./accounts-BMg9YLIv.mjs";
3
- import { c as collectSlackCursorPages, l as fetchSlackChannelListPage, u as createSlackLookupClient } from "./probe-CyX52GtD.mjs";
2
+ import { s as resolveSlackAccount } from "./accounts-msihSF3-.mjs";
3
+ import { c as collectSlackCursorPages, l as fetchSlackChannelListPage, u as createSlackLookupClient } from "./probe-IiHogLQN.mjs";
4
4
  import { normalizeLowercaseStringOrEmpty, normalizeOptionalLowercaseString, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
5
5
  //#region extensions/slack/src/directory-live.ts
6
6
  var directory_live_exports = /* @__PURE__ */ __exportAll({
@@ -0,0 +1,2 @@
1
+ import "./registry-DizWcnNp.mjs";
2
+ export {};
@@ -1,5 +1,5 @@
1
- import { i as listSlackAccountIds } from "./accounts-BMg9YLIv.mjs";
2
- import { t as inspectSlackAccount } from "./account-inspect-D58VVDjk.mjs";
1
+ import { i as listSlackAccountIds } from "./accounts-msihSF3-.mjs";
2
+ import { t as inspectSlackAccount } from "./account-inspect-CmkKiSb9.mjs";
3
3
  import { r as resolveSlackThreadTsValue, t as normalizeSlackThreadTsCandidate } from "./thread-ts-Cvt7WD6B.mjs";
4
4
  import { createActionGate } from "openclaw/plugin-sdk/channel-actions";
5
5
  import { extractToolSend } from "openclaw/plugin-sdk/tool-send";