@openclaw/slack 2026.5.24-beta.1 → 2026.5.25-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.
- package/dist/{action-runtime-ClZjzvJU.js → action-runtime-aNlZUC5X.js} +6 -4
- package/dist/action-runtime.runtime-CLBURvAS.js +2 -0
- package/dist/{actions-Dp1AKisQ.js → actions-DZqQvsrH.js} +2 -2
- package/dist/{actions.runtime-BzvmbC0z.js → actions.runtime-BnyePHn6.js} +1 -1
- package/dist/{allow-list-ChDz7vQO.js → allow-list-B1lkGjwl.js} +2 -2
- package/dist/api.js +10 -10
- package/dist/{approval-handler.runtime-DQdr992C.js → approval-handler.runtime-XWqmvXQj.js} +1 -1
- package/dist/{channel-CXs510aj.js → channel-DmywKR6E.js} +19 -18
- package/dist/channel-api-DdLCPu8a.js +20 -0
- package/dist/channel-plugin-api.js +1 -1
- package/dist/{channel.setup-CcyPmfoS.js → channel.setup-BVEey2Ge.js} +3 -2
- package/dist/{client-CMipJma0.js → client-Dc2Ji2YN.js} +1 -20
- package/dist/{directory-live-Dq12TcgS.js → directory-live-Cl83cGLZ.js} +1 -1
- package/dist/{errors-co-Fg3Ll.js → errors-CZtmv-h0.js} +1 -3
- package/dist/inbound-contract-test-api.js +2 -2
- package/dist/{interactive-replies-9v8OYeGV.js → interactive-replies-DtYu4Sf5.js} +4 -4
- package/dist/interactive-replies-api.js +1 -1
- package/dist/{message-tool-api-BXEWUFiV.js → message-tool-api-BieXX5lk.js} +1 -1
- package/dist/message-tool-api.js +1 -1
- package/dist/{monitor-CAfY1OZE.js → monitor-DxvDcCuQ.js} +4 -4
- package/dist/{outbound-adapter-Dtqbyixa.js → outbound-adapter-C3lEsGEd.js} +2 -2
- package/dist/outbound-payload-test-api.js +1 -1
- package/dist/{outbound-payload.test-harness-Ca13aYOM.js → outbound-payload.test-harness-C57ipELl.js} +1 -1
- package/dist/{pipeline.runtime-CwVyPQfY.js → pipeline.runtime-Dd4VXXjS.js} +9 -9
- package/dist/{policy-pdU_0AU0.js → policy-pu8tsF8_.js} +1 -1
- package/dist/{prepare-DFa-tK12.js → prepare-2yHC1V9V.js} +22 -28
- package/dist/{prepare.test-helpers-Y5XylD5f.js → prepare.test-helpers-dKm_6IFd.js} +1 -1
- package/dist/{probe-BRokY757.js → probe-cBVPhCKZ.js} +2 -2
- package/dist/{provider-GYmtqVRL.js → provider-CaIj5hMH.js} +27 -45
- package/dist/{replies-y6Coc_4v.js → replies-C6KAYDBW.js} +2 -2
- package/dist/{resolve-channels-D3v41FCM.js → resolve-channels-CT4oiz_9.js} +1 -1
- package/dist/{resolve-users-uMz1N7mm.js → resolve-users-o5S-Ijks.js} +1 -1
- package/dist/{room-context-C-6EgkTA.js → room-context-BsIaiZhE.js} +3 -3
- package/dist/{runtime-api-DHq45F2b.js → runtime-api-CyPE-EvY.js} +1 -1
- package/dist/runtime-api.js +9 -9
- package/dist/{scopes-BniaiyvU.js → scopes-CnyhLIPT.js} +4 -4
- package/dist/{send-B_Z5v6sU.js → send-CXGjjgpT.js} +8 -10
- package/dist/send.runtime-B0Gg0Ncx.js +2 -0
- package/dist/send.runtime-BbMOcD7_.js +2 -0
- package/dist/{setup-core-CJxjcOda.js → setup-core-DKe7Ug3V.js} +2 -2
- package/dist/setup-plugin-api.js +1 -1
- package/dist/{setup-surface-ByaVDcYW.js → setup-surface-DZAXKCKa.js} +6 -5
- package/dist/{shared-CHupOun0.js → shared-CqkL-uuZ.js} +4 -3
- package/dist/{slash-dispatch.runtime-u_Vj5RGB.js → slash-dispatch.runtime-CANn5muk.js} +1 -1
- package/dist/test-api.js +6 -6
- package/node_modules/qs/CHANGELOG.md +178 -0
- package/node_modules/qs/README.md +19 -1
- package/node_modules/qs/dist/qs.js +17 -17
- package/node_modules/qs/eslint.config.mjs +1 -0
- package/node_modules/qs/lib/parse.js +57 -25
- package/node_modules/qs/lib/stringify.js +11 -4
- package/node_modules/qs/lib/utils.js +2 -0
- package/node_modules/qs/package.json +3 -3
- package/node_modules/qs/test/parse.js +195 -4
- package/node_modules/qs/test/stringify.js +138 -0
- package/node_modules/qs/test/utils.js +38 -3
- package/node_modules/ws/lib/receiver.js +54 -0
- package/node_modules/ws/lib/websocket-server.js +8 -0
- package/node_modules/ws/lib/websocket.js +14 -0
- package/node_modules/ws/package.json +1 -1
- package/npm-shrinkwrap.json +9 -9
- package/package.json +4 -4
- package/dist/action-runtime.runtime-BUnUNH27.js +0 -2
- package/dist/send.runtime-BdYdgXuZ.js +0 -2
- package/dist/send.runtime-bgiJsule.js +0 -2
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { i as resolveSlackChannelId, r as parseSlackTarget } from "./target-parsing-C7eeWg7M.js";
|
|
2
2
|
import "./targets-nUqxHGgg.js";
|
|
3
3
|
import { i as parseSlackBlocksInput } from "./thread-ts-ks-O8cEG.js";
|
|
4
|
-
import { a as readNumberParam, c as withNormalizedTimestamp, n as imageResultFromFile, o as readReactionParams, r as jsonResult, s as readStringParam, t as createActionGate } from "./runtime-api-
|
|
5
|
-
import { n as resolveSlackChannelConfig, t as isSlackChannelAllowedByPolicy } from "./policy-
|
|
4
|
+
import { a as readNumberParam, c as withNormalizedTimestamp, n as imageResultFromFile, o as readReactionParams, r as jsonResult, s as readStringParam, t as createActionGate } from "./runtime-api-CyPE-EvY.js";
|
|
5
|
+
import { n as resolveSlackChannelConfig, t as isSlackChannelAllowedByPolicy } from "./policy-pu8tsF8_.js";
|
|
6
6
|
import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
7
7
|
import { isSingleUseReplyToMode } from "openclaw/plugin-sdk/reply-reference";
|
|
8
8
|
import { readBooleanParam } from "openclaw/plugin-sdk/boolean-param";
|
|
@@ -30,7 +30,7 @@ function sameSlackChannelTarget(targetChannel, currentChannelId) {
|
|
|
30
30
|
let slackActionsRuntimePromise;
|
|
31
31
|
let slackAccountsRuntimePromise;
|
|
32
32
|
function loadSlackActionsRuntime() {
|
|
33
|
-
slackActionsRuntimePromise ??= import("./actions.runtime-
|
|
33
|
+
slackActionsRuntimePromise ??= import("./actions.runtime-BnyePHn6.js");
|
|
34
34
|
return slackActionsRuntimePromise;
|
|
35
35
|
}
|
|
36
36
|
function loadSlackAccountsRuntime() {
|
|
@@ -322,6 +322,7 @@ async function handleSlackAction(params, cfg, context) {
|
|
|
322
322
|
placeholder: downloaded.placeholder,
|
|
323
323
|
media: {
|
|
324
324
|
mediaUrl: downloaded.path,
|
|
325
|
+
outbound: false,
|
|
325
326
|
...downloaded.contentType ? { contentType: downloaded.contentType } : {}
|
|
326
327
|
}
|
|
327
328
|
});
|
|
@@ -332,7 +333,8 @@ async function handleSlackAction(params, cfg, context) {
|
|
|
332
333
|
details: {
|
|
333
334
|
fileId,
|
|
334
335
|
path: downloaded.path,
|
|
335
|
-
...downloaded.contentType ? { contentType: downloaded.contentType } : {}
|
|
336
|
+
...downloaded.contentType ? { contentType: downloaded.contentType } : {},
|
|
337
|
+
media: { outbound: false }
|
|
336
338
|
}
|
|
337
339
|
});
|
|
338
340
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-D7D4PA-g.js";
|
|
2
2
|
import { a as resolveSlackAccount, d as resolveSlackBotToken } from "./accounts-BnLQ3fe2.js";
|
|
3
3
|
import { a as validateSlackBlocksArray, o as SLACK_TEXT_LIMIT, s as truncateSlackText } from "./thread-ts-ks-O8cEG.js";
|
|
4
|
-
import { a as getSlackWriteClient, r as createSlackWebClient } from "./client-
|
|
5
|
-
import { c as buildSlackBlocksFallbackText, t as sendMessageSlack } from "./send-
|
|
4
|
+
import { a as getSlackWriteClient, r as createSlackWebClient } from "./client-Dc2Ji2YN.js";
|
|
5
|
+
import { c as buildSlackBlocksFallbackText, t as sendMessageSlack } from "./send-CXGjjgpT.js";
|
|
6
6
|
import { normalizeLowercaseStringOrEmpty, normalizeOptionalLowercaseString, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
7
7
|
import { requireRuntimeConfig } from "openclaw/plugin-sdk/plugin-config-runtime";
|
|
8
8
|
import { logVerbose, logVerbose as logVerbose$1 } from "openclaw/plugin-sdk/runtime-env";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as listSlackEmojis, c as pinSlackMessage, d as removeOwnSlackReactions, f as removeSlackReaction, i as getSlackMemberInfo, l as reactSlackMessage, m as unpinSlackMessage, n as downloadSlackFile, o as listSlackPins, p as sendSlackMessage, r as editSlackMessage, s as listSlackReactions, t as deleteSlackMessage, u as readSlackMessages } from "./actions-
|
|
1
|
+
import { a as listSlackEmojis, c as pinSlackMessage, d as removeOwnSlackReactions, f as removeSlackReaction, i as getSlackMemberInfo, l as reactSlackMessage, m as unpinSlackMessage, n as downloadSlackFile, o as listSlackPins, p as sendSlackMessage, r as editSlackMessage, s as listSlackReactions, t as deleteSlackMessage, u as readSlackMessages } from "./actions-DZqQvsrH.js";
|
|
2
2
|
export { deleteSlackMessage, downloadSlackFile, editSlackMessage, getSlackMemberInfo, listSlackEmojis, listSlackPins, listSlackReactions, pinSlackMessage, reactSlackMessage, readSlackMessages, removeOwnSlackReactions, removeSlackReaction, sendSlackMessage, unpinSlackMessage };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { normalizeOptionalLowercaseString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
2
2
|
import { compileAllowlist, resolveCompiledAllowlistMatch } from "openclaw/plugin-sdk/allow-from";
|
|
3
|
-
import { normalizeHyphenSlug, normalizeStringEntries as normalizeStringEntries$1, normalizeStringEntriesLower } from "openclaw/plugin-sdk/string-normalization-runtime";
|
|
3
|
+
import { normalizeHyphenSlug, normalizeStringEntries as normalizeStringEntries$1, normalizeStringEntriesLower as normalizeStringEntriesLower$1 } from "openclaw/plugin-sdk/string-normalization-runtime";
|
|
4
4
|
//#region extensions/slack/src/monitor/allow-list.ts
|
|
5
5
|
const SLACK_SLUG_CACHE_MAX = 512;
|
|
6
6
|
const slackSlugCache = /* @__PURE__ */ new Map();
|
|
@@ -20,7 +20,7 @@ function normalizeAllowList(list) {
|
|
|
20
20
|
return normalizeStringEntries$1(list);
|
|
21
21
|
}
|
|
22
22
|
function normalizeAllowListLower(list) {
|
|
23
|
-
return normalizeStringEntriesLower(list);
|
|
23
|
+
return normalizeStringEntriesLower$1(list);
|
|
24
24
|
}
|
|
25
25
|
function normalizeSlackAllowOwnerEntry(entry) {
|
|
26
26
|
const trimmed = normalizeOptionalLowercaseString(entry);
|
package/dist/api.js
CHANGED
|
@@ -2,20 +2,20 @@ import { a as resolveSlackAccount, i as resolveDefaultSlackAccountId, l as resol
|
|
|
2
2
|
import { t as inspectSlackAccount } from "./account-inspect-vVg3pT03.js";
|
|
3
3
|
import { i as resolveSlackChannelId, n as normalizeSlackMessagingTarget, r as parseSlackTarget, t as looksLikeSlackTargetId } from "./target-parsing-C7eeWg7M.js";
|
|
4
4
|
import "./targets-nUqxHGgg.js";
|
|
5
|
-
import { i as resolveSlackChannelType, n as buildSlackThreadingToolContext, o as resolveSlackAutoThreadId, r as resetSlackChannelTypeCacheForTest, t as slackPlugin } from "./channel-
|
|
5
|
+
import { i as resolveSlackChannelType, n as buildSlackThreadingToolContext, o as resolveSlackAutoThreadId, r as resetSlackChannelTypeCacheForTest, t as slackPlugin } from "./channel-DmywKR6E.js";
|
|
6
6
|
import { n as resolveSlackGroupRequireMention, r as resolveSlackGroupToolPolicy } from "./reply-blocks-BlOURkUm.js";
|
|
7
7
|
import { n as buildSlackPresentationBlocks, t as buildSlackInteractiveBlocks } from "./blocks-render-CNC4vQnd.js";
|
|
8
8
|
import { a as validateSlackBlocksArray, i as parseSlackBlocksInput, r as SLACK_MAX_BLOCKS } from "./thread-ts-ks-O8cEG.js";
|
|
9
|
-
import { n as extractSlackToolSend, r as listSlackMessageActions } from "./message-tool-api-
|
|
10
|
-
import { n as isSlackInteractiveRepliesEnabled, r as parseSlackOptionsLine, t as compileSlackInteractiveReplies } from "./interactive-replies-
|
|
11
|
-
import { a as getSlackWriteClient, c as resolveSlackWebClientOptions, i as createSlackWriteClient, l as resolveSlackWriteClientOptions, n as createSlackTokenCacheKey, o as SLACK_DEFAULT_RETRY_OPTIONS, r as createSlackWebClient, s as SLACK_WRITE_RETRY_OPTIONS, t as clearSlackWriteClientCacheForTest } from "./client-
|
|
12
|
-
import { a as normalizeSlackSlug, i as normalizeSlackAllowOwnerEntry, n as normalizeAllowList, o as resolveSlackAllowListMatch, r as normalizeAllowListLower, s as resolveSlackUserAllowed, t as allowListMatches } from "./allow-list-
|
|
13
|
-
import { t as slackSetupPlugin } from "./channel.setup-
|
|
14
|
-
import { a as recordSlackThreadParticipation, n as clearSlackThreadParticipationCache, r as hasSlackThreadParticipation } from "./send-
|
|
15
|
-
import { a as listSlackEmojis, c as pinSlackMessage, d as removeOwnSlackReactions, f as removeSlackReaction, i as getSlackMemberInfo, l as reactSlackMessage, m as unpinSlackMessage, n as downloadSlackFile, o as listSlackPins, p as sendSlackMessage, r as editSlackMessage, s as listSlackReactions, t as deleteSlackMessage, u as readSlackMessages } from "./actions-
|
|
9
|
+
import { n as extractSlackToolSend, r as listSlackMessageActions } from "./message-tool-api-BieXX5lk.js";
|
|
10
|
+
import { n as isSlackInteractiveRepliesEnabled, r as parseSlackOptionsLine, t as compileSlackInteractiveReplies } from "./interactive-replies-DtYu4Sf5.js";
|
|
11
|
+
import { a as getSlackWriteClient, c as resolveSlackWebClientOptions, i as createSlackWriteClient, l as resolveSlackWriteClientOptions, n as createSlackTokenCacheKey, o as SLACK_DEFAULT_RETRY_OPTIONS, r as createSlackWebClient, s as SLACK_WRITE_RETRY_OPTIONS, t as clearSlackWriteClientCacheForTest } from "./client-Dc2Ji2YN.js";
|
|
12
|
+
import { a as normalizeSlackSlug, i as normalizeSlackAllowOwnerEntry, n as normalizeAllowList, o as resolveSlackAllowListMatch, r as normalizeAllowListLower, s as resolveSlackUserAllowed, t as allowListMatches } from "./allow-list-B1lkGjwl.js";
|
|
13
|
+
import { t as slackSetupPlugin } from "./channel.setup-BVEey2Ge.js";
|
|
14
|
+
import { a as recordSlackThreadParticipation, n as clearSlackThreadParticipationCache, r as hasSlackThreadParticipation } from "./send-CXGjjgpT.js";
|
|
15
|
+
import { a as listSlackEmojis, c as pinSlackMessage, d as removeOwnSlackReactions, f as removeSlackReaction, i as getSlackMemberInfo, l as reactSlackMessage, m as unpinSlackMessage, n as downloadSlackFile, o as listSlackPins, p as sendSlackMessage, r as editSlackMessage, s as listSlackReactions, t as deleteSlackMessage, u as readSlackMessages } from "./actions-DZqQvsrH.js";
|
|
16
16
|
import { n as listSlackDirectoryGroupsFromConfig, r as listSlackDirectoryPeersFromConfig } from "./directory-config-9_djLTOK.js";
|
|
17
17
|
import { n as registerSlackHttpHandler, r as normalizeSlackWebhookPath, t as handleSlackHttpRequest } from "./registry-bbjH7IHX.js";
|
|
18
|
-
import { t as probeSlack } from "./probe-
|
|
18
|
+
import { t as probeSlack } from "./probe-cBVPhCKZ.js";
|
|
19
19
|
import { t as collectSlackSecurityAuditFindings } from "./security-audit-CikQhBUY.js";
|
|
20
|
-
import { n as resolveSlackRuntimeGroupPolicy } from "./provider-
|
|
20
|
+
import { n as resolveSlackRuntimeGroupPolicy } from "./provider-CaIj5hMH.js";
|
|
21
21
|
export { SLACK_DEFAULT_RETRY_OPTIONS, SLACK_MAX_BLOCKS, SLACK_WRITE_RETRY_OPTIONS, resetSlackChannelTypeCacheForTest as __resetSlackChannelTypeCacheForTest, resetSlackChannelTypeCacheForTest, allowListMatches, buildSlackInteractiveBlocks, buildSlackPresentationBlocks, buildSlackThreadingToolContext, clearSlackThreadParticipationCache, clearSlackWriteClientCacheForTest, collectSlackSecurityAuditFindings, compileSlackInteractiveReplies, createSlackTokenCacheKey, createSlackWebClient, createSlackWriteClient, deleteSlackMessage, downloadSlackFile, editSlackMessage, extractSlackToolSend, getSlackMemberInfo, getSlackWriteClient, handleSlackHttpRequest, hasSlackThreadParticipation, inspectSlackAccount, isSlackInteractiveRepliesEnabled, listEnabledSlackAccounts, listSlackAccountIds, listSlackDirectoryGroupsFromConfig, listSlackDirectoryPeersFromConfig, listSlackEmojis, listSlackMessageActions, listSlackPins, listSlackReactions, looksLikeSlackTargetId, mergeSlackAccountConfig, normalizeAllowList, normalizeAllowListLower, normalizeSlackAllowOwnerEntry, normalizeSlackMessagingTarget, normalizeSlackSlug, normalizeSlackWebhookPath, parseSlackBlocksInput, parseSlackOptionsLine, parseSlackTarget, pinSlackMessage, probeSlack, reactSlackMessage, readSlackMessages, recordSlackThreadParticipation, registerSlackHttpHandler, removeOwnSlackReactions, removeSlackReaction, resolveDefaultSlackAccountId, resolveSlackAccount, resolveSlackAllowListMatch, resolveSlackAutoThreadId, resolveSlackChannelId, resolveSlackChannelType, resolveSlackGroupRequireMention, resolveSlackGroupToolPolicy, resolveSlackReplyToMode, resolveSlackRuntimeGroupPolicy, resolveSlackUserAllowed, resolveSlackWebClientOptions, resolveSlackWriteClientOptions, sendSlackMessage, slackPlugin, slackSetupPlugin, unpinSlackMessage, validateSlackBlocksArray };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as resolveSlackApprovalKind, f as normalizeSlackApproverId, i as isSlackAnyNativeApprovalClientEnabled, o as shouldHandleSlackNativeApprovalRequest, t as resolveSlackReplyBlocks } from "./reply-blocks-BlOURkUm.js";
|
|
2
2
|
import { s as truncateSlackText } from "./thread-ts-ks-O8cEG.js";
|
|
3
|
-
import { t as sendMessageSlack } from "./send-
|
|
3
|
+
import { t as sendMessageSlack } from "./send-CXGjjgpT.js";
|
|
4
4
|
import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
5
5
|
import { buildChannelApprovalNativeTargetKey } from "openclaw/plugin-sdk/approval-native-runtime";
|
|
6
6
|
import { logError } from "openclaw/plugin-sdk/logging-core";
|
|
@@ -4,13 +4,14 @@ import "./targets-nUqxHGgg.js";
|
|
|
4
4
|
import { a as resolveSlackApprovalKind, c as isSlackApprovalAuthorizedSender, d as isSlackExecApprovalClientEnabled, i as isSlackAnyNativeApprovalClientEnabled, l as getSlackExecApprovalApprovers, m as shouldSuppressLocalSlackExecApprovalPrompt, n as resolveSlackGroupRequireMention, o as shouldHandleSlackNativeApprovalRequest, p as resolveSlackExecApprovalTarget, r as resolveSlackGroupToolPolicy, s as getSlackApprovalApprovers, t as resolveSlackReplyBlocks, u as isSlackExecApprovalAuthorizedSender } from "./reply-blocks-BlOURkUm.js";
|
|
5
5
|
import { n as buildSlackPresentationBlocks, r as resolveSlackInteractiveBlockOffsets, t as buildSlackInteractiveBlocks } from "./blocks-render-CNC4vQnd.js";
|
|
6
6
|
import { n as resolveSlackThreadTsValue, o as SLACK_TEXT_LIMIT, t as normalizeSlackThreadTsCandidate } from "./thread-ts-ks-O8cEG.js";
|
|
7
|
-
import { n as extractSlackToolSend, t as describeSlackMessageTool } from "./message-tool-api-
|
|
8
|
-
import { n as isSlackInteractiveRepliesEnabled, t as compileSlackInteractiveReplies } from "./interactive-replies-
|
|
9
|
-
import {
|
|
10
|
-
import { r as
|
|
7
|
+
import { n as extractSlackToolSend, t as describeSlackMessageTool } from "./message-tool-api-BieXX5lk.js";
|
|
8
|
+
import { n as isSlackInteractiveRepliesEnabled, t as compileSlackInteractiveReplies } from "./interactive-replies-DtYu4Sf5.js";
|
|
9
|
+
import { a as resolveConfiguredFromRequiredCredentialStatuses, i as projectCredentialSnapshotFields, n as PAIRING_APPROVED_MESSAGE, t as DEFAULT_ACCOUNT_ID } from "./channel-api-DdLCPu8a.js";
|
|
10
|
+
import { r as createSlackWebClient } from "./client-Dc2Ji2YN.js";
|
|
11
|
+
import { r as normalizeAllowListLower } from "./allow-list-B1lkGjwl.js";
|
|
11
12
|
import { t as getOptionalSlackRuntime } from "./runtime-BOk7xkOl.js";
|
|
12
|
-
import { i as slackSecurityAdapter, n as isSlackPluginAccountConfigured, r as slackConfigAdapter, t as createSlackPluginBase } from "./shared-
|
|
13
|
-
import { i as SLACK_CHANNEL, n as createSlackSetupWizardProxy, r as slackSetupAdapter } from "./setup-core-
|
|
13
|
+
import { i as slackSecurityAdapter, n as isSlackPluginAccountConfigured, r as slackConfigAdapter, t as createSlackPluginBase } from "./shared-CqkL-uuZ.js";
|
|
14
|
+
import { i as SLACK_CHANNEL, n as createSlackSetupWizardProxy, r as slackSetupAdapter } from "./setup-core-DKe7Ug3V.js";
|
|
14
15
|
import { normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
15
16
|
import { adaptScopedAccountAccessor } from "openclaw/plugin-sdk/channel-config-helpers";
|
|
16
17
|
import { buildOutboundBaseSessionKey, normalizeMessageChannel } from "openclaw/plugin-sdk/routing";
|
|
@@ -235,7 +236,7 @@ const baseSlackApprovalCapability = createApproverRestrictedNativeApprovalCapabi
|
|
|
235
236
|
approvalKind: resolveSlackApprovalKind(request),
|
|
236
237
|
request
|
|
237
238
|
}),
|
|
238
|
-
load: async () => (await import("./approval-handler.runtime-
|
|
239
|
+
load: async () => (await import("./approval-handler.runtime-XWqmvXQj.js")).slackApprovalNativeRuntime
|
|
239
240
|
})
|
|
240
241
|
});
|
|
241
242
|
const baseSlackNativeAdapter = baseSlackApprovalCapability.native;
|
|
@@ -434,7 +435,7 @@ async function handleSlackMessageAction(params) {
|
|
|
434
435
|
//#region extensions/slack/src/channel-actions.ts
|
|
435
436
|
let slackActionRuntimePromise$1;
|
|
436
437
|
async function loadSlackActionRuntime$1() {
|
|
437
|
-
slackActionRuntimePromise$1 ??= import("./action-runtime.runtime-
|
|
438
|
+
slackActionRuntimePromise$1 ??= import("./action-runtime.runtime-CLBURvAS.js");
|
|
438
439
|
return await slackActionRuntimePromise$1;
|
|
439
440
|
}
|
|
440
441
|
function resolveSlackActionContext(params) {
|
|
@@ -564,9 +565,9 @@ const EXTENSION_SHARED_MODULE_ID = "openclaw/plugin-sdk/extension-shared";
|
|
|
564
565
|
const TARGET_RESOLVER_RUNTIME_MODULE_ID = "openclaw/plugin-sdk/target-resolver-runtime";
|
|
565
566
|
const loadExtensionSharedSdk = createLazyRuntimeModule(() => import(EXTENSION_SHARED_MODULE_ID));
|
|
566
567
|
const loadTargetResolverRuntimeSdk = createLazyRuntimeModule(() => import(TARGET_RESOLVER_RUNTIME_MODULE_ID));
|
|
567
|
-
const loadSlackSetupSurfaceModule = createLazyRuntimeModule(() => import("./setup-surface-
|
|
568
|
-
const loadSlackScopesModule = createLazyRuntimeModule(() => import("./scopes-
|
|
569
|
-
const loadSlackOutboundAdapterModule = createLazyRuntimeModule(() => import("./outbound-adapter-
|
|
568
|
+
const loadSlackSetupSurfaceModule = createLazyRuntimeModule(() => import("./setup-surface-DZAXKCKa.js"));
|
|
569
|
+
const loadSlackScopesModule = createLazyRuntimeModule(() => import("./scopes-CnyhLIPT.js"));
|
|
570
|
+
const loadSlackOutboundAdapterModule = createLazyRuntimeModule(() => import("./outbound-adapter-C3lEsGEd.js").then((n) => n.t));
|
|
570
571
|
async function resolveSlackHandleAction() {
|
|
571
572
|
return getOptionalSlackRuntime()?.channel?.slack?.handleSlackAction ?? (await loadSlackActionRuntime()).handleSlackAction;
|
|
572
573
|
}
|
|
@@ -587,26 +588,26 @@ let slackProbeModulePromise;
|
|
|
587
588
|
let slackMonitorModulePromise;
|
|
588
589
|
let slackDirectoryLiveModulePromise;
|
|
589
590
|
const loadSlackDirectoryConfigModule = createLazyRuntimeModule(() => import("./directory-config-9_djLTOK.js").then((n) => n.t));
|
|
590
|
-
const loadSlackResolveChannelsModule = createLazyRuntimeModule(() => import("./resolve-channels-
|
|
591
|
-
const loadSlackResolveUsersModule = createLazyRuntimeModule(() => import("./resolve-users-
|
|
591
|
+
const loadSlackResolveChannelsModule = createLazyRuntimeModule(() => import("./resolve-channels-CT4oiz_9.js").then((n) => n.n));
|
|
592
|
+
const loadSlackResolveUsersModule = createLazyRuntimeModule(() => import("./resolve-users-o5S-Ijks.js").then((n) => n.n));
|
|
592
593
|
async function loadSlackActionRuntime() {
|
|
593
|
-
slackActionRuntimePromise ??= import("./action-runtime.runtime-
|
|
594
|
+
slackActionRuntimePromise ??= import("./action-runtime.runtime-CLBURvAS.js");
|
|
594
595
|
return await slackActionRuntimePromise;
|
|
595
596
|
}
|
|
596
597
|
async function loadSlackSendRuntime() {
|
|
597
|
-
slackSendRuntimePromise ??= import("./send.runtime-
|
|
598
|
+
slackSendRuntimePromise ??= import("./send.runtime-B0Gg0Ncx.js");
|
|
598
599
|
return await slackSendRuntimePromise;
|
|
599
600
|
}
|
|
600
601
|
async function loadSlackProbeModule() {
|
|
601
|
-
slackProbeModulePromise ??= import("./probe-
|
|
602
|
+
slackProbeModulePromise ??= import("./probe-cBVPhCKZ.js").then((n) => n.n);
|
|
602
603
|
return await slackProbeModulePromise;
|
|
603
604
|
}
|
|
604
605
|
async function loadSlackMonitorModule() {
|
|
605
|
-
slackMonitorModulePromise ??= import("./monitor-
|
|
606
|
+
slackMonitorModulePromise ??= import("./monitor-DxvDcCuQ.js").then((n) => n.t);
|
|
606
607
|
return await slackMonitorModulePromise;
|
|
607
608
|
}
|
|
608
609
|
async function loadSlackDirectoryLiveModule() {
|
|
609
|
-
slackDirectoryLiveModulePromise ??= import("./directory-live-
|
|
610
|
+
slackDirectoryLiveModulePromise ??= import("./directory-live-Cl83cGLZ.js").then((n) => n.t);
|
|
610
611
|
return await slackDirectoryLiveModulePromise;
|
|
611
612
|
}
|
|
612
613
|
async function resolveSlackSendContext(params) {
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import "./target-parsing-C7eeWg7M.js";
|
|
2
|
+
import { DEFAULT_ACCOUNT_ID as DEFAULT_ACCOUNT_ID$1 } from "openclaw/plugin-sdk/account-id";
|
|
3
|
+
import { PAIRING_APPROVED_MESSAGE, projectCredentialSnapshotFields, resolveConfiguredFromRequiredCredentialStatuses } from "openclaw/plugin-sdk/channel-status";
|
|
4
|
+
//#region extensions/slack/src/channel-api.ts
|
|
5
|
+
const SLACK_CHANNEL_META = {
|
|
6
|
+
id: "slack",
|
|
7
|
+
label: "Slack",
|
|
8
|
+
selectionLabel: "Slack",
|
|
9
|
+
docsPath: "/channels/slack",
|
|
10
|
+
docsLabel: "slack",
|
|
11
|
+
blurb: "supports bot + app tokens, channels, threads, and interactive replies.",
|
|
12
|
+
systemImage: "number.square",
|
|
13
|
+
markdownCapable: true
|
|
14
|
+
};
|
|
15
|
+
function getChatChannelMeta(id) {
|
|
16
|
+
if (id !== SLACK_CHANNEL_META.id) throw new Error(`Unsupported Slack channel meta lookup: ${id}`);
|
|
17
|
+
return SLACK_CHANNEL_META;
|
|
18
|
+
}
|
|
19
|
+
//#endregion
|
|
20
|
+
export { resolveConfiguredFromRequiredCredentialStatuses as a, projectCredentialSnapshotFields as i, PAIRING_APPROVED_MESSAGE as n, getChatChannelMeta as r, DEFAULT_ACCOUNT_ID$1 as t };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as slackPlugin } from "./channel-
|
|
1
|
+
import { t as slackPlugin } from "./channel-DmywKR6E.js";
|
|
2
2
|
export { slackPlugin };
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { a as resolveSlackAccount, c as resolveSlackConfigAccessorAccount, i as resolveDefaultSlackAccountId, n as listSlackAccountIds } from "./accounts-BnLQ3fe2.js";
|
|
2
|
-
import
|
|
2
|
+
import "./channel-api-DdLCPu8a.js";
|
|
3
|
+
import { a as describeSlackSetupAccount, i as SLACK_CHANNEL, n as createSlackSetupWizardProxy, o as isSlackSetupAccountConfigured, r as slackSetupAdapter } from "./setup-core-DKe7Ug3V.js";
|
|
3
4
|
import { t as SlackChannelConfigSchema } from "./config-schema-CUiDK8HV.js";
|
|
4
5
|
import { adaptScopedAccountAccessor, createScopedChannelConfigAdapter } from "openclaw/plugin-sdk/channel-config-helpers";
|
|
5
6
|
import { formatAllowFromLowercase } from "openclaw/plugin-sdk/allow-from";
|
|
6
7
|
//#region extensions/slack/src/channel.setup.ts
|
|
7
|
-
const slackSetupWizard = createSlackSetupWizardProxy(async () => ({ slackSetupWizard: (await import("./setup-surface-
|
|
8
|
+
const slackSetupWizard = createSlackSetupWizardProxy(async () => ({ slackSetupWizard: (await import("./setup-surface-DZAXKCKa.js")).slackSetupWizard }));
|
|
8
9
|
const slackSetupConfigAdapter = createScopedChannelConfigAdapter({
|
|
9
10
|
sectionKey: SLACK_CHANNEL,
|
|
10
11
|
listAccountIds: listSlackAccountIds,
|
|
@@ -1,26 +1,7 @@
|
|
|
1
|
-
import "./target-parsing-C7eeWg7M.js";
|
|
2
|
-
import { DEFAULT_ACCOUNT_ID as DEFAULT_ACCOUNT_ID$1 } from "openclaw/plugin-sdk/account-id";
|
|
3
|
-
import { PAIRING_APPROVED_MESSAGE, projectCredentialSnapshotFields, resolveConfiguredFromRequiredCredentialStatuses } from "openclaw/plugin-sdk/channel-status";
|
|
4
1
|
import { createHash } from "node:crypto";
|
|
5
2
|
import { WebClient } from "@slack/web-api";
|
|
6
3
|
import { HttpsProxyAgent } from "https-proxy-agent";
|
|
7
4
|
import { resolveActiveManagedProxyTlsOptions, resolveEnvHttpProxyUrl } from "openclaw/plugin-sdk/fetch-runtime";
|
|
8
|
-
//#region extensions/slack/src/channel-api.ts
|
|
9
|
-
const SLACK_CHANNEL_META = {
|
|
10
|
-
id: "slack",
|
|
11
|
-
label: "Slack",
|
|
12
|
-
selectionLabel: "Slack",
|
|
13
|
-
docsPath: "/channels/slack",
|
|
14
|
-
docsLabel: "slack",
|
|
15
|
-
blurb: "supports bot + app tokens, channels, threads, and interactive replies.",
|
|
16
|
-
systemImage: "number.square",
|
|
17
|
-
markdownCapable: true
|
|
18
|
-
};
|
|
19
|
-
function getChatChannelMeta(id) {
|
|
20
|
-
if (id !== SLACK_CHANNEL_META.id) throw new Error(`Unsupported Slack channel meta lookup: ${id}`);
|
|
21
|
-
return SLACK_CHANNEL_META;
|
|
22
|
-
}
|
|
23
|
-
//#endregion
|
|
24
5
|
//#region extensions/slack/src/client-options.ts
|
|
25
6
|
const SLACK_DEFAULT_RETRY_OPTIONS = {
|
|
26
7
|
retries: 2,
|
|
@@ -121,4 +102,4 @@ function clearSlackWriteClientCacheForTest() {
|
|
|
121
102
|
slackWriteClientCache.clear();
|
|
122
103
|
}
|
|
123
104
|
//#endregion
|
|
124
|
-
export { getSlackWriteClient as a, resolveSlackWebClientOptions as c,
|
|
105
|
+
export { getSlackWriteClient as a, resolveSlackWebClientOptions as c, createSlackWriteClient as i, resolveSlackWriteClientOptions as l, createSlackTokenCacheKey as n, SLACK_DEFAULT_RETRY_OPTIONS as o, createSlackWebClient as r, SLACK_WRITE_RETRY_OPTIONS as s, clearSlackWriteClientCacheForTest as t };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-D7D4PA-g.js";
|
|
2
2
|
import { a as resolveSlackAccount } from "./accounts-BnLQ3fe2.js";
|
|
3
|
-
import { r as createSlackWebClient } from "./client-
|
|
3
|
+
import { r as createSlackWebClient } from "./client-Dc2Ji2YN.js";
|
|
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({
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
+
import { isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
1
2
|
import { redactSensitiveText } from "openclaw/plugin-sdk/logging-core";
|
|
2
3
|
//#region extensions/slack/src/errors.ts
|
|
3
4
|
const NO_ERROR_DETAIL = "no error detail";
|
|
4
|
-
function isRecord(value) {
|
|
5
|
-
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
6
|
-
}
|
|
7
5
|
function redact(value) {
|
|
8
6
|
return redactSensitiveText(value);
|
|
9
7
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { t as prepareSlackMessage } from "./prepare-
|
|
2
|
-
import { t as createInboundSlackTestContext } from "./prepare.test-helpers-
|
|
1
|
+
import { t as prepareSlackMessage } from "./prepare-2yHC1V9V.js";
|
|
2
|
+
import { t as createInboundSlackTestContext } from "./prepare.test-helpers-dKm_6IFd.js";
|
|
3
3
|
export { createInboundSlackTestContext, prepareSlackMessage };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as resolveSlackAccount, i as resolveDefaultSlackAccountId } from "./accounts-BnLQ3fe2.js";
|
|
2
|
-
import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
2
|
+
import { normalizeLowercaseStringOrEmpty, normalizeStringEntries, normalizeStringEntriesLower } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
3
3
|
//#region extensions/slack/src/interactive-replies.ts
|
|
4
4
|
const SLACK_BUTTON_MAX_ITEMS = 5;
|
|
5
5
|
const SLACK_SELECT_MAX_ITEMS = 100;
|
|
@@ -64,7 +64,7 @@ function buildButtonsBlock(raw) {
|
|
|
64
64
|
};
|
|
65
65
|
}
|
|
66
66
|
function buildSelectBlock(raw) {
|
|
67
|
-
const parts = raw.split("|")
|
|
67
|
+
const parts = normalizeStringEntries(raw.split("|"));
|
|
68
68
|
if (parts.length === 0) return null;
|
|
69
69
|
const [first, second] = parts;
|
|
70
70
|
const placeholder = parts.length >= 2 ? first : "Choose an option";
|
|
@@ -82,10 +82,10 @@ function hasSlackBlocks(payload) {
|
|
|
82
82
|
return Array.isArray(blocks) && blocks.length > 0;
|
|
83
83
|
}
|
|
84
84
|
function parseSimpleSlackOptions(raw) {
|
|
85
|
-
const entries = raw.split(",")
|
|
85
|
+
const entries = normalizeStringEntries(raw.split(","));
|
|
86
86
|
if (entries.length < 2 || entries.length > SLACK_AUTO_SELECT_MAX_ITEMS) return null;
|
|
87
87
|
if (!entries.every((entry) => SLACK_SIMPLE_OPTION_RE.test(entry))) return null;
|
|
88
|
-
if (new Set(entries
|
|
88
|
+
if (new Set(normalizeStringEntriesLower(entries)).size !== entries.length) return null;
|
|
89
89
|
return entries.map((entry) => ({
|
|
90
90
|
label: entry,
|
|
91
91
|
value: entry
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as isSlackInteractiveRepliesEnabled, t as compileSlackInteractiveReplies } from "./interactive-replies-
|
|
1
|
+
import { n as isSlackInteractiveRepliesEnabled, t as compileSlackInteractiveReplies } from "./interactive-replies-DtYu4Sf5.js";
|
|
2
2
|
export { compileSlackInteractiveReplies, isSlackInteractiveRepliesEnabled };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as resolveSlackAccount, t as listEnabledSlackAccounts } from "./accounts-BnLQ3fe2.js";
|
|
2
|
-
import { n as isSlackInteractiveRepliesEnabled } from "./interactive-replies-
|
|
2
|
+
import { n as isSlackInteractiveRepliesEnabled } from "./interactive-replies-DtYu4Sf5.js";
|
|
3
3
|
import { createActionGate } from "openclaw/plugin-sdk/channel-actions";
|
|
4
4
|
import { extractToolSend } from "openclaw/plugin-sdk/tool-send";
|
|
5
5
|
import { Type } from "typebox";
|
package/dist/message-tool-api.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as describeSlackMessageTool } from "./message-tool-api-
|
|
1
|
+
import { t as describeSlackMessageTool } from "./message-tool-api-BieXX5lk.js";
|
|
2
2
|
export { describeSlackMessageTool as describeMessageTool };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-D7D4PA-g.js";
|
|
2
|
-
import { E as buildSlackSlashCommandMatcher } from "./room-context-
|
|
3
|
-
import { t as isSlackChannelAllowedByPolicy } from "./policy-
|
|
4
|
-
import { t as monitorSlackProvider } from "./provider-
|
|
5
|
-
import { o as resolveSlackThreadTs } from "./replies-
|
|
2
|
+
import { E as buildSlackSlashCommandMatcher } from "./room-context-BsIaiZhE.js";
|
|
3
|
+
import { t as isSlackChannelAllowedByPolicy } from "./policy-pu8tsF8_.js";
|
|
4
|
+
import { t as monitorSlackProvider } from "./provider-CaIj5hMH.js";
|
|
5
|
+
import { o as resolveSlackThreadTs } from "./replies-C6KAYDBW.js";
|
|
6
6
|
//#region extensions/slack/src/monitor.ts
|
|
7
7
|
var monitor_exports = /* @__PURE__ */ __exportAll({
|
|
8
8
|
buildSlackSlashCommandMatcher: () => buildSlackSlashCommandMatcher,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-D7D4PA-g.js";
|
|
2
2
|
import { n as buildSlackPresentationBlocks, r as resolveSlackInteractiveBlockOffsets, t as buildSlackInteractiveBlocks } from "./blocks-render-CNC4vQnd.js";
|
|
3
3
|
import { i as parseSlackBlocksInput, n as resolveSlackThreadTsValue, o as SLACK_TEXT_LIMIT } from "./thread-ts-ks-O8cEG.js";
|
|
4
|
-
import { t as compileSlackInteractiveReplies } from "./interactive-replies-
|
|
4
|
+
import { t as compileSlackInteractiveReplies } from "./interactive-replies-DtYu4Sf5.js";
|
|
5
5
|
import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
6
6
|
import { attachChannelToResult, createAttachedChannelResultAdapter } from "openclaw/plugin-sdk/channel-send-result";
|
|
7
7
|
import { resolveOutboundSendDep } from "openclaw/plugin-sdk/outbound-send-deps";
|
|
@@ -12,7 +12,7 @@ var outbound_adapter_exports = /* @__PURE__ */ __exportAll({ slackOutbound: () =
|
|
|
12
12
|
const SLACK_MAX_BLOCKS = 50;
|
|
13
13
|
let slackSendRuntimePromise;
|
|
14
14
|
async function loadSlackSendRuntime() {
|
|
15
|
-
slackSendRuntimePromise ??= import("./send.runtime-
|
|
15
|
+
slackSendRuntimePromise ??= import("./send.runtime-B0Gg0Ncx.js");
|
|
16
16
|
return await slackSendRuntimePromise;
|
|
17
17
|
}
|
|
18
18
|
function resolveRenderedInteractiveBlocks(interactive, previousBlocks) {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as createSlackOutboundPayloadHarness } from "./outbound-payload.test-harness-
|
|
1
|
+
import { t as createSlackOutboundPayloadHarness } from "./outbound-payload.test-harness-C57ipELl.js";
|
|
2
2
|
export { createSlackOutboundPayloadHarness };
|
package/dist/{outbound-payload.test-harness-Ca13aYOM.js → outbound-payload.test-harness-C57ipELl.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as slackOutbound } from "./outbound-adapter-
|
|
1
|
+
import { n as slackOutbound } from "./outbound-adapter-C3lEsGEd.js";
|
|
2
2
|
import { primeChannelOutboundSendMock } from "openclaw/plugin-sdk/channel-contract-testing";
|
|
3
3
|
//#region node_modules/tinyrainbow/dist/index.js
|
|
4
4
|
var b = {
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { o as SLACK_TEXT_LIMIT, s as truncateSlackText } from "./thread-ts-ks-O8cEG.js";
|
|
2
|
-
import { n as isSlackInteractiveRepliesEnabled, t as compileSlackInteractiveReplies } from "./interactive-replies-
|
|
3
|
-
import { i as normalizeSlackAllowOwnerEntry } from "./allow-list-
|
|
2
|
+
import { n as isSlackInteractiveRepliesEnabled, t as compileSlackInteractiveReplies } from "./interactive-replies-DtYu4Sf5.js";
|
|
3
|
+
import { i as normalizeSlackAllowOwnerEntry } from "./allow-list-B1lkGjwl.js";
|
|
4
4
|
import { n as resolveSlackNativeStreaming, r as resolveSlackStreamingMode, t as mapStreamingModeToSlackLegacyDraftStreamMode } from "./streaming-compat-gDv83t5m.js";
|
|
5
|
-
import { a as recordSlackThreadParticipation, s as normalizeSlackOutboundText, t as sendMessageSlack } from "./send-
|
|
6
|
-
import { b as buildSlackEditTextPayload, f as removeSlackReaction, l as reactSlackMessage, r as editSlackMessage, t as deleteSlackMessage } from "./actions-
|
|
7
|
-
import { t as formatSlackError } from "./errors-
|
|
8
|
-
import { C as resolveStorePath, a as recordInboundSession, w as updateLastRoute } from "./room-context-
|
|
9
|
-
import { r as escapeSlackMrkdwn } from "./provider-
|
|
10
|
-
import { n as resolveSlackThreadTargets, t as prepareSlackMessage } from "./prepare-
|
|
11
|
-
import { a as resolveDeliveredSlackReplyThreadTs, i as readSlackReplyBlocks, n as deliverReplies, o as resolveSlackThreadTs, t as createSlackReplyDeliveryPlan } from "./replies-
|
|
5
|
+
import { a as recordSlackThreadParticipation, s as normalizeSlackOutboundText, t as sendMessageSlack } from "./send-CXGjjgpT.js";
|
|
6
|
+
import { b as buildSlackEditTextPayload, f as removeSlackReaction, l as reactSlackMessage, r as editSlackMessage, t as deleteSlackMessage } from "./actions-DZqQvsrH.js";
|
|
7
|
+
import { t as formatSlackError } from "./errors-CZtmv-h0.js";
|
|
8
|
+
import { C as resolveStorePath, a as recordInboundSession, w as updateLastRoute } from "./room-context-BsIaiZhE.js";
|
|
9
|
+
import { r as escapeSlackMrkdwn } from "./provider-CaIj5hMH.js";
|
|
10
|
+
import { n as resolveSlackThreadTargets, t as prepareSlackMessage } from "./prepare-2yHC1V9V.js";
|
|
11
|
+
import { a as resolveDeliveredSlackReplyThreadTs, i as readSlackReplyBlocks, n as deliverReplies, o as resolveSlackThreadTs, t as createSlackReplyDeliveryPlan } from "./replies-C6KAYDBW.js";
|
|
12
12
|
import { normalizeOptionalLowercaseString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
13
13
|
import { resolveInboundLastRouteSessionKey } from "openclaw/plugin-sdk/routing";
|
|
14
14
|
import { createChannelMessageReplyPipeline, defineFinalizableLivePreviewAdapter, deliverWithFinalizableLivePreviewAdapter, resolveChannelMessageSourceReplyDeliveryMode } from "openclaw/plugin-sdk/channel-message";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as normalizeSlackSlug } from "./allow-list-
|
|
1
|
+
import { a as normalizeSlackSlug } from "./allow-list-B1lkGjwl.js";
|
|
2
2
|
import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
3
3
|
import { applyChannelMatchMeta, buildChannelKeyCandidates, resolveChannelEntryMatchWithFallback } from "openclaw/plugin-sdk/channel-targets";
|
|
4
4
|
import { mergePairLoopGuardConfig } from "openclaw/plugin-sdk/pair-loop-guard-runtime";
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { l as resolveSlackReplyToMode } from "./accounts-BnLQ3fe2.js";
|
|
2
2
|
import { r as parseSlackTarget } from "./target-parsing-C7eeWg7M.js";
|
|
3
3
|
import "./targets-nUqxHGgg.js";
|
|
4
|
-
import { i as normalizeSlackAllowOwnerEntry, o as resolveSlackAllowListMatch, r as normalizeAllowListLower } from "./allow-list-
|
|
5
|
-
import { i as hasSlackThreadParticipationWithPersistence, t as sendMessageSlack } from "./send-
|
|
6
|
-
import { _ as resolveSlackThreadStarter, g as resolveSlackThreadHistory, l as reactSlackMessage, y as formatSlackFileReference } from "./actions-
|
|
7
|
-
import { t as formatSlackError } from "./errors-
|
|
8
|
-
import { C as resolveStorePath, O as stripSlackMentionsForCommandDetection, b as resolveChannelContextVisibilityMode, c as authorizeSlackBotRoomMessage, d as resolveSlackEffectiveAllowFrom, f as buildSlackAssistantThreadMetadata, g as resolveSlackChatType, h as normalizeSlackChannelType, m as parseSlackAssistantThreadMetadata, n as authorizeSlackDirectMessage, o as resolveConversationLabel$1, t as resolveSlackRoomContextHints, u as resolveSlackCommandIngress, y as readSessionUpdatedAt } from "./room-context-
|
|
9
|
-
import { n as resolveSlackChannelConfig } from "./policy-
|
|
10
|
-
import "./send.runtime-
|
|
11
|
-
import { normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
4
|
+
import { i as normalizeSlackAllowOwnerEntry, o as resolveSlackAllowListMatch, r as normalizeAllowListLower } from "./allow-list-B1lkGjwl.js";
|
|
5
|
+
import { i as hasSlackThreadParticipationWithPersistence, t as sendMessageSlack } from "./send-CXGjjgpT.js";
|
|
6
|
+
import { _ as resolveSlackThreadStarter, g as resolveSlackThreadHistory, l as reactSlackMessage, y as formatSlackFileReference } from "./actions-DZqQvsrH.js";
|
|
7
|
+
import { t as formatSlackError } from "./errors-CZtmv-h0.js";
|
|
8
|
+
import { C as resolveStorePath, O as stripSlackMentionsForCommandDetection, b as resolveChannelContextVisibilityMode, c as authorizeSlackBotRoomMessage, d as resolveSlackEffectiveAllowFrom, f as buildSlackAssistantThreadMetadata, g as resolveSlackChatType, h as normalizeSlackChannelType, m as parseSlackAssistantThreadMetadata, n as authorizeSlackDirectMessage, o as resolveConversationLabel$1, t as resolveSlackRoomContextHints, u as resolveSlackCommandIngress, y as readSessionUpdatedAt } from "./room-context-BsIaiZhE.js";
|
|
9
|
+
import { n as resolveSlackChannelConfig } from "./policy-pu8tsF8_.js";
|
|
10
|
+
import "./send.runtime-BbMOcD7_.js";
|
|
11
|
+
import { asOptionalRecord, normalizeLowercaseStringOrEmpty, normalizeOptionalString, readStringValue } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
12
12
|
import { resolveAgentRoute, resolveInboundLastRouteSessionKey, resolveThreadSessionKeys } from "openclaw/plugin-sdk/routing";
|
|
13
13
|
import { resolveChannelMessageSourceReplyDeliveryMode } from "openclaw/plugin-sdk/channel-message";
|
|
14
14
|
import { logVerbose, shouldLogVerbose } from "openclaw/plugin-sdk/runtime-env";
|
|
@@ -31,7 +31,7 @@ const SLACK_MENTION_RESOLUTION_MAX_LOOKUPS_PER_MESSAGE = 20;
|
|
|
31
31
|
const SLACK_USER_MENTION_RE$1 = /<@([A-Z0-9]+)(?:\|[^>]+)?>/gi;
|
|
32
32
|
let slackMediaModulePromise$1;
|
|
33
33
|
function loadSlackMediaModule$1() {
|
|
34
|
-
slackMediaModulePromise$1 ??= import("./actions-
|
|
34
|
+
slackMediaModulePromise$1 ??= import("./actions-DZqQvsrH.js").then((n) => n.h);
|
|
35
35
|
return slackMediaModulePromise$1;
|
|
36
36
|
}
|
|
37
37
|
function collectUniqueSlackMentionIds$1(texts) {
|
|
@@ -56,35 +56,32 @@ function renderSlackUserMentions(text, renderedMentions) {
|
|
|
56
56
|
return renderedMentions.get(userId) ?? full;
|
|
57
57
|
});
|
|
58
58
|
}
|
|
59
|
-
function readString(value) {
|
|
60
|
-
return typeof value === "string" ? value : void 0;
|
|
61
|
-
}
|
|
62
59
|
function readTextObject(value) {
|
|
63
60
|
if (!value || typeof value !== "object") return;
|
|
64
|
-
return normalizeOptionalString(
|
|
61
|
+
return normalizeOptionalString(readStringValue(value.text));
|
|
65
62
|
}
|
|
66
63
|
function renderSlackRichTextLeaf(element) {
|
|
67
64
|
switch (element.type) {
|
|
68
|
-
case "text": return
|
|
69
|
-
case "link": return
|
|
65
|
+
case "text": return readStringValue(element.text) ?? "";
|
|
66
|
+
case "link": return readStringValue(element.text) ?? readStringValue(element.url) ?? "";
|
|
70
67
|
case "user": {
|
|
71
|
-
const userId =
|
|
68
|
+
const userId = readStringValue(element.user_id);
|
|
72
69
|
return userId ? `<@${userId}>` : "";
|
|
73
70
|
}
|
|
74
71
|
case "channel": {
|
|
75
|
-
const channelId =
|
|
72
|
+
const channelId = readStringValue(element.channel_id);
|
|
76
73
|
return channelId ? `<#${channelId}>` : "";
|
|
77
74
|
}
|
|
78
75
|
case "usergroup": {
|
|
79
|
-
const usergroupId =
|
|
76
|
+
const usergroupId = readStringValue(element.usergroup_id);
|
|
80
77
|
return usergroupId ? `<!subteam^${usergroupId}>` : "";
|
|
81
78
|
}
|
|
82
79
|
case "broadcast": {
|
|
83
|
-
const range =
|
|
80
|
+
const range = readStringValue(element.range);
|
|
84
81
|
return range ? `<!${range}>` : "";
|
|
85
82
|
}
|
|
86
83
|
case "emoji": {
|
|
87
|
-
const name =
|
|
84
|
+
const name = readStringValue(element.name);
|
|
88
85
|
return name ? `:${name}:` : "";
|
|
89
86
|
}
|
|
90
87
|
default: return "";
|
|
@@ -148,8 +145,8 @@ function readSlackBlockText(block) {
|
|
|
148
145
|
}
|
|
149
146
|
return parts.length > 0 ? parts.join(" ") : void 0;
|
|
150
147
|
}
|
|
151
|
-
case "image": return normalizeOptionalString(
|
|
152
|
-
case "video": return readTextObject(blockLike.title) ?? normalizeOptionalString(
|
|
148
|
+
case "image": return normalizeOptionalString(readStringValue(blockLike.alt_text)) ?? readTextObject(blockLike.title);
|
|
149
|
+
case "video": return readTextObject(blockLike.title) ?? normalizeOptionalString(readStringValue(blockLike.alt_text));
|
|
153
150
|
default: return;
|
|
154
151
|
}
|
|
155
152
|
}
|
|
@@ -579,7 +576,7 @@ function formatSlackBotStarterThreadLabel(params) {
|
|
|
579
576
|
//#region extensions/slack/src/monitor/message-handler/prepare-thread-context.ts
|
|
580
577
|
let slackMediaModulePromise;
|
|
581
578
|
function loadSlackMediaModule() {
|
|
582
|
-
slackMediaModulePromise ??= import("./actions-
|
|
579
|
+
slackMediaModulePromise ??= import("./actions-DZqQvsrH.js").then((n) => n.h);
|
|
583
580
|
return slackMediaModulePromise;
|
|
584
581
|
}
|
|
585
582
|
const SLACK_THREAD_CONTEXT_USER_LOOKUP_CONCURRENCY = 4;
|
|
@@ -851,9 +848,6 @@ const SLACK_HISTORY_MEDIA_MAX_ATTACHMENTS = 4;
|
|
|
851
848
|
const SLACK_HISTORY_MEDIA_MAX_BYTES = 10 * 1024 * 1024;
|
|
852
849
|
const SLACK_HISTORY_MEDIA_IDLE_TIMEOUT_MS = 1e3;
|
|
853
850
|
const SLACK_HISTORY_MEDIA_TOTAL_TIMEOUT_MS = 3e3;
|
|
854
|
-
function asRecord(value) {
|
|
855
|
-
return value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
|
|
856
|
-
}
|
|
857
851
|
function recordString(record, key) {
|
|
858
852
|
return normalizeOptionalString(record?.[key]);
|
|
859
853
|
}
|
|
@@ -878,9 +872,9 @@ function hasSlackAssistantThreadMetadata(context) {
|
|
|
878
872
|
return Boolean(context?.channelId || context?.teamId || context?.enterpriseId !== void 0);
|
|
879
873
|
}
|
|
880
874
|
function resolveSlackMessageAssistantThreadContext(message) {
|
|
881
|
-
const thread =
|
|
875
|
+
const thread = asOptionalRecord(message.assistant_thread);
|
|
882
876
|
if (!thread) return;
|
|
883
|
-
const context =
|
|
877
|
+
const context = asOptionalRecord(thread.context);
|
|
884
878
|
const assistantChannelId = recordString(thread, "channel_id") ?? message.channel;
|
|
885
879
|
const threadTs = recordString(thread, "thread_ts") ?? message.thread_ts ?? message.ts;
|
|
886
880
|
if (!assistantChannelId || !threadTs) return;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { p as createSlackMonitorContext } from "./room-context-
|
|
1
|
+
import { p as createSlackMonitorContext } from "./room-context-BsIaiZhE.js";
|
|
2
2
|
import "openclaw/plugin-sdk/temp-path";
|
|
3
3
|
//#region extensions/slack/src/monitor/message-handler/prepare.test-helpers.ts
|
|
4
4
|
function createInboundSlackTestContext(params) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-D7D4PA-g.js";
|
|
2
|
-
import { r as createSlackWebClient } from "./client-
|
|
3
|
-
import { t as formatSlackError } from "./errors-
|
|
2
|
+
import { r as createSlackWebClient } from "./client-Dc2Ji2YN.js";
|
|
3
|
+
import { t as formatSlackError } from "./errors-CZtmv-h0.js";
|
|
4
4
|
import { withTimeout } from "openclaw/plugin-sdk/text-utility-runtime";
|
|
5
5
|
//#region extensions/slack/src/probe.ts
|
|
6
6
|
var probe_exports = /* @__PURE__ */ __exportAll({ probeSlack: () => probeSlack });
|