@openclaw/slack 2026.7.1-beta.2 → 2026.7.1-beta.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{account-inspect-DOtQbKkB.js → account-inspect-Di7ditqZ.js} +1 -1
- package/dist/account-inspect-api.js +1 -1
- package/dist/{accounts-BPCiCe8y.js → accounts-BOJJiHSr.js} +14 -1
- package/dist/accounts.runtime-DWvaCb-X.js +2 -0
- package/dist/{action-runtime-E9QZMf0z.js → action-runtime-DoQGk_8D.js} +36 -32
- package/dist/action-runtime.runtime-BABj3aM-.js +2 -0
- package/dist/{actions-CqRHPciJ.js → actions-DMpDmKEA.js} +211 -57
- package/dist/actions.runtime-C103_BPW.js +2 -0
- package/dist/api.js +13 -13
- package/dist/{approval-handler.runtime-BqNO_HC_.js → approval-handler.runtime-CIUbOt5T.js} +2 -2
- package/dist/{channel-jO8Jdkge.js → channel-CG29WLVd.js} +198 -87
- package/dist/channel-plugin-api.js +1 -1
- package/dist/{channel.setup-CDOZ8V3p.js → channel.setup-Dq6syTNU.js} +3 -3
- package/dist/{client-DG9cyk55.js → client-DGxwSL7f.js} +0 -1
- package/dist/{directory-config-DDVHDmrN.js → directory-config-BZuS8141.js} +1 -1
- package/dist/directory-contract-api.js +1 -1
- package/dist/{directory-live-DC-YA5SQ.js → directory-live-BNsxCgqP.js} +2 -2
- package/dist/format-YCNoNkM2.js +107 -0
- package/dist/http-routes-api.js +1 -1
- package/dist/index.js +1 -1
- package/dist/{interactive-replies-D-22gTp3.js → interactive-replies-CXpT-vA_.js} +13 -2
- package/dist/interactive-replies-api.js +1 -1
- package/dist/{message-tool-api--zYyTqrR.js → message-tool-api-BgWKyu2r.js} +11 -4
- package/dist/message-tool-api.js +1 -1
- package/dist/{monitor-BQ7P93ll.js → monitor-D6Km2CFH.js} +3 -3
- package/dist/outbound-adapter-DVoBfBW5.js +272 -0
- package/dist/{pipeline.runtime-cxw6Zihc.js → pipeline.runtime-0wEFX2CS.js} +184 -260
- package/dist/{plugin-routes-B9PvcDQJ.js → plugin-routes-CLp4obpN.js} +1 -1
- package/dist/{policy-DAE6BTN3.js → policy-Dj-puVPb.js} +10 -4
- package/dist/{probe-DFKt9Ute.js → probe-CuwRDE5j.js} +10 -4
- package/dist/{provider-BdoeWKr8.js → provider-Cot8h818.js} +153 -120
- package/dist/{relay-source-OcqQzKfX.js → relay-source-CU1LhyBj.js} +2 -2
- package/dist/{replies-D_G-EPr8.js → replies-Bbx6pG_B.js} +4 -3
- package/dist/{reply-blocks-CfJqf7eq.js → reply-blocks-BGQ6zSqM.js} +184 -36
- package/dist/{resolve-channels-eniB45fy.js → resolve-channels-CstkChBE.js} +1 -1
- package/dist/{resolve-users-DDKzl37a.js → resolve-users-C3NP2c-Q.js} +1 -1
- package/dist/{runtime-api-DHJ8ntLr.js → runtime-api-CEmqYxR-.js} +1 -1
- package/dist/runtime-api.js +12 -12
- package/dist/{scopes-BdVdJxFf.js → scopes-DCWVD5-8.js} +2 -2
- package/dist/{send-Dg6U9K7_.js → send-DKDXoeoV.js} +392 -225
- package/dist/send.runtime-GPRa63l1.js +2 -0
- package/dist/{setup-core-BCGzyZhx.js → setup-core-fGd6Gquy.js} +4 -3
- package/dist/setup-entry.js +1 -1
- package/dist/setup-plugin-api.js +1 -1
- package/dist/{setup-surface-D7xdZLxB.js → setup-surface-Dv2fIJNB.js} +5 -5
- package/dist/{shared-iMaNxOIL.js → shared-CosfcFri.js} +5 -5
- package/dist/{slash-dispatch.runtime-DVhs_fpQ.js → slash-dispatch.runtime-Ccm3quU1.js} +1 -1
- package/node_modules/@slack/web-api/dist/chat-stream.d.ts +6 -0
- package/node_modules/@slack/web-api/dist/chat-stream.d.ts.map +1 -1
- package/node_modules/@slack/web-api/dist/chat-stream.js +8 -0
- package/node_modules/@slack/web-api/dist/chat-stream.js.map +1 -1
- package/node_modules/@slack/web-api/dist/types/request/assistant.d.ts +1 -1
- package/node_modules/@slack/web-api/dist/types/request/assistant.d.ts.map +1 -1
- package/node_modules/@slack/web-api/package.json +1 -1
- package/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/node/assert/strict.d.ts +10 -1
- package/node_modules/@types/node/assert.d.ts +144 -17
- package/node_modules/@types/node/async_hooks.d.ts +9 -9
- package/node_modules/@types/node/buffer.d.ts +64 -30
- package/node_modules/@types/node/child_process.d.ts +17 -21
- package/node_modules/@types/node/cluster.d.ts +13 -13
- package/node_modules/@types/node/console.d.ts +1 -1
- package/node_modules/@types/node/crypto.d.ts +471 -575
- package/node_modules/@types/node/diagnostics_channel.d.ts +274 -32
- package/node_modules/@types/node/dns.d.ts +15 -15
- package/node_modules/@types/node/events.d.ts +3 -3
- package/node_modules/@types/node/ffi.d.ts +486 -0
- package/node_modules/@types/node/fs/promises.d.ts +7 -4
- package/node_modules/@types/node/fs.d.ts +24 -18
- package/node_modules/@types/node/globals.d.ts +4 -4
- package/node_modules/@types/node/http.d.ts +30 -5
- package/node_modules/@types/node/http2.d.ts +2 -1
- package/node_modules/@types/node/index.d.ts +1 -3
- package/node_modules/@types/node/inspector.d.ts +1 -1
- package/node_modules/@types/node/module.d.ts +16 -45
- package/node_modules/@types/node/net.d.ts +1 -1
- package/node_modules/@types/node/os.d.ts +2 -2
- package/node_modules/@types/node/package.json +4 -4
- package/node_modules/@types/node/perf_hooks.d.ts +1 -9
- package/node_modules/@types/node/process.d.ts +25 -12
- package/node_modules/@types/node/quic.d.ts +92 -11
- package/node_modules/@types/node/readline.d.ts +12 -11
- package/node_modules/@types/node/repl.d.ts +10 -10
- package/node_modules/@types/node/sqlite.d.ts +56 -1
- package/node_modules/@types/node/stream/iter.d.ts +150 -0
- package/node_modules/@types/node/stream/promises.d.ts +2 -2
- package/node_modules/@types/node/stream/web.d.ts +1 -1
- package/node_modules/@types/node/stream.d.ts +37 -5
- package/node_modules/@types/node/test/reporters.d.ts +1 -1
- package/node_modules/@types/node/test.d.ts +120 -10
- package/node_modules/@types/node/tls.d.ts +1 -1
- package/node_modules/@types/node/ts5.6/index.d.ts +2 -4
- package/node_modules/@types/node/ts5.7/index.d.ts +1 -3
- package/node_modules/@types/node/url.d.ts +3 -3
- package/node_modules/@types/node/util/types.d.ts +1 -1
- package/node_modules/@types/node/util.d.ts +22 -22
- package/node_modules/@types/node/v8.d.ts +85 -3
- package/node_modules/@types/node/vm.d.ts +9 -9
- package/node_modules/@types/node/web-globals/domexception.d.ts +15 -0
- package/node_modules/@types/node/worker_threads.d.ts +10 -12
- package/node_modules/@types/node/zlib.d.ts +3 -3
- package/node_modules/body-parser/README.md +16 -1
- package/node_modules/body-parser/index.js +4 -20
- package/node_modules/body-parser/lib/read.js +17 -17
- package/node_modules/body-parser/lib/types/json.js +60 -32
- package/node_modules/body-parser/lib/types/raw.js +3 -3
- package/node_modules/body-parser/lib/types/text.js +3 -3
- package/node_modules/body-parser/lib/types/urlencoded.js +16 -20
- package/node_modules/body-parser/lib/utils.js +18 -16
- package/node_modules/body-parser/node_modules/content-type/LICENSE +22 -0
- package/node_modules/body-parser/node_modules/content-type/README.md +69 -0
- package/node_modules/body-parser/node_modules/content-type/dist/index.d.ts +26 -0
- package/node_modules/body-parser/node_modules/content-type/dist/index.js +170 -0
- package/node_modules/body-parser/node_modules/content-type/dist/index.js.map +1 -0
- package/node_modules/body-parser/node_modules/content-type/package.json +52 -0
- package/node_modules/body-parser/package.json +23 -10
- package/node_modules/range-parser/README.md +13 -12
- package/node_modules/range-parser/index.js +27 -8
- package/node_modules/range-parser/package.json +12 -8
- package/node_modules/semver/classes/range.js +6 -2
- package/node_modules/semver/package.json +1 -1
- package/node_modules/side-channel/CHANGELOG.md +10 -0
- package/node_modules/side-channel/README.md +1 -1
- package/node_modules/side-channel/index.js +5 -2
- package/node_modules/side-channel/package.json +10 -10
- package/node_modules/side-channel/test/index.js +16 -0
- package/node_modules/typebox/build/compile/validator.d.mts +2 -7
- package/node_modules/typebox/build/compile/validator.mjs +6 -36
- package/node_modules/typebox/build/error/errors.d.mts +1 -7
- package/node_modules/typebox/build/format/_idna.mjs +36 -6
- package/node_modules/typebox/build/format/_puny.mjs +4 -1
- package/node_modules/typebox/build/format/uuid.d.mts +2 -2
- package/node_modules/typebox/build/format/uuid.mjs +3 -3
- package/node_modules/typebox/build/guard/emit.d.mts +0 -4
- package/node_modules/typebox/build/guard/emit.mjs +0 -8
- package/node_modules/typebox/build/guard/guard.d.mts +4 -8
- package/node_modules/typebox/build/guard/guard.mjs +5 -13
- package/node_modules/typebox/build/schema/engine/boolean.d.mts +3 -3
- package/node_modules/typebox/build/schema/engine/boolean.mjs +4 -4
- package/node_modules/typebox/build/schema/engine/index.d.mts +0 -1
- package/node_modules/typebox/build/schema/engine/index.mjs +0 -1
- package/node_modules/typebox/build/schema/engine/schema.mjs +5 -10
- package/node_modules/typebox/build/schema/engine/type.mjs +14 -18
- package/node_modules/typebox/build/schema/types/dependencies.mjs +1 -1
- package/node_modules/typebox/build/schema/types/index.d.mts +0 -1
- package/node_modules/typebox/build/schema/types/index.mjs +0 -1
- package/node_modules/typebox/build/schema/types/schema.d.mts +1 -1
- package/node_modules/typebox/build/schema/types/schema.mjs +2 -2
- package/node_modules/typebox/build/system/locale/ar_001.mjs +0 -1
- package/node_modules/typebox/build/system/locale/bn_BD.mjs +0 -1
- package/node_modules/typebox/build/system/locale/cs_CZ.mjs +0 -1
- package/node_modules/typebox/build/system/locale/de_DE.mjs +0 -1
- package/node_modules/typebox/build/system/locale/el_GR.mjs +0 -1
- package/node_modules/typebox/build/system/locale/en_US.mjs +0 -1
- package/node_modules/typebox/build/system/locale/es_419.mjs +0 -1
- package/node_modules/typebox/build/system/locale/es_AR.mjs +0 -1
- package/node_modules/typebox/build/system/locale/es_ES.mjs +0 -1
- package/node_modules/typebox/build/system/locale/es_MX.mjs +0 -1
- package/node_modules/typebox/build/system/locale/fa_IR.mjs +0 -1
- package/node_modules/typebox/build/system/locale/fil_PH.mjs +0 -1
- package/node_modules/typebox/build/system/locale/fr_CA.mjs +0 -1
- package/node_modules/typebox/build/system/locale/fr_FR.mjs +0 -1
- package/node_modules/typebox/build/system/locale/ha_NG.mjs +0 -1
- package/node_modules/typebox/build/system/locale/hi_IN.mjs +0 -1
- package/node_modules/typebox/build/system/locale/hu_HU.mjs +0 -1
- package/node_modules/typebox/build/system/locale/id_ID.mjs +0 -1
- package/node_modules/typebox/build/system/locale/it_IT.mjs +0 -1
- package/node_modules/typebox/build/system/locale/ja_JP.mjs +0 -1
- package/node_modules/typebox/build/system/locale/ko_KR.mjs +0 -1
- package/node_modules/typebox/build/system/locale/ms_MY.mjs +0 -1
- package/node_modules/typebox/build/system/locale/nl_NL.mjs +0 -1
- package/node_modules/typebox/build/system/locale/pl_PL.mjs +0 -1
- package/node_modules/typebox/build/system/locale/pt_BR.mjs +0 -1
- package/node_modules/typebox/build/system/locale/pt_PT.mjs +0 -1
- package/node_modules/typebox/build/system/locale/ro_RO.mjs +0 -1
- package/node_modules/typebox/build/system/locale/ru_RU.mjs +0 -1
- package/node_modules/typebox/build/system/locale/sv_SE.mjs +0 -1
- package/node_modules/typebox/build/system/locale/sw_TZ.mjs +0 -1
- package/node_modules/typebox/build/system/locale/th_TH.mjs +0 -1
- package/node_modules/typebox/build/system/locale/tr_TR.mjs +0 -1
- package/node_modules/typebox/build/system/locale/uk_UA.mjs +0 -1
- package/node_modules/typebox/build/system/locale/ur_PK.mjs +0 -1
- package/node_modules/typebox/build/system/locale/vi_VN.mjs +0 -1
- package/node_modules/typebox/build/system/locale/yo_NG.mjs +0 -1
- package/node_modules/typebox/build/system/locale/zh_Hans.mjs +0 -1
- package/node_modules/typebox/build/system/locale/zh_Hant.mjs +0 -1
- package/node_modules/typebox/build/system/memory/clone.d.mts +2 -3
- package/node_modules/typebox/build/system/memory/clone.mjs +73 -26
- package/node_modules/typebox/build/system/settings/settings.d.mts +15 -0
- package/node_modules/typebox/build/system/settings/settings.mjs +3 -1
- package/node_modules/typebox/build/type/action/_add_immutable.d.mts +11 -0
- package/node_modules/typebox/build/type/action/_add_immutable.mjs +11 -0
- package/node_modules/typebox/build/type/action/_add_optional.d.mts +11 -0
- package/node_modules/typebox/build/type/action/_add_optional.mjs +11 -0
- package/node_modules/typebox/build/type/action/_add_readonly.d.mts +11 -0
- package/node_modules/typebox/build/type/action/_add_readonly.mjs +11 -0
- package/node_modules/typebox/build/type/action/_remove_immutable.d.mts +11 -0
- package/node_modules/typebox/build/type/action/_remove_immutable.mjs +11 -0
- package/node_modules/typebox/build/type/action/_remove_optional.d.mts +11 -0
- package/node_modules/typebox/build/type/action/_remove_optional.mjs +11 -0
- package/node_modules/typebox/build/type/action/_remove_readonly.d.mts +11 -0
- package/node_modules/typebox/build/type/action/_remove_readonly.mjs +11 -0
- package/node_modules/typebox/build/type/action/conditional.d.mts +2 -3
- package/node_modules/typebox/build/type/action/conditional.mjs +2 -1
- package/node_modules/typebox/build/type/action/index.d.mts +7 -4
- package/node_modules/typebox/build/type/action/index.mjs +7 -4
- package/node_modules/typebox/build/type/action/mapped.d.mts +2 -3
- package/node_modules/typebox/build/type/action/mapped.mjs +2 -1
- package/node_modules/typebox/build/type/action/module.d.mts +8 -7
- package/node_modules/typebox/build/type/action/module.mjs +7 -6
- package/node_modules/typebox/build/type/action/readonly_object.d.mts +0 -5
- package/node_modules/typebox/build/type/action/readonly_object.mjs +0 -5
- package/node_modules/typebox/build/type/action/with.d.mts +11 -0
- package/node_modules/typebox/build/type/action/with.mjs +11 -0
- package/node_modules/typebox/build/type/engine/call/distribute_arguments.mjs +1 -1
- package/node_modules/typebox/build/type/engine/call/instantiate.d.mts +1 -3
- package/node_modules/typebox/build/type/engine/call/instantiate.mjs +3 -2
- package/node_modules/typebox/build/type/engine/call/resolve_arguments.mjs +2 -2
- package/node_modules/typebox/build/type/engine/constructor_parameters/instantiate.d.mts +3 -4
- package/node_modules/typebox/build/type/engine/constructor_parameters/instantiate.mjs +2 -1
- package/node_modules/typebox/build/type/engine/cyclic/candidates.d.mts +2 -3
- package/node_modules/typebox/build/type/engine/cyclic/candidates.mjs +3 -6
- package/node_modules/typebox/build/type/engine/cyclic/check.d.mts +6 -9
- package/node_modules/typebox/build/type/engine/cyclic/check.mjs +10 -16
- package/node_modules/typebox/build/type/engine/cyclic/dependencies.d.mts +1 -4
- package/node_modules/typebox/build/type/engine/cyclic/dependencies.mjs +9 -15
- package/node_modules/typebox/build/type/engine/cyclic/extends.d.mts +1 -4
- package/node_modules/typebox/build/type/engine/cyclic/extends.mjs +8 -14
- package/node_modules/typebox/build/type/engine/cyclic/instantiate.d.mts +2 -5
- package/node_modules/typebox/build/type/engine/cyclic/instantiate.mjs +3 -2
- package/node_modules/typebox/build/type/engine/enum/index.d.mts +0 -1
- package/node_modules/typebox/build/type/engine/enum/index.mjs +0 -1
- package/node_modules/typebox/build/type/engine/evaluate/broaden.d.mts +1 -2
- package/node_modules/typebox/build/type/engine/evaluate/broaden.mjs +2 -6
- package/node_modules/typebox/build/type/engine/evaluate/composite.d.mts +10 -6
- package/node_modules/typebox/build/type/engine/evaluate/composite.mjs +10 -6
- package/node_modules/typebox/build/type/engine/evaluate/distribute.d.mts +2 -1
- package/node_modules/typebox/build/type/engine/evaluate/distribute.mjs +3 -3
- package/node_modules/typebox/build/type/engine/evaluate/evaluate.d.mts +17 -5
- package/node_modules/typebox/build/type/engine/evaluate/evaluate.mjs +34 -8
- package/node_modules/typebox/build/type/engine/exclude/operation.d.mts +5 -6
- package/node_modules/typebox/build/type/engine/exclude/operation.mjs +11 -12
- package/node_modules/typebox/build/type/engine/extract/operation.d.mts +5 -6
- package/node_modules/typebox/build/type/engine/extract/operation.mjs +11 -12
- package/node_modules/typebox/build/type/engine/immutable/instantiate_add.d.mts +10 -0
- package/node_modules/typebox/build/type/engine/immutable/instantiate_add.mjs +14 -0
- package/node_modules/typebox/build/type/engine/immutable/instantiate_remove.d.mts +10 -0
- package/node_modules/typebox/build/type/engine/immutable/instantiate_remove.mjs +14 -0
- package/node_modules/typebox/build/type/engine/index.d.mts +2 -2
- package/node_modules/typebox/build/type/engine/index.mjs +2 -2
- package/node_modules/typebox/build/type/engine/indexable/from_dependent.d.mts +5 -0
- package/node_modules/typebox/build/type/engine/indexable/from_dependent.mjs +8 -0
- package/node_modules/typebox/build/type/engine/indexable/from_enum.d.mts +3 -3
- package/node_modules/typebox/build/type/engine/indexable/from_enum.mjs +4 -4
- package/node_modules/typebox/build/type/engine/indexable/from_template_literal.d.mts +2 -2
- package/node_modules/typebox/build/type/engine/indexable/from_template_literal.mjs +3 -3
- package/node_modules/typebox/build/type/engine/indexable/from_type.d.mts +3 -1
- package/node_modules/typebox/build/type/engine/indexable/from_type.mjs +9 -6
- package/node_modules/typebox/build/type/engine/indexed/instantiate.d.mts +2 -1
- package/node_modules/typebox/build/type/engine/indexed/instantiate.mjs +5 -2
- package/node_modules/typebox/build/type/engine/instantiate.d.mts +44 -31
- package/node_modules/typebox/build/type/engine/instantiate.mjs +82 -83
- package/node_modules/typebox/build/type/engine/interface/instantiate.d.mts +3 -6
- package/node_modules/typebox/build/type/engine/intrinsics/from_template_literal.d.mts +2 -2
- package/node_modules/typebox/build/type/engine/intrinsics/from_template_literal.mjs +3 -3
- package/node_modules/typebox/build/type/engine/keyof/instantiate.d.mts +2 -1
- package/node_modules/typebox/build/type/engine/keyof/instantiate.mjs +5 -1
- package/node_modules/typebox/build/type/engine/mapped/mapped_operation.d.mts +4 -4
- package/node_modules/typebox/build/type/engine/mapped/mapped_operation.mjs +3 -3
- package/node_modules/typebox/build/type/engine/mapped/mapped_variants.d.mts +5 -4
- package/node_modules/typebox/build/type/engine/mapped/mapped_variants.mjs +10 -5
- package/node_modules/typebox/build/type/engine/module/instantiate.d.mts +7 -9
- package/node_modules/typebox/build/type/engine/module/instantiate.mjs +17 -15
- package/node_modules/typebox/build/type/engine/object/from_dependent.d.mts +5 -0
- package/node_modules/typebox/build/type/engine/object/from_dependent.mjs +8 -0
- package/node_modules/typebox/build/type/engine/object/from_type.d.mts +3 -1
- package/node_modules/typebox/build/type/engine/object/from_type.mjs +8 -5
- package/node_modules/typebox/build/type/engine/object/from_union.mjs +2 -2
- package/node_modules/typebox/build/type/engine/optional/instantiate_add.d.mts +10 -0
- package/node_modules/typebox/build/type/engine/optional/instantiate_add.mjs +14 -0
- package/node_modules/typebox/build/type/engine/optional/instantiate_remove.d.mts +10 -0
- package/node_modules/typebox/build/type/engine/optional/instantiate_remove.mjs +14 -0
- package/node_modules/typebox/build/type/engine/parameters/instantiate.d.mts +3 -4
- package/node_modules/typebox/build/type/engine/parameters/instantiate.mjs +2 -1
- package/node_modules/typebox/build/type/engine/partial/from_dependent.d.mts +5 -0
- package/node_modules/typebox/build/type/engine/partial/from_dependent.mjs +8 -0
- package/node_modules/typebox/build/type/engine/partial/from_intersect.d.mts +1 -1
- package/node_modules/typebox/build/type/engine/partial/from_intersect.mjs +3 -2
- package/node_modules/typebox/build/type/engine/partial/from_object.d.mts +2 -2
- package/node_modules/typebox/build/type/engine/partial/from_object.mjs +2 -2
- package/node_modules/typebox/build/type/engine/partial/from_type.d.mts +3 -1
- package/node_modules/typebox/build/type/engine/partial/from_type.mjs +7 -4
- package/node_modules/typebox/build/type/engine/priority/index.d.mts +1 -0
- package/node_modules/typebox/build/type/engine/priority/index.mjs +1 -0
- package/node_modules/typebox/build/type/engine/priority/priority.d.mts +20 -0
- package/node_modules/typebox/build/type/engine/priority/priority.mjs +28 -0
- package/node_modules/typebox/build/type/engine/readonly/instantiate_add.d.mts +10 -0
- package/node_modules/typebox/build/type/engine/readonly/instantiate_add.mjs +14 -0
- package/node_modules/typebox/build/type/engine/readonly/instantiate_remove.d.mts +10 -0
- package/node_modules/typebox/build/type/engine/readonly/instantiate_remove.mjs +14 -0
- package/node_modules/typebox/build/type/engine/readonly_object/from_array.d.mts +2 -2
- package/node_modules/typebox/build/type/engine/readonly_object/from_array.mjs +2 -2
- package/node_modules/typebox/build/type/engine/readonly_object/from_dependent.d.mts +5 -0
- package/node_modules/typebox/build/type/engine/readonly_object/from_dependent.mjs +8 -0
- package/node_modules/typebox/build/type/engine/readonly_object/from_intersect.d.mts +1 -1
- package/node_modules/typebox/build/type/engine/readonly_object/from_intersect.mjs +3 -2
- package/node_modules/typebox/build/type/engine/readonly_object/from_object.d.mts +2 -2
- package/node_modules/typebox/build/type/engine/readonly_object/from_object.mjs +2 -2
- package/node_modules/typebox/build/type/engine/readonly_object/from_tuple.d.mts +2 -2
- package/node_modules/typebox/build/type/engine/readonly_object/from_tuple.mjs +2 -2
- package/node_modules/typebox/build/type/engine/readonly_object/from_type.d.mts +3 -1
- package/node_modules/typebox/build/type/engine/readonly_object/from_type.mjs +8 -5
- package/node_modules/typebox/build/type/engine/record/from_key_enum.d.mts +2 -2
- package/node_modules/typebox/build/type/engine/record/from_key_enum.mjs +2 -2
- package/node_modules/typebox/build/type/engine/record/from_key_template_literal.d.mts +2 -2
- package/node_modules/typebox/build/type/engine/record/from_key_template_literal.mjs +2 -2
- package/node_modules/typebox/build/type/engine/ref/instantiate.d.mts +3 -3
- package/node_modules/typebox/build/type/engine/ref/instantiate.mjs +6 -6
- package/node_modules/typebox/build/type/engine/required/from_dependent.d.mts +5 -0
- package/node_modules/typebox/build/type/engine/required/from_dependent.mjs +8 -0
- package/node_modules/typebox/build/type/engine/required/from_intersect.d.mts +1 -1
- package/node_modules/typebox/build/type/engine/required/from_intersect.mjs +3 -2
- package/node_modules/typebox/build/type/engine/required/from_object.d.mts +2 -2
- package/node_modules/typebox/build/type/engine/required/from_object.mjs +2 -2
- package/node_modules/typebox/build/type/engine/required/from_type.d.mts +3 -1
- package/node_modules/typebox/build/type/engine/required/from_type.mjs +7 -4
- package/node_modules/typebox/build/type/engine/template_literal/decode.mjs +3 -3
- package/node_modules/typebox/build/type/engine/template_literal/encode.d.mts +2 -2
- package/node_modules/typebox/build/type/engine/template_literal/encode.mjs +6 -6
- package/node_modules/typebox/build/type/engine/template_literal/is_finite.mjs +1 -1
- package/node_modules/typebox/build/type/engine/template_literal/is_pattern.mjs +1 -0
- package/node_modules/typebox/build/type/engine/this/expand_this.d.mts +1 -4
- package/node_modules/typebox/build/type/engine/this/expand_this.mjs +7 -13
- package/node_modules/typebox/build/type/engine/with/instantiate.d.mts +8 -0
- package/node_modules/typebox/build/type/engine/{options → with}/instantiate.mjs +5 -5
- package/node_modules/typebox/build/type/extends/dependent.d.mts +6 -0
- package/node_modules/typebox/build/type/extends/dependent.mjs +6 -0
- package/node_modules/typebox/build/type/extends/enum.d.mts +4 -4
- package/node_modules/typebox/build/type/extends/enum.mjs +3 -2
- package/node_modules/typebox/build/type/extends/extends_left.d.mts +5 -7
- package/node_modules/typebox/build/type/extends/extends_left.mjs +24 -27
- package/node_modules/typebox/build/type/extends/extends_right.d.mts +7 -5
- package/node_modules/typebox/build/type/extends/extends_right.mjs +20 -15
- package/node_modules/typebox/build/type/extends/inference.mjs +1 -1
- package/node_modules/typebox/build/type/extends/object.d.mts +8 -1
- package/node_modules/typebox/build/type/extends/object.mjs +25 -3
- package/node_modules/typebox/build/type/extends/parameters.mjs +2 -2
- package/node_modules/typebox/build/type/extends/record.d.mts +13 -0
- package/node_modules/typebox/build/type/extends/record.mjs +23 -0
- package/node_modules/typebox/build/type/extends/template_literal.d.mts +3 -3
- package/node_modules/typebox/build/type/extends/template_literal.mjs +3 -3
- package/node_modules/typebox/build/type/extends/tuple.d.mts +3 -6
- package/node_modules/typebox/build/type/extends/tuple.mjs +6 -5
- package/node_modules/typebox/build/type/extends/union.mjs +2 -2
- package/node_modules/typebox/build/type/script/mapping.d.mts +84 -99
- package/node_modules/typebox/build/type/script/mapping.mjs +81 -85
- package/node_modules/typebox/build/type/script/parser.d.mts +40 -40
- package/node_modules/typebox/build/type/script/parser.mjs +22 -22
- package/node_modules/typebox/build/type/script/script.d.mts +3 -4
- package/node_modules/typebox/build/type/script/script.mjs +3 -2
- package/node_modules/typebox/build/type/script/token/internal/guard.d.mts +1 -1
- package/node_modules/typebox/build/type/script/token/internal/guard.mjs +1 -1
- package/node_modules/typebox/build/type/script/token/internal/take.mjs +1 -1
- package/node_modules/typebox/build/type/script/token/until.mjs +2 -2
- package/node_modules/typebox/build/type/types/_codec.d.mts +12 -12
- package/node_modules/typebox/build/type/types/_codec.mjs +0 -1
- package/node_modules/typebox/build/type/types/_immutable.d.mts +2 -9
- package/node_modules/typebox/build/type/types/_immutable.mjs +2 -10
- package/node_modules/typebox/build/type/types/_optional.d.mts +2 -9
- package/node_modules/typebox/build/type/types/_optional.mjs +2 -11
- package/node_modules/typebox/build/type/types/_readonly.d.mts +2 -9
- package/node_modules/typebox/build/type/types/_readonly.mjs +2 -10
- package/node_modules/typebox/build/type/types/_refine.d.mts +8 -10
- package/node_modules/typebox/build/type/types/_refine.mjs +1 -2
- package/node_modules/typebox/build/type/types/call.d.mts +3 -3
- package/node_modules/typebox/build/type/types/call.mjs +3 -2
- package/node_modules/typebox/build/type/types/deferred.d.mts +1 -0
- package/node_modules/typebox/build/type/types/deferred.mjs +1 -1
- package/node_modules/typebox/build/type/types/dependent.d.mts +17 -0
- package/node_modules/typebox/build/type/types/dependent.mjs +24 -0
- package/node_modules/typebox/build/type/types/enum.d.mts +3 -1
- package/node_modules/typebox/build/type/types/enum.mjs +5 -0
- package/node_modules/typebox/build/type/types/index.d.mts +1 -4
- package/node_modules/typebox/build/type/types/index.mjs +1 -4
- package/node_modules/typebox/build/type/types/number.d.mts +1 -1
- package/node_modules/typebox/build/type/types/number.mjs +1 -1
- package/node_modules/typebox/build/type/types/record.d.mts +13 -7
- package/node_modules/typebox/build/type/types/record.mjs +15 -9
- package/node_modules/typebox/build/type/types/static.d.mts +2 -5
- package/node_modules/typebox/build/typebox.d.mts +4 -8
- package/node_modules/typebox/build/typebox.mjs +4 -8
- package/node_modules/typebox/build/value/clean/clean.mjs +4 -2
- package/node_modules/typebox/build/value/clean/from_intersect.mjs +2 -2
- package/node_modules/typebox/build/value/clean/from_type.mjs +8 -10
- package/node_modules/typebox/build/value/clean/from_union.d.mts +1 -1
- package/node_modules/typebox/build/value/clean/from_union.mjs +1 -2
- package/node_modules/typebox/build/value/clone/clone.mjs +2 -73
- package/node_modules/typebox/build/value/codec/decode.mjs +4 -2
- package/node_modules/typebox/build/value/codec/encode.mjs +4 -2
- package/node_modules/typebox/build/value/codec/from_array.mjs +1 -4
- package/node_modules/typebox/build/value/codec/from_object.mjs +1 -4
- package/node_modules/typebox/build/value/codec/from_record.mjs +2 -7
- package/node_modules/typebox/build/value/codec/from_tuple.mjs +1 -4
- package/node_modules/typebox/build/value/codec/from_union.mjs +2 -3
- package/node_modules/typebox/build/value/convert/from_enum.mjs +3 -4
- package/node_modules/typebox/build/value/convert/from_template_literal.d.mts +1 -1
- package/node_modules/typebox/build/value/convert/from_template_literal.mjs +2 -3
- package/node_modules/typebox/build/value/convert/from_type.mjs +19 -21
- package/node_modules/typebox/build/value/create/from_enum.mjs +2 -2
- package/node_modules/typebox/build/value/create/from_type.mjs +23 -31
- package/node_modules/typebox/build/value/default/from_object.mjs +1 -1
- package/node_modules/typebox/build/value/default/from_type.mjs +8 -10
- package/node_modules/typebox/build/value/index.d.mts +0 -1
- package/node_modules/typebox/build/value/index.mjs +0 -1
- package/node_modules/typebox/build/value/repair/from_enum.mjs +2 -3
- package/node_modules/typebox/build/value/repair/from_type.mjs +24 -22
- package/node_modules/typebox/build/value/shared/union_priority_sort.d.mts +6 -2
- package/node_modules/typebox/build/value/shared/union_priority_sort.mjs +62 -26
- package/node_modules/typebox/build/value/value.d.mts +0 -1
- package/node_modules/typebox/build/value/value.mjs +0 -1
- package/node_modules/typebox/package.json +25 -25
- package/node_modules/typebox/readme.md +97 -80
- package/node_modules/undici-types/agent.d.ts +0 -2
- package/node_modules/undici-types/client.d.ts +25 -19
- package/node_modules/undici-types/dispatcher.d.ts +7 -33
- package/node_modules/undici-types/dispatcher1-wrapper.d.ts +7 -0
- package/node_modules/undici-types/fetch.d.ts +24 -4
- package/node_modules/undici-types/h2c-client.d.ts +6 -6
- package/node_modules/undici-types/handlers.d.ts +1 -2
- package/node_modules/undici-types/header.d.ts +5 -0
- package/node_modules/undici-types/index.d.ts +3 -1
- package/node_modules/undici-types/interceptors.d.ts +1 -1
- package/node_modules/undici-types/package.json +1 -1
- package/node_modules/undici-types/pool.d.ts +0 -2
- package/node_modules/undici-types/proxy-agent.d.ts +2 -2
- package/node_modules/undici-types/round-robin-pool.d.ts +0 -2
- package/node_modules/undici-types/snapshot-agent.d.ts +4 -0
- package/node_modules/undici-types/socks5-proxy-agent.d.ts +2 -2
- package/node_modules/undici-types/webidl.d.ts +0 -1
- package/npm-shrinkwrap.json +55 -56
- package/openclaw.plugin.json +46 -0
- package/package.json +6 -6
- package/dist/accounts.runtime-CgWgzjLX.js +0 -2
- package/dist/action-runtime.runtime-BQrVgSOq.js +0 -2
- package/dist/actions.runtime-Dl6AfO_g.js +0 -2
- package/dist/errors-CZtmv-h0.js +0 -107
- package/dist/outbound-adapter-BHUtpXz0.js +0 -188
- package/dist/send.runtime-a-O4PP2B.js +0 -2
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/LICENSE +0 -21
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/README.md +0 -15
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/assert/strict.d.ts +0 -59
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/assert.d.ts +0 -950
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/async_hooks.d.ts +0 -711
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/buffer.buffer.d.ts +0 -466
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/buffer.d.ts +0 -1765
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/child_process.d.ts +0 -1366
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/cluster.d.ts +0 -432
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/console.d.ts +0 -93
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/constants.d.ts +0 -14
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/crypto.d.ts +0 -4058
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/dgram.d.ts +0 -537
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/diagnostics_channel.d.ts +0 -552
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/dns/promises.d.ts +0 -497
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/dns.d.ts +0 -876
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/domain.d.ts +0 -150
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/events.d.ts +0 -1008
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/fs/promises.d.ts +0 -1468
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/fs.d.ts +0 -4780
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/globals.d.ts +0 -150
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/globals.typedarray.d.ts +0 -101
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/http.d.ts +0 -2147
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/http2.d.ts +0 -2485
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/https.d.ts +0 -400
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/index.d.ts +0 -117
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/inspector/promises.d.ts +0 -35
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/inspector.d.ts +0 -264
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/inspector.generated.d.ts +0 -4406
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/module.d.ts +0 -755
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/net.d.ts +0 -970
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/os.d.ts +0 -498
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/package.json +0 -155
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/path/posix.d.ts +0 -8
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/path/win32.d.ts +0 -8
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/path.d.ts +0 -178
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/perf_hooks.d.ts +0 -612
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/process.d.ts +0 -2204
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/punycode.d.ts +0 -89
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/querystring.d.ts +0 -139
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/quic.d.ts +0 -897
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/readline/promises.d.ts +0 -158
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/readline.d.ts +0 -507
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/repl.d.ts +0 -420
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/sea.d.ts +0 -47
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/sqlite.d.ts +0 -1068
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/stream/consumers.d.ts +0 -114
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/stream/iter.d.ts +0 -301
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/stream/promises.d.ts +0 -211
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/stream/web.d.ts +0 -300
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/stream.d.ts +0 -1774
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/string_decoder.d.ts +0 -27
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/test/reporters.d.ts +0 -59
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/test.d.ts +0 -2279
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/timers/promises.d.ts +0 -93
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/timers.d.ts +0 -149
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/tls.d.ts +0 -1193
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/trace_events.d.ts +0 -103
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -462
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +0 -71
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -36
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.6/index.d.ts +0 -119
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +0 -72
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.7/index.d.ts +0 -119
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/tty.d.ts +0 -225
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/url.d.ts +0 -556
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/util/types.d.ts +0 -558
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/util.d.ts +0 -1677
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/v8.d.ts +0 -980
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/vm.d.ts +0 -1136
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/wasi.d.ts +0 -131
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -59
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/blob.d.ts +0 -23
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/console.d.ts +0 -9
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/crypto.d.ts +0 -39
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/encoding.d.ts +0 -11
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/events.d.ts +0 -106
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/fetch.d.ts +0 -69
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/importmeta.d.ts +0 -13
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/messaging.d.ts +0 -23
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/navigator.d.ts +0 -25
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/performance.d.ts +0 -45
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/storage.d.ts +0 -24
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/streams.d.ts +0 -115
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/timers.d.ts +0 -44
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/url.d.ts +0 -24
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/worker_threads.d.ts +0 -671
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/zlib/iter.d.ts +0 -131
- package/node_modules/@types/jsonwebtoken/node_modules/@types/node/zlib.d.ts +0 -589
- package/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
- package/node_modules/@types/ws/node_modules/@types/node/LICENSE +0 -21
- package/node_modules/@types/ws/node_modules/@types/node/README.md +0 -15
- package/node_modules/@types/ws/node_modules/@types/node/assert/strict.d.ts +0 -59
- package/node_modules/@types/ws/node_modules/@types/node/assert.d.ts +0 -950
- package/node_modules/@types/ws/node_modules/@types/node/async_hooks.d.ts +0 -711
- package/node_modules/@types/ws/node_modules/@types/node/buffer.buffer.d.ts +0 -466
- package/node_modules/@types/ws/node_modules/@types/node/buffer.d.ts +0 -1765
- package/node_modules/@types/ws/node_modules/@types/node/child_process.d.ts +0 -1366
- package/node_modules/@types/ws/node_modules/@types/node/cluster.d.ts +0 -432
- package/node_modules/@types/ws/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
- package/node_modules/@types/ws/node_modules/@types/node/console.d.ts +0 -93
- package/node_modules/@types/ws/node_modules/@types/node/constants.d.ts +0 -14
- package/node_modules/@types/ws/node_modules/@types/node/crypto.d.ts +0 -4058
- package/node_modules/@types/ws/node_modules/@types/node/dgram.d.ts +0 -537
- package/node_modules/@types/ws/node_modules/@types/node/diagnostics_channel.d.ts +0 -552
- package/node_modules/@types/ws/node_modules/@types/node/dns/promises.d.ts +0 -497
- package/node_modules/@types/ws/node_modules/@types/node/dns.d.ts +0 -876
- package/node_modules/@types/ws/node_modules/@types/node/domain.d.ts +0 -150
- package/node_modules/@types/ws/node_modules/@types/node/events.d.ts +0 -1008
- package/node_modules/@types/ws/node_modules/@types/node/fs/promises.d.ts +0 -1468
- package/node_modules/@types/ws/node_modules/@types/node/fs.d.ts +0 -4780
- package/node_modules/@types/ws/node_modules/@types/node/globals.d.ts +0 -150
- package/node_modules/@types/ws/node_modules/@types/node/globals.typedarray.d.ts +0 -101
- package/node_modules/@types/ws/node_modules/@types/node/http.d.ts +0 -2147
- package/node_modules/@types/ws/node_modules/@types/node/http2.d.ts +0 -2485
- package/node_modules/@types/ws/node_modules/@types/node/https.d.ts +0 -400
- package/node_modules/@types/ws/node_modules/@types/node/index.d.ts +0 -117
- package/node_modules/@types/ws/node_modules/@types/node/inspector/promises.d.ts +0 -35
- package/node_modules/@types/ws/node_modules/@types/node/inspector.d.ts +0 -264
- package/node_modules/@types/ws/node_modules/@types/node/inspector.generated.d.ts +0 -4406
- package/node_modules/@types/ws/node_modules/@types/node/module.d.ts +0 -755
- package/node_modules/@types/ws/node_modules/@types/node/net.d.ts +0 -970
- package/node_modules/@types/ws/node_modules/@types/node/os.d.ts +0 -498
- package/node_modules/@types/ws/node_modules/@types/node/package.json +0 -155
- package/node_modules/@types/ws/node_modules/@types/node/path/posix.d.ts +0 -8
- package/node_modules/@types/ws/node_modules/@types/node/path/win32.d.ts +0 -8
- package/node_modules/@types/ws/node_modules/@types/node/path.d.ts +0 -178
- package/node_modules/@types/ws/node_modules/@types/node/perf_hooks.d.ts +0 -612
- package/node_modules/@types/ws/node_modules/@types/node/process.d.ts +0 -2204
- package/node_modules/@types/ws/node_modules/@types/node/punycode.d.ts +0 -89
- package/node_modules/@types/ws/node_modules/@types/node/querystring.d.ts +0 -139
- package/node_modules/@types/ws/node_modules/@types/node/quic.d.ts +0 -897
- package/node_modules/@types/ws/node_modules/@types/node/readline/promises.d.ts +0 -158
- package/node_modules/@types/ws/node_modules/@types/node/readline.d.ts +0 -507
- package/node_modules/@types/ws/node_modules/@types/node/repl.d.ts +0 -420
- package/node_modules/@types/ws/node_modules/@types/node/sea.d.ts +0 -47
- package/node_modules/@types/ws/node_modules/@types/node/sqlite.d.ts +0 -1068
- package/node_modules/@types/ws/node_modules/@types/node/stream/consumers.d.ts +0 -114
- package/node_modules/@types/ws/node_modules/@types/node/stream/iter.d.ts +0 -301
- package/node_modules/@types/ws/node_modules/@types/node/stream/promises.d.ts +0 -211
- package/node_modules/@types/ws/node_modules/@types/node/stream/web.d.ts +0 -300
- package/node_modules/@types/ws/node_modules/@types/node/stream.d.ts +0 -1774
- package/node_modules/@types/ws/node_modules/@types/node/string_decoder.d.ts +0 -27
- package/node_modules/@types/ws/node_modules/@types/node/test/reporters.d.ts +0 -59
- package/node_modules/@types/ws/node_modules/@types/node/test.d.ts +0 -2279
- package/node_modules/@types/ws/node_modules/@types/node/timers/promises.d.ts +0 -93
- package/node_modules/@types/ws/node_modules/@types/node/timers.d.ts +0 -149
- package/node_modules/@types/ws/node_modules/@types/node/tls.d.ts +0 -1193
- package/node_modules/@types/ws/node_modules/@types/node/trace_events.d.ts +0 -103
- package/node_modules/@types/ws/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -462
- package/node_modules/@types/ws/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +0 -71
- package/node_modules/@types/ws/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -36
- package/node_modules/@types/ws/node_modules/@types/node/ts5.6/index.d.ts +0 -119
- package/node_modules/@types/ws/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +0 -72
- package/node_modules/@types/ws/node_modules/@types/node/ts5.7/index.d.ts +0 -119
- package/node_modules/@types/ws/node_modules/@types/node/tty.d.ts +0 -225
- package/node_modules/@types/ws/node_modules/@types/node/url.d.ts +0 -556
- package/node_modules/@types/ws/node_modules/@types/node/util/types.d.ts +0 -558
- package/node_modules/@types/ws/node_modules/@types/node/util.d.ts +0 -1677
- package/node_modules/@types/ws/node_modules/@types/node/v8.d.ts +0 -980
- package/node_modules/@types/ws/node_modules/@types/node/vm.d.ts +0 -1136
- package/node_modules/@types/ws/node_modules/@types/node/wasi.d.ts +0 -131
- package/node_modules/@types/ws/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -59
- package/node_modules/@types/ws/node_modules/@types/node/web-globals/blob.d.ts +0 -23
- package/node_modules/@types/ws/node_modules/@types/node/web-globals/console.d.ts +0 -9
- package/node_modules/@types/ws/node_modules/@types/node/web-globals/crypto.d.ts +0 -39
- package/node_modules/@types/ws/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
- package/node_modules/@types/ws/node_modules/@types/node/web-globals/encoding.d.ts +0 -11
- package/node_modules/@types/ws/node_modules/@types/node/web-globals/events.d.ts +0 -106
- package/node_modules/@types/ws/node_modules/@types/node/web-globals/fetch.d.ts +0 -69
- package/node_modules/@types/ws/node_modules/@types/node/web-globals/importmeta.d.ts +0 -13
- package/node_modules/@types/ws/node_modules/@types/node/web-globals/messaging.d.ts +0 -23
- package/node_modules/@types/ws/node_modules/@types/node/web-globals/navigator.d.ts +0 -25
- package/node_modules/@types/ws/node_modules/@types/node/web-globals/performance.d.ts +0 -45
- package/node_modules/@types/ws/node_modules/@types/node/web-globals/storage.d.ts +0 -24
- package/node_modules/@types/ws/node_modules/@types/node/web-globals/streams.d.ts +0 -115
- package/node_modules/@types/ws/node_modules/@types/node/web-globals/timers.d.ts +0 -44
- package/node_modules/@types/ws/node_modules/@types/node/web-globals/url.d.ts +0 -24
- package/node_modules/@types/ws/node_modules/@types/node/worker_threads.d.ts +0 -671
- package/node_modules/@types/ws/node_modules/@types/node/zlib/iter.d.ts +0 -131
- package/node_modules/@types/ws/node_modules/@types/node/zlib.d.ts +0 -589
- package/node_modules/typebox/build/schema/engine/_guard.d.mts +0 -6
- package/node_modules/typebox/build/schema/engine/_guard.mjs +0 -26
- package/node_modules/typebox/build/schema/types/_guard.d.mts +0 -10
- package/node_modules/typebox/build/schema/types/_guard.mjs +0 -16
- package/node_modules/typebox/build/type/action/_optional.d.mts +0 -19
- package/node_modules/typebox/build/type/action/_optional.mjs +0 -40
- package/node_modules/typebox/build/type/action/_readonly.d.mts +0 -19
- package/node_modules/typebox/build/type/action/_readonly.mjs +0 -40
- package/node_modules/typebox/build/type/action/awaited.d.mts +0 -15
- package/node_modules/typebox/build/type/action/awaited.mjs +0 -15
- package/node_modules/typebox/build/type/action/options.d.mts +0 -11
- package/node_modules/typebox/build/type/action/options.mjs +0 -11
- package/node_modules/typebox/build/type/engine/awaited/instantiate.d.mts +0 -11
- package/node_modules/typebox/build/type/engine/awaited/instantiate.mjs +0 -20
- package/node_modules/typebox/build/type/engine/enum/enum_to_union.d.mts +0 -14
- package/node_modules/typebox/build/type/engine/enum/enum_to_union.mjs +0 -24
- package/node_modules/typebox/build/type/engine/options/index.d.mts +0 -1
- package/node_modules/typebox/build/type/engine/options/index.mjs +0 -1
- package/node_modules/typebox/build/type/engine/options/instantiate.d.mts +0 -8
- package/node_modules/typebox/build/type/extends/async_iterator.d.mts +0 -7
- package/node_modules/typebox/build/type/extends/async_iterator.mjs +0 -9
- package/node_modules/typebox/build/type/extends/iterator.d.mts +0 -7
- package/node_modules/typebox/build/type/extends/iterator.mjs +0 -9
- package/node_modules/typebox/build/type/extends/promise.d.mts +0 -7
- package/node_modules/typebox/build/type/extends/promise.mjs +0 -9
- package/node_modules/typebox/build/type/types/async_iterator.d.mts +0 -20
- package/node_modules/typebox/build/type/types/async_iterator.mjs +0 -28
- package/node_modules/typebox/build/type/types/base.d.mts +0 -50
- package/node_modules/typebox/build/type/types/base.mjs +0 -84
- package/node_modules/typebox/build/type/types/iterator.d.mts +0 -20
- package/node_modules/typebox/build/type/types/iterator.mjs +0 -28
- package/node_modules/typebox/build/type/types/promise.d.mts +0 -21
- package/node_modules/typebox/build/type/types/promise.mjs +0 -29
- package/node_modules/typebox/build/value/clean/from_base.d.mts +0 -2
- package/node_modules/typebox/build/value/clean/from_base.mjs +0 -4
- package/node_modules/typebox/build/value/convert/from_base.d.mts +0 -2
- package/node_modules/typebox/build/value/convert/from_base.mjs +0 -4
- package/node_modules/typebox/build/value/create/from_async_iterator.d.mts +0 -2
- package/node_modules/typebox/build/value/create/from_async_iterator.mjs +0 -5
- package/node_modules/typebox/build/value/create/from_base.d.mts +0 -2
- package/node_modules/typebox/build/value/create/from_base.mjs +0 -4
- package/node_modules/typebox/build/value/create/from_iterator.d.mts +0 -2
- package/node_modules/typebox/build/value/create/from_iterator.mjs +0 -5
- package/node_modules/typebox/build/value/create/from_promise.d.mts +0 -2
- package/node_modules/typebox/build/value/create/from_promise.mjs +0 -5
- package/node_modules/typebox/build/value/default/from_base.d.mts +0 -2
- package/node_modules/typebox/build/value/default/from_base.mjs +0 -5
- package/node_modules/typebox/build/value/mutate/error.d.mts +0 -3
- package/node_modules/typebox/build/value/mutate/error.mjs +0 -6
- package/node_modules/typebox/build/value/mutate/from_array.d.mts +0 -2
- package/node_modules/typebox/build/value/mutate/from_array.mjs +0 -16
- package/node_modules/typebox/build/value/mutate/from_object.d.mts +0 -2
- package/node_modules/typebox/build/value/mutate/from_object.mjs +0 -40
- package/node_modules/typebox/build/value/mutate/from_unknown.d.mts +0 -2
- package/node_modules/typebox/build/value/mutate/from_unknown.mjs +0 -7
- package/node_modules/typebox/build/value/mutate/from_value.d.mts +0 -2
- package/node_modules/typebox/build/value/mutate/from_value.mjs +0 -12
- package/node_modules/typebox/build/value/mutate/index.d.mts +0 -1
- package/node_modules/typebox/build/value/mutate/index.mjs +0 -1
- package/node_modules/typebox/build/value/mutate/mutate.d.mts +0 -11
- package/node_modules/typebox/build/value/mutate/mutate.mjs +0 -41
- package/node_modules/typebox/build/value/repair/from_base.d.mts +0 -2
- package/node_modules/typebox/build/value/repair/from_base.mjs +0 -8
- /package/node_modules/typebox/build/type/engine/{awaited → with}/index.d.mts +0 -0
- /package/node_modules/typebox/build/type/engine/{awaited → with}/index.mjs +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { i as resolveDefaultSlackAccountId, r as mergeSlackAccountConfig } from "./accounts-
|
|
1
|
+
import { i as resolveDefaultSlackAccountId, r as mergeSlackAccountConfig } from "./accounts-BOJJiHSr.js";
|
|
2
2
|
import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "openclaw/plugin-sdk/account-resolution";
|
|
3
3
|
import { hasConfiguredSecretInput, normalizeSecretInputString } from "openclaw/plugin-sdk/secret-input";
|
|
4
4
|
import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as inspectSlackAccount } from "./account-inspect-
|
|
1
|
+
import { t as inspectSlackAccount } from "./account-inspect-Di7ditqZ.js";
|
|
2
2
|
//#region extensions/slack/account-inspect-api.ts
|
|
3
3
|
function inspectSlackReadOnlyAccount(cfg, accountId) {
|
|
4
4
|
return inspectSlackAccount({
|
|
@@ -4,6 +4,13 @@ import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runti
|
|
|
4
4
|
import { mapAllowFromEntries, normalizeChannelDmPolicy, resolveChannelDmAllowFrom, resolveChannelDmPolicy } from "openclaw/plugin-sdk/channel-config-helpers";
|
|
5
5
|
import { resolveAccountEntry } from "openclaw/plugin-sdk/routing";
|
|
6
6
|
//#region extensions/slack/src/token.ts
|
|
7
|
+
function formatSlackBotTokenIdentityWarning(params) {
|
|
8
|
+
const userId = params.auth.user_id?.trim();
|
|
9
|
+
const botId = params.auth.bot_id?.trim();
|
|
10
|
+
if (!userId || botId) return;
|
|
11
|
+
const accountId = params.accountId?.trim() || "default";
|
|
12
|
+
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.`;
|
|
13
|
+
}
|
|
7
14
|
function resolveSlackBotToken(raw, path = "channels.slack.botToken") {
|
|
8
15
|
return normalizeResolvedSecretInputString({
|
|
9
16
|
value: raw,
|
|
@@ -38,6 +45,12 @@ function resolveSlackReplyToMode(account, chatType) {
|
|
|
38
45
|
}
|
|
39
46
|
//#endregion
|
|
40
47
|
//#region extensions/slack/src/accounts.ts
|
|
48
|
+
function resolveSlackOperationToken(account, operation) {
|
|
49
|
+
const userToken = normalizeOptionalString(account.userToken);
|
|
50
|
+
const botToken = normalizeOptionalString(account.botToken);
|
|
51
|
+
if (operation === "read") return userToken ?? botToken;
|
|
52
|
+
return account.config.userTokenReadOnly === false ? botToken ?? userToken : botToken;
|
|
53
|
+
}
|
|
41
54
|
const { listAccountIds, resolveDefaultAccountId } = createAccountListHelpers("slack", { hasImplicitDefaultAccount: (cfg) => {
|
|
42
55
|
const slack = cfg.channels?.slack;
|
|
43
56
|
if (!(hasConfiguredAccountValue(slack?.botToken) || hasConfiguredAccountValue(process.env.SLACK_BOT_TOKEN))) return false;
|
|
@@ -184,4 +197,4 @@ function listEnabledSlackAccounts(cfg) {
|
|
|
184
197
|
})).filter((account) => account.enabled);
|
|
185
198
|
}
|
|
186
199
|
//#endregion
|
|
187
|
-
export { resolveSlackAccount as a, resolveSlackConfigAccessorAccount as c,
|
|
200
|
+
export { resolveSlackAccount as a, resolveSlackConfigAccessorAccount as c, formatSlackBotTokenIdentityWarning as d, resolveSlackAppToken as f, resolveDefaultSlackAccountId as i, resolveSlackOperationToken as l, listSlackAccountIds as n, resolveSlackAccountAllowFrom as o, resolveSlackBotToken as p, mergeSlackAccountConfig as r, resolveSlackAccountDmPolicy as s, listEnabledSlackAccounts as t, resolveSlackReplyToMode as u };
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { i as resolveSlackChannelId } from "./target-parsing-3jYH8LfB.js";
|
|
2
2
|
import { t as slackContextTargetsMatch } from "./targets-Dll4NJgs.js";
|
|
3
|
-
import { r as parseSlackBlocksInput } from "./reply-blocks-
|
|
4
|
-
import { a as readPositiveIntegerParam, 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-
|
|
3
|
+
import { r as parseSlackBlocksInput } from "./reply-blocks-BGQ6zSqM.js";
|
|
4
|
+
import { a as readPositiveIntegerParam, c as withNormalizedTimestamp, n as imageResultFromFile, o as readReactionParams, r as jsonResult, s as readStringParam, t as createActionGate } from "./runtime-api-CEmqYxR-.js";
|
|
5
|
+
import { n as resolveSlackChannelConfig, t as isSlackChannelAllowedByPolicy } from "./policy-Dj-puVPb.js";
|
|
6
6
|
import { createLazyRuntimeModule } from "openclaw/plugin-sdk/lazy-runtime";
|
|
7
7
|
import { isSingleUseReplyToMode } from "openclaw/plugin-sdk/reply-reference";
|
|
8
8
|
import { readBooleanParam } from "openclaw/plugin-sdk/boolean-param";
|
|
9
9
|
import { resolveOpenProviderRuntimeGroupPolicy } from "openclaw/plugin-sdk/runtime-group-policy";
|
|
10
10
|
//#region extensions/slack/src/action-runtime.ts
|
|
11
|
-
const messagingActions = new Set([
|
|
11
|
+
const messagingActions = /* @__PURE__ */ new Set([
|
|
12
12
|
"sendMessage",
|
|
13
13
|
"uploadFile",
|
|
14
14
|
"editMessage",
|
|
@@ -16,14 +16,14 @@ const messagingActions = new Set([
|
|
|
16
16
|
"readMessages",
|
|
17
17
|
"downloadFile"
|
|
18
18
|
]);
|
|
19
|
-
const reactionsActions = new Set(["react", "reactions"]);
|
|
20
|
-
const pinActions = new Set([
|
|
19
|
+
const reactionsActions = /* @__PURE__ */ new Set(["react", "reactions"]);
|
|
20
|
+
const pinActions = /* @__PURE__ */ new Set([
|
|
21
21
|
"pinMessage",
|
|
22
22
|
"unpinMessage",
|
|
23
23
|
"listPins"
|
|
24
24
|
]);
|
|
25
|
-
const loadSlackActionsRuntime = createLazyRuntimeModule(() => import("./actions.runtime-
|
|
26
|
-
const loadSlackAccountsRuntime = createLazyRuntimeModule(() => import("./accounts.runtime-
|
|
25
|
+
const loadSlackActionsRuntime = createLazyRuntimeModule(() => import("./actions.runtime-C103_BPW.js"));
|
|
26
|
+
const loadSlackAccountsRuntime = createLazyRuntimeModule(() => import("./accounts.runtime-DWvaCb-X.js"));
|
|
27
27
|
function createLazySlackAction(key) {
|
|
28
28
|
return (async (...args) => {
|
|
29
29
|
const action = (await loadSlackActionsRuntime())[key];
|
|
@@ -44,6 +44,7 @@ const slackActionRuntime = {
|
|
|
44
44
|
readSlackMessages: createLazySlackAction("readSlackMessages"),
|
|
45
45
|
removeOwnSlackReactions: createLazySlackAction("removeOwnSlackReactions"),
|
|
46
46
|
removeSlackReaction: createLazySlackAction("removeSlackReaction"),
|
|
47
|
+
resolveSlackConversationName: createLazySlackAction("resolveSlackConversationName"),
|
|
47
48
|
sendSlackMessage: createLazySlackAction("sendSlackMessage"),
|
|
48
49
|
unpinSlackMessage: createLazySlackAction("unpinSlackMessage")
|
|
49
50
|
};
|
|
@@ -74,11 +75,12 @@ function readSlackBlocksParam(params) {
|
|
|
74
75
|
function isImageContentType(value) {
|
|
75
76
|
return value?.trim().toLowerCase().startsWith("image/") === true;
|
|
76
77
|
}
|
|
77
|
-
function
|
|
78
|
+
function resolveSlackReadTargetDecision(params) {
|
|
78
79
|
const channels = params.account.config.channels;
|
|
79
80
|
const channelKeys = Object.keys(channels ?? {});
|
|
80
81
|
const channelConfig = resolveSlackChannelConfig({
|
|
81
82
|
channelId: params.channelId,
|
|
83
|
+
channelName: params.channelName,
|
|
82
84
|
channels,
|
|
83
85
|
channelKeys,
|
|
84
86
|
allowNameMatching: params.account.config.dangerouslyAllowNameMatching,
|
|
@@ -90,12 +92,24 @@ function assertSlackReadTargetAllowed(params) {
|
|
|
90
92
|
groupPolicy: params.account.config.groupPolicy,
|
|
91
93
|
defaultGroupPolicy: params.cfg.channels?.defaults?.groupPolicy
|
|
92
94
|
});
|
|
93
|
-
if (
|
|
95
|
+
if (isSlackChannelAllowedByPolicy({
|
|
94
96
|
groupPolicy,
|
|
95
97
|
channelAllowlistConfigured: channelKeys.length > 0,
|
|
96
98
|
channelAllowed
|
|
97
|
-
}))
|
|
98
|
-
|
|
99
|
+
})) return !channelAllowed && (groupPolicy !== "open" || channelConfig?.matchSource) ? "deny" : "allow";
|
|
100
|
+
return groupPolicy === "allowlist" && channelKeys.length > 0 && params.account.config.dangerouslyAllowNameMatching === true && !params.channelName && (channelConfig?.matchSource === void 0 || channelConfig.matchSource === "wildcard") ? "resolve-name" : "deny";
|
|
101
|
+
}
|
|
102
|
+
async function assertSlackReadTargetAllowed(params) {
|
|
103
|
+
const direct = resolveSlackReadTargetDecision(params);
|
|
104
|
+
if (direct === "allow") return;
|
|
105
|
+
if (direct === "resolve-name") {
|
|
106
|
+
const channelName = await params.resolveChannelName();
|
|
107
|
+
if (channelName && resolveSlackReadTargetDecision({
|
|
108
|
+
...params,
|
|
109
|
+
channelName
|
|
110
|
+
}) === "allow") return;
|
|
111
|
+
}
|
|
112
|
+
throw new Error("Slack read target channel is not allowed.");
|
|
99
113
|
}
|
|
100
114
|
async function handleSlackAction(params, cfg, context) {
|
|
101
115
|
const resolveChannelId = () => resolveSlackChannelId(readStringParam(params, "channelId", { required: true }));
|
|
@@ -126,6 +140,12 @@ async function handleSlackAction(params, cfg, context) {
|
|
|
126
140
|
};
|
|
127
141
|
const readOpts = buildActionOpts("read");
|
|
128
142
|
const writeOpts = buildActionOpts("write");
|
|
143
|
+
const assertReadTargetAllowed = async (channelId) => await assertSlackReadTargetAllowed({
|
|
144
|
+
account,
|
|
145
|
+
cfg,
|
|
146
|
+
channelId,
|
|
147
|
+
resolveChannelName: async () => await slackActionRuntime.resolveSlackConversationName(channelId, readOpts)
|
|
148
|
+
});
|
|
129
149
|
if (reactionsActions.has(action)) {
|
|
130
150
|
if (!isActionEnabled("reactions")) throw new Error("Slack reactions are disabled.");
|
|
131
151
|
const channelId = resolveChannelId();
|
|
@@ -151,11 +171,7 @@ async function handleSlackAction(params, cfg, context) {
|
|
|
151
171
|
added: emoji
|
|
152
172
|
});
|
|
153
173
|
}
|
|
154
|
-
|
|
155
|
-
account,
|
|
156
|
-
cfg,
|
|
157
|
-
channelId
|
|
158
|
-
});
|
|
174
|
+
await assertReadTargetAllowed(channelId);
|
|
159
175
|
return jsonResult({
|
|
160
176
|
ok: true,
|
|
161
177
|
reactions: readOpts ? await slackActionRuntime.listSlackReactions(channelId, messageId, readOpts) : await slackActionRuntime.listSlackReactions(channelId, messageId)
|
|
@@ -248,11 +264,7 @@ async function handleSlackAction(params, cfg, context) {
|
|
|
248
264
|
}
|
|
249
265
|
case "readMessages": {
|
|
250
266
|
const channelId = resolveChannelId();
|
|
251
|
-
|
|
252
|
-
account,
|
|
253
|
-
cfg,
|
|
254
|
-
channelId
|
|
255
|
-
});
|
|
267
|
+
await assertReadTargetAllowed(channelId);
|
|
256
268
|
const limit = readPositiveIntegerParam(params, "limit", { message: "limit must be a positive integer." });
|
|
257
269
|
const before = readStringParam(params, "before");
|
|
258
270
|
const after = readStringParam(params, "after");
|
|
@@ -277,11 +289,7 @@ async function handleSlackAction(params, cfg, context) {
|
|
|
277
289
|
const channelTarget = readStringParam(params, "channelId") ?? readStringParam(params, "to") ?? context?.currentChannelId;
|
|
278
290
|
if (!channelTarget) throw new Error("Slack file download requires channelId or to so the read target can be authorized.");
|
|
279
291
|
const channelId = resolveSlackChannelId(channelTarget);
|
|
280
|
-
|
|
281
|
-
account,
|
|
282
|
-
cfg,
|
|
283
|
-
channelId
|
|
284
|
-
});
|
|
292
|
+
await assertReadTargetAllowed(channelId);
|
|
285
293
|
const threadId = readStringParam(params, "threadId") ?? readStringParam(params, "replyTo");
|
|
286
294
|
const maxBytes = account.config?.mediaMaxMb ? account.config.mediaMaxMb * 1024 * 1024 : 20 * 1024 * 1024;
|
|
287
295
|
const readToken = getTokenForOperation("read");
|
|
@@ -338,11 +346,7 @@ async function handleSlackAction(params, cfg, context) {
|
|
|
338
346
|
else await slackActionRuntime.unpinSlackMessage(channelId, messageId);
|
|
339
347
|
return jsonResult({ ok: true });
|
|
340
348
|
}
|
|
341
|
-
|
|
342
|
-
account,
|
|
343
|
-
cfg,
|
|
344
|
-
channelId
|
|
345
|
-
});
|
|
349
|
+
await assertReadTargetAllowed(channelId);
|
|
346
350
|
return jsonResult({
|
|
347
351
|
ok: true,
|
|
348
352
|
pins: (writeOpts ? await slackActionRuntime.listSlackPins(channelId, readOpts) : await slackActionRuntime.listSlackPins(channelId)).map((pin) => {
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-D7D4PA-g.js";
|
|
2
|
-
import { a as resolveSlackAccount,
|
|
3
|
-
import { a as SLACK_TEXT_LIMIT,
|
|
4
|
-
import { a as getSlackWriteClient, r as createSlackWebClient } from "./client-
|
|
5
|
-
import { l as buildSlackBlocksFallbackText,
|
|
6
|
-
import { normalizeLowercaseStringOrEmpty, normalizeOptionalLowercaseString, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
7
|
-
import { requireRuntimeConfig } from "openclaw/plugin-sdk/plugin-config-runtime";
|
|
2
|
+
import { a as resolveSlackAccount, p as resolveSlackBotToken } from "./accounts-BOJJiHSr.js";
|
|
3
|
+
import { a as SLACK_TEXT_LIMIT, b as truncateSlackText, i as validateSlackBlocksArray } from "./reply-blocks-BGQ6zSqM.js";
|
|
4
|
+
import { a as getSlackWriteClient, r as createSlackWebClient } from "./client-DGxwSL7f.js";
|
|
5
|
+
import { l as buildSlackBlocksFallbackText, r as sendMessageSlack } from "./send-DKDXoeoV.js";
|
|
6
|
+
import { normalizeLowercaseStringOrEmpty, normalizeOptionalLowercaseString, normalizeOptionalString, readStringValue } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
8
7
|
import { logVerbose, logVerbose as logVerbose$1 } from "openclaw/plugin-sdk/runtime-env";
|
|
8
|
+
import { pruneMapToMaxSize } from "openclaw/plugin-sdk/collection-runtime";
|
|
9
|
+
import { requireRuntimeConfig } from "openclaw/plugin-sdk/plugin-config-runtime";
|
|
9
10
|
import { z } from "zod";
|
|
10
11
|
import fs from "node:fs/promises";
|
|
11
12
|
import { formatErrorMessage } from "openclaw/plugin-sdk/error-runtime";
|
|
@@ -13,7 +14,6 @@ import { normalizeHostname } from "openclaw/plugin-sdk/host-runtime";
|
|
|
13
14
|
import { resolveRequestUrl } from "openclaw/plugin-sdk/request-url";
|
|
14
15
|
import { fetchWithRuntimeDispatcher } from "openclaw/plugin-sdk/runtime-fetch";
|
|
15
16
|
import { saveRemoteMedia } from "openclaw/plugin-sdk/media-runtime";
|
|
16
|
-
import { pruneMapToMaxSize } from "openclaw/plugin-sdk/collection-runtime";
|
|
17
17
|
import { asDateTimestampMs, resolveExpiresAtMsFromDurationMs } from "openclaw/plugin-sdk/number-runtime";
|
|
18
18
|
//#region extensions/slack/src/edit-text.ts
|
|
19
19
|
function buildSlackEditTextPayload(content, blocks) {
|
|
@@ -37,6 +37,112 @@ function formatSlackFileReferenceList(files) {
|
|
|
37
37
|
//#region extensions/slack/src/monitor/media-types.ts
|
|
38
38
|
const MAX_SLACK_MEDIA_FILES = 8;
|
|
39
39
|
//#endregion
|
|
40
|
+
//#region extensions/slack/src/monitor/block-text.ts
|
|
41
|
+
function readTextObject(value) {
|
|
42
|
+
if (!value || typeof value !== "object") return;
|
|
43
|
+
return normalizeOptionalString(readStringValue(value.text));
|
|
44
|
+
}
|
|
45
|
+
function renderSlackRichTextLeaf(element) {
|
|
46
|
+
switch (element.type) {
|
|
47
|
+
case "text": return readStringValue(element.text) ?? "";
|
|
48
|
+
case "link": return readStringValue(element.text) ?? readStringValue(element.url) ?? "";
|
|
49
|
+
case "user": {
|
|
50
|
+
const userId = readStringValue(element.user_id);
|
|
51
|
+
return userId ? `<@${userId}>` : "";
|
|
52
|
+
}
|
|
53
|
+
case "channel": {
|
|
54
|
+
const channelId = readStringValue(element.channel_id);
|
|
55
|
+
return channelId ? `<#${channelId}>` : "";
|
|
56
|
+
}
|
|
57
|
+
case "usergroup": {
|
|
58
|
+
const usergroupId = readStringValue(element.usergroup_id);
|
|
59
|
+
return usergroupId ? `<!subteam^${usergroupId}>` : "";
|
|
60
|
+
}
|
|
61
|
+
case "broadcast": {
|
|
62
|
+
const range = readStringValue(element.range);
|
|
63
|
+
return range ? `<!${range}>` : "";
|
|
64
|
+
}
|
|
65
|
+
case "emoji": {
|
|
66
|
+
const name = readStringValue(element.name);
|
|
67
|
+
return name ? `:${name}:` : "";
|
|
68
|
+
}
|
|
69
|
+
default: return "";
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
function renderSlackRichTextElements(elements) {
|
|
73
|
+
if (!Array.isArray(elements)) return "";
|
|
74
|
+
const parts = [];
|
|
75
|
+
for (const rawElement of elements) {
|
|
76
|
+
if (!rawElement || typeof rawElement !== "object") continue;
|
|
77
|
+
const element = rawElement;
|
|
78
|
+
switch (element.type) {
|
|
79
|
+
case "rich_text_section":
|
|
80
|
+
case "rich_text_preformatted":
|
|
81
|
+
case "rich_text_quote":
|
|
82
|
+
parts.push(renderSlackRichTextElements(element.elements));
|
|
83
|
+
break;
|
|
84
|
+
case "rich_text_list": {
|
|
85
|
+
const listParts = [];
|
|
86
|
+
if (Array.isArray(element.elements)) for (const child of element.elements) {
|
|
87
|
+
if (!child || typeof child !== "object") continue;
|
|
88
|
+
const rendered = renderSlackRichTextElements(child.elements);
|
|
89
|
+
if (rendered) listParts.push(rendered);
|
|
90
|
+
}
|
|
91
|
+
parts.push(listParts.join("\n"));
|
|
92
|
+
break;
|
|
93
|
+
}
|
|
94
|
+
default:
|
|
95
|
+
parts.push(renderSlackRichTextLeaf(element));
|
|
96
|
+
break;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
return parts.join("");
|
|
100
|
+
}
|
|
101
|
+
function readSlackBlockText(block) {
|
|
102
|
+
if (!block || typeof block !== "object") return;
|
|
103
|
+
const blockLike = block;
|
|
104
|
+
switch (blockLike.type) {
|
|
105
|
+
case "rich_text": return normalizeOptionalString(renderSlackRichTextElements(blockLike.elements));
|
|
106
|
+
case "section": {
|
|
107
|
+
const text = readTextObject(blockLike.text);
|
|
108
|
+
if (text) return text;
|
|
109
|
+
if (!Array.isArray(blockLike.fields)) return;
|
|
110
|
+
const fields = blockLike.fields.flatMap((field) => readTextObject(field) ?? []);
|
|
111
|
+
return fields.length > 0 ? fields.join("\n") : void 0;
|
|
112
|
+
}
|
|
113
|
+
case "header": return readTextObject(blockLike.text);
|
|
114
|
+
case "context": {
|
|
115
|
+
if (!Array.isArray(blockLike.elements)) return;
|
|
116
|
+
const parts = blockLike.elements.flatMap((element) => readTextObject(element) ?? []);
|
|
117
|
+
return parts.length > 0 ? parts.join(" ") : void 0;
|
|
118
|
+
}
|
|
119
|
+
case "image": return normalizeOptionalString(readStringValue(blockLike.alt_text)) ?? readTextObject(blockLike.title);
|
|
120
|
+
case "video": return readTextObject(blockLike.title) ?? normalizeOptionalString(readStringValue(blockLike.alt_text));
|
|
121
|
+
default: return;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
function resolveSlackBlocksText(blocks) {
|
|
125
|
+
if (!blocks?.length) return;
|
|
126
|
+
const parts = [];
|
|
127
|
+
let hasRichText = false;
|
|
128
|
+
for (const block of blocks) {
|
|
129
|
+
if (block && typeof block === "object" && block.type === "rich_text") hasRichText = true;
|
|
130
|
+
const text = readSlackBlockText(block);
|
|
131
|
+
if (text) parts.push(text);
|
|
132
|
+
}
|
|
133
|
+
return parts.length > 0 ? {
|
|
134
|
+
text: parts.join("\n"),
|
|
135
|
+
hasRichText
|
|
136
|
+
} : void 0;
|
|
137
|
+
}
|
|
138
|
+
function chooseSlackPrimaryText(params) {
|
|
139
|
+
const { messageText, blocksText } = params;
|
|
140
|
+
if (!blocksText) return messageText;
|
|
141
|
+
if (!messageText) return blocksText.text;
|
|
142
|
+
if (blocksText.hasRichText && blocksText.text.length > messageText.length) return blocksText.text;
|
|
143
|
+
return blocksText.text.length > messageText.length && blocksText.text.startsWith(messageText) ? blocksText.text : messageText;
|
|
144
|
+
}
|
|
145
|
+
//#endregion
|
|
40
146
|
//#region extensions/slack/src/monitor/thread.ts
|
|
41
147
|
const THREAD_STARTER_CACHE = /* @__PURE__ */ new Map();
|
|
42
148
|
const THREAD_STARTER_CACHE_TTL_MS = 360 * 6e4;
|
|
@@ -53,6 +159,33 @@ function evictThreadStarterCache() {
|
|
|
53
159
|
function formatSlackFilePlaceholder(files) {
|
|
54
160
|
return `[attached: ${formatSlackFileReferenceList(files)}]`;
|
|
55
161
|
}
|
|
162
|
+
function pushUniqueText(parts, value) {
|
|
163
|
+
const text = normalizeOptionalString(value);
|
|
164
|
+
if (text && !parts.includes(text)) parts.push(text);
|
|
165
|
+
}
|
|
166
|
+
function resolveSlackBlocksFallbackText(blocks) {
|
|
167
|
+
return resolveSlackBlocksText(blocks)?.text;
|
|
168
|
+
}
|
|
169
|
+
function resolveSlackAttachmentFallbackText(attachments) {
|
|
170
|
+
if (!Array.isArray(attachments) || attachments.length === 0) return;
|
|
171
|
+
const parts = [];
|
|
172
|
+
for (const attachment of attachments) {
|
|
173
|
+
pushUniqueText(parts, attachment.pretext);
|
|
174
|
+
pushUniqueText(parts, attachment.title);
|
|
175
|
+
pushUniqueText(parts, attachment.text);
|
|
176
|
+
pushUniqueText(parts, attachment.fallback);
|
|
177
|
+
for (const field of attachment.fields ?? []) {
|
|
178
|
+
pushUniqueText(parts, field.title);
|
|
179
|
+
pushUniqueText(parts, field.value);
|
|
180
|
+
}
|
|
181
|
+
pushUniqueText(parts, resolveSlackBlocksFallbackText(attachment.blocks));
|
|
182
|
+
pushUniqueText(parts, resolveSlackBlocksFallbackText(attachment.message_blocks));
|
|
183
|
+
}
|
|
184
|
+
return parts.length > 0 ? parts.join("\n") : void 0;
|
|
185
|
+
}
|
|
186
|
+
function resolveSlackMessageText(message) {
|
|
187
|
+
return normalizeOptionalString(message.text) ?? resolveSlackAttachmentFallbackText(message.attachments) ?? resolveSlackBlocksFallbackText(message.blocks);
|
|
188
|
+
}
|
|
56
189
|
async function resolveSlackThreadStarter(params) {
|
|
57
190
|
evictThreadStarterCache();
|
|
58
191
|
const cacheKey = `${params.channelId}:${params.threadTs}`;
|
|
@@ -69,7 +202,7 @@ async function resolveSlackThreadStarter(params) {
|
|
|
69
202
|
limit: 1,
|
|
70
203
|
inclusive: true
|
|
71
204
|
}))?.messages?.[0];
|
|
72
|
-
const text =
|
|
205
|
+
const text = message ? resolveSlackMessageText(message) : void 0;
|
|
73
206
|
const files = message?.files?.length ? message.files : void 0;
|
|
74
207
|
if (!message || !text && !files) return null;
|
|
75
208
|
const starter = {
|
|
@@ -97,12 +230,13 @@ async function resolveSlackThreadStarter(params) {
|
|
|
97
230
|
function resetSlackThreadStarterCacheForTest() {
|
|
98
231
|
THREAD_STARTER_CACHE.clear();
|
|
99
232
|
}
|
|
233
|
+
const SLACK_THREAD_HISTORY_MAX_PAGES = 3;
|
|
100
234
|
/**
|
|
101
235
|
* Fetches the most recent messages in a Slack thread (excluding the current message).
|
|
102
236
|
* Used to populate thread context when a new thread session starts.
|
|
103
237
|
*
|
|
104
|
-
* Uses cursor pagination and keeps only the latest N retained messages
|
|
105
|
-
*
|
|
238
|
+
* Uses cursor pagination and keeps only the latest N retained messages when the full
|
|
239
|
+
* thread fits in the bounded fetch window.
|
|
106
240
|
*/
|
|
107
241
|
async function resolveSlackThreadHistory(params) {
|
|
108
242
|
const maxMessages = params.limit ?? 20;
|
|
@@ -110,8 +244,10 @@ async function resolveSlackThreadHistory(params) {
|
|
|
110
244
|
const fetchLimit = 200;
|
|
111
245
|
const retained = [];
|
|
112
246
|
let cursor;
|
|
247
|
+
let pagesFetched = 0;
|
|
113
248
|
try {
|
|
114
249
|
do {
|
|
250
|
+
pagesFetched += 1;
|
|
115
251
|
const response = await params.client.conversations.replies({
|
|
116
252
|
channel: params.channelId,
|
|
117
253
|
ts: params.threadTs,
|
|
@@ -120,16 +256,20 @@ async function resolveSlackThreadHistory(params) {
|
|
|
120
256
|
...cursor ? { cursor } : {}
|
|
121
257
|
});
|
|
122
258
|
for (const msg of response.messages ?? []) {
|
|
123
|
-
if (!msg
|
|
259
|
+
if (!resolveSlackMessageText(msg) && !msg.files?.length) continue;
|
|
124
260
|
if (params.currentMessageTs && msg.ts === params.currentMessageTs) continue;
|
|
125
261
|
retained.push(msg);
|
|
126
262
|
}
|
|
127
263
|
if (retained.length > maxMessages) retained.splice(0, retained.length - maxMessages);
|
|
128
264
|
const next = response.response_metadata?.next_cursor;
|
|
129
265
|
cursor = typeof next === "string" && next.trim().length > 0 ? next.trim() : void 0;
|
|
130
|
-
} while (cursor);
|
|
266
|
+
} while (cursor && pagesFetched < SLACK_THREAD_HISTORY_MAX_PAGES);
|
|
267
|
+
if (cursor) {
|
|
268
|
+
logVerbose$1(`slack thread history capped channel=${params.channelId} ts=${params.threadTs} pages=${SLACK_THREAD_HISTORY_MAX_PAGES}`);
|
|
269
|
+
return [];
|
|
270
|
+
}
|
|
131
271
|
return retained.map((msg) => ({
|
|
132
|
-
text: msg
|
|
272
|
+
text: resolveSlackMessageText(msg) ?? formatSlackFilePlaceholder(msg.files),
|
|
133
273
|
userId: msg.user,
|
|
134
274
|
botId: msg.bot_id,
|
|
135
275
|
ts: msg.ts,
|
|
@@ -145,8 +285,6 @@ async function resolveSlackThreadHistory(params) {
|
|
|
145
285
|
var media_exports = /* @__PURE__ */ __exportAll({
|
|
146
286
|
MAX_SLACK_MEDIA_FILES: () => 8,
|
|
147
287
|
SLACK_MEDIA_READ_IDLE_TIMEOUT_MS: () => SLACK_MEDIA_READ_IDLE_TIMEOUT_MS,
|
|
148
|
-
SLACK_MEDIA_TOTAL_TIMEOUT_MS: () => SLACK_MEDIA_TOTAL_TIMEOUT_MS,
|
|
149
|
-
fetchWithSlackAuth: () => fetchWithSlackAuth,
|
|
150
288
|
resetSlackThreadStarterCacheForTest: () => resetSlackThreadStarterCacheForTest,
|
|
151
289
|
resolveSlackAttachmentContent: () => resolveSlackAttachmentContent,
|
|
152
290
|
resolveSlackMedia: () => resolveSlackMedia,
|
|
@@ -198,41 +336,6 @@ function createSlackMediaFetch() {
|
|
|
198
336
|
});
|
|
199
337
|
};
|
|
200
338
|
}
|
|
201
|
-
function resolveSlackFetchForRuntime() {
|
|
202
|
-
return isMockedFetch(globalThis.fetch) ? globalThis.fetch : fetchWithRuntimeDispatcher;
|
|
203
|
-
}
|
|
204
|
-
async function cancelUnreadResponseBody(response) {
|
|
205
|
-
if (!response.bodyUsed) await response.body?.cancel().catch(() => void 0);
|
|
206
|
-
}
|
|
207
|
-
/**
|
|
208
|
-
* Fetches a URL with Authorization header while keeping same-origin redirects
|
|
209
|
-
* authenticated and dropping auth once the redirect crosses origins.
|
|
210
|
-
*/
|
|
211
|
-
async function fetchWithSlackAuth(url, token) {
|
|
212
|
-
const parsed = assertSlackFileUrl(url);
|
|
213
|
-
const authHeaders = createSlackAuthHeaders(token);
|
|
214
|
-
const fetchImpl = resolveSlackFetchForRuntime();
|
|
215
|
-
const initialRes = await fetchImpl(parsed.href, {
|
|
216
|
-
headers: authHeaders,
|
|
217
|
-
redirect: "manual"
|
|
218
|
-
});
|
|
219
|
-
if (initialRes.status < 300 || initialRes.status >= 400) return initialRes;
|
|
220
|
-
const redirectUrl = initialRes.headers.get("location");
|
|
221
|
-
if (!redirectUrl) return initialRes;
|
|
222
|
-
let resolvedUrl;
|
|
223
|
-
try {
|
|
224
|
-
resolvedUrl = new URL(redirectUrl, parsed.href);
|
|
225
|
-
} catch {
|
|
226
|
-
return initialRes;
|
|
227
|
-
}
|
|
228
|
-
if (resolvedUrl.protocol !== "https:") return initialRes;
|
|
229
|
-
await cancelUnreadResponseBody(initialRes);
|
|
230
|
-
if (resolvedUrl.origin === parsed.origin) return fetchImpl(resolvedUrl.toString(), {
|
|
231
|
-
headers: authHeaders,
|
|
232
|
-
redirect: "follow"
|
|
233
|
-
});
|
|
234
|
-
return fetchImpl(resolvedUrl.toString(), { redirect: "follow" });
|
|
235
|
-
}
|
|
236
339
|
const SLACK_MEDIA_SSRF_POLICY = {
|
|
237
340
|
allowedHostnames: [
|
|
238
341
|
"*.slack.com",
|
|
@@ -357,7 +460,7 @@ async function downloadSlackMediaFile(params) {
|
|
|
357
460
|
ssrfPolicy: SLACK_MEDIA_SSRF_POLICY
|
|
358
461
|
},
|
|
359
462
|
readIdleTimeoutMs: params.readIdleTimeoutMs,
|
|
360
|
-
totalTimeoutMs: params.totalTimeoutMs ??
|
|
463
|
+
totalTimeoutMs: params.totalTimeoutMs ?? SLACK_MEDIA_TOTAL_TIMEOUT_MS,
|
|
361
464
|
abortSignal: params.abortSignal
|
|
362
465
|
});
|
|
363
466
|
const fileMime = normalizeOptionalLowercaseString(params.file.mimetype);
|
|
@@ -476,7 +579,7 @@ async function resolveSlackAttachmentContent(params) {
|
|
|
476
579
|
ssrfPolicy: SLACK_MEDIA_SSRF_POLICY
|
|
477
580
|
},
|
|
478
581
|
readIdleTimeoutMs: params.readIdleTimeoutMs,
|
|
479
|
-
totalTimeoutMs: params.totalTimeoutMs ??
|
|
582
|
+
totalTimeoutMs: params.totalTimeoutMs ?? SLACK_MEDIA_TOTAL_TIMEOUT_MS,
|
|
480
583
|
abortSignal: params.abortSignal
|
|
481
584
|
});
|
|
482
585
|
const label = saved.fileName ?? "forwarded image";
|
|
@@ -525,10 +628,58 @@ function resolveToken(explicit, accountId, cfg) {
|
|
|
525
628
|
}
|
|
526
629
|
return token;
|
|
527
630
|
}
|
|
528
|
-
|
|
631
|
+
const SLACK_EMOJI_SKIN_TONE_MODIFIER_RE = /[\u{1F3FB}-\u{1F3FF}]/u;
|
|
632
|
+
const SLACK_EMOJI_VARIATION_SELECTOR_RE = /[\uFE0E\uFE0F]/g;
|
|
633
|
+
const SLACK_EMOJI_SKIN_TONE_BY_MODIFIER = /* @__PURE__ */ new Map([
|
|
634
|
+
["🏻", 2],
|
|
635
|
+
["🏼", 3],
|
|
636
|
+
["🏽", 4],
|
|
637
|
+
["🏾", 5],
|
|
638
|
+
["🏿", 6]
|
|
639
|
+
]);
|
|
640
|
+
const SLACK_EMOJI_SHORTNAME_BY_GLYPH = {
|
|
641
|
+
"✅": "white_check_mark",
|
|
642
|
+
"❌": "x",
|
|
643
|
+
"👍": "thumbsup",
|
|
644
|
+
"👎": "thumbsdown",
|
|
645
|
+
"🎉": "tada",
|
|
646
|
+
"❤": "heart",
|
|
647
|
+
"😄": "smile",
|
|
648
|
+
"😂": "joy",
|
|
649
|
+
"🚀": "rocket",
|
|
650
|
+
"👀": "eyes",
|
|
651
|
+
"🙏": "pray",
|
|
652
|
+
"🔥": "fire",
|
|
653
|
+
"💯": "100",
|
|
654
|
+
"⚠": "warning",
|
|
655
|
+
"➕": "heavy_plus_sign",
|
|
656
|
+
"➖": "heavy_minus_sign",
|
|
657
|
+
"🤔": "thinking_face",
|
|
658
|
+
"👨💻": "male-technologist",
|
|
659
|
+
"👨💻": "male-technologist",
|
|
660
|
+
"👩💻": "female-technologist",
|
|
661
|
+
"⚡": "zap",
|
|
662
|
+
"🌐": "globe_with_meridians",
|
|
663
|
+
"😱": "scream",
|
|
664
|
+
"🥱": "yawning_face",
|
|
665
|
+
"😨": "fearful",
|
|
666
|
+
"⏳": "hourglass_flowing_sand",
|
|
667
|
+
"✍": "writing_hand",
|
|
668
|
+
"🗜": "compression",
|
|
669
|
+
"🧠": "brain",
|
|
670
|
+
"🛠": "hammer_and_wrench",
|
|
671
|
+
"💻": "computer"
|
|
672
|
+
};
|
|
673
|
+
function normalizeSlackEmojiName(raw) {
|
|
529
674
|
const trimmed = raw.trim();
|
|
530
675
|
if (!trimmed) throw new Error("Emoji is required for Slack reactions");
|
|
531
|
-
|
|
676
|
+
const withoutColons = trimmed.replace(/^:+|:+$/g, "");
|
|
677
|
+
const modifier = withoutColons.match(SLACK_EMOJI_SKIN_TONE_MODIFIER_RE)?.[0];
|
|
678
|
+
const glyphKey = withoutColons.replace(SLACK_EMOJI_SKIN_TONE_MODIFIER_RE, "").replace(SLACK_EMOJI_VARIATION_SELECTOR_RE, "");
|
|
679
|
+
const shortname = SLACK_EMOJI_SHORTNAME_BY_GLYPH[glyphKey];
|
|
680
|
+
const skinTone = modifier ? SLACK_EMOJI_SKIN_TONE_BY_MODIFIER.get(modifier) : void 0;
|
|
681
|
+
if (!shortname || !skinTone) return shortname ?? withoutColons;
|
|
682
|
+
return `${shortname}::skin-tone-${skinTone}`;
|
|
532
683
|
}
|
|
533
684
|
const SLACK_TIMESTAMP_RE = /^\d+(?:\.\d+)?$/;
|
|
534
685
|
const ISO_8601_TIMESTAMP_SCHEMA = z.iso.datetime({ offset: true });
|
|
@@ -568,7 +719,7 @@ async function reactSlackMessage(channelId, messageId, emoji, opts = {}) {
|
|
|
568
719
|
await client.reactions.add({
|
|
569
720
|
channel: channelId,
|
|
570
721
|
timestamp: messageId,
|
|
571
|
-
name:
|
|
722
|
+
name: normalizeSlackEmojiName(emoji)
|
|
572
723
|
});
|
|
573
724
|
} catch (err) {
|
|
574
725
|
if (hasSlackPlatformError(err, "already_reacted")) return;
|
|
@@ -581,7 +732,7 @@ async function removeSlackReaction(channelId, messageId, emoji, opts = {}) {
|
|
|
581
732
|
await client.reactions.remove({
|
|
582
733
|
channel: channelId,
|
|
583
734
|
timestamp: messageId,
|
|
584
|
-
name:
|
|
735
|
+
name: normalizeSlackEmojiName(emoji)
|
|
585
736
|
});
|
|
586
737
|
} catch (err) {
|
|
587
738
|
if (hasSlackPlatformError(err, "no_reaction")) return;
|
|
@@ -645,6 +796,9 @@ async function deleteSlackMessage(channelId, messageId, opts = {}) {
|
|
|
645
796
|
ts: messageId
|
|
646
797
|
});
|
|
647
798
|
}
|
|
799
|
+
async function resolveSlackConversationName(channelId, opts = {}) {
|
|
800
|
+
return (await (await getClient(opts, "read")).conversations.info({ channel: channelId })).channel?.name?.trim() || void 0;
|
|
801
|
+
}
|
|
648
802
|
async function readSlackMessages(channelId, opts = {}) {
|
|
649
803
|
const exactMessageId = opts.messageId?.trim();
|
|
650
804
|
const readLimit = exactMessageId ? 1 : opts.limit;
|
|
@@ -798,4 +952,4 @@ async function downloadSlackFile(fileId, opts) {
|
|
|
798
952
|
}))?.[0] ?? null;
|
|
799
953
|
}
|
|
800
954
|
//#endregion
|
|
801
|
-
export {
|
|
955
|
+
export { buildSlackEditTextPayload as C, formatSlackFileReference as S, resolveSlackThreadHistory as _, listSlackEmojis as a, resolveSlackBlocksText as b, pinSlackMessage as c, removeOwnSlackReactions as d, removeSlackReaction as f, media_exports as g, unpinSlackMessage as h, getSlackMemberInfo as i, reactSlackMessage as l, sendSlackMessage as m, downloadSlackFile as n, listSlackPins as o, resolveSlackConversationName as p, editSlackMessage as r, listSlackReactions as s, deleteSlackMessage as t, readSlackMessages as u, resolveSlackThreadStarter as v, MAX_SLACK_MEDIA_FILES as x, chooseSlackPrimaryText as y };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { a as listSlackEmojis, c as pinSlackMessage, d as removeOwnSlackReactions, f as removeSlackReaction, h as unpinSlackMessage, i as getSlackMemberInfo, l as reactSlackMessage, m as sendSlackMessage, n as downloadSlackFile, o as listSlackPins, p as resolveSlackConversationName, r as editSlackMessage, s as listSlackReactions, t as deleteSlackMessage, u as readSlackMessages } from "./actions-DMpDmKEA.js";
|
|
2
|
+
export { deleteSlackMessage, downloadSlackFile, editSlackMessage, getSlackMemberInfo, listSlackEmojis, listSlackPins, listSlackReactions, pinSlackMessage, reactSlackMessage, readSlackMessages, removeOwnSlackReactions, removeSlackReaction, resolveSlackConversationName, sendSlackMessage, unpinSlackMessage };
|
package/dist/api.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { n as registerSlackHttpHandler, r as normalizeSlackWebhookPath, t as handleSlackHttpRequest } from "./registry-bbjH7IHX.js";
|
|
2
|
-
import { a as resolveSlackAccount, i as resolveDefaultSlackAccountId,
|
|
3
|
-
import { t as inspectSlackAccount } from "./account-inspect-
|
|
2
|
+
import { a as resolveSlackAccount, i as resolveDefaultSlackAccountId, n as listSlackAccountIds, r as mergeSlackAccountConfig, t as listEnabledSlackAccounts, u as resolveSlackReplyToMode } from "./accounts-BOJJiHSr.js";
|
|
3
|
+
import { t as inspectSlackAccount } from "./account-inspect-Di7ditqZ.js";
|
|
4
4
|
import { i as resolveSlackChannelId, n as normalizeSlackMessagingTarget, r as parseSlackTarget, t as looksLikeSlackTargetId } from "./target-parsing-3jYH8LfB.js";
|
|
5
5
|
import "./targets-Dll4NJgs.js";
|
|
6
|
-
import { a as resolveSlackAutoThreadId, i as resolveSlackChannelType, n as buildSlackThreadingToolContext, r as resetSlackChannelTypeCacheForTest, t as slackPlugin } from "./channel-
|
|
7
|
-
import {
|
|
8
|
-
import { n as extractSlackToolSend, r as listSlackMessageActions } from "./message-tool-api
|
|
9
|
-
import { n as isSlackInteractiveRepliesEnabled, r as parseSlackOptionsLine, t as compileSlackInteractiveReplies } from "./interactive-replies-
|
|
10
|
-
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-
|
|
11
|
-
import { t as slackSetupPlugin } from "./channel.setup-
|
|
12
|
-
import {
|
|
13
|
-
import { a as listSlackEmojis, c as pinSlackMessage, d as removeOwnSlackReactions, f as removeSlackReaction, i as getSlackMemberInfo, l as reactSlackMessage, m as
|
|
14
|
-
import { n as listSlackDirectoryGroupsFromConfig, r as listSlackDirectoryPeersFromConfig } from "./directory-config-
|
|
15
|
-
import { t as probeSlack } from "./probe-
|
|
6
|
+
import { a as resolveSlackAutoThreadId, i as resolveSlackChannelType, n as buildSlackThreadingToolContext, r as resetSlackChannelTypeCacheForTest, t as slackPlugin } from "./channel-CG29WLVd.js";
|
|
7
|
+
import { _ as buildSlackPresentationBlocks, d as normalizeAllowListLower, f as normalizeSlackAllowOwnerEntry, g as buildSlackInteractiveBlocks, h as resolveSlackUserAllowed, i as validateSlackBlocksArray, l as allowListMatches, m as resolveSlackAllowListMatch, n as SLACK_MAX_BLOCKS, o as resolveSlackGroupRequireMention, p as normalizeSlackSlug, r as parseSlackBlocksInput, s as resolveSlackGroupToolPolicy, u as normalizeAllowList } from "./reply-blocks-BGQ6zSqM.js";
|
|
8
|
+
import { n as extractSlackToolSend, r as listSlackMessageActions } from "./message-tool-api-BgWKyu2r.js";
|
|
9
|
+
import { n as isSlackInteractiveRepliesEnabled, r as parseSlackOptionsLine, t as compileSlackInteractiveReplies } from "./interactive-replies-CXpT-vA_.js";
|
|
10
|
+
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-DGxwSL7f.js";
|
|
11
|
+
import { t as slackSetupPlugin } from "./channel.setup-Dq6syTNU.js";
|
|
12
|
+
import { a as clearSlackThreadParticipationCache, c as recordSlackThreadParticipation, o as hasSlackThreadParticipation } from "./send-DKDXoeoV.js";
|
|
13
|
+
import { a as listSlackEmojis, c as pinSlackMessage, d as removeOwnSlackReactions, f as removeSlackReaction, h as unpinSlackMessage, i as getSlackMemberInfo, l as reactSlackMessage, m as sendSlackMessage, n as downloadSlackFile, o as listSlackPins, r as editSlackMessage, s as listSlackReactions, t as deleteSlackMessage, u as readSlackMessages } from "./actions-DMpDmKEA.js";
|
|
14
|
+
import { n as listSlackDirectoryGroupsFromConfig, r as listSlackDirectoryPeersFromConfig } from "./directory-config-BZuS8141.js";
|
|
15
|
+
import { t as probeSlack } from "./probe-CuwRDE5j.js";
|
|
16
16
|
import { t as collectSlackSecurityAuditFindings } from "./security-audit-CikQhBUY.js";
|
|
17
|
-
import { n as resolveSlackRuntimeGroupPolicy } from "./provider-
|
|
17
|
+
import { n as resolveSlackRuntimeGroupPolicy } from "./provider-Cot8h818.js";
|
|
18
18
|
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 };
|