@openclaw/slack 2026.5.14-beta.1 → 2026.5.16-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-gtC-RM3r.js → action-runtime-p39JLqwf.js} +4 -4
- package/dist/action-runtime.runtime-BzrPV3EA.js +2 -0
- package/dist/{media-B-nNpS2G.js → actions-BCRbHv1Q.js} +309 -3
- package/dist/{actions.runtime-DD6hfFCA.js → actions.runtime-CpywQR3D.js} +1 -1
- package/dist/api.js +16 -16
- package/dist/{approval-handler.runtime-DeYBuIaU.js → approval-handler.runtime-DXrdRbkT.js} +3 -4
- package/dist/{blocks-render-BdLueE_v.js → blocks-render-BAVfd6r0.js} +1 -1
- package/dist/{channel-CC04F-xs.js → channel-CVSopl66.js} +23 -27
- package/dist/channel-config-api.js +1 -1
- package/dist/channel-plugin-api.js +1 -1
- package/dist/{channel.setup-jzYjY634.js → channel.setup-DknBgufI.js} +3 -3
- package/dist/{client-8r7r7aZ3.js → client-C_IaJbi5.js} +20 -1
- package/dist/{config-schema-Bueih4yH.js → config-schema-CNRousxw.js} +1 -1
- package/dist/contract-api.js +4 -4
- package/dist/directory-contract-api.js +1 -1
- package/dist/{directory-live-CuaWaGnM.js → directory-live-CZPzpQZF.js} +1 -1
- package/dist/{doctor-contract-DCkS8eNN.js → doctor-contract-B8QIWMs1.js} +1 -1
- package/dist/doctor-contract-api.js +1 -1
- package/dist/http-routes-api.js +1 -1
- package/dist/inbound-contract-test-api.js +2 -2
- package/dist/interactive-replies-api.js +1 -1
- package/dist/{message-tool-api-B_bKUmP0.js → message-tool-api-C7gc7goF.js} +1 -1
- package/dist/message-tool-api.js +1 -1
- package/dist/{monitor-B3QB1ysK.js → monitor-CdVxsuHi.js} +3 -3
- package/dist/{outbound-adapter-DsAvCwpZ.js → outbound-adapter-CHm6e-0Q.js} +4 -5
- package/dist/outbound-payload-test-api.js +1 -1
- package/dist/{outbound-payload.test-harness-DM9ZdY2f.js → outbound-payload.test-harness-C0CW7_CE.js} +2 -2
- package/dist/{pipeline.runtime-D-YJZZaI.js → pipeline.runtime-CakcaQh9.js} +119 -143
- package/dist/{plugin-routes-Dt_jh9W8.js → plugin-routes-CRnfsTTX.js} +1 -1
- package/dist/{prepare-CXI8nHbJ.js → prepare-DSRUr44d.js} +223 -85
- package/dist/{prepare.test-helpers-BhFHtbz3.js → prepare.test-helpers-CU1qB54Q.js} +1 -1
- package/dist/{probe-D1wYA05H.js → probe-FL4sUJsH.js} +2 -2
- package/dist/{provider-Ut7IF0Mn.js → provider-bKg1hkf5.js} +158 -24
- package/dist/{replies-CzfjCaLG.js → replies-Fg1T3ZzU.js} +4 -4
- package/dist/reply-blocks-BFaJ_ejG.js +134 -0
- package/dist/{resolve-channels-BiVxSLVm.js → resolve-channels-B_eKaOkE.js} +2 -2
- package/dist/{resolve-users-CcpSlYw-.js → resolve-users-BzBAJwvq.js} +2 -2
- package/dist/{room-context-D0hGOp8m.js → room-context-Cd8jFpS-.js} +2 -2
- package/dist/{runtime-api-D8wiG9BS.js → runtime-api-B5HGOzX3.js} +2 -2
- package/dist/runtime-api.js +12 -12
- package/dist/runtime-setter-api.js +1 -1
- package/dist/{scopes-BTkB8PPE.js → scopes-Bvg_ZzqZ.js} +2 -2
- package/dist/secret-contract-api.js +1 -1
- package/dist/security-contract-api.js +1 -1
- package/dist/{send-ioky2Xpy.js → send-CxXFbqN1.js} +5 -6
- package/dist/send.runtime-BHCPpSj_.js +2 -0
- package/dist/send.runtime-CDG5AgU3.js +2 -0
- package/dist/{setup-core-DgLJ7dQY.js → setup-core-B7pou7oe.js} +23 -22
- package/dist/setup-plugin-api.js +1 -1
- package/dist/{setup-surface-B6w9gtds.js → setup-surface-D6LLzeRz.js} +16 -15
- package/dist/{shared-CSiHkaVO.js → shared-7Vi9j4aV.js} +7 -7
- package/dist/{slash-dispatch.runtime-DNr1EDON.js → slash-dispatch.runtime-Cg7uU92H.js} +1 -1
- package/dist/test-api.js +7 -7
- package/dist/thread-ts-As_dcNbD.js +52 -0
- package/package.json +5 -5
- package/dist/action-runtime.runtime-DbVd7_Na.js +0 -2
- package/dist/actions-Cqyj7oRr.js +0 -309
- package/dist/approval-auth-D3xf0sS6.js +0 -28
- package/dist/blocks-input-BJZ8vv03.js +0 -29
- package/dist/channel-api-BfBK89IN.js +0 -20
- package/dist/exec-approvals-BLn4Zx7V.js +0 -58
- package/dist/group-policy-utF2iWnE.js +0 -41
- package/dist/mrkdwn-18IzcEAY.js +0 -6
- package/dist/reply-blocks-DWoZrUll.js +0 -14
- package/dist/send.runtime-5Kl3Wzbf.js +0 -2
- package/dist/send.runtime-DoifekaA.js +0 -2
- package/dist/thread-ts-o-QBwB3k.js +0 -24
- /package/dist/{accounts.runtime-CkfFIisb.js → accounts.runtime-BhbEu1ZK.js} +0 -0
- /package/dist/{allow-list-T7ZDpUsF.js → allow-list-nwXs_eCP.js} +0 -0
- /package/dist/{config-api-B48Z4H47.js → config-api-CmgE_ORg.js} +0 -0
- /package/dist/{directory-config-BKKNBkCq.js → directory-config-CMvFiswf.js} +0 -0
- /package/dist/{errors-BrtayXHa.js → errors-C_sW0Zgl.js} +0 -0
- /package/dist/{interactive-replies-CawNPL-h.js → interactive-replies-BSg5hXhj.js} +0 -0
- /package/dist/{magic-string.es-BLAi6qQC.js → magic-string.es-9lw4MGoF.js} +0 -0
- /package/dist/{registry-BdfKYina.js → registry-D2cWOLZV.js} +0 -0
- /package/dist/{resolve-allowlist-common-rhfyDyWi.js → resolve-allowlist-common-DLub2I2i.js} +0 -0
- /package/dist/{runtime--VlVtTPu.js → runtime-DQxkf7k2.js} +0 -0
- /package/dist/{secret-contract-BurGIyhv.js → secret-contract-0TL3L5Kb.js} +0 -0
- /package/dist/{security-audit-DvOpSaZM.js → security-audit-BJzADAw3.js} +0 -0
- /package/dist/{slash-commands.runtime-DRkNgIQ2.js → slash-commands.runtime-bcDwsGnu.js} +0 -0
- /package/dist/{slash-plugin-commands.runtime-Dj5h8hmv.js → slash-plugin-commands.runtime-DBHGUSj2.js} +0 -0
- /package/dist/{slash-skill-commands.runtime-B-_KAk0C.js → slash-skill-commands.runtime-rrY2hXvN.js} +0 -0
- /package/dist/{streaming-compat-C6rySwiD.js → streaming-compat-eu5Rj5gj.js} +0 -0
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { a as resolveSlackAccount, o as resolveSlackAccountAllowFrom } from "./accounts-yk5K3wQU.js";
|
|
2
|
-
import { i as normalizeSlackApproverId } from "./exec-approvals-BLn4Zx7V.js";
|
|
3
|
-
import { createResolvedApproverActionAuthAdapter, resolveApprovalApprovers } from "openclaw/plugin-sdk/approval-auth-runtime";
|
|
4
|
-
//#region extensions/slack/src/approval-auth.ts
|
|
5
|
-
function getSlackApprovalApprovers(params) {
|
|
6
|
-
const account = resolveSlackAccount(params).config;
|
|
7
|
-
return resolveApprovalApprovers({
|
|
8
|
-
allowFrom: resolveSlackAccountAllowFrom(params),
|
|
9
|
-
defaultTo: account.defaultTo,
|
|
10
|
-
normalizeApprover: normalizeSlackApproverId,
|
|
11
|
-
normalizeDefaultTo: normalizeSlackApproverId
|
|
12
|
-
});
|
|
13
|
-
}
|
|
14
|
-
function isSlackApprovalAuthorizedSender(params) {
|
|
15
|
-
const senderId = params.senderId ? normalizeSlackApproverId(params.senderId) : void 0;
|
|
16
|
-
if (!senderId) return false;
|
|
17
|
-
return getSlackApprovalApprovers(params).includes(senderId);
|
|
18
|
-
}
|
|
19
|
-
createResolvedApproverActionAuthAdapter({
|
|
20
|
-
channelLabel: "Slack",
|
|
21
|
-
resolveApprovers: ({ cfg, accountId }) => getSlackApprovalApprovers({
|
|
22
|
-
cfg,
|
|
23
|
-
accountId
|
|
24
|
-
}),
|
|
25
|
-
normalizeSenderId: (value) => normalizeSlackApproverId(value)
|
|
26
|
-
});
|
|
27
|
-
//#endregion
|
|
28
|
-
export { isSlackApprovalAuthorizedSender as t };
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
//#region extensions/slack/src/blocks-input.ts
|
|
2
|
-
const SLACK_MAX_BLOCKS = 50;
|
|
3
|
-
function parseBlocksJson(raw) {
|
|
4
|
-
try {
|
|
5
|
-
return JSON.parse(raw);
|
|
6
|
-
} catch {
|
|
7
|
-
throw new Error("blocks must be valid JSON");
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
function assertBlocksArray(raw) {
|
|
11
|
-
if (!Array.isArray(raw)) throw new Error("blocks must be an array");
|
|
12
|
-
if (raw.length === 0) throw new Error("blocks must contain at least one block");
|
|
13
|
-
if (raw.length > 50) throw new Error(`blocks cannot exceed 50 items`);
|
|
14
|
-
for (const block of raw) {
|
|
15
|
-
if (!block || typeof block !== "object" || Array.isArray(block)) throw new Error("each block must be an object");
|
|
16
|
-
const type = block.type;
|
|
17
|
-
if (typeof type !== "string" || type.trim().length === 0) throw new Error("each block must include a non-empty string type");
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
function validateSlackBlocksArray(raw) {
|
|
21
|
-
assertBlocksArray(raw);
|
|
22
|
-
return raw;
|
|
23
|
-
}
|
|
24
|
-
function parseSlackBlocksInput(raw) {
|
|
25
|
-
if (raw == null) return;
|
|
26
|
-
return validateSlackBlocksArray(typeof raw === "string" ? parseBlocksJson(raw) : raw);
|
|
27
|
-
}
|
|
28
|
-
//#endregion
|
|
29
|
-
export { parseSlackBlocksInput as n, validateSlackBlocksArray as r, SLACK_MAX_BLOCKS as t };
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import "./target-parsing-CQmv-iSm.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,58 +0,0 @@
|
|
|
1
|
-
import { a as resolveSlackAccount } from "./accounts-yk5K3wQU.js";
|
|
2
|
-
import { normalizeStringifiedOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
3
|
-
import { doesApprovalRequestMatchChannelAccount } from "openclaw/plugin-sdk/approval-native-runtime";
|
|
4
|
-
import { resolveApprovalApprovers } from "openclaw/plugin-sdk/approval-auth-runtime";
|
|
5
|
-
import { createChannelExecApprovalProfile, isChannelExecApprovalTargetRecipient } from "openclaw/plugin-sdk/approval-client-runtime";
|
|
6
|
-
//#region extensions/slack/src/exec-approvals.ts
|
|
7
|
-
function normalizeSlackApproverId(value) {
|
|
8
|
-
const trimmed = normalizeStringifiedOptionalString(value);
|
|
9
|
-
if (!trimmed) return;
|
|
10
|
-
const prefixed = trimmed.match(/^(?:slack|user):([A-Z0-9]+)$/i);
|
|
11
|
-
if (prefixed?.[1]) return prefixed[1];
|
|
12
|
-
const mention = trimmed.match(/^<@([A-Z0-9]+)>$/i);
|
|
13
|
-
if (mention?.[1]) return mention[1];
|
|
14
|
-
return /^[UW][A-Z0-9]+$/i.test(trimmed) ? trimmed : void 0;
|
|
15
|
-
}
|
|
16
|
-
function resolveSlackOwnerApprovers(cfg) {
|
|
17
|
-
const ownerAllowFrom = cfg.commands?.ownerAllowFrom;
|
|
18
|
-
if (!Array.isArray(ownerAllowFrom) || ownerAllowFrom.length === 0) return [];
|
|
19
|
-
return resolveApprovalApprovers({
|
|
20
|
-
explicit: ownerAllowFrom,
|
|
21
|
-
normalizeApprover: normalizeSlackApproverId
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
function getSlackExecApprovalApprovers(params) {
|
|
25
|
-
const account = resolveSlackAccount(params).config;
|
|
26
|
-
return resolveApprovalApprovers({
|
|
27
|
-
explicit: account.execApprovals?.approvers ?? resolveSlackOwnerApprovers(params.cfg),
|
|
28
|
-
normalizeApprover: normalizeSlackApproverId
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
function isSlackExecApprovalTargetRecipient(params) {
|
|
32
|
-
return isChannelExecApprovalTargetRecipient({
|
|
33
|
-
...params,
|
|
34
|
-
channel: "slack",
|
|
35
|
-
normalizeSenderId: normalizeSlackApproverId,
|
|
36
|
-
matchTarget: ({ target, normalizedSenderId }) => normalizeSlackApproverId(target.to) === normalizedSenderId
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
const slackExecApprovalProfile = createChannelExecApprovalProfile({
|
|
40
|
-
resolveConfig: (params) => resolveSlackAccount(params).config.execApprovals,
|
|
41
|
-
resolveApprovers: getSlackExecApprovalApprovers,
|
|
42
|
-
normalizeSenderId: normalizeSlackApproverId,
|
|
43
|
-
isTargetRecipient: isSlackExecApprovalTargetRecipient,
|
|
44
|
-
matchesRequestAccount: (params) => doesApprovalRequestMatchChannelAccount({
|
|
45
|
-
cfg: params.cfg,
|
|
46
|
-
request: params.request,
|
|
47
|
-
channel: "slack",
|
|
48
|
-
accountId: params.accountId
|
|
49
|
-
})
|
|
50
|
-
});
|
|
51
|
-
const isSlackExecApprovalClientEnabled = slackExecApprovalProfile.isClientEnabled;
|
|
52
|
-
slackExecApprovalProfile.isApprover;
|
|
53
|
-
const isSlackExecApprovalAuthorizedSender = slackExecApprovalProfile.isAuthorizedSender;
|
|
54
|
-
const resolveSlackExecApprovalTarget = slackExecApprovalProfile.resolveTarget;
|
|
55
|
-
const shouldHandleSlackExecApprovalRequest = slackExecApprovalProfile.shouldHandleRequest;
|
|
56
|
-
const shouldSuppressLocalSlackExecApprovalPrompt = slackExecApprovalProfile.shouldSuppressLocalPrompt;
|
|
57
|
-
//#endregion
|
|
58
|
-
export { resolveSlackExecApprovalTarget as a, normalizeSlackApproverId as i, isSlackExecApprovalAuthorizedSender as n, shouldHandleSlackExecApprovalRequest as o, isSlackExecApprovalClientEnabled as r, shouldSuppressLocalSlackExecApprovalPrompt as s, getSlackExecApprovalApprovers as t };
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { i as resolveDefaultSlackAccountId, r as mergeSlackAccountConfig } from "./accounts-yk5K3wQU.js";
|
|
2
|
-
import { normalizeAccountId } from "openclaw/plugin-sdk/account-resolution";
|
|
3
|
-
import { normalizeHyphenSlug } from "openclaw/plugin-sdk/string-normalization-runtime";
|
|
4
|
-
import { resolveToolsBySender } from "openclaw/plugin-sdk/channel-policy";
|
|
5
|
-
//#region extensions/slack/src/group-policy.ts
|
|
6
|
-
function resolveSlackChannelPolicyEntry(params) {
|
|
7
|
-
const accountId = normalizeAccountId(params.accountId ?? resolveDefaultSlackAccountId(params.cfg));
|
|
8
|
-
const channelMap = mergeSlackAccountConfig(params.cfg, accountId).channels ?? {};
|
|
9
|
-
if (Object.keys(channelMap).length === 0) return;
|
|
10
|
-
const channelId = params.groupId?.trim();
|
|
11
|
-
const channelName = params.groupChannel?.replace(/^#/, "");
|
|
12
|
-
const normalizedName = normalizeHyphenSlug(channelName);
|
|
13
|
-
const candidates = [
|
|
14
|
-
channelId ?? "",
|
|
15
|
-
channelName ? `#${channelName}` : "",
|
|
16
|
-
channelName ?? "",
|
|
17
|
-
normalizedName
|
|
18
|
-
].filter(Boolean);
|
|
19
|
-
for (const candidate of candidates) if (candidate && channelMap[candidate]) return channelMap[candidate];
|
|
20
|
-
return channelMap["*"];
|
|
21
|
-
}
|
|
22
|
-
function resolveSenderToolsEntry(entry, params) {
|
|
23
|
-
if (!entry) return;
|
|
24
|
-
return resolveToolsBySender({
|
|
25
|
-
toolsBySender: entry.toolsBySender,
|
|
26
|
-
senderId: params.senderId,
|
|
27
|
-
senderName: params.senderName,
|
|
28
|
-
senderUsername: params.senderUsername,
|
|
29
|
-
senderE164: params.senderE164
|
|
30
|
-
}) ?? entry.tools;
|
|
31
|
-
}
|
|
32
|
-
function resolveSlackGroupRequireMention(params) {
|
|
33
|
-
const resolved = resolveSlackChannelPolicyEntry(params);
|
|
34
|
-
if (typeof resolved?.requireMention === "boolean") return resolved.requireMention;
|
|
35
|
-
return true;
|
|
36
|
-
}
|
|
37
|
-
function resolveSlackGroupToolPolicy(params) {
|
|
38
|
-
return resolveSenderToolsEntry(resolveSlackChannelPolicyEntry(params), params);
|
|
39
|
-
}
|
|
40
|
-
//#endregion
|
|
41
|
-
export { resolveSlackGroupToolPolicy as n, resolveSlackGroupRequireMention as t };
|
package/dist/mrkdwn-18IzcEAY.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
//#region extensions/slack/src/monitor/mrkdwn.ts
|
|
2
|
-
function escapeSlackMrkdwn(value) {
|
|
3
|
-
return value.replaceAll("\\", "\\\\").replaceAll("&", "&").replaceAll("<", "<").replaceAll(">", ">").replace(/([*_`~])/g, "\\$1");
|
|
4
|
-
}
|
|
5
|
-
//#endregion
|
|
6
|
-
export { escapeSlackMrkdwn as t };
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { t as buildSlackInteractiveBlocks } from "./blocks-render-BdLueE_v.js";
|
|
2
|
-
import { n as parseSlackBlocksInput } from "./blocks-input-BJZ8vv03.js";
|
|
3
|
-
//#region extensions/slack/src/reply-blocks.ts
|
|
4
|
-
function resolveSlackReplyBlocks(payload) {
|
|
5
|
-
const slackData = payload.channelData?.slack;
|
|
6
|
-
const interactiveBlocks = buildSlackInteractiveBlocks(payload.interactive);
|
|
7
|
-
let channelBlocks = [];
|
|
8
|
-
if (slackData && typeof slackData === "object" && !Array.isArray(slackData)) channelBlocks = parseSlackBlocksInput(slackData.blocks) ?? [];
|
|
9
|
-
const blocks = [...channelBlocks, ...interactiveBlocks];
|
|
10
|
-
if (blocks.length > 50) throw new Error(`Slack blocks cannot exceed 50 items after interactive render`);
|
|
11
|
-
return blocks.length > 0 ? blocks : void 0;
|
|
12
|
-
}
|
|
13
|
-
//#endregion
|
|
14
|
-
export { resolveSlackReplyBlocks as t };
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
2
|
-
//#region extensions/slack/src/truncate.ts
|
|
3
|
-
function truncateSlackText(value, max) {
|
|
4
|
-
const trimmed = value.trim();
|
|
5
|
-
if (trimmed.length <= max) return trimmed;
|
|
6
|
-
if (max <= 1) return trimmed.slice(0, max);
|
|
7
|
-
return `${trimmed.slice(0, max - 1)}…`;
|
|
8
|
-
}
|
|
9
|
-
//#endregion
|
|
10
|
-
//#region extensions/slack/src/limits.ts
|
|
11
|
-
const SLACK_TEXT_LIMIT = 8e3;
|
|
12
|
-
//#endregion
|
|
13
|
-
//#region extensions/slack/src/thread-ts.ts
|
|
14
|
-
const SLACK_THREAD_TS_PATTERN = /^\d+\.\d+$/;
|
|
15
|
-
function normalizeSlackThreadTsCandidate(value) {
|
|
16
|
-
if (typeof value !== "string") return;
|
|
17
|
-
const normalized = normalizeOptionalString(value);
|
|
18
|
-
return normalized && SLACK_THREAD_TS_PATTERN.test(normalized) ? normalized : void 0;
|
|
19
|
-
}
|
|
20
|
-
function resolveSlackThreadTsValue(params) {
|
|
21
|
-
return normalizeSlackThreadTsCandidate(params.replyToId) ?? normalizeSlackThreadTsCandidate(params.threadId);
|
|
22
|
-
}
|
|
23
|
-
//#endregion
|
|
24
|
-
export { truncateSlackText as i, resolveSlackThreadTsValue as n, SLACK_TEXT_LIMIT as r, normalizeSlackThreadTsCandidate as t };
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/{slash-skill-commands.runtime-B-_KAk0C.js → slash-skill-commands.runtime-rrY2hXvN.js}
RENAMED
|
File without changes
|
|
File without changes
|