@openclaw/slack 2026.9.6 → 2026.9.7
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/assets/icon.png +0 -0
- package/dist/.setup/{account-inspect-DP1Bcwj4.mjs → account-inspect-DWBXpER6.mjs} +1 -1
- package/dist/.setup/{accounts-BBHvg0pY.mjs → accounts-D_N9IqNA.mjs} +23 -1
- package/dist/.setup/{action-runtime-B01d85zt.mjs → action-runtime-DfWvuiZd.mjs} +26 -41
- package/dist/.setup/action-runtime.runtime-Ck4bAWOX.mjs +2 -0
- package/dist/.setup/{actions-DKCtBgCI.mjs → actions-Df0CzcDl.mjs} +88 -175
- package/dist/.setup/{approval-handler.runtime-DMszKn_7.mjs → approval-handler.runtime-Ed6Sw5VK.mjs} +37 -47
- package/dist/.setup/{approval-message-updates-Tb_qRokK.mjs → approval-message-updates-BadvtA7R.mjs} +1 -2
- package/dist/.setup/{channel-CErYZ5zw.mjs → channel-C7bgPSTE.mjs} +181 -273
- package/dist/.setup/channel-meta-C443t-lI.mjs +27 -0
- package/dist/.setup/{channel-type-Dxk8VJUb.mjs → channel-type-ClOttrZ5.mjs} +13 -21
- package/dist/.setup/{channel.setup-BVoUtdPn.mjs → channel.setup-Dh2jzAjN.mjs} +35 -42
- package/dist/.setup/{config-schema-CyL279e7.mjs → config-schema-BZCxmHKG.mjs} +24 -21
- package/dist/.setup/{directory-config-CQTSH45W.mjs → directory-config-BOUWH3hR.mjs} +7 -10
- package/dist/.setup/{directory-live-BCcj89QV.mjs → directory-live-B2O4B_Ho.mjs} +9 -21
- package/dist/.setup/doctor-contract-CRN1Z_c7.mjs +342 -0
- package/dist/.setup/{message-tool-api-C0PTFaNV.mjs → message-tool-api-Cu4lwlGy.mjs} +34 -48
- package/dist/.setup/{provider-C-jPaGt2.mjs → monitor-BPVfkumU.mjs} +2181 -2693
- package/dist/.setup/{outbound-adapter-A7Wdn8ZT.mjs → outbound-adapter-Bv48XUjq.mjs} +10 -21
- package/dist/.setup/{pipeline.runtime-BlPOexmJ.mjs → pipeline.runtime-B1H63Frf.mjs} +311 -457
- package/dist/.setup/{plugin-routes-C3X0eVaK.mjs → plugin-routes-B8tooDLj.mjs} +1 -1
- package/dist/.setup/{policy-BApW53pI.mjs → policy-D-jfM174.mjs} +5 -5
- package/dist/.setup/{probe-DiYIMPJo.mjs → probe-B2Y9qc_z.mjs} +101 -39
- package/dist/.setup/{registry-bbjH7IHX.mjs → registry-CIbMfuf8.mjs} +6 -2
- package/dist/.setup/{relay-source-DfOnjJTE.mjs → relay-source-BpKdjsll.mjs} +10 -12
- package/dist/.setup/{replies-BBAJxUOQ.mjs → replies-BAnUtr2f.mjs} +16 -76
- package/dist/.setup/{reply-blocks-Bm8kf6mK.mjs → reply-blocks-SE1kTE3I.mjs} +27 -154
- package/dist/.setup/{resolve-channels-BXbMBbJD.mjs → resolve-channels-XXBn8UU_.mjs} +4 -5
- package/dist/.setup/{resolve-users-65WqvIqD.mjs → resolve-users-DW0ngD03.mjs} +20 -22
- package/dist/.setup/{scopes-h3YB-mMs.mjs → scopes-CasuDvaa.mjs} +6 -17
- package/dist/.setup/{secret-contract-DxmvbxBF.mjs → secret-contract-BaZcu6P_.mjs} +15 -20
- package/dist/.setup/{secret-contract-api-D9UfYujm.mjs → secret-contract-api-Dp6290Vg.mjs} +1 -1
- package/dist/.setup/{security-audit-BypHqcq5.mjs → security-audit-BqDc-6VL.mjs} +1 -1
- package/dist/.setup/{send-Cp6omkOg.mjs → send-BOVLQi3n.mjs} +84 -171
- package/dist/.setup/{session-status-Cf7AvWOt.mjs → session-status-DscajIsd.mjs} +315 -238
- package/dist/.setup/{setup-plugin-api-dLPkL06L.mjs → setup-plugin-api-DTtbTKNk.mjs} +1 -1
- package/dist/.setup/{setup-surface-D3DLcCxu.mjs → setup-surface-Dn7QgWRE.mjs} +24 -56
- package/dist/.setup/{shared-CJ3arAFL.mjs → shared-qau-uDGl.mjs} +30 -56
- package/dist/.setup/{slash-dispatch.runtime-HFy_XvyO.mjs → slash-dispatch.runtime--AEzLVBF.mjs} +1 -1
- package/dist/.setup/{streaming-compat-B-e0mqM0.mjs → streaming-compat-C5Wut626.mjs} +31 -8
- package/dist/.setup/{target-parsing-DEsPjngB.mjs → target-parsing-FFE26kOV.mjs} +1 -7
- package/dist/.setup/{targets-Cku2KCvg.mjs → targets-C6LZQL1Q.mjs} +1 -1
- package/dist/.setup/{thread-ts-CukseRVL.mjs → thread-ts-Cvt7WD6B.mjs} +0 -1
- package/dist/account-inspect-api.js +1 -1
- package/dist/api.js +18 -17
- package/dist/channel-config-api.js +1 -1
- package/dist/channel-plugin-api.js +1 -1
- package/dist/directory-contract-api.js +1 -1
- package/dist/doctor-contract-api.js +1 -1
- package/dist/http-routes-api.js +1 -1
- package/dist/index.js +1 -1
- package/dist/message-tool-api.js +1 -1
- package/dist/runtime-api.js +11 -12
- package/dist/secret-contract-api.js +1 -1
- package/dist/security-contract-api.js +1 -1
- package/dist/setup-entry.js +2 -2
- package/dist/setup-plugin-api.js +1 -1
- package/node_modules/@slack/bolt/node_modules/@types/node/README.md +1 -1
- package/node_modules/@slack/bolt/node_modules/@types/node/child_process.d.ts +1 -1
- package/node_modules/@slack/bolt/node_modules/@types/node/crypto.d.ts +20 -8
- package/node_modules/@slack/bolt/node_modules/@types/node/ffi.d.ts +14 -0
- package/node_modules/@slack/bolt/node_modules/@types/node/http2.d.ts +3 -2
- package/node_modules/@slack/bolt/node_modules/@types/node/net.d.ts +16 -4
- package/node_modules/@slack/bolt/node_modules/@types/node/package.json +2 -2
- package/node_modules/@slack/bolt/node_modules/@types/node/process.d.ts +1 -0
- package/node_modules/@slack/bolt/node_modules/@types/node/quic.d.ts +39 -1
- package/node_modules/@slack/bolt/node_modules/@types/node/stream/iter.d.ts +9 -12
- package/node_modules/@slack/bolt/node_modules/@types/node/test/reporters.d.ts +1 -0
- package/node_modules/@slack/bolt/node_modules/@types/node/test.d.ts +72 -0
- package/node_modules/@slack/bolt/node_modules/@types/node/tls.d.ts +14 -10
- package/node_modules/@slack/bolt/node_modules/@types/node/vm.d.ts +2 -1
- package/node_modules/@slack/bolt/node_modules/@types/node/worker_threads.d.ts +4 -1
- package/node_modules/@slack/web-api/node_modules/@types/node/README.md +1 -1
- package/node_modules/@slack/web-api/node_modules/@types/node/child_process.d.ts +1 -1
- package/node_modules/@slack/web-api/node_modules/@types/node/crypto.d.ts +20 -8
- package/node_modules/@slack/web-api/node_modules/@types/node/ffi.d.ts +14 -0
- package/node_modules/@slack/web-api/node_modules/@types/node/http2.d.ts +3 -2
- package/node_modules/@slack/web-api/node_modules/@types/node/net.d.ts +16 -4
- package/node_modules/@slack/web-api/node_modules/@types/node/package.json +2 -2
- package/node_modules/@slack/web-api/node_modules/@types/node/process.d.ts +1 -0
- package/node_modules/@slack/web-api/node_modules/@types/node/quic.d.ts +39 -1
- package/node_modules/@slack/web-api/node_modules/@types/node/stream/iter.d.ts +9 -12
- package/node_modules/@slack/web-api/node_modules/@types/node/test/reporters.d.ts +1 -0
- package/node_modules/@slack/web-api/node_modules/@types/node/test.d.ts +72 -0
- package/node_modules/@slack/web-api/node_modules/@types/node/tls.d.ts +14 -10
- package/node_modules/@slack/web-api/node_modules/@types/node/vm.d.ts +2 -1
- package/node_modules/@slack/web-api/node_modules/@types/node/worker_threads.d.ts +4 -1
- package/node_modules/get-east-asian-width/index.js +8 -3
- package/node_modules/get-east-asian-width/lookup-data.js +1 -1
- package/node_modules/get-east-asian-width/lookup.js +4 -4
- package/node_modules/get-east-asian-width/package.json +1 -1
- package/node_modules/typebox/build/compile/code.mjs +1 -2
- package/node_modules/typebox/build/compile/validator.mjs +5 -1
- package/node_modules/typebox/build/format/iri.mjs +16 -9
- package/node_modules/typebox/build/guard/emit.mjs +2 -2
- package/node_modules/typebox/build/guard/guard.d.mts +7 -5
- package/node_modules/typebox/build/guard/guard.mjs +14 -9
- package/node_modules/typebox/build/guard/index.mjs +6 -0
- package/node_modules/typebox/build/guard/unicode/unicode.d.mts +6 -0
- package/node_modules/typebox/build/guard/unicode/unicode.mjs +35 -0
- package/node_modules/typebox/build/guard/{string.mjs → unicode/unicode_segment.mjs} +16 -19
- package/node_modules/typebox/build/schema/build.mjs +2 -3
- package/node_modules/typebox/build/schema/engine/_pathing.d.mts +1 -0
- package/node_modules/typebox/build/schema/engine/_pathing.mjs +11 -0
- package/node_modules/typebox/build/schema/engine/_refine.mjs +13 -5
- package/node_modules/typebox/build/schema/engine/additionalProperties.mjs +2 -1
- package/node_modules/typebox/build/schema/engine/dependencies.mjs +2 -1
- package/node_modules/typebox/build/schema/engine/dependentSchemas.mjs +2 -1
- package/node_modules/typebox/build/schema/engine/dynamicRef.d.mts +1 -1
- package/node_modules/typebox/build/schema/engine/dynamicRef.mjs +2 -2
- package/node_modules/typebox/build/schema/engine/format.mjs +9 -2
- package/node_modules/typebox/build/schema/engine/patternProperties.mjs +3 -2
- package/node_modules/typebox/build/schema/engine/properties.mjs +3 -2
- package/node_modules/typebox/build/schema/engine/propertyNames.mjs +2 -1
- package/node_modules/typebox/build/schema/engine/recursiveRef.d.mts +1 -1
- package/node_modules/typebox/build/schema/engine/recursiveRef.mjs +2 -2
- package/node_modules/typebox/build/schema/engine/ref.d.mts +1 -1
- package/node_modules/typebox/build/schema/engine/ref.mjs +2 -2
- package/node_modules/typebox/build/schema/engine/schema.mjs +24 -24
- package/node_modules/typebox/build/schema/parse.mjs +3 -0
- package/node_modules/typebox/build/schema/pointer/pointer.d.mts +1 -6
- package/node_modules/typebox/build/schema/pointer/pointer.mjs +47 -64
- package/node_modules/typebox/build/system/settings/internal.d.mts +2 -0
- package/node_modules/typebox/build/system/settings/internal.mjs +20 -0
- package/node_modules/typebox/build/system/settings/settings.d.mts +11 -0
- package/node_modules/typebox/build/system/settings/settings.mjs +14 -0
- package/node_modules/typebox/build/type/extends/inference.d.mts +1 -1
- package/node_modules/typebox/build/type/extends/inference.mjs +15 -2
- package/node_modules/typebox/build/type/extends/tuple.d.mts +2 -1
- package/node_modules/typebox/build/type/extends/tuple.mjs +21 -1
- package/node_modules/typebox/build/value/parse/parse.mjs +10 -4
- package/node_modules/typebox/package.json +1 -1
- package/node_modules/typebox/readme.md +3 -1
- package/node_modules/undici/README.md +81 -25
- package/node_modules/undici/docs/docs/api/Agent.md +249 -42
- package/node_modules/undici/docs/docs/api/BalancedPool.md +246 -48
- package/node_modules/undici/docs/docs/api/CacheStorage.md +171 -13
- package/node_modules/undici/docs/docs/api/CacheStore.md +294 -98
- package/node_modules/undici/docs/docs/api/Client.md +407 -162
- package/node_modules/undici/docs/docs/api/ClientStats.md +80 -14
- package/node_modules/undici/docs/docs/api/Connector.md +118 -35
- package/node_modules/undici/docs/docs/api/ContentType.md +65 -25
- package/node_modules/undici/docs/docs/api/Cookies.md +122 -71
- package/node_modules/undici/docs/docs/api/Debug.md +34 -18
- package/node_modules/undici/docs/docs/api/DiagnosticsChannel.md +364 -164
- package/node_modules/undici/docs/docs/api/Dispatcher.md +490 -1055
- package/node_modules/undici/docs/docs/api/EnvHttpProxyAgent.md +105 -93
- package/node_modules/undici/docs/docs/api/Errors.md +503 -28
- package/node_modules/undici/docs/docs/api/EventSource.md +326 -13
- package/node_modules/undici/docs/docs/api/Fetch.md +681 -30
- package/node_modules/undici/docs/docs/api/GlobalInstallation.md +78 -96
- package/node_modules/undici/docs/docs/api/H2CClient.md +298 -176
- package/node_modules/undici/docs/docs/api/Interceptors.md +418 -0
- package/node_modules/undici/docs/docs/api/MockAgent.md +333 -314
- package/node_modules/undici/docs/docs/api/MockCallHistory.md +272 -98
- package/node_modules/undici/docs/docs/api/MockCallHistoryLog.md +189 -26
- package/node_modules/undici/docs/docs/api/MockClient.md +151 -33
- package/node_modules/undici/docs/docs/api/MockErrors.md +56 -5
- package/node_modules/undici/docs/docs/api/MockPool.md +321 -258
- package/node_modules/undici/docs/docs/api/Pool.md +236 -41
- package/node_modules/undici/docs/docs/api/PoolStats.md +119 -13
- package/node_modules/undici/docs/docs/api/ProxyAgent.md +179 -160
- package/node_modules/undici/docs/docs/api/RedirectHandler.md +238 -55
- package/node_modules/undici/docs/docs/api/RetryAgent.md +113 -27
- package/node_modules/undici/docs/docs/api/RetryHandler.md +161 -79
- package/node_modules/undici/docs/docs/api/RoundRobinPool.md +166 -72
- package/node_modules/undici/docs/docs/api/SnapshotAgent.md +262 -517
- package/node_modules/undici/docs/docs/api/Socks5ProxyAgent.md +177 -196
- package/node_modules/undici/docs/docs/api/Util.md +68 -11
- package/node_modules/undici/docs/docs/api/WebSocket.md +475 -80
- package/node_modules/undici/docs/docs/api/api-lifecycle.md +100 -32
- package/node_modules/undici/docs/docs/best-practices/client-certificate.md +2 -0
- package/node_modules/undici/docs/docs/best-practices/crawling.md +3 -1
- package/node_modules/undici/docs/docs/best-practices/migrating-from-v7-to-v8.md +233 -0
- package/node_modules/undici/docs/docs/best-practices/mocking-request.md +9 -7
- package/node_modules/undici/docs/docs/best-practices/proxy.md +3 -1
- package/node_modules/undici/docs/docs/best-practices/undici-vs-builtin-fetch.md +10 -8
- package/node_modules/undici/docs/docs/best-practices/writing-tests.md +2 -0
- package/node_modules/undici/docs/docs/getting-started.md +281 -0
- package/node_modules/undici/docs/docs/index.md +784 -0
- package/node_modules/undici/docs/docs/site.json +125 -0
- package/node_modules/undici/docs/docs/type-map.json +79 -0
- package/node_modules/undici/index.js +4 -2
- package/node_modules/undici/lib/api/api-connect.js +13 -11
- package/node_modules/undici/lib/api/api-pipeline.js +26 -13
- package/node_modules/undici/lib/api/api-request.js +51 -21
- package/node_modules/undici/lib/api/api-stream.js +81 -20
- package/node_modules/undici/lib/api/api-upgrade.js +21 -11
- package/node_modules/undici/lib/api/readable.js +45 -9
- package/node_modules/undici/lib/cache/memory-cache-store.js +3 -3
- package/node_modules/undici/lib/cache/sqlite-cache-store.js +3 -1
- package/node_modules/undici/lib/core/connect.js +46 -7
- package/node_modules/undici/lib/core/constants.js +1 -24
- package/node_modules/undici/lib/core/errors.js +22 -2
- package/node_modules/undici/lib/core/request.js +100 -18
- package/node_modules/undici/lib/core/symbols.js +4 -0
- package/node_modules/undici/lib/core/util.js +105 -48
- package/node_modules/undici/lib/dispatcher/agent.js +51 -32
- package/node_modules/undici/lib/dispatcher/balanced-pool.js +23 -27
- package/node_modules/undici/lib/dispatcher/client-h1.js +86 -24
- package/node_modules/undici/lib/dispatcher/client-h2.js +1091 -361
- package/node_modules/undici/lib/dispatcher/client.js +109 -36
- package/node_modules/undici/lib/dispatcher/dispatcher-base.js +19 -6
- package/node_modules/undici/lib/dispatcher/dispatcher.js +15 -5
- package/node_modules/undici/lib/dispatcher/dispatcher1-wrapper.js +110 -0
- package/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +37 -8
- package/node_modules/undici/lib/dispatcher/h2c-client.js +4 -4
- package/node_modules/undici/lib/dispatcher/pool-base.js +28 -10
- package/node_modules/undici/lib/dispatcher/pool.js +30 -5
- package/node_modules/undici/lib/dispatcher/proxy-agent.js +95 -19
- package/node_modules/undici/lib/dispatcher/retry-agent.js +3 -0
- package/node_modules/undici/lib/dispatcher/round-robin-pool.js +32 -10
- package/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js +153 -63
- package/node_modules/undici/lib/global.js +37 -14
- package/node_modules/undici/lib/handler/cache-handler.js +49 -7
- package/node_modules/undici/lib/handler/cache-revalidation-handler.js +10 -0
- package/node_modules/undici/lib/handler/decorator-handler.js +8 -3
- package/node_modules/undici/lib/handler/deduplication-handler.js +12 -6
- package/node_modules/undici/lib/handler/redirect-handler.js +66 -66
- package/node_modules/undici/lib/handler/retry-handler.js +191 -50
- package/node_modules/undici/lib/interceptor/cache.js +75 -25
- package/node_modules/undici/lib/interceptor/decompress.js +5 -2
- package/node_modules/undici/lib/interceptor/deduplicate.js +5 -4
- package/node_modules/undici/lib/interceptor/dns.js +12 -1
- package/node_modules/undici/lib/interceptor/redirect.js +3 -3
- package/node_modules/undici/lib/llhttp/llhttp-wasm.js +1 -1
- package/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js +1 -1
- package/node_modules/undici/lib/mock/mock-agent.js +21 -9
- package/node_modules/undici/lib/mock/mock-call-history.js +1 -1
- package/node_modules/undici/lib/mock/mock-interceptor.js +25 -7
- package/node_modules/undici/lib/mock/mock-utils.js +281 -47
- package/node_modules/undici/lib/mock/snapshot-agent.js +25 -7
- package/node_modules/undici/lib/mock/snapshot-recorder.js +38 -3
- package/node_modules/undici/lib/util/cache.js +92 -10
- package/node_modules/undici/lib/util/runtime-features.js +3 -34
- package/node_modules/undici/lib/web/cache/cache.js +6 -8
- package/node_modules/undici/lib/web/cookies/parse.js +150 -146
- package/node_modules/undici/lib/web/cookies/util.js +1 -1
- package/node_modules/undici/lib/web/eventsource/eventsource-stream.js +28 -1
- package/node_modules/undici/lib/web/eventsource/eventsource.js +20 -21
- package/node_modules/undici/lib/web/eventsource/util.js +32 -1
- package/node_modules/undici/lib/web/fetch/body.js +48 -10
- package/node_modules/undici/lib/web/fetch/constants.js +1 -1
- package/node_modules/undici/lib/web/fetch/formdata.js +21 -2
- package/node_modules/undici/lib/web/fetch/index.js +242 -223
- package/node_modules/undici/lib/web/fetch/request.js +35 -6
- package/node_modules/undici/lib/web/fetch/response.js +1 -3
- package/node_modules/undici/lib/web/fetch/util.js +10 -2
- package/node_modules/undici/lib/web/webidl/index.js +5 -7
- package/node_modules/undici/lib/web/websocket/frame.js +1 -7
- package/node_modules/undici/lib/web/websocket/receiver.js +1 -1
- package/node_modules/undici/lib/web/websocket/stream/websocketstream.js +10 -10
- package/node_modules/undici/lib/web/websocket/websocket.js +25 -3
- package/node_modules/undici/package.json +10 -10
- package/node_modules/undici/types/agent.d.ts +0 -2
- package/node_modules/undici/types/client.d.ts +69 -24
- package/node_modules/undici/types/connector.d.ts +1 -0
- package/node_modules/undici/types/cookies.d.ts +1 -1
- package/node_modules/undici/types/dispatcher.d.ts +8 -30
- package/node_modules/undici/types/dispatcher1-wrapper.d.ts +7 -0
- package/node_modules/undici/types/errors.d.ts +10 -0
- package/node_modules/undici/types/fetch.d.ts +5 -1
- package/node_modules/undici/types/formdata.d.ts +0 -6
- package/node_modules/undici/types/h2c-client.d.ts +6 -6
- package/node_modules/undici/types/handlers.d.ts +2 -0
- 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/mock-agent.d.ts +11 -10
- package/node_modules/undici/types/mock-interceptor.d.ts +5 -1
- package/node_modules/undici/types/pool.d.ts +0 -2
- package/node_modules/undici/types/proxy-agent.d.ts +9 -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 +4 -2
- package/node_modules/undici/types/webidl.d.ts +0 -1
- package/openclaw.plugin.json +31 -3
- package/package.json +7 -7
- package/dist/.setup/accounts.runtime-DN-PPocC.mjs +0 -2
- package/dist/.setup/action-runtime.runtime-C8R8CUan.mjs +0 -2
- package/dist/.setup/doctor-contract-CtMUqjvk.mjs +0 -186
- package/dist/.setup/monitor-_Sht7Dqy.mjs +0 -13
- package/dist/.setup/rolldown-runtime-D7D4PA-g.mjs +0 -13
- package/dist/.setup/send.runtime-B4caZU6T.mjs +0 -2
- package/dist/.setup/slash-commands.runtime-BpSH0b3q.mjs +0 -2
- package/dist/.setup/slash-skill-commands.runtime-Bi1JWZHY.mjs +0 -2
- package/node_modules/undici/lib/handler/unwrap-handler.js +0 -106
- package/node_modules/undici/lib/handler/wrap-handler.js +0 -105
- package/node_modules/undici/lib/llhttp/.gitkeep +0 -0
- package/node_modules/undici/lib/util/promise.js +0 -28
- /package/node_modules/typebox/build/guard/{string.d.mts → unicode/unicode_segment.d.mts} +0 -0
|
@@ -1,37 +1,19 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as inspectSlackAccount } from "./account-inspect-
|
|
3
|
-
import "./shared-
|
|
4
|
-
import { o as SLACK_CHANNEL, r as createSlackSetupWizardBase } from "./channel.setup-
|
|
5
|
-
import { t as resolveSlackChannelAllowlist } from "./resolve-channels-
|
|
6
|
-
import { t as resolveSlackUserAllowlist } from "./resolve-users-
|
|
1
|
+
import { c as resolveSlackAccountAllowFrom, o as resolveDefaultSlackAccountId } from "./accounts-D_N9IqNA.mjs";
|
|
2
|
+
import { t as inspectSlackAccount } from "./account-inspect-DWBXpER6.mjs";
|
|
3
|
+
import "./shared-qau-uDGl.mjs";
|
|
4
|
+
import { o as SLACK_CHANNEL, r as createSlackSetupWizardBase, s as buildSlackAllowFromPrompt } from "./channel.setup-Dh2jzAjN.mjs";
|
|
5
|
+
import { t as resolveSlackChannelAllowlist } from "./resolve-channels-XXBn8UU_.mjs";
|
|
6
|
+
import { t as resolveSlackUserAllowlist } from "./resolve-users-DW0ngD03.mjs";
|
|
7
7
|
import { normalizeStringEntries } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
8
8
|
import { resolveBasicAllowFromEntries } from "openclaw/plugin-sdk/allow-from";
|
|
9
|
-
import { createSetupTranslator, noteChannelLookupFailure, noteChannelLookupSummary,
|
|
10
|
-
import { formatDocsLink } from "openclaw/plugin-sdk/setup-tools";
|
|
9
|
+
import { createSetupTranslator, noteChannelLookupFailure, noteChannelLookupSummary, patchChannelConfigForAccount, promptResolvedAllowFrom, resolveEntriesWithOptionalToken, resolveSetupAccountId, splitSetupEntries } from "openclaw/plugin-sdk/setup-runtime";
|
|
11
10
|
//#region extensions/slack/src/setup-surface.ts
|
|
12
11
|
const t = createSetupTranslator();
|
|
13
12
|
function resolveSlackSetupAuth(account, credentialValues) {
|
|
14
13
|
if (account.config.postAs === "user") return credentialValues.userToken || account.userToken;
|
|
15
14
|
return credentialValues.botToken || account.botToken;
|
|
16
15
|
}
|
|
17
|
-
async function resolveSlackAllowFromEntries(params) {
|
|
18
|
-
return await resolveBasicAllowFromEntries({
|
|
19
|
-
token: params.token,
|
|
20
|
-
entries: params.entries,
|
|
21
|
-
resolveEntries: async ({ token, entries }) => await resolveSlackUserAllowlist({
|
|
22
|
-
token,
|
|
23
|
-
entries
|
|
24
|
-
})
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
16
|
async function promptSlackAllowFrom(params) {
|
|
28
|
-
const parseId = (value) => parseMentionOrPrefixedId({
|
|
29
|
-
value,
|
|
30
|
-
mentionPattern: /^<@([A-Z0-9]+)>$/i,
|
|
31
|
-
prefixPattern: /^(slack:|user:)/i,
|
|
32
|
-
idPattern: /^[A-Z][A-Z0-9]+$/i,
|
|
33
|
-
normalizeId: (id) => id.toUpperCase()
|
|
34
|
-
});
|
|
35
17
|
const accountId = resolveSetupAccountId({
|
|
36
18
|
accountId: params.accountId,
|
|
37
19
|
defaultAccountId: resolveDefaultSlackAccountId(params.cfg)
|
|
@@ -40,15 +22,8 @@ async function promptSlackAllowFrom(params) {
|
|
|
40
22
|
cfg: params.cfg,
|
|
41
23
|
accountId
|
|
42
24
|
});
|
|
43
|
-
const
|
|
44
|
-
await params.prompter.note(
|
|
45
|
-
t("wizard.slack.allowlistIntro"),
|
|
46
|
-
t("wizard.slack.examples"),
|
|
47
|
-
"- U12345678",
|
|
48
|
-
"- @alice",
|
|
49
|
-
t("wizard.slack.multipleEntries"),
|
|
50
|
-
t("wizard.channels.docs", { link: formatDocsLink("/slack", "slack") })
|
|
51
|
-
].join("\n"), noteTitle);
|
|
25
|
+
const prompt = buildSlackAllowFromPrompt();
|
|
26
|
+
await params.prompter.note(prompt.helpLines.join("\n"), prompt.helpTitle);
|
|
52
27
|
const allowFrom = await promptResolvedAllowFrom({
|
|
53
28
|
prompter: params.prompter,
|
|
54
29
|
existing: resolveSlackAccountAllowFrom({
|
|
@@ -56,12 +31,12 @@ async function promptSlackAllowFrom(params) {
|
|
|
56
31
|
accountId
|
|
57
32
|
}) ?? [],
|
|
58
33
|
token: account.userToken ?? account.botToken ?? "",
|
|
59
|
-
message:
|
|
60
|
-
placeholder:
|
|
61
|
-
label:
|
|
34
|
+
message: prompt.message,
|
|
35
|
+
placeholder: prompt.placeholder,
|
|
36
|
+
label: prompt.helpTitle,
|
|
62
37
|
parseInputs: splitSetupEntries,
|
|
63
|
-
parseId,
|
|
64
|
-
invalidWithoutTokenNote:
|
|
38
|
+
parseId: prompt.parseId,
|
|
39
|
+
invalidWithoutTokenNote: prompt.invalidWithoutCredentialNote,
|
|
65
40
|
resolveEntries: async ({ token, entries }) => (await resolveSlackUserAllowlist({
|
|
66
41
|
token,
|
|
67
42
|
entries
|
|
@@ -99,10 +74,7 @@ async function resolveSlackGroupAllowlist(params) {
|
|
|
99
74
|
resolved: false,
|
|
100
75
|
id: void 0
|
|
101
76
|
}),
|
|
102
|
-
resolveEntries:
|
|
103
|
-
token,
|
|
104
|
-
entries
|
|
105
|
-
})
|
|
77
|
+
resolveEntries: resolveSlackChannelAllowlist
|
|
106
78
|
});
|
|
107
79
|
const resolvedKeys = resolved.filter((entry) => entry.resolved && entry.id).map((entry) => entry.id);
|
|
108
80
|
const unresolved = resolved.filter((entry) => !entry.resolved).map((entry) => entry.input);
|
|
@@ -128,21 +100,17 @@ async function resolveSlackGroupAllowlist(params) {
|
|
|
128
100
|
const slackSetupWizard = createSlackSetupWizardBase({
|
|
129
101
|
promptAllowFrom: promptSlackAllowFrom,
|
|
130
102
|
resolveAllowFromEntries: async ({ cfg, accountId, credentialValues, entries }) => {
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
103
|
+
const auth = resolveSlackSetupAuth(inspectSlackAccount({
|
|
104
|
+
cfg,
|
|
105
|
+
accountId
|
|
106
|
+
}), credentialValues);
|
|
107
|
+
return resolveBasicAllowFromEntries({
|
|
108
|
+
token: auth,
|
|
109
|
+
entries,
|
|
110
|
+
resolveEntries: resolveSlackUserAllowlist
|
|
137
111
|
});
|
|
138
112
|
},
|
|
139
|
-
resolveGroupAllowlist:
|
|
140
|
-
cfg,
|
|
141
|
-
accountId,
|
|
142
|
-
credentialValues,
|
|
143
|
-
entries,
|
|
144
|
-
prompter
|
|
145
|
-
})
|
|
113
|
+
resolveGroupAllowlist: resolveSlackGroupAllowlist
|
|
146
114
|
});
|
|
147
115
|
//#endregion
|
|
148
116
|
export { slackSetupWizard };
|
|
@@ -1,35 +1,17 @@
|
|
|
1
1
|
import { n as isSlackPluginAccountConfigured } from "./account-configured-sUohAxZr.mjs";
|
|
2
|
-
import {
|
|
3
|
-
import { t as inspectSlackAccount } from "./account-inspect-
|
|
4
|
-
import { a as parseSlackTarget } from "./target-parsing-
|
|
5
|
-
import { a as slackIngressIdentity, t as probeSlack } from "./probe-
|
|
6
|
-
import { n as
|
|
7
|
-
import { n as
|
|
8
|
-
import { n as
|
|
9
|
-
import {
|
|
2
|
+
import { a as mergeSlackAccountConfig, c as resolveSlackAccountAllowFrom, i as listSlackAccountIds, l as resolveSlackAccountDmPolicy } from "./accounts-D_N9IqNA.mjs";
|
|
3
|
+
import { t as inspectSlackAccount } from "./account-inspect-DWBXpER6.mjs";
|
|
4
|
+
import { a as parseSlackTarget } from "./target-parsing-FFE26kOV.mjs";
|
|
5
|
+
import { a as slackIngressIdentity, t as probeSlack } from "./probe-B2Y9qc_z.mjs";
|
|
6
|
+
import { n as SLACK_CHANNEL_META } from "./channel-meta-C443t-lI.mjs";
|
|
7
|
+
import { n as slackBaseConfigAdapter, t as slackSetupPlugin } from "./channel.setup-Dh2jzAjN.mjs";
|
|
8
|
+
import { n as normalizeCompatibilityConfig, r as runtime_doctor_migrations_exports, t as legacyConfigRules } from "./doctor-contract-CRN1Z_c7.mjs";
|
|
9
|
+
import { n as collectRuntimeConfigAssignments, r as secretTargetRegistryEntries } from "./secret-contract-BaZcu6P_.mjs";
|
|
10
10
|
import { adaptScopedAccountAccessor, createScopedDmSecurityResolver } from "openclaw/plugin-sdk/channel-config-helpers";
|
|
11
11
|
import { createLazyRuntimeModule } from "openclaw/plugin-sdk/lazy-runtime";
|
|
12
|
-
import { PAIRING_APPROVED_MESSAGE, projectCredentialSnapshotFields, resolveConfiguredFromRequiredCredentialStatuses } from "openclaw/plugin-sdk/channel-status";
|
|
13
12
|
import { buildMutableAllowEntryDetector, collectStandardAllowlistLists, createConditionalWarningCollector, createDangerousNameMatchingMutableAllowlistWarningCollector, createOpenProviderConfiguredRouteWarningCollector } from "openclaw/plugin-sdk/channel-policy";
|
|
14
13
|
import { identityEntryAuthenticationClassifier } from "openclaw/plugin-sdk/channel-ingress-runtime";
|
|
15
14
|
import { describeAccountSnapshot } from "openclaw/plugin-sdk/account-helpers";
|
|
16
|
-
import { asObjectRecord } from "openclaw/plugin-sdk/runtime-doctor-migrations";
|
|
17
|
-
//#region extensions/slack/src/channel-api.ts
|
|
18
|
-
const SLACK_CHANNEL_META = {
|
|
19
|
-
id: "slack",
|
|
20
|
-
label: "Slack",
|
|
21
|
-
selectionLabel: "Slack",
|
|
22
|
-
docsPath: "/channels/slack",
|
|
23
|
-
docsLabel: "slack",
|
|
24
|
-
blurb: "supports bot + app tokens, channels, threads, and interactive replies.",
|
|
25
|
-
systemImage: "number.square",
|
|
26
|
-
markdownCapable: true
|
|
27
|
-
};
|
|
28
|
-
function getChatChannelMeta(id) {
|
|
29
|
-
if (id !== SLACK_CHANNEL_META.id) throw new Error(`Unsupported Slack channel meta lookup: ${id}`);
|
|
30
|
-
return SLACK_CHANNEL_META;
|
|
31
|
-
}
|
|
32
|
-
//#endregion
|
|
33
15
|
//#region extensions/slack/src/security.ts
|
|
34
16
|
const resolveSlackDmPolicy = createScopedDmSecurityResolver({
|
|
35
17
|
channelKey: "slack",
|
|
@@ -71,7 +53,7 @@ const collectSlackSecurityFindings = createConditionalWarningCollector.findings(
|
|
|
71
53
|
severity: "warn",
|
|
72
54
|
title: "Slack security warning"
|
|
73
55
|
});
|
|
74
|
-
const loadSlackSecurityAuditModule = createLazyRuntimeModule(() => import("./security-audit-
|
|
56
|
+
const loadSlackSecurityAuditModule = createLazyRuntimeModule(() => import("./security-audit-BqDc-6VL.mjs").then((n) => n.n));
|
|
75
57
|
const slackSecurityAdapter = {
|
|
76
58
|
resolveDmPolicy: resolveSlackDmPolicy,
|
|
77
59
|
collectWarnings: collectSlackSecurityFindings,
|
|
@@ -103,10 +85,8 @@ const collectSlackMutableAllowlistWarnings = createDangerousNameMatchingMutableA
|
|
|
103
85
|
groupField: "users"
|
|
104
86
|
})
|
|
105
87
|
});
|
|
106
|
-
const SLACK_CANONICAL_CHANNEL_ID_RE = /^[CG][A-Z0-9]{8,}$/;
|
|
107
|
-
const SLACK_LOWERCASE_CHANNEL_ID_RE = /^[cg][0-9][a-z0-9]{7,}$/;
|
|
108
|
-
const SLACK_PREFIXED_CANONICAL_CHANNEL_ID_RE = /^channel:[CG][A-Z0-9]{8,}$/;
|
|
109
|
-
const SLACK_PREFIXED_LOWERCASE_CHANNEL_ID_RE = /^channel:[cg][0-9][a-z0-9]{7,}$/;
|
|
88
|
+
const SLACK_CANONICAL_CHANNEL_ID_RE = /^(?:channel:)?[CG][A-Z0-9]{8,}$/;
|
|
89
|
+
const SLACK_LOWERCASE_CHANNEL_ID_RE = /^(?:channel:)?[cg][0-9][a-z0-9]{7,}$/;
|
|
110
90
|
const SLACK_CANONICAL_DM_ID_RE = /^(?:channel:)?D[A-Z0-9]{8,}$/;
|
|
111
91
|
const SLACK_PREFIXED_LOWERCASE_DM_ID_RE = /^channel:d[a-z0-9]{8,}$/;
|
|
112
92
|
const SLACK_AMBIGUOUS_LOWERCASE_DM_ID_RE = /^d[a-z0-9]{8,}$/;
|
|
@@ -115,7 +95,7 @@ const SLACK_CHANNEL_NAME_RE = /^[\p{L}\p{M}\p{N}_-]{1,80}$/u;
|
|
|
115
95
|
const SLACK_CHANNEL_NAME_ALPHANUMERIC_RE = /[\p{L}\p{N}]/u;
|
|
116
96
|
function looksLikeSlackChannelId(channelKey) {
|
|
117
97
|
const workspaceChannelId = parseWorkspaceQualifiedChannelId(channelKey);
|
|
118
|
-
return workspaceChannelId !== void 0 && /^[CG]/i.test(workspaceChannelId) || SLACK_CANONICAL_CHANNEL_ID_RE.test(channelKey) || SLACK_LOWERCASE_CHANNEL_ID_RE.test(channelKey)
|
|
98
|
+
return workspaceChannelId !== void 0 && /^[CG]/i.test(workspaceChannelId) || SLACK_CANONICAL_CHANNEL_ID_RE.test(channelKey) || SLACK_LOWERCASE_CHANNEL_ID_RE.test(channelKey);
|
|
119
99
|
}
|
|
120
100
|
function looksLikeSlackDmId(channelKey) {
|
|
121
101
|
const workspaceChannelId = parseWorkspaceQualifiedChannelId(channelKey);
|
|
@@ -136,16 +116,16 @@ function looksLikeSlackChannelNameKey(channelKey) {
|
|
|
136
116
|
}
|
|
137
117
|
function collectSlackNameKeyedChannelWarnings({ cfg }) {
|
|
138
118
|
const warnings = /* @__PURE__ */ new Set();
|
|
139
|
-
const slackCfg = asObjectRecord(asObjectRecord(cfg.channels)?.slack);
|
|
140
|
-
const providerChannels = asObjectRecord(slackCfg?.channels);
|
|
141
|
-
const accounts = asObjectRecord(slackCfg?.accounts);
|
|
119
|
+
const slackCfg = (0, runtime_doctor_migrations_exports.asObjectRecord)((0, runtime_doctor_migrations_exports.asObjectRecord)(cfg.channels)?.slack);
|
|
120
|
+
const providerChannels = (0, runtime_doctor_migrations_exports.asObjectRecord)(slackCfg?.channels);
|
|
121
|
+
const accounts = (0, runtime_doctor_migrations_exports.asObjectRecord)(slackCfg?.accounts);
|
|
142
122
|
for (const accountId of listSlackAccountIds(cfg)) {
|
|
143
|
-
const account = asObjectRecord(mergeSlackAccountConfig(cfg, accountId));
|
|
123
|
+
const account = (0, runtime_doctor_migrations_exports.asObjectRecord)(mergeSlackAccountConfig(cfg, accountId));
|
|
144
124
|
if (!account || slackCfg?.enabled === false || account.enabled === false) continue;
|
|
145
125
|
const effectiveGroupPolicy = (typeof account.groupPolicy === "string" ? account.groupPolicy : void 0) ?? "allowlist";
|
|
146
|
-
const rawAccount = asObjectRecord(accounts?.[accountId]);
|
|
126
|
+
const rawAccount = (0, runtime_doctor_migrations_exports.asObjectRecord)(accounts?.[accountId]);
|
|
147
127
|
const accountPrefix = rawAccount ? `channels.slack.accounts.${accountId}` : "channels.slack";
|
|
148
|
-
const accountChannels = asObjectRecord(rawAccount?.channels);
|
|
128
|
+
const accountChannels = (0, runtime_doctor_migrations_exports.asObjectRecord)(rawAccount?.channels);
|
|
149
129
|
const channels = accountChannels ?? providerChannels;
|
|
150
130
|
if (!channels) continue;
|
|
151
131
|
const channelsPrefix = accountChannels ? `channels.slack.accounts.${accountId}` : "channels.slack";
|
|
@@ -162,7 +142,7 @@ function collectSlackNameKeyedChannelWarnings({ cfg }) {
|
|
|
162
142
|
continue;
|
|
163
143
|
}
|
|
164
144
|
if (effectiveGroupPolicy === "disabled") continue;
|
|
165
|
-
const channelConfig = asObjectRecord(channels[channelKey]);
|
|
145
|
+
const channelConfig = (0, runtime_doctor_migrations_exports.asObjectRecord)(channels[channelKey]);
|
|
166
146
|
if (effectiveGroupPolicy === "open" && Object.keys(channelConfig ?? {}).length === 0) continue;
|
|
167
147
|
if (looksLikeSlackChannelId(channelKey)) continue;
|
|
168
148
|
if (account.dangerouslyAllowNameMatching === true && looksLikeSlackChannelNameKey(channelKey)) continue;
|
|
@@ -175,9 +155,6 @@ function collectSlackNameKeyedChannelWarnings({ cfg }) {
|
|
|
175
155
|
}
|
|
176
156
|
return [...warnings];
|
|
177
157
|
}
|
|
178
|
-
function slackAccountConfigPath(accountId) {
|
|
179
|
-
return accountId === "default" ? "channels.slack" : `channels.slack.accounts.${accountId}`;
|
|
180
|
-
}
|
|
181
158
|
async function collectSlackUserIdentityWarnings(params) {
|
|
182
159
|
const warnings = [];
|
|
183
160
|
for (const accountId of listSlackAccountIds(params.cfg)) {
|
|
@@ -189,7 +166,7 @@ async function collectSlackUserIdentityWarnings(params) {
|
|
|
189
166
|
envUserToken: params.env?.SLACK_USER_TOKEN
|
|
190
167
|
});
|
|
191
168
|
if (!account.enabled || account.identity !== "user") continue;
|
|
192
|
-
const path =
|
|
169
|
+
const path = accountId === "default" ? "channels.slack" : `channels.slack.accounts.${accountId}`;
|
|
193
170
|
const mode = account.mode ?? "socket";
|
|
194
171
|
if (mode === "socket" && account.appTokenStatus === "missing") warnings.push(`- ${path}: identity "user" in Socket Mode requires appToken for companion-app events.`);
|
|
195
172
|
else if (mode === "http" && account.signingSecretStatus === "missing") warnings.push(`- ${path}: identity "user" in HTTP mode requires signingSecret for companion-app events.`);
|
|
@@ -222,10 +199,7 @@ const slackDoctor = {
|
|
|
222
199
|
warnOnEmptyGroupSenderAllowlist: false,
|
|
223
200
|
legacyConfigRules,
|
|
224
201
|
normalizeCompatibilityConfig,
|
|
225
|
-
collectPreviewWarnings:
|
|
226
|
-
cfg,
|
|
227
|
-
env
|
|
228
|
-
}),
|
|
202
|
+
collectPreviewWarnings: collectSlackUserIdentityWarnings,
|
|
229
203
|
collectMutableAllowlistWarnings: ({ cfg }) => [...collectSlackMutableAllowlistWarnings({ cfg }), ...collectSlackNameKeyedChannelWarnings({ cfg })]
|
|
230
204
|
};
|
|
231
205
|
//#endregion
|
|
@@ -238,7 +212,7 @@ function createSlackPluginBase(params) {
|
|
|
238
212
|
return {
|
|
239
213
|
...slackSetupPlugin,
|
|
240
214
|
meta: {
|
|
241
|
-
...
|
|
215
|
+
...SLACK_CHANNEL_META,
|
|
242
216
|
preferSessionLookupForAnnounceTarget: true
|
|
243
217
|
},
|
|
244
218
|
setupWizard: params.setupWizard,
|
|
@@ -246,13 +220,13 @@ function createSlackPluginBase(params) {
|
|
|
246
220
|
doctor: slackDoctor,
|
|
247
221
|
agentPrompt: {
|
|
248
222
|
inboundFormattingHints: () => ({
|
|
249
|
-
text_markup: "
|
|
223
|
+
text_markup: "markdown",
|
|
250
224
|
rules: [
|
|
251
|
-
"
|
|
252
|
-
"Bold uses *single asterisks
|
|
253
|
-
"Links use
|
|
254
|
-
"
|
|
255
|
-
"
|
|
225
|
+
"Write replies in standard Markdown; OpenClaw converts them to Slack mrkdwn.",
|
|
226
|
+
"Bold uses **double asterisks**; *single asterisks* or _underscores_ produce italics.",
|
|
227
|
+
"Links use [label](url). Keep Slack mentions as <@USER_ID>.",
|
|
228
|
+
"Use presentation table blocks for tabular data; Markdown pipe tables are not auto-promoted.",
|
|
229
|
+
"Only raw Block Kit or presentation text fields use Slack mrkdwn directly: *bold*, _italic_, ~strike~, and <url|label> links. Avoid Markdown headings or pipe tables in those fields."
|
|
256
230
|
]
|
|
257
231
|
}),
|
|
258
232
|
messageToolHints: () => [
|
|
@@ -268,7 +242,7 @@ function createSlackPluginBase(params) {
|
|
|
268
242
|
config: {
|
|
269
243
|
...slackSetupPlugin.config,
|
|
270
244
|
...slackConfigAdapter,
|
|
271
|
-
isConfigured:
|
|
245
|
+
isConfigured: isSlackPluginAccountConfigured,
|
|
272
246
|
describeAccount: (account) => describeAccountSnapshot({
|
|
273
247
|
account,
|
|
274
248
|
configured: isSlackPluginAccountConfigured(account),
|
|
@@ -285,4 +259,4 @@ function createSlackPluginBase(params) {
|
|
|
285
259
|
};
|
|
286
260
|
}
|
|
287
261
|
//#endregion
|
|
288
|
-
export {
|
|
262
|
+
export { slackConfigAdapter as n, slackSecurityAdapter as r, createSlackPluginBase as t };
|
package/dist/.setup/{slash-dispatch.runtime-HFy_XvyO.mjs → slash-dispatch.runtime--AEzLVBF.mjs}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { i as sanitizeSlackMonitorReplyPayload, r as deliverSlackSlashReplies } from "./replies-BAnUtr2f.mjs";
|
|
2
2
|
import { resolveAgentRoute } from "openclaw/plugin-sdk/routing";
|
|
3
3
|
import { resolveMarkdownTableMode } from "openclaw/plugin-sdk/markdown-table-runtime";
|
|
4
4
|
import { resolveConversationLabel } from "openclaw/plugin-sdk/conversation-runtime";
|
|
@@ -1,17 +1,40 @@
|
|
|
1
|
-
import
|
|
1
|
+
import "node:module";
|
|
2
|
+
import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
2
3
|
import { getChannelStreamingConfigObject, resolveChannelStreamingNativeTransport } from "openclaw/plugin-sdk/channel-streaming-config";
|
|
4
|
+
//#region \0rolldown/runtime.js
|
|
5
|
+
var __defProp = Object.defineProperty;
|
|
6
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
7
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
8
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
+
var __exportAll = (all, no_symbols) => {
|
|
10
|
+
let target = {};
|
|
11
|
+
for (var name in all) __defProp(target, name, {
|
|
12
|
+
get: all[name],
|
|
13
|
+
enumerable: true
|
|
14
|
+
});
|
|
15
|
+
if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
|
|
16
|
+
return target;
|
|
17
|
+
};
|
|
18
|
+
var __copyProps = (to, from, except, desc) => {
|
|
19
|
+
if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
|
|
20
|
+
key = keys[i];
|
|
21
|
+
if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
22
|
+
get: ((k) => from[k]).bind(null, key),
|
|
23
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
return to;
|
|
27
|
+
};
|
|
28
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
29
|
+
//#endregion
|
|
3
30
|
//#region extensions/slack/src/streaming-compat.ts
|
|
4
|
-
function normalizeStreamingMode(value) {
|
|
5
|
-
if (typeof value !== "string") return null;
|
|
6
|
-
return (normalizeOptionalString(value) == null ? "" : normalizeLowercaseStringOrEmpty(value)) || null;
|
|
7
|
-
}
|
|
8
31
|
function parseStreamingMode(value) {
|
|
9
|
-
const normalized =
|
|
32
|
+
const normalized = normalizeLowercaseStringOrEmpty(value);
|
|
10
33
|
if (normalized === "off" || normalized === "partial" || normalized === "block" || normalized === "progress") return normalized;
|
|
11
34
|
return null;
|
|
12
35
|
}
|
|
13
36
|
function parseSlackLegacyDraftStreamMode(value) {
|
|
14
|
-
const normalized =
|
|
37
|
+
const normalized = normalizeLowercaseStringOrEmpty(value);
|
|
15
38
|
if (normalized === "replace" || normalized === "status_final" || normalized === "append") return normalized;
|
|
16
39
|
return null;
|
|
17
40
|
}
|
|
@@ -36,4 +59,4 @@ function resolveSlackNativeStreaming(params = {}) {
|
|
|
36
59
|
return true;
|
|
37
60
|
}
|
|
38
61
|
//#endregion
|
|
39
|
-
export { resolveSlackStreamingMode as n, resolveSlackNativeStreaming as t };
|
|
62
|
+
export { __reExport as i, resolveSlackStreamingMode as n, __exportAll as r, resolveSlackNativeStreaming as t };
|
|
@@ -122,13 +122,7 @@ function slackTargetsMatch(left, right) {
|
|
|
122
122
|
}
|
|
123
123
|
function looksLikeSlackTargetId(raw) {
|
|
124
124
|
const trimmed = raw.trim();
|
|
125
|
-
|
|
126
|
-
if (/^<@([A-Z0-9]+)>$/i.test(trimmed)) return true;
|
|
127
|
-
if (/^(user|channel):/i.test(trimmed)) return true;
|
|
128
|
-
if (/^slack:/i.test(trimmed)) return true;
|
|
129
|
-
if (/^team:/i.test(trimmed)) return true;
|
|
130
|
-
if (/^[@#]/.test(trimmed)) return true;
|
|
131
|
-
return /^[CUWGD][A-Z0-9]{8,}$/i.test(trimmed);
|
|
125
|
+
return /^<@([A-Z0-9]+)>$/i.test(trimmed) || /^(user|channel):/i.test(trimmed) || /^slack:/i.test(trimmed) || /^team:/i.test(trimmed) || /^[@#]/.test(trimmed) || /^[CUWGD][A-Z0-9]{8,}$/i.test(trimmed);
|
|
132
126
|
}
|
|
133
127
|
//#endregion
|
|
134
128
|
export { parseSlackTarget as a, slackTargetsMatch as c, normalizeSlackMessagingTarget as i, formatSlackTarget as n, resolveSlackChannelId as o, looksLikeSlackTargetId as r, resolveWorkspaceQualifiedSlackTarget as s, canonicalizeSlackApiTargetId as t };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as parseSlackTarget, c as slackTargetsMatch } from "./target-parsing-
|
|
1
|
+
import { a as parseSlackTarget, c as slackTargetsMatch } from "./target-parsing-FFE26kOV.mjs";
|
|
2
2
|
//#region extensions/slack/src/targets.ts
|
|
3
3
|
function matchesResolvedUserTarget(target, currentMessagingTarget) {
|
|
4
4
|
const resolvedId = target.trim();
|
|
@@ -6,7 +6,6 @@ function resolveSlackReplyThreadTs(params) {
|
|
|
6
6
|
return params.replyToCurrent || params.replyToIsExplicit === false ? params.threadId ?? replyToId : replyToId ?? params.threadId;
|
|
7
7
|
}
|
|
8
8
|
function normalizeSlackThreadTsCandidate(value) {
|
|
9
|
-
if (typeof value !== "string") return;
|
|
10
9
|
const normalized = normalizeOptionalString(value);
|
|
11
10
|
return normalized && SLACK_THREAD_TS_PATTERN.test(normalized) ? normalized : void 0;
|
|
12
11
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as inspectSlackAccount } from "./.setup/account-inspect-
|
|
1
|
+
import { t as inspectSlackAccount } from "./.setup/account-inspect-DWBXpER6.mjs";
|
|
2
2
|
//#region extensions/slack/account-inspect-api.ts
|
|
3
3
|
function inspectSlackReadOnlyAccount(cfg, accountId) {
|
|
4
4
|
return inspectSlackAccount({
|
package/dist/api.js
CHANGED
|
@@ -1,18 +1,19 @@
|
|
|
1
|
-
import { n as registerSlackHttpHandler, r as normalizeSlackWebhookPath, t as handleSlackHttpRequest } from "./.setup/registry-
|
|
2
|
-
import { a as
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
6
|
-
import "./.setup/
|
|
7
|
-
import {
|
|
8
|
-
import { n as buildSlackThreadingToolContext, t as slackPlugin } from "./.setup/channel-
|
|
9
|
-
import { d as buildSlackInteractiveBlocks, f as buildSlackPresentationBlocks } from "./.setup/reply-blocks-
|
|
10
|
-
import { n as extractSlackToolSend, r as listSlackMessageActions } from "./.setup/message-tool-api-
|
|
11
|
-
import { n as resolveSlackChannelType } from "./.setup/channel-type-
|
|
12
|
-
import { t as slackSetupPlugin } from "./.setup/channel.setup-
|
|
13
|
-
import { c as listSlackPins, d as reactSlackMessage, f as readSlackMessages, g as unpinSlackMessage, h as sendSlackMessage, i as editSlackMessage, l as listSlackReactions, m as removeSlackReaction, n as deleteSlackMessage, o as getSlackMemberInfo, p as removeOwnSlackReactions, r as downloadSlackFile, s as listSlackEmojis, u as pinSlackMessage } from "./.setup/actions-
|
|
14
|
-
import {
|
|
15
|
-
import { n as listSlackDirectoryGroupsFromConfig, r as listSlackDirectoryPeersFromConfig } from "./.setup/directory-config-
|
|
16
|
-
import { t as collectSlackSecurityAuditFindings } from "./.setup/security-audit-
|
|
17
|
-
import {
|
|
1
|
+
import { n as registerSlackHttpHandler, r as normalizeSlackWebhookPath, t as handleSlackHttpRequest } from "./.setup/registry-CIbMfuf8.mjs";
|
|
2
|
+
import { a as mergeSlackAccountConfig, f as resolveSlackReplyToMode, i as listSlackAccountIds, o as resolveDefaultSlackAccountId, r as listEnabledSlackAccounts, s as resolveSlackAccount } from "./.setup/accounts-D_N9IqNA.mjs";
|
|
3
|
+
import { t as inspectSlackAccount } from "./.setup/account-inspect-DWBXpER6.mjs";
|
|
4
|
+
import { a as parseSlackTarget, i as normalizeSlackMessagingTarget, o as resolveSlackChannelId, r as looksLikeSlackTargetId } from "./.setup/target-parsing-FFE26kOV.mjs";
|
|
5
|
+
import "./.setup/targets-C6LZQL1Q.mjs";
|
|
6
|
+
import { Wt as resolveSlackAutoThreadId, _t as parseSlackBlocksInput, a as resolveSlackGroupRequireMention, gt as SLACK_MAX_BLOCKS, o as resolveSlackGroupToolPolicy, vt as validateSlackBlocksArray } from "./.setup/session-status-DscajIsd.mjs";
|
|
7
|
+
import { D as normalizeSlackAllowOwnerEntry, E as allowListMatches, O as normalizeSlackSlug, T as resolveSlackWriteClientOptions, _ as getSlackWriteClient, b as SLACK_DEFAULT_RETRY_OPTIONS, h as createSlackWriteClient, j as resolveSlackUserAllowed, k as resolveSlackAllowListMatch, m as createSlackWebClient, p as createSlackTokenCacheKey, t as probeSlack, w as resolveSlackWebClientOptions, x as SLACK_WRITE_RETRY_OPTIONS } from "./.setup/probe-B2Y9qc_z.mjs";
|
|
8
|
+
import { n as buildSlackThreadingToolContext, t as slackPlugin } from "./.setup/channel-C7bgPSTE.mjs";
|
|
9
|
+
import { d as buildSlackInteractiveBlocks, f as buildSlackPresentationBlocks } from "./.setup/reply-blocks-SE1kTE3I.mjs";
|
|
10
|
+
import { n as extractSlackToolSend, r as listSlackMessageActions } from "./.setup/message-tool-api-Cu4lwlGy.mjs";
|
|
11
|
+
import { n as resolveSlackChannelType } from "./.setup/channel-type-ClOttrZ5.mjs";
|
|
12
|
+
import { t as slackSetupPlugin } from "./.setup/channel.setup-Dh2jzAjN.mjs";
|
|
13
|
+
import { c as listSlackPins, d as reactSlackMessage, f as readSlackMessages, g as unpinSlackMessage, h as sendSlackMessage, i as editSlackMessage, l as listSlackReactions, m as removeSlackReaction, n as deleteSlackMessage, o as getSlackMemberInfo, p as removeOwnSlackReactions, r as downloadSlackFile, s as listSlackEmojis, u as pinSlackMessage } from "./.setup/actions-Df0CzcDl.mjs";
|
|
14
|
+
import { a as clearSlackThreadParticipationCache, s as hasSlackThreadParticipation, u as recordSlackThreadParticipation } from "./.setup/send-BOVLQi3n.mjs";
|
|
15
|
+
import { n as listSlackDirectoryGroupsFromConfig, r as listSlackDirectoryPeersFromConfig } from "./.setup/directory-config-BOUWH3hR.mjs";
|
|
16
|
+
import { t as collectSlackSecurityAuditFindings } from "./.setup/security-audit-BqDc-6VL.mjs";
|
|
17
|
+
import { normalizeStringEntries as normalizeAllowList, normalizeStringEntriesLower as normalizeAllowListLower } from "openclaw/plugin-sdk/string-normalization-runtime";
|
|
18
|
+
import { resolveOpenProviderRuntimeGroupPolicy as resolveSlackRuntimeGroupPolicy } from "openclaw/plugin-sdk/runtime-group-policy";
|
|
18
19
|
export { SLACK_DEFAULT_RETRY_OPTIONS, SLACK_MAX_BLOCKS, SLACK_WRITE_RETRY_OPTIONS, allowListMatches, buildSlackInteractiveBlocks, buildSlackPresentationBlocks, buildSlackThreadingToolContext, clearSlackThreadParticipationCache, collectSlackSecurityAuditFindings, createSlackTokenCacheKey, createSlackWebClient, createSlackWriteClient, deleteSlackMessage, downloadSlackFile, editSlackMessage, extractSlackToolSend, getSlackMemberInfo, getSlackWriteClient, handleSlackHttpRequest, hasSlackThreadParticipation, inspectSlackAccount, listEnabledSlackAccounts, listSlackAccountIds, listSlackDirectoryGroupsFromConfig, listSlackDirectoryPeersFromConfig, listSlackEmojis, listSlackMessageActions, listSlackPins, listSlackReactions, looksLikeSlackTargetId, mergeSlackAccountConfig, normalizeAllowList, normalizeAllowListLower, normalizeSlackAllowOwnerEntry, normalizeSlackMessagingTarget, normalizeSlackSlug, normalizeSlackWebhookPath, parseSlackBlocksInput, parseSlackTarget, pinSlackMessage, probeSlack, reactSlackMessage, readSlackMessages, recordSlackThreadParticipation, registerSlackHttpHandler, removeOwnSlackReactions, removeSlackReaction, resolveDefaultSlackAccountId, resolveSlackAccount, resolveSlackAllowListMatch, resolveSlackAutoThreadId, resolveSlackChannelId, resolveSlackChannelType, resolveSlackGroupRequireMention, resolveSlackGroupToolPolicy, resolveSlackReplyToMode, resolveSlackRuntimeGroupPolicy, resolveSlackUserAllowed, resolveSlackWebClientOptions, resolveSlackWriteClientOptions, sendSlackMessage, slackPlugin, slackSetupPlugin, unpinSlackMessage, validateSlackBlocksArray };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as SlackChannelConfigSchema } from "./.setup/config-schema-
|
|
1
|
+
import { t as SlackChannelConfigSchema } from "./.setup/config-schema-BZCxmHKG.mjs";
|
|
2
2
|
export { SlackChannelConfigSchema };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as slackPlugin } from "./.setup/channel-
|
|
1
|
+
import { t as slackPlugin } from "./.setup/channel-C7bgPSTE.mjs";
|
|
2
2
|
export { slackPlugin };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as listSlackDirectoryGroupsFromConfig, r as listSlackDirectoryPeersFromConfig } from "./.setup/directory-config-
|
|
1
|
+
import { n as listSlackDirectoryGroupsFromConfig, r as listSlackDirectoryPeersFromConfig } from "./.setup/directory-config-BOUWH3hR.mjs";
|
|
2
2
|
export { listSlackDirectoryGroupsFromConfig, listSlackDirectoryPeersFromConfig };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as normalizeCompatibilityConfig, t as legacyConfigRules } from "./.setup/doctor-contract-
|
|
1
|
+
import { n as normalizeCompatibilityConfig, t as legacyConfigRules } from "./.setup/doctor-contract-CRN1Z_c7.mjs";
|
|
2
2
|
export { legacyConfigRules, normalizeCompatibilityConfig };
|
package/dist/http-routes-api.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as registerSlackPluginHttpRoutes } from "./.setup/plugin-routes-
|
|
1
|
+
import { t as registerSlackPluginHttpRoutes } from "./.setup/plugin-routes-B8tooDLj.mjs";
|
|
2
2
|
export { registerSlackPluginHttpRoutes };
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as registerSlackPluginHttpRoutes } from "./.setup/plugin-routes-
|
|
1
|
+
import { t as registerSlackPluginHttpRoutes } from "./.setup/plugin-routes-B8tooDLj.mjs";
|
|
2
2
|
import "./http-routes-api.js";
|
|
3
3
|
import { defineBundledChannelEntry } from "openclaw/plugin-sdk/channel-entry-contract";
|
|
4
4
|
//#region extensions/slack/index.ts
|
package/dist/message-tool-api.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as describeSlackMessageTool } from "./.setup/message-tool-api-
|
|
1
|
+
import { t as describeSlackMessageTool } from "./.setup/message-tool-api-Cu4lwlGy.mjs";
|
|
2
2
|
export { describeSlackMessageTool as describeMessageTool };
|
package/dist/runtime-api.js
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
import { t as registerSlackPluginHttpRoutes } from "./.setup/plugin-routes-
|
|
2
|
-
import {
|
|
3
|
-
import { a as resolveSlackGroupRequireMention, o as resolveSlackGroupToolPolicy } from "./.setup/session-status-
|
|
4
|
-
import { t as probeSlack } from "./.setup/probe-
|
|
1
|
+
import { t as registerSlackPluginHttpRoutes } from "./.setup/plugin-routes-B8tooDLj.mjs";
|
|
2
|
+
import { h as resolveSlackBotToken, i as listSlackAccountIds, m as resolveSlackAppToken, o as resolveDefaultSlackAccountId, r as listEnabledSlackAccounts, s as resolveSlackAccount } from "./.setup/accounts-D_N9IqNA.mjs";
|
|
3
|
+
import { a as resolveSlackGroupRequireMention, o as resolveSlackGroupToolPolicy } from "./.setup/session-status-DscajIsd.mjs";
|
|
4
|
+
import { t as probeSlack } from "./.setup/probe-B2Y9qc_z.mjs";
|
|
5
5
|
import { r as setSlackRuntime } from "./.setup/runtime-JSVZSWAj.mjs";
|
|
6
|
-
import { c as listSlackPins, d as reactSlackMessage, f as readSlackMessages, g as unpinSlackMessage, h as sendSlackMessage, i as editSlackMessage, l as listSlackReactions, m as removeSlackReaction, n as deleteSlackMessage, o as getSlackMemberInfo, p as removeOwnSlackReactions, s as listSlackEmojis, u as pinSlackMessage } from "./.setup/actions-
|
|
7
|
-
import {
|
|
8
|
-
import { t as
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import "./.setup/monitor-_Sht7Dqy.mjs";
|
|
6
|
+
import { c as listSlackPins, d as reactSlackMessage, f as readSlackMessages, g as unpinSlackMessage, h as sendSlackMessage, i as editSlackMessage, l as listSlackReactions, m as removeSlackReaction, n as deleteSlackMessage, o as getSlackMemberInfo, p as removeOwnSlackReactions, s as listSlackEmojis, u as pinSlackMessage } from "./.setup/actions-Df0CzcDl.mjs";
|
|
7
|
+
import { t as sendMessageSlack } from "./.setup/send-BOVLQi3n.mjs";
|
|
8
|
+
import { n as slackActionRuntime, t as handleSlackAction } from "./.setup/action-runtime-DfWvuiZd.mjs";
|
|
9
|
+
import { n as listSlackDirectoryGroupsLive, r as listSlackDirectoryPeersLive } from "./.setup/directory-live-B2O4B_Ho.mjs";
|
|
10
|
+
import { n as monitorSlackProvider } from "./.setup/monitor-BPVfkumU.mjs";
|
|
11
|
+
import { t as resolveSlackChannelAllowlist } from "./.setup/resolve-channels-XXBn8UU_.mjs";
|
|
12
|
+
import { t as resolveSlackUserAllowlist } from "./.setup/resolve-users-DW0ngD03.mjs";
|
|
14
13
|
export { deleteSlackMessage, editSlackMessage, getSlackMemberInfo, handleSlackAction, listEnabledSlackAccounts, listSlackAccountIds, listSlackDirectoryGroupsLive, listSlackDirectoryPeersLive, listSlackEmojis, listSlackPins, listSlackReactions, monitorSlackProvider, pinSlackMessage, probeSlack, reactSlackMessage, readSlackMessages, registerSlackPluginHttpRoutes, removeOwnSlackReactions, removeSlackReaction, resolveDefaultSlackAccountId, resolveSlackAccount, resolveSlackAppToken, resolveSlackBotToken, resolveSlackChannelAllowlist, resolveSlackGroupRequireMention, resolveSlackGroupToolPolicy, resolveSlackUserAllowlist, sendMessageSlack, sendSlackMessage, setSlackRuntime, slackActionRuntime, unpinSlackMessage };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as collectRuntimeConfigAssignments, r as secretTargetRegistryEntries, t as channelSecrets } from "./.setup/secret-contract-
|
|
1
|
+
import { n as collectRuntimeConfigAssignments, r as secretTargetRegistryEntries, t as channelSecrets } from "./.setup/secret-contract-BaZcu6P_.mjs";
|
|
2
2
|
export { channelSecrets, collectRuntimeConfigAssignments, secretTargetRegistryEntries };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as collectSlackSecurityAuditFindings } from "./.setup/security-audit-
|
|
1
|
+
import { t as collectSlackSecurityAuditFindings } from "./.setup/security-audit-BqDc-6VL.mjs";
|
|
2
2
|
export { collectSlackSecurityAuditFindings };
|
package/dist/setup-entry.js
CHANGED
|
@@ -4,11 +4,11 @@ import { fileURLToPath } from "node:url";
|
|
|
4
4
|
var setup_entry_default = defineBundledChannelSetupEntry({
|
|
5
5
|
importMetaUrl: import.meta.url,
|
|
6
6
|
plugin: {
|
|
7
|
-
specifier: fileURLToPath(new URL(".setup/setup-plugin-api-
|
|
7
|
+
specifier: fileURLToPath(new URL(".setup/setup-plugin-api-DTtbTKNk.mjs", import.meta.url).href),
|
|
8
8
|
exportName: "slackSetupPlugin"
|
|
9
9
|
},
|
|
10
10
|
secrets: {
|
|
11
|
-
specifier: fileURLToPath(new URL(".setup/secret-contract-api-
|
|
11
|
+
specifier: fileURLToPath(new URL(".setup/secret-contract-api-Dp6290Vg.mjs", import.meta.url).href),
|
|
12
12
|
exportName: "channelSecrets"
|
|
13
13
|
},
|
|
14
14
|
runtime: {
|
package/dist/setup-plugin-api.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as slackSetupPlugin } from "./.setup/channel.setup-
|
|
1
|
+
import { t as slackSetupPlugin } from "./.setup/channel.setup-Dh2jzAjN.mjs";
|
|
2
2
|
export { slackSetupPlugin };
|
|
@@ -8,7 +8,7 @@ This package contains type definitions for node (https://nodejs.org/).
|
|
|
8
8
|
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node.
|
|
9
9
|
|
|
10
10
|
### Additional Details
|
|
11
|
-
* Last updated:
|
|
11
|
+
* Last updated: Tue, 15 Sep 2026 20:33:28 GMT
|
|
12
12
|
* Dependencies: [undici-types](https://npmjs.com/package/undici-types)
|
|
13
13
|
|
|
14
14
|
# Credits
|
|
@@ -1136,7 +1136,7 @@ declare module "node:child_process" {
|
|
|
1136
1136
|
stderr: string | NonSharedBuffer;
|
|
1137
1137
|
}>;
|
|
1138
1138
|
}
|
|
1139
|
-
interface ForkOptions extends
|
|
1139
|
+
interface ForkOptions extends CommonOptions, MessagingOptions, Abortable {
|
|
1140
1140
|
execPath?: string | undefined;
|
|
1141
1141
|
execArgv?: string[] | undefined;
|
|
1142
1142
|
silent?: boolean | undefined;
|