@openclaw/slack 2026.7.2-beta.5 → 2026.7.2-beta.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.
Files changed (1426) hide show
  1. package/dist/account-inspect-DEKpg9Ip.js +89 -0
  2. package/dist/account-inspect-api.js +1 -1
  3. package/dist/accounts-CHAeNZOX.js +186 -0
  4. package/dist/accounts.runtime-BHD4Ma2R.js +2 -0
  5. package/dist/action-runtime-DfuYoMjG.js +561 -0
  6. package/dist/action-runtime.runtime-DQErZYpz.js +2 -0
  7. package/dist/actions-D3NuJvva.js +876 -0
  8. package/dist/actions.runtime-BIRU_G4M.js +2 -0
  9. package/dist/api.js +12 -12
  10. package/dist/approval-handler.runtime-BA05P0QT.js +367 -0
  11. package/dist/block-text-DkHaoGem.js +79 -0
  12. package/dist/channel-B9fVdW3s.js +1118 -0
  13. package/dist/channel-config-api.js +1 -1
  14. package/dist/channel-plugin-api.js +1 -1
  15. package/dist/channel-type-DXyos1d2.js +108 -0
  16. package/dist/channel.setup-CLP5oTvh.js +56 -0
  17. package/dist/config-adapter-CxBQH8fq.js +566 -0
  18. package/dist/config-schema-SgZT6nXV.js +373 -0
  19. package/dist/cursor-pages-eX7p8Wwt.js +19 -0
  20. package/dist/directory-config-CnCIAktf.js +54 -0
  21. package/dist/directory-contract-api.js +1 -1
  22. package/dist/directory-live-DKunWh3A.js +131 -0
  23. package/dist/group-policy-NQZti9t-.js +2442 -0
  24. package/dist/message-tool-api-DkhFpMoy.js +127 -0
  25. package/dist/message-tool-api.js +1 -1
  26. package/dist/monitor-CmKz0wtI.js +13 -0
  27. package/dist/outbound-adapter-BkuMp2Vs.js +236 -0
  28. package/dist/pipeline.runtime-DgtmuYCP.js +4360 -0
  29. package/dist/policy-PRysPn23.js +65 -0
  30. package/dist/probe-CgDsSops.js +345 -0
  31. package/dist/provider-DmRizMZt.js +5900 -0
  32. package/dist/relay-source-Blxj8xb4.js +272 -0
  33. package/dist/replies-4s_Vq_z9.js +457 -0
  34. package/dist/resolve-channels-yEqmM-3I.js +92 -0
  35. package/dist/resolve-users-BOrt5K-5.js +118 -0
  36. package/dist/runtime-api-QMb-Q5Ko.js +10 -0
  37. package/dist/runtime-api.js +11 -11
  38. package/dist/scopes-BJSrkAp6.js +73 -0
  39. package/dist/send-DsLeZpST.js +1269 -0
  40. package/dist/send.runtime-gUdK6V3h.js +2 -0
  41. package/dist/setup-plugin-api.js +1 -1
  42. package/dist/setup-surface-BeNzrMrJ.js +148 -0
  43. package/dist/shared-DgIN3Dcr.js +268 -0
  44. package/dist/slash-dispatch.runtime-zPkyl7dB.js +33 -0
  45. package/node_modules/@slack/bolt/node_modules/media-typer/README.md +94 -0
  46. package/node_modules/@slack/bolt/node_modules/media-typer/index.js +135 -0
  47. package/node_modules/@slack/bolt/node_modules/media-typer/package.json +37 -0
  48. package/node_modules/@slack/socket-mode/node_modules/@slack/logger/LICENSE +23 -0
  49. package/node_modules/@slack/socket-mode/node_modules/@slack/logger/README.md +66 -0
  50. package/node_modules/@slack/socket-mode/node_modules/@slack/logger/dist/index.d.ts +94 -0
  51. package/node_modules/@slack/socket-mode/node_modules/@slack/logger/dist/index.d.ts.map +1 -0
  52. package/node_modules/@slack/socket-mode/node_modules/@slack/logger/dist/index.js +98 -0
  53. package/node_modules/@slack/socket-mode/node_modules/@slack/logger/dist/index.js.map +1 -0
  54. package/node_modules/@slack/socket-mode/node_modules/@slack/logger/package.json +42 -0
  55. package/node_modules/@slack/socket-mode/node_modules/@types/node/LICENSE +21 -0
  56. package/node_modules/@slack/socket-mode/node_modules/@types/node/README.md +15 -0
  57. package/node_modules/@slack/socket-mode/node_modules/@types/node/assert/strict.d.ts +68 -0
  58. package/node_modules/@slack/socket-mode/node_modules/@types/node/assert.d.ts +1077 -0
  59. package/node_modules/@slack/socket-mode/node_modules/@types/node/async_hooks.d.ts +711 -0
  60. package/node_modules/@slack/socket-mode/node_modules/@types/node/buffer.buffer.d.ts +466 -0
  61. package/node_modules/@slack/socket-mode/node_modules/@types/node/buffer.d.ts +1799 -0
  62. package/node_modules/@slack/socket-mode/node_modules/@types/node/child_process.d.ts +1362 -0
  63. package/node_modules/@slack/socket-mode/node_modules/@types/node/cluster.d.ts +432 -0
  64. package/node_modules/@slack/socket-mode/node_modules/@types/node/console.d.ts +93 -0
  65. package/node_modules/@slack/socket-mode/node_modules/@types/node/constants.d.ts +14 -0
  66. package/node_modules/@slack/socket-mode/node_modules/@types/node/crypto.d.ts +3954 -0
  67. package/node_modules/@slack/socket-mode/node_modules/@types/node/dgram.d.ts +537 -0
  68. package/node_modules/@slack/socket-mode/node_modules/@types/node/diagnostics_channel.d.ts +794 -0
  69. package/node_modules/@slack/socket-mode/node_modules/@types/node/dns/promises.d.ts +497 -0
  70. package/node_modules/@slack/socket-mode/node_modules/@types/node/dns.d.ts +876 -0
  71. package/node_modules/@slack/socket-mode/node_modules/@types/node/domain.d.ts +150 -0
  72. package/node_modules/@slack/socket-mode/node_modules/@types/node/events.d.ts +1008 -0
  73. package/node_modules/@slack/socket-mode/node_modules/@types/node/ffi.d.ts +486 -0
  74. package/node_modules/@slack/socket-mode/node_modules/@types/node/fs/promises.d.ts +1481 -0
  75. package/node_modules/@slack/socket-mode/node_modules/@types/node/fs.d.ts +4786 -0
  76. package/node_modules/@slack/socket-mode/node_modules/@types/node/globals.d.ts +150 -0
  77. package/node_modules/@slack/socket-mode/node_modules/@types/node/globals.typedarray.d.ts +101 -0
  78. package/node_modules/@slack/socket-mode/node_modules/@types/node/http.d.ts +2172 -0
  79. package/node_modules/@slack/socket-mode/node_modules/@types/node/http2.d.ts +2489 -0
  80. package/node_modules/@slack/socket-mode/node_modules/@types/node/https.d.ts +400 -0
  81. package/node_modules/@slack/socket-mode/node_modules/@types/node/index.d.ts +115 -0
  82. package/node_modules/@slack/socket-mode/node_modules/@types/node/inspector/promises.d.ts +35 -0
  83. package/node_modules/@slack/socket-mode/node_modules/@types/node/inspector.d.ts +264 -0
  84. package/node_modules/@slack/socket-mode/node_modules/@types/node/inspector.generated.d.ts +4406 -0
  85. package/node_modules/@slack/socket-mode/node_modules/@types/node/module.d.ts +726 -0
  86. package/node_modules/@slack/socket-mode/node_modules/@types/node/net.d.ts +970 -0
  87. package/node_modules/@slack/socket-mode/node_modules/@types/node/os.d.ts +498 -0
  88. package/node_modules/@slack/socket-mode/node_modules/@types/node/package.json +155 -0
  89. package/node_modules/@slack/socket-mode/node_modules/@types/node/path/posix.d.ts +8 -0
  90. package/node_modules/@slack/socket-mode/node_modules/@types/node/path/win32.d.ts +8 -0
  91. package/node_modules/@slack/socket-mode/node_modules/@types/node/path.d.ts +178 -0
  92. package/node_modules/@slack/socket-mode/node_modules/@types/node/perf_hooks.d.ts +604 -0
  93. package/node_modules/@slack/socket-mode/node_modules/@types/node/process.d.ts +2217 -0
  94. package/node_modules/@slack/socket-mode/node_modules/@types/node/punycode.d.ts +89 -0
  95. package/node_modules/@slack/socket-mode/node_modules/@types/node/querystring.d.ts +139 -0
  96. package/node_modules/@slack/socket-mode/node_modules/@types/node/quic.d.ts +978 -0
  97. package/node_modules/@slack/socket-mode/node_modules/@types/node/readline/promises.d.ts +158 -0
  98. package/node_modules/@slack/socket-mode/node_modules/@types/node/readline.d.ts +508 -0
  99. package/node_modules/@slack/socket-mode/node_modules/@types/node/repl.d.ts +420 -0
  100. package/node_modules/@slack/socket-mode/node_modules/@types/node/sea.d.ts +47 -0
  101. package/node_modules/@slack/socket-mode/node_modules/@types/node/sqlite.d.ts +1123 -0
  102. package/node_modules/@slack/socket-mode/node_modules/@types/node/stream/consumers.d.ts +114 -0
  103. package/node_modules/@slack/socket-mode/node_modules/@types/node/stream/iter.d.ts +451 -0
  104. package/node_modules/@slack/socket-mode/node_modules/@types/node/stream/promises.d.ts +211 -0
  105. package/node_modules/@slack/socket-mode/node_modules/@types/node/stream/web.d.ts +300 -0
  106. package/node_modules/@slack/socket-mode/node_modules/@types/node/stream.d.ts +1806 -0
  107. package/node_modules/@slack/socket-mode/node_modules/@types/node/string_decoder.d.ts +27 -0
  108. package/node_modules/@slack/socket-mode/node_modules/@types/node/test/reporters.d.ts +59 -0
  109. package/node_modules/@slack/socket-mode/node_modules/@types/node/test.d.ts +2389 -0
  110. package/node_modules/@slack/socket-mode/node_modules/@types/node/timers/promises.d.ts +93 -0
  111. package/node_modules/@slack/socket-mode/node_modules/@types/node/timers.d.ts +149 -0
  112. package/node_modules/@slack/socket-mode/node_modules/@types/node/tls.d.ts +1193 -0
  113. package/node_modules/@slack/socket-mode/node_modules/@types/node/trace_events.d.ts +103 -0
  114. package/node_modules/@slack/socket-mode/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +462 -0
  115. package/node_modules/@slack/socket-mode/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +71 -0
  116. package/node_modules/@slack/socket-mode/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +36 -0
  117. package/node_modules/@slack/socket-mode/node_modules/@types/node/ts5.6/index.d.ts +117 -0
  118. package/node_modules/@slack/socket-mode/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +72 -0
  119. package/node_modules/@slack/socket-mode/node_modules/@types/node/ts5.7/index.d.ts +117 -0
  120. package/node_modules/@slack/socket-mode/node_modules/@types/node/tty.d.ts +225 -0
  121. package/node_modules/@slack/socket-mode/node_modules/@types/node/url.d.ts +556 -0
  122. package/node_modules/@slack/socket-mode/node_modules/@types/node/util/types.d.ts +558 -0
  123. package/node_modules/@slack/socket-mode/node_modules/@types/node/util.d.ts +1677 -0
  124. package/node_modules/@slack/socket-mode/node_modules/@types/node/v8.d.ts +1062 -0
  125. package/node_modules/@slack/socket-mode/node_modules/@types/node/vm.d.ts +1136 -0
  126. package/node_modules/@slack/socket-mode/node_modules/@types/node/wasi.d.ts +131 -0
  127. package/node_modules/@slack/socket-mode/node_modules/@types/node/web-globals/abortcontroller.d.ts +59 -0
  128. package/node_modules/@slack/socket-mode/node_modules/@types/node/web-globals/blob.d.ts +23 -0
  129. package/node_modules/@slack/socket-mode/node_modules/@types/node/web-globals/console.d.ts +9 -0
  130. package/node_modules/@slack/socket-mode/node_modules/@types/node/web-globals/crypto.d.ts +39 -0
  131. package/node_modules/@slack/socket-mode/node_modules/@types/node/web-globals/domexception.d.ts +83 -0
  132. package/node_modules/@slack/socket-mode/node_modules/@types/node/web-globals/encoding.d.ts +11 -0
  133. package/node_modules/@slack/socket-mode/node_modules/@types/node/web-globals/events.d.ts +106 -0
  134. package/node_modules/@slack/socket-mode/node_modules/@types/node/web-globals/fetch.d.ts +69 -0
  135. package/node_modules/@slack/socket-mode/node_modules/@types/node/web-globals/importmeta.d.ts +13 -0
  136. package/node_modules/@slack/socket-mode/node_modules/@types/node/web-globals/messaging.d.ts +23 -0
  137. package/node_modules/@slack/socket-mode/node_modules/@types/node/web-globals/navigator.d.ts +25 -0
  138. package/node_modules/@slack/socket-mode/node_modules/@types/node/web-globals/performance.d.ts +45 -0
  139. package/node_modules/@slack/socket-mode/node_modules/@types/node/web-globals/storage.d.ts +24 -0
  140. package/node_modules/@slack/socket-mode/node_modules/@types/node/web-globals/streams.d.ts +115 -0
  141. package/node_modules/@slack/socket-mode/node_modules/@types/node/web-globals/timers.d.ts +44 -0
  142. package/node_modules/@slack/socket-mode/node_modules/@types/node/web-globals/url.d.ts +24 -0
  143. package/node_modules/@slack/socket-mode/node_modules/@types/node/worker_threads.d.ts +669 -0
  144. package/node_modules/@slack/socket-mode/node_modules/@types/node/zlib/iter.d.ts +131 -0
  145. package/node_modules/@slack/socket-mode/node_modules/@types/node/zlib.d.ts +589 -0
  146. package/node_modules/@slack/socket-mode/node_modules/undici-types/LICENSE +21 -0
  147. package/node_modules/@slack/socket-mode/node_modules/undici-types/README.md +6 -0
  148. package/node_modules/@slack/socket-mode/node_modules/undici-types/agent.d.ts +30 -0
  149. package/node_modules/@slack/socket-mode/node_modules/undici-types/api.d.ts +43 -0
  150. package/node_modules/@slack/socket-mode/node_modules/undici-types/balanced-pool.d.ts +30 -0
  151. package/node_modules/@slack/socket-mode/node_modules/undici-types/cache-interceptor.d.ts +179 -0
  152. package/node_modules/@slack/socket-mode/node_modules/undici-types/cache.d.ts +36 -0
  153. package/node_modules/@slack/socket-mode/node_modules/undici-types/client-stats.d.ts +15 -0
  154. package/node_modules/@slack/socket-mode/node_modules/undici-types/client.d.ts +129 -0
  155. package/node_modules/@slack/socket-mode/node_modules/undici-types/connector.d.ts +36 -0
  156. package/node_modules/@slack/socket-mode/node_modules/undici-types/content-type.d.ts +21 -0
  157. package/node_modules/@slack/socket-mode/node_modules/undici-types/cookies.d.ts +30 -0
  158. package/node_modules/@slack/socket-mode/node_modules/undici-types/diagnostics-channel.d.ts +74 -0
  159. package/node_modules/@slack/socket-mode/node_modules/undici-types/dispatcher.d.ts +253 -0
  160. package/node_modules/@slack/socket-mode/node_modules/undici-types/dispatcher1-wrapper.d.ts +7 -0
  161. package/node_modules/@slack/socket-mode/node_modules/undici-types/env-http-proxy-agent.d.ts +22 -0
  162. package/node_modules/@slack/socket-mode/node_modules/undici-types/errors.d.ts +177 -0
  163. package/node_modules/@slack/socket-mode/node_modules/undici-types/eventsource.d.ts +66 -0
  164. package/node_modules/@slack/socket-mode/node_modules/undici-types/fetch.d.ts +231 -0
  165. package/node_modules/@slack/socket-mode/node_modules/undici-types/formdata.d.ts +108 -0
  166. package/node_modules/@slack/socket-mode/node_modules/undici-types/global-dispatcher.d.ts +9 -0
  167. package/node_modules/@slack/socket-mode/node_modules/undici-types/global-origin.d.ts +7 -0
  168. package/node_modules/@slack/socket-mode/node_modules/undici-types/h2c-client.d.ts +73 -0
  169. package/node_modules/@slack/socket-mode/node_modules/undici-types/handlers.d.ts +14 -0
  170. package/node_modules/@slack/socket-mode/node_modules/undici-types/header.d.ts +165 -0
  171. package/node_modules/@slack/socket-mode/node_modules/undici-types/index.d.ts +93 -0
  172. package/node_modules/@slack/socket-mode/node_modules/undici-types/interceptors.d.ts +80 -0
  173. package/node_modules/@slack/socket-mode/node_modules/undici-types/mock-agent.d.ts +68 -0
  174. package/node_modules/@slack/socket-mode/node_modules/undici-types/mock-call-history.d.ts +111 -0
  175. package/node_modules/@slack/socket-mode/node_modules/undici-types/mock-client.d.ts +27 -0
  176. package/node_modules/@slack/socket-mode/node_modules/undici-types/mock-errors.d.ts +12 -0
  177. package/node_modules/@slack/socket-mode/node_modules/undici-types/mock-interceptor.d.ts +94 -0
  178. package/node_modules/@slack/socket-mode/node_modules/undici-types/mock-pool.d.ts +27 -0
  179. package/node_modules/@slack/socket-mode/node_modules/undici-types/package.json +55 -0
  180. package/node_modules/@slack/socket-mode/node_modules/undici-types/patch.d.ts +29 -0
  181. package/node_modules/@slack/socket-mode/node_modules/undici-types/pool-stats.d.ts +19 -0
  182. package/node_modules/@slack/socket-mode/node_modules/undici-types/pool.d.ts +39 -0
  183. package/node_modules/@slack/socket-mode/node_modules/undici-types/proxy-agent.d.ts +29 -0
  184. package/node_modules/@slack/socket-mode/node_modules/undici-types/readable.d.ts +68 -0
  185. package/node_modules/@slack/socket-mode/node_modules/undici-types/retry-agent.d.ts +8 -0
  186. package/node_modules/@slack/socket-mode/node_modules/undici-types/retry-handler.d.ts +125 -0
  187. package/node_modules/@slack/socket-mode/node_modules/undici-types/round-robin-pool.d.ts +39 -0
  188. package/node_modules/@slack/socket-mode/node_modules/undici-types/snapshot-agent.d.ts +113 -0
  189. package/node_modules/@slack/socket-mode/node_modules/undici-types/socks5-proxy-agent.d.ts +25 -0
  190. package/node_modules/@slack/socket-mode/node_modules/undici-types/util.d.ts +18 -0
  191. package/node_modules/@slack/socket-mode/node_modules/undici-types/utility.d.ts +7 -0
  192. package/node_modules/@slack/socket-mode/node_modules/undici-types/webidl.d.ts +346 -0
  193. package/node_modules/@slack/socket-mode/node_modules/undici-types/websocket.d.ts +188 -0
  194. package/node_modules/@slack/web-api/node_modules/@slack/logger/LICENSE +23 -0
  195. package/node_modules/@slack/web-api/node_modules/@slack/logger/README.md +66 -0
  196. package/node_modules/@slack/web-api/node_modules/@slack/logger/dist/index.d.ts +94 -0
  197. package/node_modules/@slack/web-api/node_modules/@slack/logger/dist/index.d.ts.map +1 -0
  198. package/node_modules/@slack/web-api/node_modules/@slack/logger/dist/index.js +98 -0
  199. package/node_modules/@slack/web-api/node_modules/@slack/logger/dist/index.js.map +1 -0
  200. package/node_modules/@slack/web-api/node_modules/@slack/logger/package.json +42 -0
  201. package/node_modules/@slack/web-api/node_modules/@types/node/LICENSE +21 -0
  202. package/node_modules/@slack/web-api/node_modules/@types/node/README.md +15 -0
  203. package/node_modules/@slack/web-api/node_modules/@types/node/assert/strict.d.ts +68 -0
  204. package/node_modules/@slack/web-api/node_modules/@types/node/assert.d.ts +1077 -0
  205. package/node_modules/@slack/web-api/node_modules/@types/node/async_hooks.d.ts +711 -0
  206. package/node_modules/@slack/web-api/node_modules/@types/node/buffer.buffer.d.ts +466 -0
  207. package/node_modules/@slack/web-api/node_modules/@types/node/buffer.d.ts +1799 -0
  208. package/node_modules/@slack/web-api/node_modules/@types/node/child_process.d.ts +1362 -0
  209. package/node_modules/@slack/web-api/node_modules/@types/node/cluster.d.ts +432 -0
  210. package/node_modules/@slack/web-api/node_modules/@types/node/console.d.ts +93 -0
  211. package/node_modules/@slack/web-api/node_modules/@types/node/constants.d.ts +14 -0
  212. package/node_modules/@slack/web-api/node_modules/@types/node/crypto.d.ts +3954 -0
  213. package/node_modules/@slack/web-api/node_modules/@types/node/dgram.d.ts +537 -0
  214. package/node_modules/@slack/web-api/node_modules/@types/node/diagnostics_channel.d.ts +794 -0
  215. package/node_modules/@slack/web-api/node_modules/@types/node/dns/promises.d.ts +497 -0
  216. package/node_modules/@slack/web-api/node_modules/@types/node/dns.d.ts +876 -0
  217. package/node_modules/@slack/web-api/node_modules/@types/node/domain.d.ts +150 -0
  218. package/node_modules/@slack/web-api/node_modules/@types/node/events.d.ts +1008 -0
  219. package/node_modules/@slack/web-api/node_modules/@types/node/ffi.d.ts +486 -0
  220. package/node_modules/@slack/web-api/node_modules/@types/node/fs/promises.d.ts +1481 -0
  221. package/node_modules/@slack/web-api/node_modules/@types/node/fs.d.ts +4786 -0
  222. package/node_modules/@slack/web-api/node_modules/@types/node/globals.d.ts +150 -0
  223. package/node_modules/@slack/web-api/node_modules/@types/node/globals.typedarray.d.ts +101 -0
  224. package/node_modules/@slack/web-api/node_modules/@types/node/http.d.ts +2172 -0
  225. package/node_modules/@slack/web-api/node_modules/@types/node/http2.d.ts +2489 -0
  226. package/node_modules/@slack/web-api/node_modules/@types/node/https.d.ts +400 -0
  227. package/node_modules/@slack/web-api/node_modules/@types/node/index.d.ts +115 -0
  228. package/node_modules/@slack/web-api/node_modules/@types/node/inspector/promises.d.ts +35 -0
  229. package/node_modules/@slack/web-api/node_modules/@types/node/inspector.d.ts +264 -0
  230. package/node_modules/@slack/web-api/node_modules/@types/node/inspector.generated.d.ts +4406 -0
  231. package/node_modules/@slack/web-api/node_modules/@types/node/module.d.ts +726 -0
  232. package/node_modules/@slack/web-api/node_modules/@types/node/net.d.ts +970 -0
  233. package/node_modules/@slack/web-api/node_modules/@types/node/os.d.ts +498 -0
  234. package/node_modules/@slack/web-api/node_modules/@types/node/package.json +155 -0
  235. package/node_modules/@slack/web-api/node_modules/@types/node/path/posix.d.ts +8 -0
  236. package/node_modules/@slack/web-api/node_modules/@types/node/path/win32.d.ts +8 -0
  237. package/node_modules/@slack/web-api/node_modules/@types/node/path.d.ts +178 -0
  238. package/node_modules/@slack/web-api/node_modules/@types/node/perf_hooks.d.ts +604 -0
  239. package/node_modules/@slack/web-api/node_modules/@types/node/process.d.ts +2217 -0
  240. package/node_modules/@slack/web-api/node_modules/@types/node/punycode.d.ts +89 -0
  241. package/node_modules/@slack/web-api/node_modules/@types/node/querystring.d.ts +139 -0
  242. package/node_modules/@slack/web-api/node_modules/@types/node/quic.d.ts +978 -0
  243. package/node_modules/@slack/web-api/node_modules/@types/node/readline/promises.d.ts +158 -0
  244. package/node_modules/@slack/web-api/node_modules/@types/node/readline.d.ts +508 -0
  245. package/node_modules/@slack/web-api/node_modules/@types/node/repl.d.ts +420 -0
  246. package/node_modules/@slack/web-api/node_modules/@types/node/sea.d.ts +47 -0
  247. package/node_modules/@slack/web-api/node_modules/@types/node/sqlite.d.ts +1123 -0
  248. package/node_modules/@slack/web-api/node_modules/@types/node/stream/consumers.d.ts +114 -0
  249. package/node_modules/@slack/web-api/node_modules/@types/node/stream/iter.d.ts +451 -0
  250. package/node_modules/@slack/web-api/node_modules/@types/node/stream/promises.d.ts +211 -0
  251. package/node_modules/@slack/web-api/node_modules/@types/node/stream/web.d.ts +300 -0
  252. package/node_modules/@slack/web-api/node_modules/@types/node/stream.d.ts +1806 -0
  253. package/node_modules/@slack/web-api/node_modules/@types/node/string_decoder.d.ts +27 -0
  254. package/node_modules/@slack/web-api/node_modules/@types/node/test/reporters.d.ts +59 -0
  255. package/node_modules/@slack/web-api/node_modules/@types/node/test.d.ts +2389 -0
  256. package/node_modules/@slack/web-api/node_modules/@types/node/timers/promises.d.ts +93 -0
  257. package/node_modules/@slack/web-api/node_modules/@types/node/timers.d.ts +149 -0
  258. package/node_modules/@slack/web-api/node_modules/@types/node/tls.d.ts +1193 -0
  259. package/node_modules/@slack/web-api/node_modules/@types/node/trace_events.d.ts +103 -0
  260. package/node_modules/@slack/web-api/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +462 -0
  261. package/node_modules/@slack/web-api/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +71 -0
  262. package/node_modules/@slack/web-api/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +36 -0
  263. package/node_modules/@slack/web-api/node_modules/@types/node/ts5.6/index.d.ts +117 -0
  264. package/node_modules/@slack/web-api/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +72 -0
  265. package/node_modules/@slack/web-api/node_modules/@types/node/ts5.7/index.d.ts +117 -0
  266. package/node_modules/@slack/web-api/node_modules/@types/node/tty.d.ts +225 -0
  267. package/node_modules/@slack/web-api/node_modules/@types/node/url.d.ts +556 -0
  268. package/node_modules/@slack/web-api/node_modules/@types/node/util/types.d.ts +558 -0
  269. package/node_modules/@slack/web-api/node_modules/@types/node/util.d.ts +1677 -0
  270. package/node_modules/@slack/web-api/node_modules/@types/node/v8.d.ts +1062 -0
  271. package/node_modules/@slack/web-api/node_modules/@types/node/vm.d.ts +1136 -0
  272. package/node_modules/@slack/web-api/node_modules/@types/node/wasi.d.ts +131 -0
  273. package/node_modules/@slack/web-api/node_modules/@types/node/web-globals/abortcontroller.d.ts +59 -0
  274. package/node_modules/@slack/web-api/node_modules/@types/node/web-globals/blob.d.ts +23 -0
  275. package/node_modules/@slack/web-api/node_modules/@types/node/web-globals/console.d.ts +9 -0
  276. package/node_modules/@slack/web-api/node_modules/@types/node/web-globals/crypto.d.ts +39 -0
  277. package/node_modules/@slack/web-api/node_modules/@types/node/web-globals/domexception.d.ts +83 -0
  278. package/node_modules/@slack/web-api/node_modules/@types/node/web-globals/encoding.d.ts +11 -0
  279. package/node_modules/@slack/web-api/node_modules/@types/node/web-globals/events.d.ts +106 -0
  280. package/node_modules/@slack/web-api/node_modules/@types/node/web-globals/fetch.d.ts +69 -0
  281. package/node_modules/@slack/web-api/node_modules/@types/node/web-globals/importmeta.d.ts +13 -0
  282. package/node_modules/@slack/web-api/node_modules/@types/node/web-globals/messaging.d.ts +23 -0
  283. package/node_modules/@slack/web-api/node_modules/@types/node/web-globals/navigator.d.ts +25 -0
  284. package/node_modules/@slack/web-api/node_modules/@types/node/web-globals/performance.d.ts +45 -0
  285. package/node_modules/@slack/web-api/node_modules/@types/node/web-globals/storage.d.ts +24 -0
  286. package/node_modules/@slack/web-api/node_modules/@types/node/web-globals/streams.d.ts +115 -0
  287. package/node_modules/@slack/web-api/node_modules/@types/node/web-globals/timers.d.ts +44 -0
  288. package/node_modules/@slack/web-api/node_modules/@types/node/web-globals/url.d.ts +24 -0
  289. package/node_modules/@slack/web-api/node_modules/@types/node/worker_threads.d.ts +669 -0
  290. package/node_modules/@slack/web-api/node_modules/@types/node/zlib/iter.d.ts +131 -0
  291. package/node_modules/@slack/web-api/node_modules/@types/node/zlib.d.ts +589 -0
  292. package/node_modules/@slack/web-api/node_modules/eventemitter3/README.md +85 -0
  293. package/node_modules/@slack/web-api/node_modules/eventemitter3/dist/eventemitter3.esm.js +355 -0
  294. package/node_modules/@slack/web-api/node_modules/eventemitter3/dist/eventemitter3.esm.min.js +1 -0
  295. package/node_modules/@slack/web-api/node_modules/eventemitter3/dist/eventemitter3.esm.min.js.map +1 -0
  296. package/node_modules/@slack/web-api/node_modules/eventemitter3/dist/eventemitter3.umd.js +363 -0
  297. package/node_modules/@slack/web-api/node_modules/eventemitter3/dist/eventemitter3.umd.min.js +1 -0
  298. package/node_modules/@slack/web-api/node_modules/eventemitter3/dist/eventemitter3.umd.min.js.map +1 -0
  299. package/node_modules/@slack/web-api/node_modules/eventemitter3/index.d.ts +135 -0
  300. package/node_modules/@slack/web-api/node_modules/eventemitter3/index.mjs +4 -0
  301. package/node_modules/@slack/web-api/node_modules/eventemitter3/package.json +62 -0
  302. package/node_modules/@slack/web-api/node_modules/p-queue/node_modules/eventemitter3/LICENSE +21 -0
  303. package/node_modules/@slack/web-api/node_modules/p-queue/node_modules/eventemitter3/index.js +336 -0
  304. package/node_modules/@slack/web-api/node_modules/undici-types/LICENSE +21 -0
  305. package/node_modules/@slack/web-api/node_modules/undici-types/README.md +6 -0
  306. package/node_modules/@slack/web-api/node_modules/undici-types/agent.d.ts +30 -0
  307. package/node_modules/@slack/web-api/node_modules/undici-types/api.d.ts +43 -0
  308. package/node_modules/@slack/web-api/node_modules/undici-types/balanced-pool.d.ts +30 -0
  309. package/node_modules/@slack/web-api/node_modules/undici-types/cache-interceptor.d.ts +179 -0
  310. package/node_modules/@slack/web-api/node_modules/undici-types/cache.d.ts +36 -0
  311. package/node_modules/@slack/web-api/node_modules/undici-types/client-stats.d.ts +15 -0
  312. package/node_modules/@slack/web-api/node_modules/undici-types/client.d.ts +129 -0
  313. package/node_modules/@slack/web-api/node_modules/undici-types/connector.d.ts +36 -0
  314. package/node_modules/@slack/web-api/node_modules/undici-types/content-type.d.ts +21 -0
  315. package/node_modules/@slack/web-api/node_modules/undici-types/cookies.d.ts +30 -0
  316. package/node_modules/@slack/web-api/node_modules/undici-types/diagnostics-channel.d.ts +74 -0
  317. package/node_modules/@slack/web-api/node_modules/undici-types/dispatcher.d.ts +253 -0
  318. package/node_modules/@slack/web-api/node_modules/undici-types/dispatcher1-wrapper.d.ts +7 -0
  319. package/node_modules/@slack/web-api/node_modules/undici-types/env-http-proxy-agent.d.ts +22 -0
  320. package/node_modules/@slack/web-api/node_modules/undici-types/errors.d.ts +177 -0
  321. package/node_modules/@slack/web-api/node_modules/undici-types/eventsource.d.ts +66 -0
  322. package/node_modules/@slack/web-api/node_modules/undici-types/fetch.d.ts +231 -0
  323. package/node_modules/@slack/web-api/node_modules/undici-types/formdata.d.ts +108 -0
  324. package/node_modules/@slack/web-api/node_modules/undici-types/global-dispatcher.d.ts +9 -0
  325. package/node_modules/@slack/web-api/node_modules/undici-types/global-origin.d.ts +7 -0
  326. package/node_modules/@slack/web-api/node_modules/undici-types/h2c-client.d.ts +73 -0
  327. package/node_modules/@slack/web-api/node_modules/undici-types/handlers.d.ts +14 -0
  328. package/node_modules/@slack/web-api/node_modules/undici-types/header.d.ts +165 -0
  329. package/node_modules/@slack/web-api/node_modules/undici-types/index.d.ts +93 -0
  330. package/node_modules/@slack/web-api/node_modules/undici-types/interceptors.d.ts +80 -0
  331. package/node_modules/@slack/web-api/node_modules/undici-types/mock-agent.d.ts +68 -0
  332. package/node_modules/@slack/web-api/node_modules/undici-types/mock-call-history.d.ts +111 -0
  333. package/node_modules/@slack/web-api/node_modules/undici-types/mock-client.d.ts +27 -0
  334. package/node_modules/@slack/web-api/node_modules/undici-types/mock-errors.d.ts +12 -0
  335. package/node_modules/@slack/web-api/node_modules/undici-types/mock-interceptor.d.ts +94 -0
  336. package/node_modules/@slack/web-api/node_modules/undici-types/mock-pool.d.ts +27 -0
  337. package/node_modules/@slack/web-api/node_modules/undici-types/package.json +55 -0
  338. package/node_modules/@slack/web-api/node_modules/undici-types/patch.d.ts +29 -0
  339. package/node_modules/@slack/web-api/node_modules/undici-types/pool-stats.d.ts +19 -0
  340. package/node_modules/@slack/web-api/node_modules/undici-types/pool.d.ts +39 -0
  341. package/node_modules/@slack/web-api/node_modules/undici-types/proxy-agent.d.ts +29 -0
  342. package/node_modules/@slack/web-api/node_modules/undici-types/readable.d.ts +68 -0
  343. package/node_modules/@slack/web-api/node_modules/undici-types/retry-agent.d.ts +8 -0
  344. package/node_modules/@slack/web-api/node_modules/undici-types/retry-handler.d.ts +125 -0
  345. package/node_modules/@slack/web-api/node_modules/undici-types/round-robin-pool.d.ts +39 -0
  346. package/node_modules/@slack/web-api/node_modules/undici-types/snapshot-agent.d.ts +113 -0
  347. package/node_modules/@slack/web-api/node_modules/undici-types/socks5-proxy-agent.d.ts +25 -0
  348. package/node_modules/@slack/web-api/node_modules/undici-types/util.d.ts +18 -0
  349. package/node_modules/@slack/web-api/node_modules/undici-types/utility.d.ts +7 -0
  350. package/node_modules/@slack/web-api/node_modules/undici-types/webidl.d.ts +346 -0
  351. package/node_modules/@slack/web-api/node_modules/undici-types/websocket.d.ts +188 -0
  352. package/node_modules/get-east-asian-width/index.d.ts +60 -0
  353. package/node_modules/get-east-asian-width/index.js +30 -0
  354. package/node_modules/get-east-asian-width/license +9 -0
  355. package/node_modules/get-east-asian-width/lookup-data.js +21 -0
  356. package/node_modules/get-east-asian-width/lookup.js +138 -0
  357. package/node_modules/get-east-asian-width/package.json +71 -0
  358. package/node_modules/get-east-asian-width/readme.md +65 -0
  359. package/node_modules/get-east-asian-width/utilities.js +24 -0
  360. package/node_modules/p-map/index.js +1 -0
  361. package/node_modules/p-map/package.json +1 -1
  362. package/openclaw.plugin.json +64 -64
  363. package/package.json +13 -5
  364. package/dist/account-inspect-jn1xLaVi.js +0 -86
  365. package/dist/accounts-BSr252c_.js +0 -188
  366. package/dist/accounts.runtime-CjULMLTa.js +0 -2
  367. package/dist/action-runtime-BO3HK_50.js +0 -561
  368. package/dist/action-runtime.runtime-DbEcqEXC.js +0 -2
  369. package/dist/actions-BkOaiDSX.js +0 -900
  370. package/dist/actions.runtime-Do-iOL51.js +0 -2
  371. package/dist/approval-handler.runtime-BAnGN7w0.js +0 -368
  372. package/dist/channel-Cnrlie9S.js +0 -1118
  373. package/dist/channel-type-CPDX8EV-.js +0 -109
  374. package/dist/channel.setup-DyZdLwUB.js +0 -56
  375. package/dist/config-adapter-Bb8hn2tM.js +0 -571
  376. package/dist/config-schema-BajbuJGL.js +0 -422
  377. package/dist/cursor-pages-DSmTg0su.js +0 -13
  378. package/dist/directory-config-CeixfVuC.js +0 -54
  379. package/dist/directory-live-CUwGPX2d.js +0 -131
  380. package/dist/group-policy-CthIXE2T.js +0 -2332
  381. package/dist/message-tool-api-CvKoWYYQ.js +0 -123
  382. package/dist/monitor-Cb5ZsOTY.js +0 -13
  383. package/dist/outbound-adapter-sGrozuRg.js +0 -215
  384. package/dist/pipeline.runtime-mFCCSllA.js +0 -4360
  385. package/dist/policy-DVg6FyMP.js +0 -65
  386. package/dist/probe-BhQTDVBQ.js +0 -333
  387. package/dist/provider-PSppCU_K.js +0 -5875
  388. package/dist/relay-source-D0mb_JBk.js +0 -272
  389. package/dist/replies-BkPPM2Ri.js +0 -457
  390. package/dist/resolve-channels-B3RlJKyV.js +0 -92
  391. package/dist/resolve-users-DTm7PEMa.js +0 -118
  392. package/dist/runtime-api-jpn3vQ7e.js +0 -10
  393. package/dist/scopes-B2SqZ--4.js +0 -73
  394. package/dist/send-2IoDXPeB.js +0 -1269
  395. package/dist/send.runtime-BKd_PAEw.js +0 -2
  396. package/dist/setup-surface-Dyam58nO.js +0 -148
  397. package/dist/shared-g55DV75U.js +0 -273
  398. package/dist/slash-dispatch.runtime-BRQbvn2e.js +0 -33
  399. package/node_modules/media-typer/README.md +0 -93
  400. package/node_modules/media-typer/index.js +0 -143
  401. package/node_modules/media-typer/package.json +0 -33
  402. /package/node_modules/@slack/{logger → bolt/node_modules/@slack/logger}/LICENSE +0 -0
  403. /package/node_modules/@slack/{logger → bolt/node_modules/@slack/logger}/README.md +0 -0
  404. /package/node_modules/@slack/{logger → bolt/node_modules/@slack/logger}/dist/index.d.ts +0 -0
  405. /package/node_modules/@slack/{logger → bolt/node_modules/@slack/logger}/dist/index.d.ts.map +0 -0
  406. /package/node_modules/@slack/{logger → bolt/node_modules/@slack/logger}/dist/index.js +0 -0
  407. /package/node_modules/@slack/{logger → bolt/node_modules/@slack/logger}/dist/index.js.map +0 -0
  408. /package/node_modules/@slack/{logger → bolt/node_modules/@slack/logger}/package.json +0 -0
  409. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/LICENSE +0 -0
  410. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/README.md +0 -0
  411. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/authorize-result.d.ts +0 -0
  412. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/authorize-result.d.ts.map +0 -0
  413. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/authorize-result.js +0 -0
  414. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/authorize-result.js.map +0 -0
  415. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/callback-options.d.ts +0 -0
  416. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/callback-options.d.ts.map +0 -0
  417. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/callback-options.js +0 -0
  418. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/callback-options.js.map +0 -0
  419. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/default-render-html-for-install-path.d.ts +0 -0
  420. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/default-render-html-for-install-path.d.ts.map +0 -0
  421. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/default-render-html-for-install-path.js +0 -0
  422. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/default-render-html-for-install-path.js.map +0 -0
  423. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/errors.d.ts +0 -0
  424. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/errors.d.ts.map +0 -0
  425. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/errors.js +0 -0
  426. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/errors.js.map +0 -0
  427. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/index.d.ts +0 -0
  428. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/index.d.ts.map +0 -0
  429. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/index.js +0 -0
  430. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/index.js.map +0 -0
  431. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/install-path-options.d.ts +0 -0
  432. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/install-path-options.d.ts.map +0 -0
  433. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/install-path-options.js +0 -0
  434. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/install-path-options.js.map +0 -0
  435. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/install-provider-options.d.ts +0 -0
  436. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/install-provider-options.d.ts.map +0 -0
  437. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/install-provider-options.js +0 -0
  438. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/install-provider-options.js.map +0 -0
  439. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/install-provider.d.ts +0 -0
  440. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/install-provider.d.ts.map +0 -0
  441. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/install-provider.js +0 -0
  442. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/install-provider.js.map +0 -0
  443. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/install-url-options.d.ts +0 -0
  444. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/install-url-options.d.ts.map +0 -0
  445. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/install-url-options.js +0 -0
  446. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/install-url-options.js.map +0 -0
  447. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-query.d.ts +0 -0
  448. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-query.d.ts.map +0 -0
  449. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-query.js +0 -0
  450. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-query.js.map +0 -0
  451. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-stores/file-store.d.ts +0 -0
  452. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-stores/file-store.d.ts.map +0 -0
  453. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-stores/file-store.js +0 -0
  454. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-stores/file-store.js.map +0 -0
  455. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-stores/index.d.ts +0 -0
  456. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-stores/index.d.ts.map +0 -0
  457. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-stores/index.js +0 -0
  458. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-stores/index.js.map +0 -0
  459. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-stores/interface.d.ts +0 -0
  460. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-stores/interface.d.ts.map +0 -0
  461. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-stores/interface.js +0 -0
  462. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-stores/interface.js.map +0 -0
  463. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-stores/memory-store.d.ts +0 -0
  464. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-stores/memory-store.d.ts.map +0 -0
  465. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-stores/memory-store.js +0 -0
  466. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation-stores/memory-store.js.map +0 -0
  467. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation.d.ts +0 -0
  468. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation.d.ts.map +0 -0
  469. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation.js +0 -0
  470. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/installation.js.map +0 -0
  471. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/logger.d.ts +0 -0
  472. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/logger.d.ts.map +0 -0
  473. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/logger.js +0 -0
  474. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/logger.js.map +0 -0
  475. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/state-stores/clear-state-store.d.ts +0 -0
  476. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/state-stores/clear-state-store.d.ts.map +0 -0
  477. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/state-stores/clear-state-store.js +0 -0
  478. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/state-stores/clear-state-store.js.map +0 -0
  479. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/state-stores/file-state-store.d.ts +0 -0
  480. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/state-stores/file-state-store.d.ts.map +0 -0
  481. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/state-stores/file-state-store.js +0 -0
  482. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/state-stores/file-state-store.js.map +0 -0
  483. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/state-stores/index.d.ts +0 -0
  484. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/state-stores/index.d.ts.map +0 -0
  485. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/state-stores/index.js +0 -0
  486. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/state-stores/index.js.map +0 -0
  487. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/state-stores/interface.d.ts +0 -0
  488. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/state-stores/interface.d.ts.map +0 -0
  489. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/state-stores/interface.js +0 -0
  490. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/dist/state-stores/interface.js.map +0 -0
  491. /package/node_modules/@slack/{oauth → bolt/node_modules/@slack/oauth}/package.json +0 -0
  492. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/jsonwebtoken/LICENSE +0 -0
  493. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/jsonwebtoken/README.md +0 -0
  494. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/jsonwebtoken/index.d.ts +0 -0
  495. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/jsonwebtoken/package.json +0 -0
  496. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/ms/LICENSE +0 -0
  497. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/ms/README.md +0 -0
  498. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/ms/index.d.ts +0 -0
  499. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/ms/package.json +0 -0
  500. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/LICENSE +0 -0
  501. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/README.md +0 -0
  502. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/assert/strict.d.ts +0 -0
  503. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/assert.d.ts +0 -0
  504. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/async_hooks.d.ts +0 -0
  505. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/buffer.buffer.d.ts +0 -0
  506. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/buffer.d.ts +0 -0
  507. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/child_process.d.ts +0 -0
  508. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/cluster.d.ts +0 -0
  509. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/console.d.ts +0 -0
  510. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/constants.d.ts +0 -0
  511. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/crypto.d.ts +0 -0
  512. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/dgram.d.ts +0 -0
  513. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/diagnostics_channel.d.ts +0 -0
  514. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/dns/promises.d.ts +0 -0
  515. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/dns.d.ts +0 -0
  516. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/domain.d.ts +0 -0
  517. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/events.d.ts +0 -0
  518. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/ffi.d.ts +0 -0
  519. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/fs/promises.d.ts +0 -0
  520. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/fs.d.ts +0 -0
  521. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/globals.d.ts +0 -0
  522. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/globals.typedarray.d.ts +0 -0
  523. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/http.d.ts +0 -0
  524. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/http2.d.ts +0 -0
  525. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/https.d.ts +0 -0
  526. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/index.d.ts +0 -0
  527. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/inspector/promises.d.ts +0 -0
  528. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/inspector.d.ts +0 -0
  529. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/inspector.generated.d.ts +0 -0
  530. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/module.d.ts +0 -0
  531. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/net.d.ts +0 -0
  532. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/os.d.ts +0 -0
  533. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/package.json +0 -0
  534. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/path/posix.d.ts +0 -0
  535. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/path/win32.d.ts +0 -0
  536. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/path.d.ts +0 -0
  537. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/perf_hooks.d.ts +0 -0
  538. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/process.d.ts +0 -0
  539. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/punycode.d.ts +0 -0
  540. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/querystring.d.ts +0 -0
  541. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/quic.d.ts +0 -0
  542. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/readline/promises.d.ts +0 -0
  543. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/readline.d.ts +0 -0
  544. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/repl.d.ts +0 -0
  545. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/sea.d.ts +0 -0
  546. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/sqlite.d.ts +0 -0
  547. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/stream/consumers.d.ts +0 -0
  548. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/stream/iter.d.ts +0 -0
  549. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/stream/promises.d.ts +0 -0
  550. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/stream/web.d.ts +0 -0
  551. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/stream.d.ts +0 -0
  552. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/string_decoder.d.ts +0 -0
  553. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/test/reporters.d.ts +0 -0
  554. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/test.d.ts +0 -0
  555. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/timers/promises.d.ts +0 -0
  556. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/timers.d.ts +0 -0
  557. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/tls.d.ts +0 -0
  558. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/trace_events.d.ts +0 -0
  559. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/ts5.6/buffer.buffer.d.ts +0 -0
  560. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/ts5.6/compatibility/float16array.d.ts +0 -0
  561. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/ts5.6/globals.typedarray.d.ts +0 -0
  562. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/ts5.6/index.d.ts +0 -0
  563. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/ts5.7/compatibility/float16array.d.ts +0 -0
  564. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/ts5.7/index.d.ts +0 -0
  565. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/tty.d.ts +0 -0
  566. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/url.d.ts +0 -0
  567. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/util/types.d.ts +0 -0
  568. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/util.d.ts +0 -0
  569. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/v8.d.ts +0 -0
  570. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/vm.d.ts +0 -0
  571. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/wasi.d.ts +0 -0
  572. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/web-globals/abortcontroller.d.ts +0 -0
  573. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/web-globals/blob.d.ts +0 -0
  574. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/web-globals/console.d.ts +0 -0
  575. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/web-globals/crypto.d.ts +0 -0
  576. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/web-globals/domexception.d.ts +0 -0
  577. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/web-globals/encoding.d.ts +0 -0
  578. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/web-globals/events.d.ts +0 -0
  579. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/web-globals/fetch.d.ts +0 -0
  580. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/web-globals/importmeta.d.ts +0 -0
  581. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/web-globals/messaging.d.ts +0 -0
  582. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/web-globals/navigator.d.ts +0 -0
  583. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/web-globals/performance.d.ts +0 -0
  584. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/web-globals/storage.d.ts +0 -0
  585. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/web-globals/streams.d.ts +0 -0
  586. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/web-globals/timers.d.ts +0 -0
  587. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/web-globals/url.d.ts +0 -0
  588. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/worker_threads.d.ts +0 -0
  589. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/zlib/iter.d.ts +0 -0
  590. /package/node_modules/{@types → @slack/bolt/node_modules/@types}/node/zlib.d.ts +0 -0
  591. /package/node_modules/{accepts → @slack/bolt/node_modules/accepts}/HISTORY.md +0 -0
  592. /package/node_modules/{accepts → @slack/bolt/node_modules/accepts}/LICENSE +0 -0
  593. /package/node_modules/{accepts → @slack/bolt/node_modules/accepts}/README.md +0 -0
  594. /package/node_modules/{accepts → @slack/bolt/node_modules/accepts}/index.js +0 -0
  595. /package/node_modules/{accepts → @slack/bolt/node_modules/accepts}/package.json +0 -0
  596. /package/node_modules/{body-parser → @slack/bolt/node_modules/body-parser}/LICENSE +0 -0
  597. /package/node_modules/{body-parser → @slack/bolt/node_modules/body-parser}/README.md +0 -0
  598. /package/node_modules/{body-parser → @slack/bolt/node_modules/body-parser}/index.js +0 -0
  599. /package/node_modules/{body-parser → @slack/bolt/node_modules/body-parser}/lib/read.js +0 -0
  600. /package/node_modules/{body-parser → @slack/bolt/node_modules/body-parser}/lib/types/json.js +0 -0
  601. /package/node_modules/{body-parser → @slack/bolt/node_modules/body-parser}/lib/types/raw.js +0 -0
  602. /package/node_modules/{body-parser → @slack/bolt/node_modules/body-parser}/lib/types/text.js +0 -0
  603. /package/node_modules/{body-parser → @slack/bolt/node_modules/body-parser}/lib/types/urlencoded.js +0 -0
  604. /package/node_modules/{body-parser → @slack/bolt/node_modules/body-parser}/lib/utils.js +0 -0
  605. /package/node_modules/{body-parser → @slack/bolt/node_modules/body-parser}/node_modules/content-type/LICENSE +0 -0
  606. /package/node_modules/{body-parser → @slack/bolt/node_modules/body-parser}/node_modules/content-type/README.md +0 -0
  607. /package/node_modules/{body-parser → @slack/bolt/node_modules/body-parser}/node_modules/content-type/dist/index.d.ts +0 -0
  608. /package/node_modules/{body-parser → @slack/bolt/node_modules/body-parser}/node_modules/content-type/dist/index.js +0 -0
  609. /package/node_modules/{body-parser → @slack/bolt/node_modules/body-parser}/node_modules/content-type/dist/index.js.map +0 -0
  610. /package/node_modules/{body-parser → @slack/bolt/node_modules/body-parser}/node_modules/content-type/package.json +0 -0
  611. /package/node_modules/{body-parser → @slack/bolt/node_modules/body-parser}/package.json +0 -0
  612. /package/node_modules/{buffer-equal-constant-time → @slack/bolt/node_modules/buffer-equal-constant-time}/.npmignore +0 -0
  613. /package/node_modules/{buffer-equal-constant-time → @slack/bolt/node_modules/buffer-equal-constant-time}/.travis.yml +0 -0
  614. /package/node_modules/{buffer-equal-constant-time → @slack/bolt/node_modules/buffer-equal-constant-time}/LICENSE.txt +0 -0
  615. /package/node_modules/{buffer-equal-constant-time → @slack/bolt/node_modules/buffer-equal-constant-time}/README.md +0 -0
  616. /package/node_modules/{buffer-equal-constant-time → @slack/bolt/node_modules/buffer-equal-constant-time}/index.js +0 -0
  617. /package/node_modules/{buffer-equal-constant-time → @slack/bolt/node_modules/buffer-equal-constant-time}/package.json +0 -0
  618. /package/node_modules/{buffer-equal-constant-time → @slack/bolt/node_modules/buffer-equal-constant-time}/test.js +0 -0
  619. /package/node_modules/{bytes → @slack/bolt/node_modules/bytes}/History.md +0 -0
  620. /package/node_modules/{bytes → @slack/bolt/node_modules/bytes}/LICENSE +0 -0
  621. /package/node_modules/{bytes → @slack/bolt/node_modules/bytes}/Readme.md +0 -0
  622. /package/node_modules/{bytes → @slack/bolt/node_modules/bytes}/index.js +0 -0
  623. /package/node_modules/{bytes → @slack/bolt/node_modules/bytes}/package.json +0 -0
  624. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/.eslintrc +0 -0
  625. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/.github/FUNDING.yml +0 -0
  626. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/.nycrc +0 -0
  627. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/CHANGELOG.md +0 -0
  628. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/LICENSE +0 -0
  629. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/README.md +0 -0
  630. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/actualApply.d.ts +0 -0
  631. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/actualApply.js +0 -0
  632. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/applyBind.d.ts +0 -0
  633. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/applyBind.js +0 -0
  634. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/functionApply.d.ts +0 -0
  635. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/functionApply.js +0 -0
  636. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/functionCall.d.ts +0 -0
  637. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/functionCall.js +0 -0
  638. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/index.d.ts +0 -0
  639. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/index.js +0 -0
  640. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/package.json +0 -0
  641. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/reflectApply.d.ts +0 -0
  642. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/reflectApply.js +0 -0
  643. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/test/index.js +0 -0
  644. /package/node_modules/{call-bind-apply-helpers → @slack/bolt/node_modules/call-bind-apply-helpers}/tsconfig.json +0 -0
  645. /package/node_modules/{call-bound → @slack/bolt/node_modules/call-bound}/.eslintrc +0 -0
  646. /package/node_modules/{call-bound → @slack/bolt/node_modules/call-bound}/.github/FUNDING.yml +0 -0
  647. /package/node_modules/{call-bound → @slack/bolt/node_modules/call-bound}/.nycrc +0 -0
  648. /package/node_modules/{call-bound → @slack/bolt/node_modules/call-bound}/CHANGELOG.md +0 -0
  649. /package/node_modules/{call-bound → @slack/bolt/node_modules/call-bound}/LICENSE +0 -0
  650. /package/node_modules/{call-bound → @slack/bolt/node_modules/call-bound}/README.md +0 -0
  651. /package/node_modules/{call-bound → @slack/bolt/node_modules/call-bound}/index.d.ts +0 -0
  652. /package/node_modules/{call-bound → @slack/bolt/node_modules/call-bound}/index.js +0 -0
  653. /package/node_modules/{call-bound → @slack/bolt/node_modules/call-bound}/package.json +0 -0
  654. /package/node_modules/{call-bound → @slack/bolt/node_modules/call-bound}/test/index.js +0 -0
  655. /package/node_modules/{call-bound → @slack/bolt/node_modules/call-bound}/tsconfig.json +0 -0
  656. /package/node_modules/{content-disposition → @slack/bolt/node_modules/content-disposition}/LICENSE +0 -0
  657. /package/node_modules/{content-disposition → @slack/bolt/node_modules/content-disposition}/README.md +0 -0
  658. /package/node_modules/{content-disposition → @slack/bolt/node_modules/content-disposition}/index.js +0 -0
  659. /package/node_modules/{content-disposition → @slack/bolt/node_modules/content-disposition}/package.json +0 -0
  660. /package/node_modules/{content-type → @slack/bolt/node_modules/content-type}/HISTORY.md +0 -0
  661. /package/node_modules/{content-type → @slack/bolt/node_modules/content-type}/LICENSE +0 -0
  662. /package/node_modules/{content-type → @slack/bolt/node_modules/content-type}/README.md +0 -0
  663. /package/node_modules/{content-type → @slack/bolt/node_modules/content-type}/index.js +0 -0
  664. /package/node_modules/{content-type → @slack/bolt/node_modules/content-type}/package.json +0 -0
  665. /package/node_modules/{cookie → @slack/bolt/node_modules/cookie}/LICENSE +0 -0
  666. /package/node_modules/{cookie → @slack/bolt/node_modules/cookie}/README.md +0 -0
  667. /package/node_modules/{cookie → @slack/bolt/node_modules/cookie}/SECURITY.md +0 -0
  668. /package/node_modules/{cookie → @slack/bolt/node_modules/cookie}/index.js +0 -0
  669. /package/node_modules/{cookie → @slack/bolt/node_modules/cookie}/package.json +0 -0
  670. /package/node_modules/{cookie-signature → @slack/bolt/node_modules/cookie-signature}/History.md +0 -0
  671. /package/node_modules/{cookie-signature → @slack/bolt/node_modules/cookie-signature}/LICENSE +0 -0
  672. /package/node_modules/{cookie-signature → @slack/bolt/node_modules/cookie-signature}/Readme.md +0 -0
  673. /package/node_modules/{cookie-signature → @slack/bolt/node_modules/cookie-signature}/index.js +0 -0
  674. /package/node_modules/{cookie-signature → @slack/bolt/node_modules/cookie-signature}/package.json +0 -0
  675. /package/node_modules/{debug → @slack/bolt/node_modules/debug}/LICENSE +0 -0
  676. /package/node_modules/{debug → @slack/bolt/node_modules/debug}/README.md +0 -0
  677. /package/node_modules/{debug → @slack/bolt/node_modules/debug}/package.json +0 -0
  678. /package/node_modules/{debug → @slack/bolt/node_modules/debug}/src/browser.js +0 -0
  679. /package/node_modules/{debug → @slack/bolt/node_modules/debug}/src/common.js +0 -0
  680. /package/node_modules/{debug → @slack/bolt/node_modules/debug}/src/index.js +0 -0
  681. /package/node_modules/{debug → @slack/bolt/node_modules/debug}/src/node.js +0 -0
  682. /package/node_modules/{depd → @slack/bolt/node_modules/depd}/History.md +0 -0
  683. /package/node_modules/{depd → @slack/bolt/node_modules/depd}/LICENSE +0 -0
  684. /package/node_modules/{depd → @slack/bolt/node_modules/depd}/Readme.md +0 -0
  685. /package/node_modules/{depd → @slack/bolt/node_modules/depd}/index.js +0 -0
  686. /package/node_modules/{depd → @slack/bolt/node_modules/depd}/lib/browser/index.js +0 -0
  687. /package/node_modules/{depd → @slack/bolt/node_modules/depd}/package.json +0 -0
  688. /package/node_modules/{dunder-proto → @slack/bolt/node_modules/dunder-proto}/.eslintrc +0 -0
  689. /package/node_modules/{dunder-proto → @slack/bolt/node_modules/dunder-proto}/.github/FUNDING.yml +0 -0
  690. /package/node_modules/{dunder-proto → @slack/bolt/node_modules/dunder-proto}/.nycrc +0 -0
  691. /package/node_modules/{dunder-proto → @slack/bolt/node_modules/dunder-proto}/CHANGELOG.md +0 -0
  692. /package/node_modules/{dunder-proto → @slack/bolt/node_modules/dunder-proto}/LICENSE +0 -0
  693. /package/node_modules/{dunder-proto → @slack/bolt/node_modules/dunder-proto}/README.md +0 -0
  694. /package/node_modules/{dunder-proto → @slack/bolt/node_modules/dunder-proto}/get.d.ts +0 -0
  695. /package/node_modules/{dunder-proto → @slack/bolt/node_modules/dunder-proto}/get.js +0 -0
  696. /package/node_modules/{dunder-proto → @slack/bolt/node_modules/dunder-proto}/package.json +0 -0
  697. /package/node_modules/{dunder-proto → @slack/bolt/node_modules/dunder-proto}/set.d.ts +0 -0
  698. /package/node_modules/{dunder-proto → @slack/bolt/node_modules/dunder-proto}/set.js +0 -0
  699. /package/node_modules/{dunder-proto → @slack/bolt/node_modules/dunder-proto}/test/get.js +0 -0
  700. /package/node_modules/{dunder-proto → @slack/bolt/node_modules/dunder-proto}/test/index.js +0 -0
  701. /package/node_modules/{dunder-proto → @slack/bolt/node_modules/dunder-proto}/test/set.js +0 -0
  702. /package/node_modules/{dunder-proto → @slack/bolt/node_modules/dunder-proto}/tsconfig.json +0 -0
  703. /package/node_modules/{ecdsa-sig-formatter → @slack/bolt/node_modules/ecdsa-sig-formatter}/CODEOWNERS +0 -0
  704. /package/node_modules/{ecdsa-sig-formatter → @slack/bolt/node_modules/ecdsa-sig-formatter}/LICENSE +0 -0
  705. /package/node_modules/{ecdsa-sig-formatter → @slack/bolt/node_modules/ecdsa-sig-formatter}/README.md +0 -0
  706. /package/node_modules/{ecdsa-sig-formatter → @slack/bolt/node_modules/ecdsa-sig-formatter}/package.json +0 -0
  707. /package/node_modules/{ecdsa-sig-formatter → @slack/bolt/node_modules/ecdsa-sig-formatter}/src/ecdsa-sig-formatter.d.ts +0 -0
  708. /package/node_modules/{ecdsa-sig-formatter → @slack/bolt/node_modules/ecdsa-sig-formatter}/src/ecdsa-sig-formatter.js +0 -0
  709. /package/node_modules/{ecdsa-sig-formatter → @slack/bolt/node_modules/ecdsa-sig-formatter}/src/param-bytes-for-alg.js +0 -0
  710. /package/node_modules/{ee-first → @slack/bolt/node_modules/ee-first}/LICENSE +0 -0
  711. /package/node_modules/{ee-first → @slack/bolt/node_modules/ee-first}/README.md +0 -0
  712. /package/node_modules/{ee-first → @slack/bolt/node_modules/ee-first}/index.js +0 -0
  713. /package/node_modules/{ee-first → @slack/bolt/node_modules/ee-first}/package.json +0 -0
  714. /package/node_modules/{encodeurl → @slack/bolt/node_modules/encodeurl}/LICENSE +0 -0
  715. /package/node_modules/{encodeurl → @slack/bolt/node_modules/encodeurl}/README.md +0 -0
  716. /package/node_modules/{encodeurl → @slack/bolt/node_modules/encodeurl}/index.js +0 -0
  717. /package/node_modules/{encodeurl → @slack/bolt/node_modules/encodeurl}/package.json +0 -0
  718. /package/node_modules/{es-define-property → @slack/bolt/node_modules/es-define-property}/.eslintrc +0 -0
  719. /package/node_modules/{es-define-property → @slack/bolt/node_modules/es-define-property}/.github/FUNDING.yml +0 -0
  720. /package/node_modules/{es-define-property → @slack/bolt/node_modules/es-define-property}/.nycrc +0 -0
  721. /package/node_modules/{es-define-property → @slack/bolt/node_modules/es-define-property}/CHANGELOG.md +0 -0
  722. /package/node_modules/{es-define-property → @slack/bolt/node_modules/es-define-property}/LICENSE +0 -0
  723. /package/node_modules/{es-define-property → @slack/bolt/node_modules/es-define-property}/README.md +0 -0
  724. /package/node_modules/{es-define-property → @slack/bolt/node_modules/es-define-property}/index.d.ts +0 -0
  725. /package/node_modules/{es-define-property → @slack/bolt/node_modules/es-define-property}/index.js +0 -0
  726. /package/node_modules/{es-define-property → @slack/bolt/node_modules/es-define-property}/package.json +0 -0
  727. /package/node_modules/{es-define-property → @slack/bolt/node_modules/es-define-property}/test/index.js +0 -0
  728. /package/node_modules/{es-define-property → @slack/bolt/node_modules/es-define-property}/tsconfig.json +0 -0
  729. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/.eslintrc +0 -0
  730. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/.github/FUNDING.yml +0 -0
  731. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/CHANGELOG.md +0 -0
  732. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/LICENSE +0 -0
  733. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/README.md +0 -0
  734. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/eval.d.ts +0 -0
  735. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/eval.js +0 -0
  736. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/index.d.ts +0 -0
  737. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/index.js +0 -0
  738. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/package.json +0 -0
  739. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/range.d.ts +0 -0
  740. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/range.js +0 -0
  741. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/ref.d.ts +0 -0
  742. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/ref.js +0 -0
  743. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/syntax.d.ts +0 -0
  744. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/syntax.js +0 -0
  745. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/test/index.js +0 -0
  746. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/tsconfig.json +0 -0
  747. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/type.d.ts +0 -0
  748. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/type.js +0 -0
  749. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/uri.d.ts +0 -0
  750. /package/node_modules/{es-errors → @slack/bolt/node_modules/es-errors}/uri.js +0 -0
  751. /package/node_modules/{es-object-atoms → @slack/bolt/node_modules/es-object-atoms}/.eslintrc +0 -0
  752. /package/node_modules/{es-object-atoms → @slack/bolt/node_modules/es-object-atoms}/.github/FUNDING.yml +0 -0
  753. /package/node_modules/{es-object-atoms → @slack/bolt/node_modules/es-object-atoms}/CHANGELOG.md +0 -0
  754. /package/node_modules/{es-object-atoms → @slack/bolt/node_modules/es-object-atoms}/LICENSE +0 -0
  755. /package/node_modules/{es-object-atoms → @slack/bolt/node_modules/es-object-atoms}/README.md +0 -0
  756. /package/node_modules/{es-object-atoms → @slack/bolt/node_modules/es-object-atoms}/RequireObjectCoercible.d.ts +0 -0
  757. /package/node_modules/{es-object-atoms → @slack/bolt/node_modules/es-object-atoms}/RequireObjectCoercible.js +0 -0
  758. /package/node_modules/{es-object-atoms → @slack/bolt/node_modules/es-object-atoms}/ToObject.d.ts +0 -0
  759. /package/node_modules/{es-object-atoms → @slack/bolt/node_modules/es-object-atoms}/ToObject.js +0 -0
  760. /package/node_modules/{es-object-atoms → @slack/bolt/node_modules/es-object-atoms}/index.d.ts +0 -0
  761. /package/node_modules/{es-object-atoms → @slack/bolt/node_modules/es-object-atoms}/index.js +0 -0
  762. /package/node_modules/{es-object-atoms → @slack/bolt/node_modules/es-object-atoms}/isObject.d.ts +0 -0
  763. /package/node_modules/{es-object-atoms → @slack/bolt/node_modules/es-object-atoms}/isObject.js +0 -0
  764. /package/node_modules/{es-object-atoms → @slack/bolt/node_modules/es-object-atoms}/package.json +0 -0
  765. /package/node_modules/{es-object-atoms → @slack/bolt/node_modules/es-object-atoms}/test/index.js +0 -0
  766. /package/node_modules/{es-object-atoms → @slack/bolt/node_modules/es-object-atoms}/tsconfig.json +0 -0
  767. /package/node_modules/{escape-html → @slack/bolt/node_modules/escape-html}/LICENSE +0 -0
  768. /package/node_modules/{escape-html → @slack/bolt/node_modules/escape-html}/Readme.md +0 -0
  769. /package/node_modules/{escape-html → @slack/bolt/node_modules/escape-html}/index.js +0 -0
  770. /package/node_modules/{escape-html → @slack/bolt/node_modules/escape-html}/package.json +0 -0
  771. /package/node_modules/{etag → @slack/bolt/node_modules/etag}/HISTORY.md +0 -0
  772. /package/node_modules/{etag → @slack/bolt/node_modules/etag}/LICENSE +0 -0
  773. /package/node_modules/{etag → @slack/bolt/node_modules/etag}/README.md +0 -0
  774. /package/node_modules/{etag → @slack/bolt/node_modules/etag}/index.js +0 -0
  775. /package/node_modules/{etag → @slack/bolt/node_modules/etag}/package.json +0 -0
  776. /package/node_modules/{express → @slack/bolt/node_modules/express}/LICENSE +0 -0
  777. /package/node_modules/{express → @slack/bolt/node_modules/express}/Readme.md +0 -0
  778. /package/node_modules/{express → @slack/bolt/node_modules/express}/index.js +0 -0
  779. /package/node_modules/{express → @slack/bolt/node_modules/express}/lib/application.js +0 -0
  780. /package/node_modules/{express → @slack/bolt/node_modules/express}/lib/express.js +0 -0
  781. /package/node_modules/{express → @slack/bolt/node_modules/express}/lib/request.js +0 -0
  782. /package/node_modules/{express → @slack/bolt/node_modules/express}/lib/response.js +0 -0
  783. /package/node_modules/{express → @slack/bolt/node_modules/express}/lib/utils.js +0 -0
  784. /package/node_modules/{express → @slack/bolt/node_modules/express}/lib/view.js +0 -0
  785. /package/node_modules/{express → @slack/bolt/node_modules/express}/package.json +0 -0
  786. /package/node_modules/{finalhandler → @slack/bolt/node_modules/finalhandler}/HISTORY.md +0 -0
  787. /package/node_modules/{finalhandler → @slack/bolt/node_modules/finalhandler}/LICENSE +0 -0
  788. /package/node_modules/{finalhandler → @slack/bolt/node_modules/finalhandler}/README.md +0 -0
  789. /package/node_modules/{finalhandler → @slack/bolt/node_modules/finalhandler}/index.js +0 -0
  790. /package/node_modules/{finalhandler → @slack/bolt/node_modules/finalhandler}/package.json +0 -0
  791. /package/node_modules/{forwarded → @slack/bolt/node_modules/forwarded}/HISTORY.md +0 -0
  792. /package/node_modules/{forwarded → @slack/bolt/node_modules/forwarded}/LICENSE +0 -0
  793. /package/node_modules/{forwarded → @slack/bolt/node_modules/forwarded}/README.md +0 -0
  794. /package/node_modules/{forwarded → @slack/bolt/node_modules/forwarded}/index.js +0 -0
  795. /package/node_modules/{forwarded → @slack/bolt/node_modules/forwarded}/package.json +0 -0
  796. /package/node_modules/{fresh → @slack/bolt/node_modules/fresh}/HISTORY.md +0 -0
  797. /package/node_modules/{fresh → @slack/bolt/node_modules/fresh}/LICENSE +0 -0
  798. /package/node_modules/{fresh → @slack/bolt/node_modules/fresh}/README.md +0 -0
  799. /package/node_modules/{fresh → @slack/bolt/node_modules/fresh}/index.js +0 -0
  800. /package/node_modules/{fresh → @slack/bolt/node_modules/fresh}/package.json +0 -0
  801. /package/node_modules/{function-bind → @slack/bolt/node_modules/function-bind}/.eslintrc +0 -0
  802. /package/node_modules/{function-bind → @slack/bolt/node_modules/function-bind}/.github/FUNDING.yml +0 -0
  803. /package/node_modules/{function-bind → @slack/bolt/node_modules/function-bind}/.github/SECURITY.md +0 -0
  804. /package/node_modules/{function-bind → @slack/bolt/node_modules/function-bind}/.nycrc +0 -0
  805. /package/node_modules/{function-bind → @slack/bolt/node_modules/function-bind}/CHANGELOG.md +0 -0
  806. /package/node_modules/{function-bind → @slack/bolt/node_modules/function-bind}/LICENSE +0 -0
  807. /package/node_modules/{function-bind → @slack/bolt/node_modules/function-bind}/README.md +0 -0
  808. /package/node_modules/{function-bind → @slack/bolt/node_modules/function-bind}/implementation.js +0 -0
  809. /package/node_modules/{function-bind → @slack/bolt/node_modules/function-bind}/index.js +0 -0
  810. /package/node_modules/{function-bind → @slack/bolt/node_modules/function-bind}/package.json +0 -0
  811. /package/node_modules/{function-bind → @slack/bolt/node_modules/function-bind}/test/.eslintrc +0 -0
  812. /package/node_modules/{function-bind → @slack/bolt/node_modules/function-bind}/test/index.js +0 -0
  813. /package/node_modules/{get-intrinsic → @slack/bolt/node_modules/get-intrinsic}/.eslintrc +0 -0
  814. /package/node_modules/{get-intrinsic → @slack/bolt/node_modules/get-intrinsic}/.github/FUNDING.yml +0 -0
  815. /package/node_modules/{get-intrinsic → @slack/bolt/node_modules/get-intrinsic}/.nycrc +0 -0
  816. /package/node_modules/{get-intrinsic → @slack/bolt/node_modules/get-intrinsic}/CHANGELOG.md +0 -0
  817. /package/node_modules/{get-intrinsic → @slack/bolt/node_modules/get-intrinsic}/LICENSE +0 -0
  818. /package/node_modules/{get-intrinsic → @slack/bolt/node_modules/get-intrinsic}/README.md +0 -0
  819. /package/node_modules/{get-intrinsic → @slack/bolt/node_modules/get-intrinsic}/index.js +0 -0
  820. /package/node_modules/{get-intrinsic → @slack/bolt/node_modules/get-intrinsic}/package.json +0 -0
  821. /package/node_modules/{get-intrinsic → @slack/bolt/node_modules/get-intrinsic}/test/GetIntrinsic.js +0 -0
  822. /package/node_modules/{get-proto → @slack/bolt/node_modules/get-proto}/.eslintrc +0 -0
  823. /package/node_modules/{get-proto → @slack/bolt/node_modules/get-proto}/.github/FUNDING.yml +0 -0
  824. /package/node_modules/{get-proto → @slack/bolt/node_modules/get-proto}/.nycrc +0 -0
  825. /package/node_modules/{get-proto → @slack/bolt/node_modules/get-proto}/CHANGELOG.md +0 -0
  826. /package/node_modules/{get-proto → @slack/bolt/node_modules/get-proto}/LICENSE +0 -0
  827. /package/node_modules/{get-proto → @slack/bolt/node_modules/get-proto}/Object.getPrototypeOf.d.ts +0 -0
  828. /package/node_modules/{get-proto → @slack/bolt/node_modules/get-proto}/Object.getPrototypeOf.js +0 -0
  829. /package/node_modules/{get-proto → @slack/bolt/node_modules/get-proto}/README.md +0 -0
  830. /package/node_modules/{get-proto → @slack/bolt/node_modules/get-proto}/Reflect.getPrototypeOf.d.ts +0 -0
  831. /package/node_modules/{get-proto → @slack/bolt/node_modules/get-proto}/Reflect.getPrototypeOf.js +0 -0
  832. /package/node_modules/{get-proto → @slack/bolt/node_modules/get-proto}/index.d.ts +0 -0
  833. /package/node_modules/{get-proto → @slack/bolt/node_modules/get-proto}/index.js +0 -0
  834. /package/node_modules/{get-proto → @slack/bolt/node_modules/get-proto}/package.json +0 -0
  835. /package/node_modules/{get-proto → @slack/bolt/node_modules/get-proto}/test/index.js +0 -0
  836. /package/node_modules/{get-proto → @slack/bolt/node_modules/get-proto}/tsconfig.json +0 -0
  837. /package/node_modules/{gopd → @slack/bolt/node_modules/gopd}/.eslintrc +0 -0
  838. /package/node_modules/{gopd → @slack/bolt/node_modules/gopd}/.github/FUNDING.yml +0 -0
  839. /package/node_modules/{gopd → @slack/bolt/node_modules/gopd}/CHANGELOG.md +0 -0
  840. /package/node_modules/{gopd → @slack/bolt/node_modules/gopd}/LICENSE +0 -0
  841. /package/node_modules/{gopd → @slack/bolt/node_modules/gopd}/README.md +0 -0
  842. /package/node_modules/{gopd → @slack/bolt/node_modules/gopd}/gOPD.d.ts +0 -0
  843. /package/node_modules/{gopd → @slack/bolt/node_modules/gopd}/gOPD.js +0 -0
  844. /package/node_modules/{gopd → @slack/bolt/node_modules/gopd}/index.d.ts +0 -0
  845. /package/node_modules/{gopd → @slack/bolt/node_modules/gopd}/index.js +0 -0
  846. /package/node_modules/{gopd → @slack/bolt/node_modules/gopd}/package.json +0 -0
  847. /package/node_modules/{gopd → @slack/bolt/node_modules/gopd}/test/index.js +0 -0
  848. /package/node_modules/{gopd → @slack/bolt/node_modules/gopd}/tsconfig.json +0 -0
  849. /package/node_modules/{has-symbols → @slack/bolt/node_modules/has-symbols}/.eslintrc +0 -0
  850. /package/node_modules/{has-symbols → @slack/bolt/node_modules/has-symbols}/.github/FUNDING.yml +0 -0
  851. /package/node_modules/{has-symbols → @slack/bolt/node_modules/has-symbols}/.nycrc +0 -0
  852. /package/node_modules/{has-symbols → @slack/bolt/node_modules/has-symbols}/CHANGELOG.md +0 -0
  853. /package/node_modules/{has-symbols → @slack/bolt/node_modules/has-symbols}/LICENSE +0 -0
  854. /package/node_modules/{has-symbols → @slack/bolt/node_modules/has-symbols}/README.md +0 -0
  855. /package/node_modules/{has-symbols → @slack/bolt/node_modules/has-symbols}/index.d.ts +0 -0
  856. /package/node_modules/{has-symbols → @slack/bolt/node_modules/has-symbols}/index.js +0 -0
  857. /package/node_modules/{has-symbols → @slack/bolt/node_modules/has-symbols}/package.json +0 -0
  858. /package/node_modules/{has-symbols → @slack/bolt/node_modules/has-symbols}/shams.d.ts +0 -0
  859. /package/node_modules/{has-symbols → @slack/bolt/node_modules/has-symbols}/shams.js +0 -0
  860. /package/node_modules/{has-symbols → @slack/bolt/node_modules/has-symbols}/test/index.js +0 -0
  861. /package/node_modules/{has-symbols → @slack/bolt/node_modules/has-symbols}/test/shams/core-js.js +0 -0
  862. /package/node_modules/{has-symbols → @slack/bolt/node_modules/has-symbols}/test/shams/get-own-property-symbols.js +0 -0
  863. /package/node_modules/{has-symbols → @slack/bolt/node_modules/has-symbols}/test/tests.js +0 -0
  864. /package/node_modules/{has-symbols → @slack/bolt/node_modules/has-symbols}/tsconfig.json +0 -0
  865. /package/node_modules/{hasown → @slack/bolt/node_modules/hasown}/.github/FUNDING.yml +0 -0
  866. /package/node_modules/{hasown → @slack/bolt/node_modules/hasown}/.nycrc +0 -0
  867. /package/node_modules/{hasown → @slack/bolt/node_modules/hasown}/CHANGELOG.md +0 -0
  868. /package/node_modules/{hasown → @slack/bolt/node_modules/hasown}/LICENSE +0 -0
  869. /package/node_modules/{hasown → @slack/bolt/node_modules/hasown}/README.md +0 -0
  870. /package/node_modules/{hasown → @slack/bolt/node_modules/hasown}/eslint.config.mjs +0 -0
  871. /package/node_modules/{hasown → @slack/bolt/node_modules/hasown}/index.d.ts +0 -0
  872. /package/node_modules/{hasown → @slack/bolt/node_modules/hasown}/index.js +0 -0
  873. /package/node_modules/{hasown → @slack/bolt/node_modules/hasown}/package.json +0 -0
  874. /package/node_modules/{hasown → @slack/bolt/node_modules/hasown}/tsconfig.json +0 -0
  875. /package/node_modules/{http-errors → @slack/bolt/node_modules/http-errors}/HISTORY.md +0 -0
  876. /package/node_modules/{http-errors → @slack/bolt/node_modules/http-errors}/LICENSE +0 -0
  877. /package/node_modules/{http-errors → @slack/bolt/node_modules/http-errors}/README.md +0 -0
  878. /package/node_modules/{http-errors → @slack/bolt/node_modules/http-errors}/index.js +0 -0
  879. /package/node_modules/{http-errors → @slack/bolt/node_modules/http-errors}/package.json +0 -0
  880. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/LICENSE +0 -0
  881. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/README.md +0 -0
  882. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/dbcs-codec.js +0 -0
  883. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/dbcs-data.js +0 -0
  884. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/index.js +0 -0
  885. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/internal.js +0 -0
  886. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/sbcs-codec.js +0 -0
  887. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/sbcs-data-generated.js +0 -0
  888. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/sbcs-data.js +0 -0
  889. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/tables/big5-added.json +0 -0
  890. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/tables/cp936.json +0 -0
  891. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/tables/cp949.json +0 -0
  892. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/tables/cp950.json +0 -0
  893. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/tables/eucjp.json +0 -0
  894. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/tables/gb18030-ranges.json +0 -0
  895. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/tables/gbk-added.json +0 -0
  896. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/tables/shiftjis.json +0 -0
  897. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/utf16.js +0 -0
  898. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/utf32.js +0 -0
  899. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/encodings/utf7.js +0 -0
  900. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/lib/bom-handling.js +0 -0
  901. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/lib/helpers/merge-exports.js +0 -0
  902. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/lib/index.d.ts +0 -0
  903. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/lib/index.js +0 -0
  904. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/lib/streams.js +0 -0
  905. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/package.json +0 -0
  906. /package/node_modules/{iconv-lite → @slack/bolt/node_modules/iconv-lite}/types/encodings.d.ts +0 -0
  907. /package/node_modules/{inherits → @slack/bolt/node_modules/inherits}/LICENSE +0 -0
  908. /package/node_modules/{inherits → @slack/bolt/node_modules/inherits}/README.md +0 -0
  909. /package/node_modules/{inherits → @slack/bolt/node_modules/inherits}/inherits.js +0 -0
  910. /package/node_modules/{inherits → @slack/bolt/node_modules/inherits}/inherits_browser.js +0 -0
  911. /package/node_modules/{inherits → @slack/bolt/node_modules/inherits}/package.json +0 -0
  912. /package/node_modules/{ipaddr.js → @slack/bolt/node_modules/ipaddr.js}/LICENSE +0 -0
  913. /package/node_modules/{ipaddr.js → @slack/bolt/node_modules/ipaddr.js}/README.md +0 -0
  914. /package/node_modules/{ipaddr.js → @slack/bolt/node_modules/ipaddr.js}/ipaddr.min.js +0 -0
  915. /package/node_modules/{ipaddr.js → @slack/bolt/node_modules/ipaddr.js}/lib/ipaddr.js +0 -0
  916. /package/node_modules/{ipaddr.js → @slack/bolt/node_modules/ipaddr.js}/lib/ipaddr.js.d.ts +0 -0
  917. /package/node_modules/{ipaddr.js → @slack/bolt/node_modules/ipaddr.js}/package.json +0 -0
  918. /package/node_modules/{is-promise → @slack/bolt/node_modules/is-promise}/LICENSE +0 -0
  919. /package/node_modules/{is-promise → @slack/bolt/node_modules/is-promise}/index.d.ts +0 -0
  920. /package/node_modules/{is-promise → @slack/bolt/node_modules/is-promise}/index.js +0 -0
  921. /package/node_modules/{is-promise → @slack/bolt/node_modules/is-promise}/index.mjs +0 -0
  922. /package/node_modules/{is-promise → @slack/bolt/node_modules/is-promise}/package.json +0 -0
  923. /package/node_modules/{is-promise → @slack/bolt/node_modules/is-promise}/readme.md +0 -0
  924. /package/node_modules/{jsonwebtoken → @slack/bolt/node_modules/jsonwebtoken}/LICENSE +0 -0
  925. /package/node_modules/{jsonwebtoken → @slack/bolt/node_modules/jsonwebtoken}/README.md +0 -0
  926. /package/node_modules/{jsonwebtoken → @slack/bolt/node_modules/jsonwebtoken}/decode.js +0 -0
  927. /package/node_modules/{jsonwebtoken → @slack/bolt/node_modules/jsonwebtoken}/index.js +0 -0
  928. /package/node_modules/{jsonwebtoken → @slack/bolt/node_modules/jsonwebtoken}/lib/JsonWebTokenError.js +0 -0
  929. /package/node_modules/{jsonwebtoken → @slack/bolt/node_modules/jsonwebtoken}/lib/NotBeforeError.js +0 -0
  930. /package/node_modules/{jsonwebtoken → @slack/bolt/node_modules/jsonwebtoken}/lib/TokenExpiredError.js +0 -0
  931. /package/node_modules/{jsonwebtoken → @slack/bolt/node_modules/jsonwebtoken}/lib/asymmetricKeyDetailsSupported.js +0 -0
  932. /package/node_modules/{jsonwebtoken → @slack/bolt/node_modules/jsonwebtoken}/lib/psSupported.js +0 -0
  933. /package/node_modules/{jsonwebtoken → @slack/bolt/node_modules/jsonwebtoken}/lib/rsaPssKeyDetailsSupported.js +0 -0
  934. /package/node_modules/{jsonwebtoken → @slack/bolt/node_modules/jsonwebtoken}/lib/timespan.js +0 -0
  935. /package/node_modules/{jsonwebtoken → @slack/bolt/node_modules/jsonwebtoken}/lib/validateAsymmetricKey.js +0 -0
  936. /package/node_modules/{jsonwebtoken → @slack/bolt/node_modules/jsonwebtoken}/package.json +0 -0
  937. /package/node_modules/{jsonwebtoken → @slack/bolt/node_modules/jsonwebtoken}/sign.js +0 -0
  938. /package/node_modules/{jsonwebtoken → @slack/bolt/node_modules/jsonwebtoken}/verify.js +0 -0
  939. /package/node_modules/{jwa → @slack/bolt/node_modules/jwa}/LICENSE +0 -0
  940. /package/node_modules/{jwa → @slack/bolt/node_modules/jwa}/README.md +0 -0
  941. /package/node_modules/{jwa → @slack/bolt/node_modules/jwa}/index.js +0 -0
  942. /package/node_modules/{jwa → @slack/bolt/node_modules/jwa}/opslevel.yml +0 -0
  943. /package/node_modules/{jwa → @slack/bolt/node_modules/jwa}/package.json +0 -0
  944. /package/node_modules/{jws → @slack/bolt/node_modules/jws}/CHANGELOG.md +0 -0
  945. /package/node_modules/{jws → @slack/bolt/node_modules/jws}/LICENSE +0 -0
  946. /package/node_modules/{jws → @slack/bolt/node_modules/jws}/index.js +0 -0
  947. /package/node_modules/{jws → @slack/bolt/node_modules/jws}/lib/data-stream.js +0 -0
  948. /package/node_modules/{jws → @slack/bolt/node_modules/jws}/lib/sign-stream.js +0 -0
  949. /package/node_modules/{jws → @slack/bolt/node_modules/jws}/lib/tostring.js +0 -0
  950. /package/node_modules/{jws → @slack/bolt/node_modules/jws}/lib/verify-stream.js +0 -0
  951. /package/node_modules/{jws → @slack/bolt/node_modules/jws}/opslevel.yml +0 -0
  952. /package/node_modules/{jws → @slack/bolt/node_modules/jws}/package.json +0 -0
  953. /package/node_modules/{jws → @slack/bolt/node_modules/jws}/readme.md +0 -0
  954. /package/node_modules/{lodash.includes → @slack/bolt/node_modules/lodash.includes}/LICENSE +0 -0
  955. /package/node_modules/{lodash.includes → @slack/bolt/node_modules/lodash.includes}/README.md +0 -0
  956. /package/node_modules/{lodash.includes → @slack/bolt/node_modules/lodash.includes}/index.js +0 -0
  957. /package/node_modules/{lodash.includes → @slack/bolt/node_modules/lodash.includes}/package.json +0 -0
  958. /package/node_modules/{lodash.isboolean → @slack/bolt/node_modules/lodash.isboolean}/LICENSE +0 -0
  959. /package/node_modules/{lodash.isboolean → @slack/bolt/node_modules/lodash.isboolean}/README.md +0 -0
  960. /package/node_modules/{lodash.isboolean → @slack/bolt/node_modules/lodash.isboolean}/index.js +0 -0
  961. /package/node_modules/{lodash.isboolean → @slack/bolt/node_modules/lodash.isboolean}/package.json +0 -0
  962. /package/node_modules/{lodash.isinteger → @slack/bolt/node_modules/lodash.isinteger}/LICENSE +0 -0
  963. /package/node_modules/{lodash.isinteger → @slack/bolt/node_modules/lodash.isinteger}/README.md +0 -0
  964. /package/node_modules/{lodash.isinteger → @slack/bolt/node_modules/lodash.isinteger}/index.js +0 -0
  965. /package/node_modules/{lodash.isinteger → @slack/bolt/node_modules/lodash.isinteger}/package.json +0 -0
  966. /package/node_modules/{lodash.isnumber → @slack/bolt/node_modules/lodash.isnumber}/LICENSE +0 -0
  967. /package/node_modules/{lodash.isnumber → @slack/bolt/node_modules/lodash.isnumber}/README.md +0 -0
  968. /package/node_modules/{lodash.isnumber → @slack/bolt/node_modules/lodash.isnumber}/index.js +0 -0
  969. /package/node_modules/{lodash.isnumber → @slack/bolt/node_modules/lodash.isnumber}/package.json +0 -0
  970. /package/node_modules/{lodash.isplainobject → @slack/bolt/node_modules/lodash.isplainobject}/LICENSE +0 -0
  971. /package/node_modules/{lodash.isplainobject → @slack/bolt/node_modules/lodash.isplainobject}/README.md +0 -0
  972. /package/node_modules/{lodash.isplainobject → @slack/bolt/node_modules/lodash.isplainobject}/index.js +0 -0
  973. /package/node_modules/{lodash.isplainobject → @slack/bolt/node_modules/lodash.isplainobject}/package.json +0 -0
  974. /package/node_modules/{lodash.isstring → @slack/bolt/node_modules/lodash.isstring}/LICENSE +0 -0
  975. /package/node_modules/{lodash.isstring → @slack/bolt/node_modules/lodash.isstring}/README.md +0 -0
  976. /package/node_modules/{lodash.isstring → @slack/bolt/node_modules/lodash.isstring}/index.js +0 -0
  977. /package/node_modules/{lodash.isstring → @slack/bolt/node_modules/lodash.isstring}/package.json +0 -0
  978. /package/node_modules/{lodash.once → @slack/bolt/node_modules/lodash.once}/LICENSE +0 -0
  979. /package/node_modules/{lodash.once → @slack/bolt/node_modules/lodash.once}/README.md +0 -0
  980. /package/node_modules/{lodash.once → @slack/bolt/node_modules/lodash.once}/index.js +0 -0
  981. /package/node_modules/{lodash.once → @slack/bolt/node_modules/lodash.once}/package.json +0 -0
  982. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/.eslintrc +0 -0
  983. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/.github/FUNDING.yml +0 -0
  984. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/CHANGELOG.md +0 -0
  985. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/LICENSE +0 -0
  986. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/README.md +0 -0
  987. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/abs.d.ts +0 -0
  988. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/abs.js +0 -0
  989. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/constants/maxArrayLength.d.ts +0 -0
  990. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/constants/maxArrayLength.js +0 -0
  991. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/constants/maxSafeInteger.d.ts +0 -0
  992. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/constants/maxSafeInteger.js +0 -0
  993. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/constants/maxValue.d.ts +0 -0
  994. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/constants/maxValue.js +0 -0
  995. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/floor.d.ts +0 -0
  996. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/floor.js +0 -0
  997. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/isFinite.d.ts +0 -0
  998. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/isFinite.js +0 -0
  999. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/isInteger.d.ts +0 -0
  1000. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/isInteger.js +0 -0
  1001. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/isNaN.d.ts +0 -0
  1002. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/isNaN.js +0 -0
  1003. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/isNegativeZero.d.ts +0 -0
  1004. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/isNegativeZero.js +0 -0
  1005. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/max.d.ts +0 -0
  1006. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/max.js +0 -0
  1007. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/min.d.ts +0 -0
  1008. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/min.js +0 -0
  1009. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/mod.d.ts +0 -0
  1010. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/mod.js +0 -0
  1011. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/package.json +0 -0
  1012. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/pow.d.ts +0 -0
  1013. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/pow.js +0 -0
  1014. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/round.d.ts +0 -0
  1015. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/round.js +0 -0
  1016. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/sign.d.ts +0 -0
  1017. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/sign.js +0 -0
  1018. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/test/index.js +0 -0
  1019. /package/node_modules/{math-intrinsics → @slack/bolt/node_modules/math-intrinsics}/tsconfig.json +0 -0
  1020. /package/node_modules/{media-typer → @slack/bolt/node_modules/media-typer}/HISTORY.md +0 -0
  1021. /package/node_modules/{media-typer → @slack/bolt/node_modules/media-typer}/LICENSE +0 -0
  1022. /package/node_modules/{merge-descriptors → @slack/bolt/node_modules/merge-descriptors}/index.d.ts +0 -0
  1023. /package/node_modules/{merge-descriptors → @slack/bolt/node_modules/merge-descriptors}/index.js +0 -0
  1024. /package/node_modules/{merge-descriptors → @slack/bolt/node_modules/merge-descriptors}/license +0 -0
  1025. /package/node_modules/{merge-descriptors → @slack/bolt/node_modules/merge-descriptors}/package.json +0 -0
  1026. /package/node_modules/{merge-descriptors → @slack/bolt/node_modules/merge-descriptors}/readme.md +0 -0
  1027. /package/node_modules/{mime-db → @slack/bolt/node_modules/mime-db}/HISTORY.md +0 -0
  1028. /package/node_modules/{mime-db → @slack/bolt/node_modules/mime-db}/LICENSE +0 -0
  1029. /package/node_modules/{mime-db → @slack/bolt/node_modules/mime-db}/README.md +0 -0
  1030. /package/node_modules/{mime-db → @slack/bolt/node_modules/mime-db}/db.json +0 -0
  1031. /package/node_modules/{mime-db → @slack/bolt/node_modules/mime-db}/index.js +0 -0
  1032. /package/node_modules/{mime-db → @slack/bolt/node_modules/mime-db}/package.json +0 -0
  1033. /package/node_modules/{mime-types → @slack/bolt/node_modules/mime-types}/HISTORY.md +0 -0
  1034. /package/node_modules/{mime-types → @slack/bolt/node_modules/mime-types}/LICENSE +0 -0
  1035. /package/node_modules/{mime-types → @slack/bolt/node_modules/mime-types}/README.md +0 -0
  1036. /package/node_modules/{mime-types → @slack/bolt/node_modules/mime-types}/index.js +0 -0
  1037. /package/node_modules/{mime-types → @slack/bolt/node_modules/mime-types}/mimeScore.js +0 -0
  1038. /package/node_modules/{mime-types → @slack/bolt/node_modules/mime-types}/package.json +0 -0
  1039. /package/node_modules/{ms → @slack/bolt/node_modules/ms}/index.js +0 -0
  1040. /package/node_modules/{ms → @slack/bolt/node_modules/ms}/license.md +0 -0
  1041. /package/node_modules/{ms → @slack/bolt/node_modules/ms}/package.json +0 -0
  1042. /package/node_modules/{ms → @slack/bolt/node_modules/ms}/readme.md +0 -0
  1043. /package/node_modules/{negotiator → @slack/bolt/node_modules/negotiator}/HISTORY.md +0 -0
  1044. /package/node_modules/{negotiator → @slack/bolt/node_modules/negotiator}/LICENSE +0 -0
  1045. /package/node_modules/{negotiator → @slack/bolt/node_modules/negotiator}/README.md +0 -0
  1046. /package/node_modules/{negotiator → @slack/bolt/node_modules/negotiator}/index.js +0 -0
  1047. /package/node_modules/{negotiator → @slack/bolt/node_modules/negotiator}/lib/charset.js +0 -0
  1048. /package/node_modules/{negotiator → @slack/bolt/node_modules/negotiator}/lib/encoding.js +0 -0
  1049. /package/node_modules/{negotiator → @slack/bolt/node_modules/negotiator}/lib/language.js +0 -0
  1050. /package/node_modules/{negotiator → @slack/bolt/node_modules/negotiator}/lib/mediaType.js +0 -0
  1051. /package/node_modules/{negotiator → @slack/bolt/node_modules/negotiator}/package.json +0 -0
  1052. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/.eslintrc +0 -0
  1053. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/.github/FUNDING.yml +0 -0
  1054. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/.nycrc +0 -0
  1055. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/CHANGELOG.md +0 -0
  1056. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/LICENSE +0 -0
  1057. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/example/all.js +0 -0
  1058. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/example/circular.js +0 -0
  1059. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/example/fn.js +0 -0
  1060. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/example/inspect.js +0 -0
  1061. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/index.js +0 -0
  1062. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/package-support.json +0 -0
  1063. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/package.json +0 -0
  1064. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/readme.markdown +0 -0
  1065. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/bigint.js +0 -0
  1066. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/browser/dom.js +0 -0
  1067. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/circular.js +0 -0
  1068. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/deep.js +0 -0
  1069. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/element.js +0 -0
  1070. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/err.js +0 -0
  1071. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/fakes.js +0 -0
  1072. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/fn.js +0 -0
  1073. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/global.js +0 -0
  1074. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/has.js +0 -0
  1075. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/holes.js +0 -0
  1076. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/indent-option.js +0 -0
  1077. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/inspect.js +0 -0
  1078. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/lowbyte.js +0 -0
  1079. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/number.js +0 -0
  1080. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/quoteStyle.js +0 -0
  1081. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/toStringTag.js +0 -0
  1082. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/undef.js +0 -0
  1083. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test/values.js +0 -0
  1084. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/test-core-js.js +0 -0
  1085. /package/node_modules/{object-inspect → @slack/bolt/node_modules/object-inspect}/util.inspect.js +0 -0
  1086. /package/node_modules/{on-finished → @slack/bolt/node_modules/on-finished}/HISTORY.md +0 -0
  1087. /package/node_modules/{on-finished → @slack/bolt/node_modules/on-finished}/LICENSE +0 -0
  1088. /package/node_modules/{on-finished → @slack/bolt/node_modules/on-finished}/README.md +0 -0
  1089. /package/node_modules/{on-finished → @slack/bolt/node_modules/on-finished}/index.js +0 -0
  1090. /package/node_modules/{on-finished → @slack/bolt/node_modules/on-finished}/package.json +0 -0
  1091. /package/node_modules/{once → @slack/bolt/node_modules/once}/LICENSE +0 -0
  1092. /package/node_modules/{once → @slack/bolt/node_modules/once}/README.md +0 -0
  1093. /package/node_modules/{once → @slack/bolt/node_modules/once}/once.js +0 -0
  1094. /package/node_modules/{once → @slack/bolt/node_modules/once}/package.json +0 -0
  1095. /package/node_modules/{parseurl → @slack/bolt/node_modules/parseurl}/HISTORY.md +0 -0
  1096. /package/node_modules/{parseurl → @slack/bolt/node_modules/parseurl}/LICENSE +0 -0
  1097. /package/node_modules/{parseurl → @slack/bolt/node_modules/parseurl}/README.md +0 -0
  1098. /package/node_modules/{parseurl → @slack/bolt/node_modules/parseurl}/index.js +0 -0
  1099. /package/node_modules/{parseurl → @slack/bolt/node_modules/parseurl}/package.json +0 -0
  1100. /package/node_modules/{path-to-regexp → @slack/bolt/node_modules/path-to-regexp}/LICENSE +0 -0
  1101. /package/node_modules/{path-to-regexp → @slack/bolt/node_modules/path-to-regexp}/Readme.md +0 -0
  1102. /package/node_modules/{path-to-regexp → @slack/bolt/node_modules/path-to-regexp}/dist/index.d.ts +0 -0
  1103. /package/node_modules/{path-to-regexp → @slack/bolt/node_modules/path-to-regexp}/dist/index.js +0 -0
  1104. /package/node_modules/{path-to-regexp → @slack/bolt/node_modules/path-to-regexp}/dist/index.js.map +0 -0
  1105. /package/node_modules/{path-to-regexp → @slack/bolt/node_modules/path-to-regexp}/package.json +0 -0
  1106. /package/node_modules/{proxy-addr → @slack/bolt/node_modules/proxy-addr}/HISTORY.md +0 -0
  1107. /package/node_modules/{proxy-addr → @slack/bolt/node_modules/proxy-addr}/LICENSE +0 -0
  1108. /package/node_modules/{proxy-addr → @slack/bolt/node_modules/proxy-addr}/README.md +0 -0
  1109. /package/node_modules/{proxy-addr → @slack/bolt/node_modules/proxy-addr}/index.js +0 -0
  1110. /package/node_modules/{proxy-addr → @slack/bolt/node_modules/proxy-addr}/package.json +0 -0
  1111. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/.editorconfig +0 -0
  1112. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/.github/FUNDING.yml +0 -0
  1113. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/.github/SECURITY.md +0 -0
  1114. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/.github/THREAT_MODEL.md +0 -0
  1115. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/.nycrc +0 -0
  1116. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/CHANGELOG.md +0 -0
  1117. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/LICENSE.md +0 -0
  1118. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/README.md +0 -0
  1119. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/dist/qs.js +0 -0
  1120. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/eslint.config.mjs +0 -0
  1121. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/lib/formats.js +0 -0
  1122. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/lib/index.js +0 -0
  1123. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/lib/parse.js +0 -0
  1124. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/lib/stringify.js +0 -0
  1125. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/lib/utils.js +0 -0
  1126. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/package.json +0 -0
  1127. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/test/empty-keys-cases.js +0 -0
  1128. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/test/parse.js +0 -0
  1129. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/test/stringify.js +0 -0
  1130. /package/node_modules/{qs → @slack/bolt/node_modules/qs}/test/utils.js +0 -0
  1131. /package/node_modules/{range-parser → @slack/bolt/node_modules/range-parser}/HISTORY.md +0 -0
  1132. /package/node_modules/{range-parser → @slack/bolt/node_modules/range-parser}/LICENSE +0 -0
  1133. /package/node_modules/{range-parser → @slack/bolt/node_modules/range-parser}/README.md +0 -0
  1134. /package/node_modules/{range-parser → @slack/bolt/node_modules/range-parser}/index.js +0 -0
  1135. /package/node_modules/{range-parser → @slack/bolt/node_modules/range-parser}/package.json +0 -0
  1136. /package/node_modules/{raw-body → @slack/bolt/node_modules/raw-body}/LICENSE +0 -0
  1137. /package/node_modules/{raw-body → @slack/bolt/node_modules/raw-body}/README.md +0 -0
  1138. /package/node_modules/{raw-body → @slack/bolt/node_modules/raw-body}/index.d.ts +0 -0
  1139. /package/node_modules/{raw-body → @slack/bolt/node_modules/raw-body}/index.js +0 -0
  1140. /package/node_modules/{raw-body → @slack/bolt/node_modules/raw-body}/package.json +0 -0
  1141. /package/node_modules/{router → @slack/bolt/node_modules/router}/HISTORY.md +0 -0
  1142. /package/node_modules/{router → @slack/bolt/node_modules/router}/LICENSE +0 -0
  1143. /package/node_modules/{router → @slack/bolt/node_modules/router}/README.md +0 -0
  1144. /package/node_modules/{router → @slack/bolt/node_modules/router}/index.js +0 -0
  1145. /package/node_modules/{router → @slack/bolt/node_modules/router}/lib/layer.js +0 -0
  1146. /package/node_modules/{router → @slack/bolt/node_modules/router}/lib/route.js +0 -0
  1147. /package/node_modules/{router → @slack/bolt/node_modules/router}/package.json +0 -0
  1148. /package/node_modules/{safe-buffer → @slack/bolt/node_modules/safe-buffer}/LICENSE +0 -0
  1149. /package/node_modules/{safe-buffer → @slack/bolt/node_modules/safe-buffer}/README.md +0 -0
  1150. /package/node_modules/{safe-buffer → @slack/bolt/node_modules/safe-buffer}/index.d.ts +0 -0
  1151. /package/node_modules/{safe-buffer → @slack/bolt/node_modules/safe-buffer}/index.js +0 -0
  1152. /package/node_modules/{safe-buffer → @slack/bolt/node_modules/safe-buffer}/package.json +0 -0
  1153. /package/node_modules/{safer-buffer → @slack/bolt/node_modules/safer-buffer}/LICENSE +0 -0
  1154. /package/node_modules/{safer-buffer → @slack/bolt/node_modules/safer-buffer}/Porting-Buffer.md +0 -0
  1155. /package/node_modules/{safer-buffer → @slack/bolt/node_modules/safer-buffer}/Readme.md +0 -0
  1156. /package/node_modules/{safer-buffer → @slack/bolt/node_modules/safer-buffer}/dangerous.js +0 -0
  1157. /package/node_modules/{safer-buffer → @slack/bolt/node_modules/safer-buffer}/package.json +0 -0
  1158. /package/node_modules/{safer-buffer → @slack/bolt/node_modules/safer-buffer}/safer.js +0 -0
  1159. /package/node_modules/{safer-buffer → @slack/bolt/node_modules/safer-buffer}/tests.js +0 -0
  1160. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/LICENSE +0 -0
  1161. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/README.md +0 -0
  1162. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/bin/semver.js +0 -0
  1163. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/classes/comparator.js +0 -0
  1164. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/classes/index.js +0 -0
  1165. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/classes/range.js +0 -0
  1166. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/classes/semver.js +0 -0
  1167. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/clean.js +0 -0
  1168. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/cmp.js +0 -0
  1169. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/coerce.js +0 -0
  1170. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/compare-build.js +0 -0
  1171. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/compare-loose.js +0 -0
  1172. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/compare.js +0 -0
  1173. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/diff.js +0 -0
  1174. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/eq.js +0 -0
  1175. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/gt.js +0 -0
  1176. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/gte.js +0 -0
  1177. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/inc.js +0 -0
  1178. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/lt.js +0 -0
  1179. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/lte.js +0 -0
  1180. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/major.js +0 -0
  1181. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/minor.js +0 -0
  1182. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/neq.js +0 -0
  1183. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/parse.js +0 -0
  1184. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/patch.js +0 -0
  1185. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/prerelease.js +0 -0
  1186. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/rcompare.js +0 -0
  1187. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/rsort.js +0 -0
  1188. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/satisfies.js +0 -0
  1189. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/sort.js +0 -0
  1190. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/truncate.js +0 -0
  1191. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/functions/valid.js +0 -0
  1192. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/index.js +0 -0
  1193. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/internal/constants.js +0 -0
  1194. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/internal/debug.js +0 -0
  1195. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/internal/identifiers.js +0 -0
  1196. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/internal/lrucache.js +0 -0
  1197. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/internal/parse-options.js +0 -0
  1198. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/internal/re.js +0 -0
  1199. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/package.json +0 -0
  1200. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/preload.js +0 -0
  1201. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/range.bnf +0 -0
  1202. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/ranges/gtr.js +0 -0
  1203. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/ranges/intersects.js +0 -0
  1204. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/ranges/ltr.js +0 -0
  1205. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/ranges/max-satisfying.js +0 -0
  1206. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/ranges/min-satisfying.js +0 -0
  1207. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/ranges/min-version.js +0 -0
  1208. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/ranges/outside.js +0 -0
  1209. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/ranges/simplify.js +0 -0
  1210. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/ranges/subset.js +0 -0
  1211. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/ranges/to-comparators.js +0 -0
  1212. /package/node_modules/{semver → @slack/bolt/node_modules/semver}/ranges/valid.js +0 -0
  1213. /package/node_modules/{send → @slack/bolt/node_modules/send}/LICENSE +0 -0
  1214. /package/node_modules/{send → @slack/bolt/node_modules/send}/README.md +0 -0
  1215. /package/node_modules/{send → @slack/bolt/node_modules/send}/index.js +0 -0
  1216. /package/node_modules/{send → @slack/bolt/node_modules/send}/package.json +0 -0
  1217. /package/node_modules/{serve-static → @slack/bolt/node_modules/serve-static}/LICENSE +0 -0
  1218. /package/node_modules/{serve-static → @slack/bolt/node_modules/serve-static}/README.md +0 -0
  1219. /package/node_modules/{serve-static → @slack/bolt/node_modules/serve-static}/index.js +0 -0
  1220. /package/node_modules/{serve-static → @slack/bolt/node_modules/serve-static}/package.json +0 -0
  1221. /package/node_modules/{setprototypeof → @slack/bolt/node_modules/setprototypeof}/LICENSE +0 -0
  1222. /package/node_modules/{setprototypeof → @slack/bolt/node_modules/setprototypeof}/README.md +0 -0
  1223. /package/node_modules/{setprototypeof → @slack/bolt/node_modules/setprototypeof}/index.d.ts +0 -0
  1224. /package/node_modules/{setprototypeof → @slack/bolt/node_modules/setprototypeof}/index.js +0 -0
  1225. /package/node_modules/{setprototypeof → @slack/bolt/node_modules/setprototypeof}/package.json +0 -0
  1226. /package/node_modules/{setprototypeof → @slack/bolt/node_modules/setprototypeof}/test/index.js +0 -0
  1227. /package/node_modules/{side-channel → @slack/bolt/node_modules/side-channel}/.editorconfig +0 -0
  1228. /package/node_modules/{side-channel → @slack/bolt/node_modules/side-channel}/.eslintrc +0 -0
  1229. /package/node_modules/{side-channel → @slack/bolt/node_modules/side-channel}/.github/FUNDING.yml +0 -0
  1230. /package/node_modules/{side-channel → @slack/bolt/node_modules/side-channel}/.nycrc +0 -0
  1231. /package/node_modules/{side-channel → @slack/bolt/node_modules/side-channel}/CHANGELOG.md +0 -0
  1232. /package/node_modules/{side-channel → @slack/bolt/node_modules/side-channel}/LICENSE +0 -0
  1233. /package/node_modules/{side-channel → @slack/bolt/node_modules/side-channel}/README.md +0 -0
  1234. /package/node_modules/{side-channel → @slack/bolt/node_modules/side-channel}/index.d.ts +0 -0
  1235. /package/node_modules/{side-channel → @slack/bolt/node_modules/side-channel}/index.js +0 -0
  1236. /package/node_modules/{side-channel → @slack/bolt/node_modules/side-channel}/package.json +0 -0
  1237. /package/node_modules/{side-channel → @slack/bolt/node_modules/side-channel}/test/index.js +0 -0
  1238. /package/node_modules/{side-channel → @slack/bolt/node_modules/side-channel}/tsconfig.json +0 -0
  1239. /package/node_modules/{side-channel-list → @slack/bolt/node_modules/side-channel-list}/.editorconfig +0 -0
  1240. /package/node_modules/{side-channel-list → @slack/bolt/node_modules/side-channel-list}/.eslintrc +0 -0
  1241. /package/node_modules/{side-channel-list → @slack/bolt/node_modules/side-channel-list}/.github/FUNDING.yml +0 -0
  1242. /package/node_modules/{side-channel-list → @slack/bolt/node_modules/side-channel-list}/.nycrc +0 -0
  1243. /package/node_modules/{side-channel-list → @slack/bolt/node_modules/side-channel-list}/CHANGELOG.md +0 -0
  1244. /package/node_modules/{side-channel-list → @slack/bolt/node_modules/side-channel-list}/LICENSE +0 -0
  1245. /package/node_modules/{side-channel-list → @slack/bolt/node_modules/side-channel-list}/README.md +0 -0
  1246. /package/node_modules/{side-channel-list → @slack/bolt/node_modules/side-channel-list}/index.d.ts +0 -0
  1247. /package/node_modules/{side-channel-list → @slack/bolt/node_modules/side-channel-list}/index.js +0 -0
  1248. /package/node_modules/{side-channel-list → @slack/bolt/node_modules/side-channel-list}/list.d.ts +0 -0
  1249. /package/node_modules/{side-channel-list → @slack/bolt/node_modules/side-channel-list}/package.json +0 -0
  1250. /package/node_modules/{side-channel-list → @slack/bolt/node_modules/side-channel-list}/test/index.js +0 -0
  1251. /package/node_modules/{side-channel-list → @slack/bolt/node_modules/side-channel-list}/tsconfig.json +0 -0
  1252. /package/node_modules/{side-channel-map → @slack/bolt/node_modules/side-channel-map}/.editorconfig +0 -0
  1253. /package/node_modules/{side-channel-map → @slack/bolt/node_modules/side-channel-map}/.eslintrc +0 -0
  1254. /package/node_modules/{side-channel-map → @slack/bolt/node_modules/side-channel-map}/.github/FUNDING.yml +0 -0
  1255. /package/node_modules/{side-channel-map → @slack/bolt/node_modules/side-channel-map}/.nycrc +0 -0
  1256. /package/node_modules/{side-channel-map → @slack/bolt/node_modules/side-channel-map}/CHANGELOG.md +0 -0
  1257. /package/node_modules/{side-channel-map → @slack/bolt/node_modules/side-channel-map}/LICENSE +0 -0
  1258. /package/node_modules/{side-channel-map → @slack/bolt/node_modules/side-channel-map}/README.md +0 -0
  1259. /package/node_modules/{side-channel-map → @slack/bolt/node_modules/side-channel-map}/index.d.ts +0 -0
  1260. /package/node_modules/{side-channel-map → @slack/bolt/node_modules/side-channel-map}/index.js +0 -0
  1261. /package/node_modules/{side-channel-map → @slack/bolt/node_modules/side-channel-map}/package.json +0 -0
  1262. /package/node_modules/{side-channel-map → @slack/bolt/node_modules/side-channel-map}/test/index.js +0 -0
  1263. /package/node_modules/{side-channel-map → @slack/bolt/node_modules/side-channel-map}/tsconfig.json +0 -0
  1264. /package/node_modules/{side-channel-weakmap → @slack/bolt/node_modules/side-channel-weakmap}/.editorconfig +0 -0
  1265. /package/node_modules/{side-channel-weakmap → @slack/bolt/node_modules/side-channel-weakmap}/.eslintrc +0 -0
  1266. /package/node_modules/{side-channel-weakmap → @slack/bolt/node_modules/side-channel-weakmap}/.github/FUNDING.yml +0 -0
  1267. /package/node_modules/{side-channel-weakmap → @slack/bolt/node_modules/side-channel-weakmap}/.nycrc +0 -0
  1268. /package/node_modules/{side-channel-weakmap → @slack/bolt/node_modules/side-channel-weakmap}/CHANGELOG.md +0 -0
  1269. /package/node_modules/{side-channel-weakmap → @slack/bolt/node_modules/side-channel-weakmap}/LICENSE +0 -0
  1270. /package/node_modules/{side-channel-weakmap → @slack/bolt/node_modules/side-channel-weakmap}/README.md +0 -0
  1271. /package/node_modules/{side-channel-weakmap → @slack/bolt/node_modules/side-channel-weakmap}/index.d.ts +0 -0
  1272. /package/node_modules/{side-channel-weakmap → @slack/bolt/node_modules/side-channel-weakmap}/index.js +0 -0
  1273. /package/node_modules/{side-channel-weakmap → @slack/bolt/node_modules/side-channel-weakmap}/package.json +0 -0
  1274. /package/node_modules/{side-channel-weakmap → @slack/bolt/node_modules/side-channel-weakmap}/test/index.js +0 -0
  1275. /package/node_modules/{side-channel-weakmap → @slack/bolt/node_modules/side-channel-weakmap}/tsconfig.json +0 -0
  1276. /package/node_modules/{statuses → @slack/bolt/node_modules/statuses}/HISTORY.md +0 -0
  1277. /package/node_modules/{statuses → @slack/bolt/node_modules/statuses}/LICENSE +0 -0
  1278. /package/node_modules/{statuses → @slack/bolt/node_modules/statuses}/README.md +0 -0
  1279. /package/node_modules/{statuses → @slack/bolt/node_modules/statuses}/codes.json +0 -0
  1280. /package/node_modules/{statuses → @slack/bolt/node_modules/statuses}/index.js +0 -0
  1281. /package/node_modules/{statuses → @slack/bolt/node_modules/statuses}/package.json +0 -0
  1282. /package/node_modules/{toidentifier → @slack/bolt/node_modules/toidentifier}/HISTORY.md +0 -0
  1283. /package/node_modules/{toidentifier → @slack/bolt/node_modules/toidentifier}/LICENSE +0 -0
  1284. /package/node_modules/{toidentifier → @slack/bolt/node_modules/toidentifier}/README.md +0 -0
  1285. /package/node_modules/{toidentifier → @slack/bolt/node_modules/toidentifier}/index.js +0 -0
  1286. /package/node_modules/{toidentifier → @slack/bolt/node_modules/toidentifier}/package.json +0 -0
  1287. /package/node_modules/{tsscmp → @slack/bolt/node_modules/tsscmp}/.travis.yml +0 -0
  1288. /package/node_modules/{tsscmp → @slack/bolt/node_modules/tsscmp}/LICENSE +0 -0
  1289. /package/node_modules/{tsscmp → @slack/bolt/node_modules/tsscmp}/README.md +0 -0
  1290. /package/node_modules/{tsscmp → @slack/bolt/node_modules/tsscmp}/appveyor.yml +0 -0
  1291. /package/node_modules/{tsscmp → @slack/bolt/node_modules/tsscmp}/lib/index.js +0 -0
  1292. /package/node_modules/{tsscmp → @slack/bolt/node_modules/tsscmp}/package.json +0 -0
  1293. /package/node_modules/{tsscmp → @slack/bolt/node_modules/tsscmp}/test/benchmark/index.js +0 -0
  1294. /package/node_modules/{tsscmp → @slack/bolt/node_modules/tsscmp}/test/unit/index.js +0 -0
  1295. /package/node_modules/{type-is → @slack/bolt/node_modules/type-is}/HISTORY.md +0 -0
  1296. /package/node_modules/{type-is → @slack/bolt/node_modules/type-is}/LICENSE +0 -0
  1297. /package/node_modules/{type-is → @slack/bolt/node_modules/type-is}/README.md +0 -0
  1298. /package/node_modules/{type-is → @slack/bolt/node_modules/type-is}/index.js +0 -0
  1299. /package/node_modules/{type-is → @slack/bolt/node_modules/type-is}/node_modules/content-type/LICENSE +0 -0
  1300. /package/node_modules/{type-is → @slack/bolt/node_modules/type-is}/node_modules/content-type/README.md +0 -0
  1301. /package/node_modules/{type-is → @slack/bolt/node_modules/type-is}/node_modules/content-type/dist/index.d.ts +0 -0
  1302. /package/node_modules/{type-is → @slack/bolt/node_modules/type-is}/node_modules/content-type/dist/index.js +0 -0
  1303. /package/node_modules/{type-is → @slack/bolt/node_modules/type-is}/node_modules/content-type/dist/index.js.map +0 -0
  1304. /package/node_modules/{type-is → @slack/bolt/node_modules/type-is}/node_modules/content-type/package.json +0 -0
  1305. /package/node_modules/{type-is → @slack/bolt/node_modules/type-is}/package.json +0 -0
  1306. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/LICENSE +0 -0
  1307. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/README.md +0 -0
  1308. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/agent.d.ts +0 -0
  1309. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/api.d.ts +0 -0
  1310. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/balanced-pool.d.ts +0 -0
  1311. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/cache-interceptor.d.ts +0 -0
  1312. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/cache.d.ts +0 -0
  1313. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/client-stats.d.ts +0 -0
  1314. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/client.d.ts +0 -0
  1315. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/connector.d.ts +0 -0
  1316. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/content-type.d.ts +0 -0
  1317. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/cookies.d.ts +0 -0
  1318. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/diagnostics-channel.d.ts +0 -0
  1319. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/dispatcher.d.ts +0 -0
  1320. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/dispatcher1-wrapper.d.ts +0 -0
  1321. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/env-http-proxy-agent.d.ts +0 -0
  1322. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/errors.d.ts +0 -0
  1323. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/eventsource.d.ts +0 -0
  1324. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/fetch.d.ts +0 -0
  1325. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/formdata.d.ts +0 -0
  1326. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/global-dispatcher.d.ts +0 -0
  1327. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/global-origin.d.ts +0 -0
  1328. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/h2c-client.d.ts +0 -0
  1329. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/handlers.d.ts +0 -0
  1330. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/header.d.ts +0 -0
  1331. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/index.d.ts +0 -0
  1332. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/interceptors.d.ts +0 -0
  1333. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/mock-agent.d.ts +0 -0
  1334. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/mock-call-history.d.ts +0 -0
  1335. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/mock-client.d.ts +0 -0
  1336. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/mock-errors.d.ts +0 -0
  1337. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/mock-interceptor.d.ts +0 -0
  1338. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/mock-pool.d.ts +0 -0
  1339. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/package.json +0 -0
  1340. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/patch.d.ts +0 -0
  1341. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/pool-stats.d.ts +0 -0
  1342. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/pool.d.ts +0 -0
  1343. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/proxy-agent.d.ts +0 -0
  1344. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/readable.d.ts +0 -0
  1345. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/retry-agent.d.ts +0 -0
  1346. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/retry-handler.d.ts +0 -0
  1347. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/round-robin-pool.d.ts +0 -0
  1348. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/snapshot-agent.d.ts +0 -0
  1349. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/socks5-proxy-agent.d.ts +0 -0
  1350. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/util.d.ts +0 -0
  1351. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/utility.d.ts +0 -0
  1352. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/webidl.d.ts +0 -0
  1353. /package/node_modules/{undici-types → @slack/bolt/node_modules/undici-types}/websocket.d.ts +0 -0
  1354. /package/node_modules/{unpipe → @slack/bolt/node_modules/unpipe}/HISTORY.md +0 -0
  1355. /package/node_modules/{unpipe → @slack/bolt/node_modules/unpipe}/LICENSE +0 -0
  1356. /package/node_modules/{unpipe → @slack/bolt/node_modules/unpipe}/README.md +0 -0
  1357. /package/node_modules/{unpipe → @slack/bolt/node_modules/unpipe}/index.js +0 -0
  1358. /package/node_modules/{unpipe → @slack/bolt/node_modules/unpipe}/package.json +0 -0
  1359. /package/node_modules/{vary → @slack/bolt/node_modules/vary}/HISTORY.md +0 -0
  1360. /package/node_modules/{vary → @slack/bolt/node_modules/vary}/LICENSE +0 -0
  1361. /package/node_modules/{vary → @slack/bolt/node_modules/vary}/README.md +0 -0
  1362. /package/node_modules/{vary → @slack/bolt/node_modules/vary}/index.js +0 -0
  1363. /package/node_modules/{vary → @slack/bolt/node_modules/vary}/package.json +0 -0
  1364. /package/node_modules/{wrappy → @slack/bolt/node_modules/wrappy}/LICENSE +0 -0
  1365. /package/node_modules/{wrappy → @slack/bolt/node_modules/wrappy}/README.md +0 -0
  1366. /package/node_modules/{wrappy → @slack/bolt/node_modules/wrappy}/package.json +0 -0
  1367. /package/node_modules/{wrappy → @slack/bolt/node_modules/wrappy}/wrappy.js +0 -0
  1368. /package/node_modules/{eventemitter3 → @slack/socket-mode/node_modules/eventemitter3}/LICENSE +0 -0
  1369. /package/node_modules/{eventemitter3 → @slack/socket-mode/node_modules/eventemitter3}/README.md +0 -0
  1370. /package/node_modules/{eventemitter3 → @slack/socket-mode/node_modules/eventemitter3}/dist/eventemitter3.esm.js +0 -0
  1371. /package/node_modules/{eventemitter3 → @slack/socket-mode/node_modules/eventemitter3}/dist/eventemitter3.esm.min.js +0 -0
  1372. /package/node_modules/{eventemitter3 → @slack/socket-mode/node_modules/eventemitter3}/dist/eventemitter3.esm.min.js.map +0 -0
  1373. /package/node_modules/{eventemitter3 → @slack/socket-mode/node_modules/eventemitter3}/dist/eventemitter3.umd.js +0 -0
  1374. /package/node_modules/{eventemitter3 → @slack/socket-mode/node_modules/eventemitter3}/dist/eventemitter3.umd.min.js +0 -0
  1375. /package/node_modules/{eventemitter3 → @slack/socket-mode/node_modules/eventemitter3}/dist/eventemitter3.umd.min.js.map +0 -0
  1376. /package/node_modules/{eventemitter3 → @slack/socket-mode/node_modules/eventemitter3}/index.d.ts +0 -0
  1377. /package/node_modules/{eventemitter3 → @slack/socket-mode/node_modules/eventemitter3}/index.js +0 -0
  1378. /package/node_modules/{eventemitter3 → @slack/socket-mode/node_modules/eventemitter3}/index.mjs +0 -0
  1379. /package/node_modules/{eventemitter3 → @slack/socket-mode/node_modules/eventemitter3}/package.json +0 -0
  1380. /package/node_modules/{@types → @slack/web-api/node_modules/@types}/retry/LICENSE +0 -0
  1381. /package/node_modules/{@types → @slack/web-api/node_modules/@types}/retry/README.md +0 -0
  1382. /package/node_modules/{@types → @slack/web-api/node_modules/@types}/retry/index.d.ts +0 -0
  1383. /package/node_modules/{@types → @slack/web-api/node_modules/@types}/retry/package.json +0 -0
  1384. /package/node_modules/{p-queue → @slack/web-api}/node_modules/eventemitter3/LICENSE +0 -0
  1385. /package/node_modules/{p-queue → @slack/web-api}/node_modules/eventemitter3/index.js +0 -0
  1386. /package/node_modules/{p-finally → @slack/web-api/node_modules/p-finally}/index.js +0 -0
  1387. /package/node_modules/{p-finally → @slack/web-api/node_modules/p-finally}/license +0 -0
  1388. /package/node_modules/{p-finally → @slack/web-api/node_modules/p-finally}/package.json +0 -0
  1389. /package/node_modules/{p-finally → @slack/web-api/node_modules/p-finally}/readme.md +0 -0
  1390. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/dist/index.d.ts +0 -0
  1391. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/dist/index.js +0 -0
  1392. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/dist/lower-bound.d.ts +0 -0
  1393. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/dist/lower-bound.js +0 -0
  1394. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/dist/options.d.ts +0 -0
  1395. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/dist/options.js +0 -0
  1396. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/dist/priority-queue.d.ts +0 -0
  1397. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/dist/priority-queue.js +0 -0
  1398. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/dist/queue.d.ts +0 -0
  1399. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/dist/queue.js +0 -0
  1400. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/license +0 -0
  1401. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/node_modules/eventemitter3/README.md +0 -0
  1402. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/node_modules/eventemitter3/index.d.ts +0 -0
  1403. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/node_modules/eventemitter3/package.json +0 -0
  1404. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/node_modules/eventemitter3/umd/eventemitter3.js +0 -0
  1405. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/node_modules/eventemitter3/umd/eventemitter3.min.js +0 -0
  1406. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/node_modules/eventemitter3/umd/eventemitter3.min.js.map +0 -0
  1407. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/package.json +0 -0
  1408. /package/node_modules/{p-queue → @slack/web-api/node_modules/p-queue}/readme.md +0 -0
  1409. /package/node_modules/{p-retry → @slack/web-api/node_modules/p-retry}/index.d.ts +0 -0
  1410. /package/node_modules/{p-retry → @slack/web-api/node_modules/p-retry}/index.js +0 -0
  1411. /package/node_modules/{p-retry → @slack/web-api/node_modules/p-retry}/license +0 -0
  1412. /package/node_modules/{p-retry → @slack/web-api/node_modules/p-retry}/package.json +0 -0
  1413. /package/node_modules/{p-retry → @slack/web-api/node_modules/p-retry}/readme.md +0 -0
  1414. /package/node_modules/{p-timeout → @slack/web-api/node_modules/p-timeout}/index.d.ts +0 -0
  1415. /package/node_modules/{p-timeout → @slack/web-api/node_modules/p-timeout}/index.js +0 -0
  1416. /package/node_modules/{p-timeout → @slack/web-api/node_modules/p-timeout}/license +0 -0
  1417. /package/node_modules/{p-timeout → @slack/web-api/node_modules/p-timeout}/package.json +0 -0
  1418. /package/node_modules/{p-timeout → @slack/web-api/node_modules/p-timeout}/readme.md +0 -0
  1419. /package/node_modules/{retry → @slack/web-api/node_modules/retry}/License +0 -0
  1420. /package/node_modules/{retry → @slack/web-api/node_modules/retry}/README.md +0 -0
  1421. /package/node_modules/{retry → @slack/web-api/node_modules/retry}/example/dns.js +0 -0
  1422. /package/node_modules/{retry → @slack/web-api/node_modules/retry}/example/stop.js +0 -0
  1423. /package/node_modules/{retry → @slack/web-api/node_modules/retry}/index.js +0 -0
  1424. /package/node_modules/{retry → @slack/web-api/node_modules/retry}/lib/retry.js +0 -0
  1425. /package/node_modules/{retry → @slack/web-api/node_modules/retry}/lib/retry_operation.js +0 -0
  1426. /package/node_modules/{retry → @slack/web-api/node_modules/retry}/package.json +0 -0
@@ -0,0 +1,2442 @@
1
+ import { a as resolveSlackAccount, i as resolveDefaultSlackAccountId, n as listSlackAccountIds, o as resolveSlackAccountAllowFrom, r as mergeSlackAccountConfig } from "./accounts-CHAeNZOX.js";
2
+ import { i as parseSlackTarget, t as canonicalizeSlackApiTargetId } from "./target-parsing-N6lHogYZ.js";
3
+ import { t as isSlackPluginAccountConfigured } from "./account-configured-BwfXBo_F.js";
4
+ import { normalizeAccountId } from "openclaw/plugin-sdk/account-resolution";
5
+ import { normalizeLowercaseStringOrEmpty, normalizeOptionalLowercaseString, normalizeOptionalString, normalizeStringifiedOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
6
+ import { normalizeMessageChannel } from "openclaw/plugin-sdk/routing";
7
+ import { FormatCapabilityProfile, chunkTextForOutbound, markdownToIR, renderMarkdownIRChunksWithinLimit, renderMarkdownWithMarkers } from "openclaw/plugin-sdk/text-chunking";
8
+ import { createNativeApprovalChannelRouteGates, doesApprovalRequestMatchChannelAccount, resolveApprovalRequestSessionConversation } from "openclaw/plugin-sdk/approval-native-runtime";
9
+ import { createChannelApprovalAuth, resolveApprovalApprovers } from "openclaw/plugin-sdk/approval-auth-runtime";
10
+ import { createChannelExecApprovalProfile, isChannelExecApprovalClientEnabledFromConfig, isChannelExecApprovalTargetRecipient, matchesApprovalRequestFilters } from "openclaw/plugin-sdk/approval-client-runtime";
11
+ import { channelRouteTargetsMatchExact, stringifyRouteThreadId } from "openclaw/plugin-sdk/channel-route";
12
+ import { normalizeMessagePresentation, reduceLegacyInteractiveReply, renderMessagePresentationChartFallbackText, renderMessagePresentationFallbackText, renderMessagePresentationTableFallbackText, resolveMessagePresentationButtonAction, resolveMessagePresentationOptionAction } from "openclaw/plugin-sdk/interactive-runtime";
13
+ import { parseExecApprovalCommandText } from "openclaw/plugin-sdk/approval-reply-runtime";
14
+ import { buildApprovalResolutionRef } from "openclaw/plugin-sdk/approval-reference-runtime";
15
+ import { questionGatewayRuntime } from "openclaw/plugin-sdk/question-gateway-runtime";
16
+ import { sliceUtf16Safe } from "openclaw/plugin-sdk/text-utility-runtime";
17
+ import { eastAsianWidthType } from "get-east-asian-width";
18
+ import { readResponseTextLimited } from "openclaw/plugin-sdk/provider-http";
19
+ import { compileAllowlist, resolveCompiledAllowlistMatch } from "openclaw/plugin-sdk/allow-from";
20
+ import { normalizeHyphenSlug, normalizeStringEntries as normalizeStringEntries$1, normalizeStringEntriesLower as normalizeStringEntriesLower$1 } from "openclaw/plugin-sdk/string-normalization-runtime";
21
+ import { resolveScopeRequireMention, resolveScopeToolsPolicy } from "openclaw/plugin-sdk/channel-policy";
22
+ //#region extensions/slack/src/exec-approvals.ts
23
+ function normalizeSlackUserLikeId(value) {
24
+ const upper = value.toUpperCase();
25
+ return /^[UW][A-Z0-9]+$/.test(upper) ? upper : void 0;
26
+ }
27
+ function normalizeSlackApproverId(value) {
28
+ const trimmed = normalizeStringifiedOptionalString(value);
29
+ if (!trimmed) return;
30
+ const prefixed = trimmed.match(/^(?:slack|user):([A-Z0-9]+)$/i);
31
+ if (prefixed?.[1]) return normalizeSlackUserLikeId(prefixed[1]);
32
+ const mention = trimmed.match(/^<@([A-Z0-9]+)>$/i);
33
+ if (mention?.[1]) return normalizeSlackUserLikeId(mention[1]);
34
+ return normalizeSlackUserLikeId(trimmed);
35
+ }
36
+ function resolveSlackOwnerApprovers(cfg) {
37
+ const ownerAllowFrom = cfg.commands?.ownerAllowFrom;
38
+ if (!Array.isArray(ownerAllowFrom) || ownerAllowFrom.length === 0) return [];
39
+ return resolveApprovalApprovers({
40
+ explicit: ownerAllowFrom,
41
+ normalizeApprover: normalizeSlackApproverId
42
+ });
43
+ }
44
+ function getSlackExecApprovalApprovers(params) {
45
+ const account = resolveSlackAccount(params).config;
46
+ return resolveApprovalApprovers({
47
+ explicit: account.execApprovals?.approvers ?? resolveSlackOwnerApprovers(params.cfg),
48
+ normalizeApprover: normalizeSlackApproverId
49
+ });
50
+ }
51
+ function isSlackExecApprovalTargetRecipient(params) {
52
+ return isChannelExecApprovalTargetRecipient({
53
+ ...params,
54
+ channel: "slack",
55
+ normalizeSenderId: normalizeSlackApproverId,
56
+ matchTarget: ({ target, normalizedSenderId }) => normalizeSlackApproverId(target.to) === normalizedSenderId
57
+ });
58
+ }
59
+ const slackExecApprovalProfile = createChannelExecApprovalProfile({
60
+ resolveConfig: (params) => resolveSlackAccount(params).config.execApprovals,
61
+ resolveApprovers: getSlackExecApprovalApprovers,
62
+ normalizeSenderId: normalizeSlackApproverId,
63
+ isTargetRecipient: isSlackExecApprovalTargetRecipient,
64
+ matchesRequestAccount: (params) => doesApprovalRequestMatchChannelAccount({
65
+ cfg: params.cfg,
66
+ request: params.request,
67
+ channel: "slack",
68
+ accountId: params.accountId
69
+ })
70
+ });
71
+ const isSlackExecApprovalClientEnabled = slackExecApprovalProfile.isClientEnabled;
72
+ const isSlackExecApprovalAuthorizedSender = slackExecApprovalProfile.isAuthorizedSender;
73
+ const resolveSlackExecApprovalTarget = slackExecApprovalProfile.resolveTarget;
74
+ const shouldSuppressLocalSlackExecApprovalPrompt = slackExecApprovalProfile.shouldSuppressLocalPrompt;
75
+ //#endregion
76
+ //#region extensions/slack/src/approval-auth.ts
77
+ const slackApproval = createChannelApprovalAuth({
78
+ channelLabel: "Slack",
79
+ resolveInputs: ({ cfg, accountId }) => {
80
+ const account = resolveSlackAccount({
81
+ cfg,
82
+ accountId
83
+ }).config;
84
+ return {
85
+ allowFrom: resolveSlackAccountAllowFrom({
86
+ cfg,
87
+ accountId
88
+ }),
89
+ defaultTo: account.defaultTo
90
+ };
91
+ },
92
+ normalizeApprover: normalizeSlackApproverId,
93
+ normalizeDefaultTo: normalizeSlackApproverId,
94
+ isWildcardAuthorized: ({ purpose, senderId, inputs, approvers }) => purpose === "sender" && Boolean(senderId) && approvers.length === 0 && inputs.allowFrom?.some((entry) => String(entry).trim() === "*") === true
95
+ });
96
+ const getSlackApprovalApprovers = slackApproval.resolveApprovers;
97
+ const isSlackApprovalAuthorizedSender = slackApproval.isAuthorizedSender;
98
+ //#endregion
99
+ //#region extensions/slack/src/approval-native-gates.ts
100
+ const DEFAULT_APPROVAL_FORWARDING_MODE = "session";
101
+ const SLACK_DM_CHANNEL_ID_RE = /^D[A-Z0-9]{8,}$/i;
102
+ const SLACK_USER_ID_RE = /^[UW][A-Z0-9]{8,}$/i;
103
+ function resolveSlackApprovalKind(request) {
104
+ const isExec = "command" in request.request;
105
+ if (isExec === ("title" in request.request && "description" in request.request)) throw new Error("Slack approval request payload does not identify exactly one owner");
106
+ return isExec ? "exec" : "plugin";
107
+ }
108
+ function isSlackApprovalTransportEnabled(params) {
109
+ const account = resolveSlackAccount(params);
110
+ return account.config.enterpriseOrgInstall !== true && isSlackPluginAccountConfigured(account);
111
+ }
112
+ function resolveSlackNativeApprovalConfig(params) {
113
+ return resolveSlackAccount(params).config.execApprovals;
114
+ }
115
+ function resolvePluginApprovalForwardingConfig(cfg) {
116
+ return cfg.approvals?.plugin;
117
+ }
118
+ function normalizeSlackThreadMatchKey(threadId) {
119
+ return threadId == null ? "" : String(threadId).trim();
120
+ }
121
+ function normalizeComparableTarget(value) {
122
+ return normalizeLowercaseStringOrEmpty(value);
123
+ }
124
+ function extractSlackSessionKind(sessionKey) {
125
+ if (!sessionKey) return null;
126
+ const kind = normalizeLowercaseStringOrEmpty(sessionKey.match(/slack:(direct|channel|group):/i)?.[1]);
127
+ return kind ? kind : null;
128
+ }
129
+ function resolveSlackTurnSourceDefaultKind(params) {
130
+ if (SLACK_DM_CHANNEL_ID_RE.test(params.turnSourceTo)) return "channel";
131
+ return params.sessionKind === "direct" ? "user" : "channel";
132
+ }
133
+ function resolveTurnSourceSlackOriginTarget(request) {
134
+ const turnSourceChannel = normalizeLowercaseStringOrEmpty(request.request.turnSourceChannel);
135
+ const turnSourceTo = normalizeOptionalString(request.request.turnSourceTo) ?? "";
136
+ if (turnSourceChannel !== "slack" || !turnSourceTo) return null;
137
+ const parsed = parseSlackTarget(turnSourceTo, { defaultKind: resolveSlackTurnSourceDefaultKind({
138
+ turnSourceTo,
139
+ sessionKind: extractSlackSessionKind(request.request.sessionKey ?? void 0)
140
+ }) });
141
+ if (!parsed) return null;
142
+ return {
143
+ to: `${parsed.kind}:${parsed.id}`,
144
+ threadId: stringifyRouteThreadId(request.request.turnSourceThreadId)
145
+ };
146
+ }
147
+ function resolveSessionSlackOriginTarget(sessionTarget) {
148
+ return {
149
+ to: sessionTarget.to,
150
+ threadId: stringifyRouteThreadId(sessionTarget.threadId)
151
+ };
152
+ }
153
+ function resolveSlackFallbackOriginTarget(request) {
154
+ const sessionTarget = resolveApprovalRequestSessionConversation({
155
+ request,
156
+ channel: "slack",
157
+ bundledFallback: false
158
+ });
159
+ if (!sessionTarget) return null;
160
+ const parsed = parseSlackTarget(sessionTarget.id, { defaultKind: "channel" });
161
+ if (!parsed) return null;
162
+ return {
163
+ to: `${parsed.kind}:${canonicalizeSlackApiTargetId(parsed.kind, parsed.id)}`,
164
+ threadId: sessionTarget.threadId
165
+ };
166
+ }
167
+ function normalizeSlackOriginTarget(target) {
168
+ return {
169
+ ...target,
170
+ to: normalizeComparableTarget(target.to)
171
+ };
172
+ }
173
+ function parseComparableSlackTarget(target) {
174
+ return parseSlackTarget(target.to, { defaultKind: "channel" });
175
+ }
176
+ function isSlackDmChannelToUserRoutePair(a, b) {
177
+ const left = parseComparableSlackTarget(a);
178
+ const right = parseComparableSlackTarget(b);
179
+ if (!left || !right) return false;
180
+ return left.kind === "channel" && SLACK_DM_CHANNEL_ID_RE.test(left.id) && right.kind === "user" || right.kind === "channel" && SLACK_DM_CHANNEL_ID_RE.test(right.id) && left.kind === "user";
181
+ }
182
+ function slackTargetsMatch(a, b) {
183
+ const threadKey = normalizeSlackThreadMatchKey(a.threadId);
184
+ if (threadKey !== normalizeSlackThreadMatchKey(b.threadId)) return false;
185
+ if (channelRouteTargetsMatchExact({
186
+ left: {
187
+ channel: "slack",
188
+ to: a.to
189
+ },
190
+ right: {
191
+ channel: "slack",
192
+ to: b.to
193
+ }
194
+ })) return true;
195
+ return Boolean(threadKey && isSlackDmChannelToUserRoutePair(a, b));
196
+ }
197
+ function normalizeSlackForwardTarget(target) {
198
+ if ((normalizeMessageChannel(target.channel) ?? target.channel) !== "slack") return null;
199
+ const to = normalizeOptionalString(target.to);
200
+ if (!to) return null;
201
+ const parsed = parseSlackTarget(to, { defaultKind: SLACK_USER_ID_RE.test(to) ? "user" : "channel" });
202
+ if (!parsed) return null;
203
+ return {
204
+ to: `${parsed.kind}:${parsed.id}`,
205
+ accountId: normalizeOptionalString(target.accountId),
206
+ threadId: stringifyRouteThreadId(target.threadId)
207
+ };
208
+ }
209
+ const { canApprovalPotentiallyRouteToChannel: canApprovalPotentiallyRouteToSlack, isSessionApprovalEligible: isForwardedSlackSessionApprovalEligible, isExplicitTargetEligible: isForwardedSlackExplicitTargetEligible } = createNativeApprovalChannelRouteGates({
210
+ channel: "slack",
211
+ defaultForwardingMode: DEFAULT_APPROVAL_FORWARDING_MODE,
212
+ isTransportEnabled: isSlackApprovalTransportEnabled,
213
+ listAccountIds: listSlackAccountIds,
214
+ resolveDefaultAccountId: resolveDefaultSlackAccountId,
215
+ normalizeForwardTarget: normalizeSlackForwardTarget,
216
+ resolveTurnSourceTarget: resolveTurnSourceSlackOriginTarget,
217
+ targetsMatch: slackTargetsMatch
218
+ });
219
+ function hasSlackPluginApprovers(params) {
220
+ return getSlackApprovalApprovers(params).length > 0;
221
+ }
222
+ function isSlackPluginNativeApprovalClientConfigEnabled(params) {
223
+ return isChannelExecApprovalClientEnabledFromConfig({
224
+ enabled: resolveSlackNativeApprovalConfig(params)?.enabled,
225
+ approverCount: getSlackApprovalApprovers(params).length
226
+ });
227
+ }
228
+ function isSlackPluginForwardingRoutePotentiallyEnabled(params) {
229
+ return canApprovalPotentiallyRouteToSlack({
230
+ ...params,
231
+ approvalKind: "plugin"
232
+ });
233
+ }
234
+ function isSlackPluginNativeApprovalClientEnabled(params) {
235
+ return isSlackPluginNativeApprovalClientConfigEnabled(params) || isSlackPluginForwardingRoutePotentiallyEnabled(params);
236
+ }
237
+ function shouldHandleSlackPluginViaNativeClientConfig(params) {
238
+ if (!doesApprovalRequestMatchChannelAccount({
239
+ cfg: params.cfg,
240
+ request: params.request,
241
+ channel: "slack",
242
+ accountId: params.accountId
243
+ })) return false;
244
+ const config = resolveSlackNativeApprovalConfig(params);
245
+ if (!isChannelExecApprovalClientEnabledFromConfig({
246
+ enabled: config?.enabled,
247
+ approverCount: getSlackApprovalApprovers(params).length
248
+ })) return false;
249
+ return matchesSlackNativeApprovalFilters({
250
+ request: params.request,
251
+ agentFilter: config?.agentFilter,
252
+ sessionFilter: config?.sessionFilter
253
+ });
254
+ }
255
+ function matchesSlackNativeApprovalFilters(params) {
256
+ return matchesApprovalRequestFilters({
257
+ request: params.request.request,
258
+ agentFilter: params.agentFilter,
259
+ sessionFilter: params.sessionFilter
260
+ });
261
+ }
262
+ function isAnyForwardedSlackExplicitTargetEligible(params) {
263
+ return (resolvePluginApprovalForwardingConfig(params.cfg)?.targets ?? []).some((target) => isForwardedSlackExplicitTargetEligible({
264
+ ...params,
265
+ approvalKind: "plugin",
266
+ target
267
+ }));
268
+ }
269
+ function shouldHandleSlackPluginViaForwarding(params) {
270
+ return isForwardedSlackSessionApprovalEligible({
271
+ ...params,
272
+ approvalKind: "plugin"
273
+ }) || isAnyForwardedSlackExplicitTargetEligible(params);
274
+ }
275
+ function shouldHandleSlackPluginViaForwardingSession(params) {
276
+ return isForwardedSlackSessionApprovalEligible({
277
+ ...params,
278
+ approvalKind: "plugin"
279
+ });
280
+ }
281
+ function isSlackNativeApprovalClientEnabled(params) {
282
+ if (params.approvalKind === "exec") return isSlackExecApprovalClientEnabled(params);
283
+ return isSlackPluginNativeApprovalClientEnabled(params);
284
+ }
285
+ function isSlackAnyNativeApprovalClientEnabled(params) {
286
+ return isSlackNativeApprovalClientEnabled({
287
+ ...params,
288
+ approvalKind: "exec"
289
+ }) || isSlackNativeApprovalClientEnabled({
290
+ ...params,
291
+ approvalKind: "plugin"
292
+ });
293
+ }
294
+ function shouldHandleSlackNativeApprovalRequest(params) {
295
+ if ((params.approvalKind ?? resolveSlackApprovalKind(params.request)) === "plugin") return shouldHandleSlackPluginViaNativeClientConfig(params) || shouldHandleSlackPluginViaForwarding(params);
296
+ if (!doesApprovalRequestMatchChannelAccount({
297
+ cfg: params.cfg,
298
+ request: params.request,
299
+ channel: "slack",
300
+ accountId: params.accountId
301
+ })) return false;
302
+ const config = resolveSlackNativeApprovalConfig(params);
303
+ if (!isChannelExecApprovalClientEnabledFromConfig({
304
+ enabled: config?.enabled,
305
+ approverCount: getSlackExecApprovalApprovers(params).length
306
+ })) return false;
307
+ return matchesSlackNativeApprovalFilters({
308
+ request: params.request,
309
+ agentFilter: config?.agentFilter,
310
+ sessionFilter: config?.sessionFilter
311
+ });
312
+ }
313
+ //#endregion
314
+ //#region extensions/slack/src/blocks-input.ts
315
+ const SLACK_MAX_BLOCKS = 50;
316
+ function parseBlocksJson(raw) {
317
+ try {
318
+ return JSON.parse(raw);
319
+ } catch {
320
+ throw new Error("blocks must be valid JSON");
321
+ }
322
+ }
323
+ function assertBlocksArray(raw) {
324
+ if (!Array.isArray(raw)) throw new Error("blocks must be an array");
325
+ if (raw.length === 0) throw new Error("blocks must contain at least one block");
326
+ if (raw.length > 50) throw new Error(`blocks cannot exceed 50 items`);
327
+ for (const block of raw) {
328
+ if (!block || typeof block !== "object" || Array.isArray(block)) throw new Error("each block must be an object");
329
+ const type = block.type;
330
+ if (typeof type !== "string" || type.trim().length === 0) throw new Error("each block must include a non-empty string type");
331
+ }
332
+ }
333
+ function validateSlackBlocksArray(raw) {
334
+ assertBlocksArray(raw);
335
+ return raw;
336
+ }
337
+ function parseSlackBlocksInput(raw) {
338
+ if (raw == null) return;
339
+ return validateSlackBlocksArray(typeof raw === "string" ? parseBlocksJson(raw) : raw);
340
+ }
341
+ const SLACK_BUTTON_VALUE_MAX = 2e3;
342
+ const SLACK_SECTION_TEXT_MAX = 3e3;
343
+ const SLACK_PRESENTATION_CAPABILITIES = {
344
+ supported: true,
345
+ buttons: true,
346
+ selects: true,
347
+ context: true,
348
+ divider: true,
349
+ charts: true,
350
+ tables: true,
351
+ limits: {
352
+ actions: {
353
+ maxActionsPerRow: 25,
354
+ maxValueBytes: SLACK_BUTTON_VALUE_MAX,
355
+ supportsStyles: true
356
+ },
357
+ selects: {
358
+ maxOptions: 100,
359
+ maxValueBytes: 150
360
+ },
361
+ text: {
362
+ encoding: "characters",
363
+ markdownDialect: "slack-mrkdwn",
364
+ supportsEdit: true
365
+ }
366
+ }
367
+ };
368
+ //#endregion
369
+ //#region extensions/slack/src/approval-actions.ts
370
+ const SLACK_APPROVAL_VALUE_PREFIX = "openclaw:approval:v1:";
371
+ function isApprovalDecision(value) {
372
+ return value === "allow-once" || value === "allow-always" || value === "deny";
373
+ }
374
+ /** Encode portable approval facts without exposing a slash command to Slack callbacks. */
375
+ function encodeSlackApprovalAction(action) {
376
+ const encode = (approvalId) => `${SLACK_APPROVAL_VALUE_PREFIX}${JSON.stringify({
377
+ approvalId,
378
+ approvalKind: action.approvalKind,
379
+ decision: action.decision
380
+ })}`;
381
+ const exact = encode(action.approvalId);
382
+ return exact.length <= 2e3 ? exact : encode(buildApprovalResolutionRef({
383
+ approvalId: action.approvalId,
384
+ approvalKind: action.approvalKind
385
+ }));
386
+ }
387
+ /** Decode only the exact Slack-owned approval envelope. Malformed callbacks fail closed. */
388
+ function decodeSlackApprovalAction(value) {
389
+ if (typeof value !== "string" || !value.startsWith(SLACK_APPROVAL_VALUE_PREFIX)) return null;
390
+ try {
391
+ const decoded = JSON.parse(value.slice(21));
392
+ if (!decoded || typeof decoded !== "object" || Array.isArray(decoded)) return null;
393
+ const record = decoded;
394
+ if (Object.keys(record).length !== 3 || typeof record.approvalId !== "string" || record.approvalId.length === 0 || record.approvalKind !== "exec" && record.approvalKind !== "plugin" || !isApprovalDecision(record.decision)) return null;
395
+ return {
396
+ type: "approval",
397
+ approvalId: record.approvalId,
398
+ approvalKind: record.approvalKind,
399
+ decision: record.decision
400
+ };
401
+ } catch {
402
+ return null;
403
+ }
404
+ }
405
+ //#endregion
406
+ //#region extensions/slack/src/monitor/mrkdwn.ts
407
+ function escapeSlackMrkdwn(value) {
408
+ return value.replaceAll("\\", "\\\\").replaceAll("&", "&amp;").replaceAll("<", "&lt;").replaceAll(">", "&gt;").replace(/([*_`~])/g, "\\$1");
409
+ }
410
+ //#endregion
411
+ //#region extensions/slack/src/presentation-fallback.ts
412
+ const SLACK_UNCOPYABLE_COMMAND_WARNING = "not copyable: contains backtick";
413
+ function resolveSlackCommandFallback(command) {
414
+ if (!command.includes("`")) return { command };
415
+ return {
416
+ command: command.replaceAll("`", "[backtick]"),
417
+ warning: SLACK_UNCOPYABLE_COMMAND_WARNING
418
+ };
419
+ }
420
+ function escapeSlackPresentationChartBlock(block) {
421
+ if (block.chartType === "pie") return {
422
+ ...block,
423
+ title: escapeSlackMrkdwn(block.title),
424
+ segments: block.segments.map((segment) => ({
425
+ ...segment,
426
+ label: escapeSlackMrkdwn(segment.label)
427
+ }))
428
+ };
429
+ return {
430
+ ...block,
431
+ title: escapeSlackMrkdwn(block.title),
432
+ categories: block.categories.map(escapeSlackMrkdwn),
433
+ series: block.series.map((series) => ({
434
+ ...series,
435
+ name: escapeSlackMrkdwn(series.name)
436
+ })),
437
+ ...block.xLabel ? { xLabel: escapeSlackMrkdwn(block.xLabel) } : {},
438
+ ...block.yLabel ? { yLabel: escapeSlackMrkdwn(block.yLabel) } : {}
439
+ };
440
+ }
441
+ function escapeSlackPresentationTableBlock(block) {
442
+ return {
443
+ ...block,
444
+ caption: escapeSlackMrkdwn(block.caption),
445
+ headers: block.headers.map(escapeSlackMrkdwn),
446
+ rows: block.rows.map((row) => row.map((cell) => typeof cell === "string" ? escapeSlackMrkdwn(cell) : cell))
447
+ };
448
+ }
449
+ function escapeSlackPresentationFallbackBlock(block) {
450
+ if (block.type === "chart") return escapeSlackPresentationChartBlock(block);
451
+ if (block.type === "table") return escapeSlackPresentationTableBlock(block);
452
+ if (block.type === "buttons") return {
453
+ ...block,
454
+ buttons: block.buttons.map((button) => {
455
+ const commandFallback = button.action?.type === "command" ? resolveSlackCommandFallback(button.action.command) : void 0;
456
+ const label = commandFallback?.warning ? `${button.label} [${commandFallback.warning}]` : button.label;
457
+ return {
458
+ ...button,
459
+ label: escapeSlackMrkdwn(label),
460
+ ...button.value ? { value: escapeSlackMrkdwn(button.value) } : {},
461
+ ...button.url ? { url: escapeSlackMrkdwn(button.url) } : {},
462
+ ...button.webApp ? { webApp: { url: escapeSlackMrkdwn(button.webApp.url) } } : {},
463
+ ...button.web_app ? { web_app: { url: escapeSlackMrkdwn(button.web_app.url) } } : {},
464
+ ...button.action?.type === "command" && commandFallback ? { action: {
465
+ ...button.action,
466
+ command: commandFallback.command
467
+ } } : {}
468
+ };
469
+ })
470
+ };
471
+ if (block.type === "select") return {
472
+ ...block,
473
+ ...block.placeholder ? { placeholder: escapeSlackMrkdwn(block.placeholder) } : {},
474
+ options: block.options.map((option) => ({
475
+ ...option,
476
+ label: escapeSlackMrkdwn(option.label)
477
+ }))
478
+ };
479
+ return block;
480
+ }
481
+ function renderSlackMessagePresentationChartFallbackText(block) {
482
+ return renderMessagePresentationChartFallbackText(escapeSlackPresentationChartBlock(block));
483
+ }
484
+ function renderSlackMessagePresentationTableFallbackText(block) {
485
+ return renderMessagePresentationTableFallbackText(escapeSlackPresentationTableBlock(block));
486
+ }
487
+ function renderSlackMessagePresentationFallbackText(params) {
488
+ if (!params.presentation) return renderMessagePresentationFallbackText(params);
489
+ const presentation = {
490
+ ...params.presentation,
491
+ ...params.presentation.title ? { title: escapeSlackMrkdwn(params.presentation.title) } : {},
492
+ blocks: params.presentation.blocks.map(escapeSlackPresentationFallbackBlock)
493
+ };
494
+ return renderMessagePresentationFallbackText({
495
+ ...params,
496
+ presentation
497
+ });
498
+ }
499
+ //#endregion
500
+ //#region extensions/slack/src/data-table.ts
501
+ const SLACK_DATA_TABLE_COLUMNS_MAX = 20;
502
+ const SLACK_DATA_TABLE_ROWS_MAX = 100;
503
+ function asRecord$3(value) {
504
+ return value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
505
+ }
506
+ function readNonEmptyString$1(value) {
507
+ return typeof value === "string" && value.trim().length > 0 ? value : void 0;
508
+ }
509
+ function countCharacters(value) {
510
+ return Array.from(value).length;
511
+ }
512
+ function readRichTextLeaf(record) {
513
+ if (record.type === "text" && typeof record.text === "string") return record.text;
514
+ const text = readNonEmptyString$1(record.text);
515
+ if (text) return text;
516
+ switch (record.type) {
517
+ case "link": return readNonEmptyString$1(record.url) ?? "";
518
+ case "user": {
519
+ const userId = readNonEmptyString$1(record.user_id);
520
+ return userId ? `<@${userId}>` : "";
521
+ }
522
+ case "channel": {
523
+ const channelId = readNonEmptyString$1(record.channel_id);
524
+ return channelId ? `<#${channelId}>` : "";
525
+ }
526
+ case "usergroup": {
527
+ const usergroupId = readNonEmptyString$1(record.usergroup_id);
528
+ return usergroupId ? `<!subteam^${usergroupId}>` : "";
529
+ }
530
+ case "broadcast": {
531
+ const range = readNonEmptyString$1(record.range);
532
+ return range ? `<!${range}>` : "";
533
+ }
534
+ case "emoji": {
535
+ const name = readNonEmptyString$1(record.name);
536
+ return name ? `:${name}:` : "";
537
+ }
538
+ case "date": return readNonEmptyString$1(record.fallback) ?? "";
539
+ default: return "";
540
+ }
541
+ }
542
+ function readRichTextElements(value, separator = "") {
543
+ if (!Array.isArray(value)) return "";
544
+ const parts = [];
545
+ for (const rawElement of value) {
546
+ const element = asRecord$3(rawElement);
547
+ if (!element) continue;
548
+ if (Array.isArray(element.elements)) {
549
+ const rendered = readRichTextElements(element.elements, element.type === "rich_text_list" ? "\n" : "");
550
+ if (rendered) parts.push(rendered);
551
+ continue;
552
+ }
553
+ const rendered = readRichTextLeaf(element);
554
+ if (rendered) parts.push(rendered);
555
+ }
556
+ return parts.join(separator);
557
+ }
558
+ function readSlackBasicTableCell(value) {
559
+ const cell = asRecord$3(value);
560
+ if (!cell) return "";
561
+ if (cell.type === "raw_text") return typeof cell.text === "string" ? cell.text : "";
562
+ if (cell.type === "raw_number") {
563
+ if (typeof cell.text === "string" && cell.text.length > 0) return cell.text;
564
+ if (typeof cell.value === "number" && Number.isFinite(cell.value)) return String(cell.value);
565
+ return typeof cell.value === "string" ? cell.value : "";
566
+ }
567
+ return cell.type === "rich_text" ? readRichTextElements(cell.elements, "\n") : "";
568
+ }
569
+ function parseSlackBasicTableRows(value) {
570
+ const block = asRecord$3(value);
571
+ if (block?.type !== "table" || !Array.isArray(block.rows)) return;
572
+ if (block.rows.length < 1 || block.rows.length > SLACK_DATA_TABLE_ROWS_MAX) return;
573
+ let characterCount = 0;
574
+ const rows = [];
575
+ for (const rawRow of block.rows) {
576
+ if (!Array.isArray(rawRow) || rawRow.length < 1 || rawRow.length > SLACK_DATA_TABLE_COLUMNS_MAX) return;
577
+ const row = rawRow.map(readSlackBasicTableCell);
578
+ characterCount += row.reduce((total, cell) => total + countCharacters(cell), 0);
579
+ if (characterCount > 1e4) return;
580
+ rows.push(row);
581
+ }
582
+ return rows.some((row) => row.some((cell) => cell.length > 0)) ? rows : void 0;
583
+ }
584
+ function readSlackDataTableCell(value, allowRichText) {
585
+ const cell = asRecord$3(value);
586
+ if (!cell) return;
587
+ if (cell.type === "raw_text") return readNonEmptyString$1(cell.text);
588
+ if (cell.type === "raw_number") return typeof cell.value === "number" && Number.isFinite(cell.value) ? readNonEmptyString$1(cell.text) : void 0;
589
+ if (allowRichText && cell.type === "rich_text") return readNonEmptyString$1(readRichTextElements(cell.elements));
590
+ }
591
+ function parseSlackDataTable(value, options = {}) {
592
+ const block = asRecord$3(value);
593
+ const caption = readNonEmptyString$1(block?.caption);
594
+ if (block?.type !== "data_table" || !caption || !Array.isArray(block.rows)) return;
595
+ if (block.rows.length < 2) return;
596
+ const rawHeader = block.rows[0];
597
+ if (!Array.isArray(rawHeader) || rawHeader.length < 1) return;
598
+ const headers = rawHeader.map((cell) => readSlackDataTableCell(cell, false));
599
+ if (!headers.every((header) => Boolean(header))) return;
600
+ const rows = block.rows.slice(1).map((rawRow) => {
601
+ if (!Array.isArray(rawRow) || rawRow.length !== headers.length) return;
602
+ const cells = rawRow.map((cell) => readSlackDataTableCell(cell, true));
603
+ return cells.every((cell) => Boolean(cell)) ? cells : void 0;
604
+ });
605
+ if (!rows.every((row) => Boolean(row))) return;
606
+ const cellCharacterCount = [...headers, ...rows.flat()].reduce((total, cell) => total + countCharacters(cell), 0);
607
+ if (options.enforceNativeLimits && (block.rows.length > 101 || headers.length > SLACK_DATA_TABLE_COLUMNS_MAX || cellCharacterCount > 1e4)) return;
608
+ return {
609
+ caption,
610
+ headers,
611
+ rows,
612
+ cellCharacterCount
613
+ };
614
+ }
615
+ /** Detect current native table blocks without depending on unreleased Slack SDK types. */
616
+ function hasSlackDataTableBlock(blocks) {
617
+ return blocks?.some((block) => asRecord$3(block)?.type === "data_table") ?? false;
618
+ }
619
+ function countSlackDataTableCellCharacters(value) {
620
+ return parseSlackDataTable(value, { enforceNativeLimits: true })?.cellCharacterCount;
621
+ }
622
+ /** Count the aggregate native-table cell characters already present in a message. */
623
+ function countSlackDataTableBlocksCellCharacters(blocks) {
624
+ let total = 0;
625
+ for (const block of blocks ?? []) {
626
+ if (!hasSlackDataTableBlock([block])) continue;
627
+ const cellCharacterCount = countSlackDataTableCellCharacters(block);
628
+ if (cellCharacterCount === void 0) return;
629
+ total += cellCharacterCount;
630
+ }
631
+ return total;
632
+ }
633
+ function resolvePortableTableCellCharacterCount(block) {
634
+ if (typeof block.caption !== "string" || block.caption.trim().length === 0 || !Array.isArray(block.headers) || block.headers.length < 1 || block.headers.length > SLACK_DATA_TABLE_COLUMNS_MAX || !Array.isArray(block.rows) || block.rows.length < 1 || block.rows.length > SLACK_DATA_TABLE_ROWS_MAX || new Set(block.headers).size !== block.headers.length || !block.headers.every((header) => typeof header === "string" && header.trim().length > 0) || block.rowHeaderColumnIndex !== void 0 && (!Number.isInteger(block.rowHeaderColumnIndex) || block.rowHeaderColumnIndex < 0 || block.rowHeaderColumnIndex >= block.headers.length)) return;
635
+ const values = [...block.headers];
636
+ for (const row of block.rows) {
637
+ if (!Array.isArray(row) || row.length !== block.headers.length) return;
638
+ for (const cell of row) {
639
+ if (typeof cell === "number") {
640
+ if (!Number.isFinite(cell)) return;
641
+ values.push(String(cell));
642
+ continue;
643
+ }
644
+ if (typeof cell !== "string" || cell.trim().length === 0) return;
645
+ values.push(cell);
646
+ }
647
+ }
648
+ return values.reduce((total, value) => total + countCharacters(value), 0);
649
+ }
650
+ /** True when a portable table fits Slack's per-table and per-message contracts. */
651
+ function canRenderSlackDataTable(block, options = {}) {
652
+ const cellCharacterCountOffset = options.cellCharacterCountOffset ?? 0;
653
+ if (!Number.isSafeInteger(cellCharacterCountOffset) || cellCharacterCountOffset < 0) return false;
654
+ const cellCharacterCount = resolvePortableTableCellCharacterCount(block);
655
+ return cellCharacterCount !== void 0 && cellCharacterCountOffset + cellCharacterCount <= 1e4;
656
+ }
657
+ /** Map a validated portable table to Slack's current app-facing Block Kit shape. */
658
+ function buildSlackDataTableBlock(block, options = {}) {
659
+ if (!canRenderSlackDataTable(block, options)) return;
660
+ const header = block.headers.map((text) => ({
661
+ type: "raw_text",
662
+ text
663
+ }));
664
+ const rows = block.rows.map((row) => row.map((cell) => typeof cell === "number" ? {
665
+ type: "raw_number",
666
+ value: cell,
667
+ text: String(cell)
668
+ } : {
669
+ type: "raw_text",
670
+ text: cell
671
+ }));
672
+ return {
673
+ type: "data_table",
674
+ caption: block.caption,
675
+ rows: [header, ...rows],
676
+ ...block.rowHeaderColumnIndex !== void 0 ? { row_header_column_index: block.rowHeaderColumnIndex } : {}
677
+ };
678
+ }
679
+ /** Extract a deterministic accessible summary from a native Slack table block. */
680
+ function renderSlackDataTableFallbackText(value) {
681
+ const block = asRecord$3(value);
682
+ if (block?.type !== "data_table") return;
683
+ const parsed = parseSlackDataTable(block);
684
+ if (parsed) return renderMessagePresentationTableFallbackText({
685
+ type: "table",
686
+ caption: parsed.caption,
687
+ headers: parsed.headers,
688
+ rows: parsed.rows
689
+ });
690
+ return readNonEmptyString$1(block.caption)?.trim();
691
+ }
692
+ function escapeCompactFallbackCell(value) {
693
+ return value.replaceAll("\\", "\\\\").replaceAll(" ", "\\t").replaceAll("\r", "\\r").replaceAll("\n", "\\n");
694
+ }
695
+ function escapeSlackBasicTableCell(value, mrkdwnSafe) {
696
+ return (mrkdwnSafe ? escapeSlackMrkdwn(value) : value.replaceAll("\\", "\\\\")).replaceAll(" ", "\\t").replaceAll("\r", "\\r").replaceAll("\n", "\\n");
697
+ }
698
+ function renderSlackBasicTableRows(value, mrkdwnSafe) {
699
+ return parseSlackBasicTableRows(value)?.map((row) => row.map((cell) => escapeSlackBasicTableCell(cell, mrkdwnSafe)).join(" ")).join("\n");
700
+ }
701
+ /** Render Slack's inbound `table` block as ordered, delimiter-safe TSV. */
702
+ function renderSlackTableFallbackText(value) {
703
+ return renderSlackBasicTableRows(value, false);
704
+ }
705
+ /** Render Slack's inbound `table` block without activating mrkdwn control tokens. */
706
+ function renderSlackTableMrkdwnFallbackText(value) {
707
+ return renderSlackBasicTableRows(value, true);
708
+ }
709
+ /** Render each native table cell once for bounded, formatting-disabled delivery. */
710
+ function renderSlackDataTableCompactPlainTextFallback(value) {
711
+ const block = asRecord$3(value);
712
+ if (block?.type !== "data_table") return;
713
+ const parsed = parseSlackDataTable(block);
714
+ if (!parsed) return readNonEmptyString$1(block.caption)?.trim();
715
+ return [
716
+ `${escapeCompactFallbackCell(parsed.caption)} (table)`,
717
+ parsed.headers.map(escapeCompactFallbackCell).join(" "),
718
+ ...parsed.rows.map((row) => row.map(escapeCompactFallbackCell).join(" "))
719
+ ].join("\n");
720
+ }
721
+ /** Render a native table as mrkdwn without activating raw cell control tokens. */
722
+ function renderSlackDataTableMrkdwnFallbackText(value) {
723
+ const block = asRecord$3(value);
724
+ if (block?.type !== "data_table") return;
725
+ const parsed = parseSlackDataTable(block);
726
+ if (parsed) return renderSlackMessagePresentationTableFallbackText({
727
+ type: "table",
728
+ caption: parsed.caption,
729
+ headers: parsed.headers,
730
+ rows: parsed.rows
731
+ });
732
+ const caption = readNonEmptyString$1(block.caption)?.trim();
733
+ return caption ? escapeSlackMrkdwn(caption) : void 0;
734
+ }
735
+ //#endregion
736
+ //#region extensions/slack/src/data-visualization.ts
737
+ const SLACK_CHART_TITLE_MAX = 50;
738
+ const SLACK_CHART_LABEL_MAX = 20;
739
+ const SLACK_CHART_AXIS_LABEL_MAX = 50;
740
+ const SLACK_CHART_SERIES_MAX = 12;
741
+ const SLACK_CHART_DATA_POINTS_MAX = 20;
742
+ function asRecord$2(value) {
743
+ return value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
744
+ }
745
+ /** Detect native chart blocks without depending on unreleased Slack SDK types. */
746
+ function hasSlackDataVisualizationBlock(blocks) {
747
+ return blocks?.some((block) => asRecord$2(block)?.type === "data_visualization") ?? false;
748
+ }
749
+ function isStringWithin(value, maxLength) {
750
+ return typeof value === "string" && value.trim().length > 0 && Array.from(value).length <= maxLength;
751
+ }
752
+ function hasUniqueStrings(values) {
753
+ return new Set(values).size === values.length;
754
+ }
755
+ /** True when a portable chart satisfies Slack's complete native-block contract. */
756
+ function canRenderSlackDataVisualization(block) {
757
+ if (!isStringWithin(block.title, SLACK_CHART_TITLE_MAX)) return false;
758
+ if (block.chartType === "pie") return block.segments.length >= 1 && block.segments.length <= SLACK_CHART_SERIES_MAX && block.segments.every((segment) => isStringWithin(segment.label, SLACK_CHART_LABEL_MAX) && Number.isFinite(segment.value) && segment.value > 0);
759
+ if (block.categories.length < 1 || block.categories.length > SLACK_CHART_DATA_POINTS_MAX || !block.categories.every((category) => isStringWithin(category, SLACK_CHART_LABEL_MAX)) || !hasUniqueStrings(block.categories) || block.series.length < 1 || block.series.length > SLACK_CHART_SERIES_MAX || !hasUniqueStrings(block.series.map((series) => series.name)) || block.xLabel !== void 0 && !isStringWithin(block.xLabel, SLACK_CHART_AXIS_LABEL_MAX) || block.yLabel !== void 0 && !isStringWithin(block.yLabel, SLACK_CHART_AXIS_LABEL_MAX)) return false;
760
+ return block.series.every((series) => isStringWithin(series.name, SLACK_CHART_LABEL_MAX) && series.values.length === block.categories.length && series.values.every((value) => Number.isFinite(value)));
761
+ }
762
+ /** Map a validated portable chart to Slack's app-facing Block Kit shape. */
763
+ function buildSlackDataVisualizationBlock(block) {
764
+ if (!canRenderSlackDataVisualization(block)) return;
765
+ if (block.chartType === "pie") return {
766
+ type: "data_visualization",
767
+ title: block.title,
768
+ chart: {
769
+ type: "pie",
770
+ segments: block.segments.map((segment) => ({ ...segment }))
771
+ }
772
+ };
773
+ return {
774
+ type: "data_visualization",
775
+ title: block.title,
776
+ chart: {
777
+ type: block.chartType,
778
+ series: block.series.map((series) => ({
779
+ name: series.name,
780
+ data: block.categories.map((label, index) => ({
781
+ label,
782
+ value: series.values[index]
783
+ }))
784
+ })),
785
+ axis_config: {
786
+ categories: [...block.categories],
787
+ ...block.xLabel ? { x_label: block.xLabel } : {},
788
+ ...block.yLabel ? { y_label: block.yLabel } : {}
789
+ }
790
+ }
791
+ };
792
+ }
793
+ function readSlackChartDatum(value) {
794
+ const record = asRecord$2(value);
795
+ const label = record?.label;
796
+ const datumValue = record?.value;
797
+ return typeof label === "string" && typeof datumValue === "number" ? {
798
+ label,
799
+ value: datumValue
800
+ } : void 0;
801
+ }
802
+ function parseSlackDataVisualizationBlock(value) {
803
+ const block = asRecord$2(value);
804
+ const title = block?.title;
805
+ const chart = asRecord$2(block?.chart);
806
+ if (block?.type !== "data_visualization" || typeof title !== "string" || !chart) return;
807
+ if (chart.type === "pie") {
808
+ if (!Array.isArray(chart.segments)) return;
809
+ const segments = chart.segments.map(readSlackChartDatum);
810
+ if (segments.some((segment) => !segment)) return;
811
+ const normalizedBlock = normalizeMessagePresentation({ blocks: [{
812
+ type: "chart",
813
+ chartType: "pie",
814
+ title,
815
+ segments
816
+ }] })?.blocks[0];
817
+ return normalizedBlock?.type === "chart" ? normalizedBlock : void 0;
818
+ }
819
+ if (chart.type !== "bar" && chart.type !== "area" && chart.type !== "line") return;
820
+ const axisConfig = asRecord$2(chart.axis_config);
821
+ const categories = axisConfig?.categories;
822
+ if (!Array.isArray(categories) || !categories.every((category) => typeof category === "string")) return;
823
+ if (!Array.isArray(chart.series)) return;
824
+ const series = chart.series.map((rawSeries) => {
825
+ const seriesRecord = asRecord$2(rawSeries);
826
+ if (typeof seriesRecord?.name !== "string" || !Array.isArray(seriesRecord.data)) return;
827
+ const data = seriesRecord.data.map(readSlackChartDatum);
828
+ if (data.some((datum) => !datum) || data.length !== categories.length) return;
829
+ const dataByLabel = new Map(data.map((datum) => [datum.label, datum.value]));
830
+ if (dataByLabel.size !== data.length || categories.some((category) => !dataByLabel.has(category))) return;
831
+ return {
832
+ name: seriesRecord.name,
833
+ values: categories.map((category) => dataByLabel.get(category))
834
+ };
835
+ });
836
+ if (series.some((entry) => !entry)) return;
837
+ const normalizedBlock = normalizeMessagePresentation({ blocks: [{
838
+ type: "chart",
839
+ chartType: chart.type,
840
+ title,
841
+ categories,
842
+ series,
843
+ xLabel: axisConfig?.x_label,
844
+ yLabel: axisConfig?.y_label
845
+ }] })?.blocks[0];
846
+ return normalizedBlock?.type === "chart" ? normalizedBlock : void 0;
847
+ }
848
+ /** Extract a deterministic accessible summary from a native Slack chart block. */
849
+ function renderSlackDataVisualizationFallbackText(value) {
850
+ const block = asRecord$2(value);
851
+ if (block?.type !== "data_visualization") return;
852
+ const parsed = parseSlackDataVisualizationBlock(block);
853
+ if (parsed) return renderMessagePresentationChartFallbackText(parsed);
854
+ return typeof block.title === "string" && block.title.trim() ? block.title.trim() : void 0;
855
+ }
856
+ /** Render a native chart as mrkdwn without activating raw data control tokens. */
857
+ function renderSlackDataVisualizationMrkdwnFallbackText(value) {
858
+ const block = asRecord$2(value);
859
+ if (block?.type !== "data_visualization") return;
860
+ const parsed = parseSlackDataVisualizationBlock(block);
861
+ if (parsed) return renderSlackMessagePresentationChartFallbackText(parsed);
862
+ return typeof block.title === "string" && block.title.trim() ? escapeSlackMrkdwn(block.title.trim()) : void 0;
863
+ }
864
+ //#endregion
865
+ //#region extensions/slack/src/question-actions.ts
866
+ const SLACK_QUESTION_VALUE_PREFIX = "slq1:";
867
+ const QUESTION_RECORD_ID_PATTERN = /^ask_[a-f0-9]{32}$/u;
868
+ function encodeSlackQuestionAction(action) {
869
+ if (!QUESTION_RECORD_ID_PATTERN.test(action.questionId) || !Number.isInteger(action.optionIndex) || action.optionIndex < 0 || action.optionIndex > 3) return;
870
+ const value = `${SLACK_QUESTION_VALUE_PREFIX}${action.questionId}:${action.optionIndex}`;
871
+ return value.length <= 2e3 ? value : void 0;
872
+ }
873
+ function decodeSlackQuestionAction(value) {
874
+ if (typeof value !== "string" || value.length > 2e3) return null;
875
+ const match = /^slq1:(ask_[a-f0-9]{32}):([0-3])$/u.exec(value);
876
+ return match?.[1] && match[2] ? {
877
+ questionId: match[1],
878
+ optionIndex: Number(match[2])
879
+ } : null;
880
+ }
881
+ async function resolveSlackQuestionAction(params) {
882
+ let result;
883
+ try {
884
+ result = await (params.resolveQuestion ?? questionGatewayRuntime.resolveOption)({
885
+ cfg: params.cfg,
886
+ questionId: params.action.questionId,
887
+ optionIndex: params.action.optionIndex,
888
+ senderId: params.userId,
889
+ clientDisplayName: `Slack question (${params.accountId})`
890
+ });
891
+ } catch {
892
+ await params.respond("Could not submit this answer.").catch(() => {});
893
+ return;
894
+ }
895
+ await params.respond(result.status === "answered" ? "Answer submitted." : "This question was already answered.").catch(() => {});
896
+ }
897
+ //#endregion
898
+ //#region extensions/slack/src/reply-action-ids.ts
899
+ const SLACK_REPLY_BUTTON_ACTION_ID = "openclaw:reply_button";
900
+ const SLACK_REPLY_LINK_ACTION_ID = "openclaw:reply_link";
901
+ const SLACK_REPLY_SELECT_ACTION_ID = "openclaw:reply_select";
902
+ const SLACK_CALLBACK_BUTTON_ACTION_ID = "openclaw:callback_button";
903
+ const SLACK_CALLBACK_SELECT_ACTION_ID = "openclaw:callback_select";
904
+ const SLACK_APPROVAL_BUTTON_ACTION_ID = "openclaw:approval_button";
905
+ const SLACK_APPROVAL_SELECT_ACTION_ID = "openclaw:approval_select";
906
+ const SLACK_QUESTION_BUTTON_ACTION_ID = "openclaw:question_button";
907
+ function isSlackQuestionActionId(actionId) {
908
+ return actionId === "openclaw:question_button" || actionId.startsWith(`openclaw:question_button:`);
909
+ }
910
+ function isSlackApprovalActionId(actionId) {
911
+ return actionId === "openclaw:approval_button" || actionId === "openclaw:approval_select" || actionId.startsWith(`openclaw:approval_button:`) || actionId.startsWith(`openclaw:approval_select:`);
912
+ }
913
+ function isSlackCallbackActionId(actionId) {
914
+ return actionId === "openclaw:callback_button" || actionId === "openclaw:callback_select" || actionId.startsWith(`openclaw:callback_button:`) || actionId.startsWith(`openclaw:callback_select:`);
915
+ }
916
+ //#endregion
917
+ //#region extensions/slack/src/truncate.ts
918
+ function truncateSlackText(value, max) {
919
+ const trimmed = value.trim();
920
+ if (trimmed.length <= max) return trimmed;
921
+ if (max <= 1) return sliceUtf16Safe(trimmed, 0, max);
922
+ return `${sliceUtf16Safe(trimmed, 0, max - 1)}…`;
923
+ }
924
+ function countSlackTextUtf8Bytes(value) {
925
+ return Buffer.byteLength(value, "utf8");
926
+ }
927
+ /** Truncate Slack text without splitting a code point or exceeding a UTF-8 byte limit. */
928
+ function truncateSlackTextByUtf8Bytes(value, maxBytes) {
929
+ const trimmed = value.trim();
930
+ if (maxBytes <= 0) return "";
931
+ if (countSlackTextUtf8Bytes(trimmed) <= maxBytes) return trimmed;
932
+ const suffix = "…";
933
+ const suffixBytes = countSlackTextUtf8Bytes(suffix);
934
+ const prefixBudget = maxBytes >= suffixBytes ? maxBytes - suffixBytes : maxBytes;
935
+ let prefix = "";
936
+ let prefixBytes = 0;
937
+ for (const character of trimmed) {
938
+ const characterBytes = countSlackTextUtf8Bytes(character);
939
+ if (prefixBytes + characterBytes > prefixBudget) break;
940
+ prefix += character;
941
+ prefixBytes += characterBytes;
942
+ }
943
+ return maxBytes >= suffixBytes ? `${prefix}${suffix}` : prefix;
944
+ }
945
+ //#endregion
946
+ //#region extensions/slack/src/blocks-render.ts
947
+ const SLACK_BUTTON_URL_MAX = 3e3;
948
+ function buildSlackReplyButtonActionId(buttonIndex, choiceIndex) {
949
+ return `${SLACK_REPLY_BUTTON_ACTION_ID}:${String(buttonIndex)}:${String(choiceIndex + 1)}`;
950
+ }
951
+ function buildSlackReplyLinkActionId(buttonIndex, choiceIndex) {
952
+ return `${SLACK_REPLY_LINK_ACTION_ID}:${String(buttonIndex)}:${String(choiceIndex + 1)}`;
953
+ }
954
+ function buildSlackReplySelectActionId(selectIndex) {
955
+ return `${SLACK_REPLY_SELECT_ACTION_ID}:${String(selectIndex)}`;
956
+ }
957
+ function buildSlackApprovalButtonActionId(buttonIndex, choiceIndex) {
958
+ return `${SLACK_APPROVAL_BUTTON_ACTION_ID}:${String(buttonIndex)}:${String(choiceIndex + 1)}`;
959
+ }
960
+ function buildSlackApprovalSelectActionId(selectIndex) {
961
+ return `${SLACK_APPROVAL_SELECT_ACTION_ID}:${String(selectIndex)}`;
962
+ }
963
+ function buildSlackCallbackButtonActionId(buttonIndex, choiceIndex) {
964
+ return `${SLACK_CALLBACK_BUTTON_ACTION_ID}:${String(buttonIndex)}:${String(choiceIndex + 1)}`;
965
+ }
966
+ function buildSlackCallbackSelectActionId(selectIndex) {
967
+ return `${SLACK_CALLBACK_SELECT_ACTION_ID}:${String(selectIndex)}`;
968
+ }
969
+ function buildSlackQuestionButtonActionId(buttonIndex, choiceIndex) {
970
+ return `${SLACK_QUESTION_BUTTON_ACTION_ID}:${String(buttonIndex)}:${String(choiceIndex + 1)}`;
971
+ }
972
+ function resolveSlackButtonStyle(style) {
973
+ if (style === "primary" || style === "danger") return style;
974
+ if (style === "success") return "primary";
975
+ }
976
+ function resolveSlackActionTarget(action, optionIndex) {
977
+ if (!action) return;
978
+ if (action.type === "approval") return {
979
+ kind: "approval",
980
+ value: encodeSlackApprovalAction(action)
981
+ };
982
+ if (action.type === "question") {
983
+ const value = optionIndex === void 0 ? void 0 : encodeSlackQuestionAction({
984
+ questionId: action.questionId,
985
+ optionIndex
986
+ });
987
+ return value ? {
988
+ kind: "question",
989
+ value
990
+ } : void 0;
991
+ }
992
+ if (action.type === "url" || action.type === "web-app") {
993
+ const url = normalizeOptionalString(action.url);
994
+ return url ? {
995
+ kind: "link",
996
+ url
997
+ } : void 0;
998
+ }
999
+ if (action.type === "callback") {
1000
+ const value = normalizeOptionalString(action.value);
1001
+ return value ? {
1002
+ kind: "callback",
1003
+ value
1004
+ } : void 0;
1005
+ }
1006
+ const command = normalizeOptionalString(action.command);
1007
+ return command && parseExecApprovalCommandText(command) ? {
1008
+ kind: "reply",
1009
+ value: command
1010
+ } : void 0;
1011
+ }
1012
+ function resolveSlackButtonTarget(button, optionIndex) {
1013
+ if (button.action !== void 0) {
1014
+ const action = resolveMessagePresentationButtonAction(button);
1015
+ return action ? resolveSlackActionTarget(action, optionIndex) : void 0;
1016
+ }
1017
+ const legacyUrl = normalizeOptionalString(button.url ?? button.webApp?.url ?? button.web_app?.url);
1018
+ if (legacyUrl && isWithinSlackLimit(legacyUrl, SLACK_BUTTON_URL_MAX)) return {
1019
+ kind: "link",
1020
+ url: legacyUrl
1021
+ };
1022
+ const legacyValue = normalizeOptionalString(button.value);
1023
+ if (legacyValue) return {
1024
+ kind: "reply",
1025
+ value: legacyValue
1026
+ };
1027
+ return legacyUrl ? {
1028
+ kind: "link",
1029
+ url: legacyUrl
1030
+ } : void 0;
1031
+ }
1032
+ function resolveSlackOptionTarget(option) {
1033
+ if (option.action !== void 0) {
1034
+ const action = resolveMessagePresentationOptionAction(option);
1035
+ const target = action ? resolveSlackActionTarget(action) : void 0;
1036
+ return target?.kind === "link" || target?.kind === "question" ? void 0 : target;
1037
+ }
1038
+ const value = normalizeOptionalString(option.value);
1039
+ return value ? {
1040
+ kind: "reply",
1041
+ value
1042
+ } : void 0;
1043
+ }
1044
+ function isWithinSlackLimit(value, maxLength) {
1045
+ return value.length <= maxLength;
1046
+ }
1047
+ function isRenderableSlackOption(option) {
1048
+ return isWithinSlackLimit(option.value, 150);
1049
+ }
1050
+ function readSlackBlockId(block) {
1051
+ const value = block.block_id;
1052
+ return typeof value === "string" ? value : void 0;
1053
+ }
1054
+ function readSlackOpenClawBlockIndex(blockId, prefix) {
1055
+ if (!blockId.startsWith(prefix)) return;
1056
+ const value = Number.parseInt(blockId.slice(prefix.length), 10);
1057
+ return Number.isSafeInteger(value) && value > 0 ? value : void 0;
1058
+ }
1059
+ /** Resolve existing Block Kit indexes and native-data budgets before appending portable blocks. */
1060
+ function resolveSlackBlockOffsets(blocks) {
1061
+ let buttonIndexOffset = 0;
1062
+ const dataTableCellCharacterCountOffset = countSlackDataTableBlocksCellCharacters(blocks) ?? 10001;
1063
+ let dataVisualizationCountOffset = 0;
1064
+ let selectIndexOffset = 0;
1065
+ for (const block of blocks ?? []) {
1066
+ if (hasSlackDataVisualizationBlock([block])) dataVisualizationCountOffset += 1;
1067
+ const blockId = readSlackBlockId(block);
1068
+ if (!blockId) continue;
1069
+ buttonIndexOffset = Math.max(buttonIndexOffset, readSlackOpenClawBlockIndex(blockId, "openclaw_reply_buttons_") ?? 0);
1070
+ selectIndexOffset = Math.max(selectIndexOffset, readSlackOpenClawBlockIndex(blockId, "openclaw_reply_select_") ?? 0);
1071
+ }
1072
+ return {
1073
+ buttonIndexOffset,
1074
+ dataTableCellCharacterCountOffset,
1075
+ dataVisualizationCountOffset,
1076
+ selectIndexOffset
1077
+ };
1078
+ }
1079
+ /**
1080
+ * @deprecated Use buildSlackPresentationBlocks with MessagePresentation.
1081
+ */
1082
+ function buildSlackInteractiveBlocks(interactive, options = {}) {
1083
+ return reduceLegacyInteractiveReply(interactive, {
1084
+ blocks: [],
1085
+ buttonIndex: options.buttonIndexOffset ?? 0,
1086
+ selectIndex: options.selectIndexOffset ?? 0
1087
+ }, (state, block) => {
1088
+ if (block.type === "text") {
1089
+ const trimmed = block.text.trim();
1090
+ if (!trimmed) return state;
1091
+ state.blocks.push({
1092
+ type: "section",
1093
+ text: {
1094
+ type: "mrkdwn",
1095
+ text: truncateSlackText(trimmed, SLACK_SECTION_TEXT_MAX)
1096
+ }
1097
+ });
1098
+ return state;
1099
+ }
1100
+ if (block.type === "buttons") {
1101
+ const elements = block.buttons.flatMap((button, choiceIndex) => {
1102
+ const target = resolveSlackButtonTarget(button, choiceIndex);
1103
+ if (!target || (target.kind === "link" ? !isWithinSlackLimit(target.url, SLACK_BUTTON_URL_MAX) : !isWithinSlackLimit(target.value, 2e3))) return [];
1104
+ const style = resolveSlackButtonStyle(button.style);
1105
+ return [{
1106
+ type: "button",
1107
+ action_id: target.kind === "link" ? buildSlackReplyLinkActionId(state.buttonIndex + 1, choiceIndex) : target.kind === "approval" ? buildSlackApprovalButtonActionId(state.buttonIndex + 1, choiceIndex) : target.kind === "callback" ? buildSlackCallbackButtonActionId(state.buttonIndex + 1, choiceIndex) : target.kind === "question" ? buildSlackQuestionButtonActionId(state.buttonIndex + 1, choiceIndex) : buildSlackReplyButtonActionId(state.buttonIndex + 1, choiceIndex),
1108
+ text: {
1109
+ type: "plain_text",
1110
+ text: truncateSlackText(button.label, 75),
1111
+ emoji: true
1112
+ },
1113
+ ...target.kind === "link" ? { url: target.url } : { value: target.value },
1114
+ ...style ? { style } : {}
1115
+ }];
1116
+ }).slice(0, 25);
1117
+ if (elements.length === 0) return state;
1118
+ state.blocks.push({
1119
+ type: "actions",
1120
+ block_id: `openclaw_reply_buttons_${++state.buttonIndex}`,
1121
+ elements
1122
+ });
1123
+ return state;
1124
+ }
1125
+ const optionsLocal = block.options.flatMap((option) => {
1126
+ const target = resolveSlackOptionTarget(option);
1127
+ return target ? [{
1128
+ label: option.label,
1129
+ ...target
1130
+ }] : [];
1131
+ }).filter(isRenderableSlackOption).slice(0, 100);
1132
+ const optionKinds = new Set(optionsLocal.map((option) => option.kind));
1133
+ if (optionsLocal.length === 0 || optionKinds.size !== 1) return state;
1134
+ state.blocks.push({
1135
+ type: "actions",
1136
+ block_id: `openclaw_reply_select_${++state.selectIndex}`,
1137
+ elements: [{
1138
+ type: "static_select",
1139
+ action_id: optionsLocal[0]?.kind === "approval" ? buildSlackApprovalSelectActionId(state.selectIndex) : optionsLocal[0]?.kind === "callback" ? buildSlackCallbackSelectActionId(state.selectIndex) : buildSlackReplySelectActionId(state.selectIndex),
1140
+ placeholder: {
1141
+ type: "plain_text",
1142
+ text: truncateSlackText(normalizeOptionalString(block.placeholder) ?? "Choose an option", 75),
1143
+ emoji: true
1144
+ },
1145
+ options: optionsLocal.map((option, _choiceIndex) => ({
1146
+ text: {
1147
+ type: "plain_text",
1148
+ text: truncateSlackText(option.label, 75),
1149
+ emoji: true
1150
+ },
1151
+ value: option.value
1152
+ }))
1153
+ }]
1154
+ });
1155
+ return state;
1156
+ }).blocks;
1157
+ }
1158
+ /** Render portable presentation blocks as Slack Block Kit blocks. */
1159
+ function buildSlackPresentationBlocks(presentation, options = {}) {
1160
+ if (!presentation) return [];
1161
+ const renderTablesNatively = canRenderSlackPresentationTables(presentation, options);
1162
+ const blocks = [];
1163
+ if (presentation.title) blocks.push({
1164
+ type: "header",
1165
+ text: {
1166
+ type: "plain_text",
1167
+ text: truncateSlackText(presentation.title, 150),
1168
+ emoji: true
1169
+ }
1170
+ });
1171
+ let buttonIndex = options.buttonIndexOffset ?? 0;
1172
+ let dataTableCellCharacterCount = options.dataTableCellCharacterCountOffset ?? 0;
1173
+ let dataVisualizationCount = options.dataVisualizationCountOffset ?? 0;
1174
+ let selectIndex = options.selectIndexOffset ?? 0;
1175
+ for (const block of presentation.blocks) {
1176
+ if (block.type === "text" || block.type === "context") {
1177
+ const text = block.text.trim();
1178
+ if (!text) continue;
1179
+ if (block.type === "context") blocks.push({
1180
+ type: "context",
1181
+ elements: [{
1182
+ type: "mrkdwn",
1183
+ text: truncateSlackText(text, SLACK_SECTION_TEXT_MAX),
1184
+ verbatim: true
1185
+ }]
1186
+ });
1187
+ else blocks.push({
1188
+ type: "section",
1189
+ text: {
1190
+ type: "mrkdwn",
1191
+ text: truncateSlackText(text, SLACK_SECTION_TEXT_MAX)
1192
+ }
1193
+ });
1194
+ continue;
1195
+ }
1196
+ if (block.type === "divider") {
1197
+ blocks.push({ type: "divider" });
1198
+ continue;
1199
+ }
1200
+ if (block.type === "buttons") {
1201
+ const rendered = buildSlackPresentationButtonBlock(block, buttonIndex + 1);
1202
+ if (rendered) {
1203
+ buttonIndex += 1;
1204
+ blocks.push(rendered);
1205
+ }
1206
+ continue;
1207
+ }
1208
+ if (block.type === "chart") {
1209
+ const rendered = dataVisualizationCount < 2 ? buildSlackPresentationChartBlock(block) : void 0;
1210
+ if (rendered) {
1211
+ dataVisualizationCount += 1;
1212
+ blocks.push(rendered);
1213
+ } else {
1214
+ const fallback = renderSlackMessagePresentationChartFallbackText(block);
1215
+ blocks.push(...chunkTextForOutbound(fallback, SLACK_SECTION_TEXT_MAX).map((text) => ({
1216
+ type: "context",
1217
+ elements: [{
1218
+ type: "mrkdwn",
1219
+ text,
1220
+ verbatim: true
1221
+ }]
1222
+ })));
1223
+ }
1224
+ continue;
1225
+ }
1226
+ if (block.type === "table") {
1227
+ if (!renderTablesNatively) continue;
1228
+ const rendered = buildSlackDataTableBlock(block, { cellCharacterCountOffset: dataTableCellCharacterCount });
1229
+ if (rendered) {
1230
+ dataTableCellCharacterCount += countSlackDataTableCellCharacters(rendered);
1231
+ blocks.push(rendered);
1232
+ }
1233
+ continue;
1234
+ }
1235
+ if (block.type === "select") {
1236
+ const rendered = buildSlackPresentationSelectBlock(block, selectIndex + 1);
1237
+ if (rendered) {
1238
+ selectIndex += 1;
1239
+ blocks.push(rendered);
1240
+ }
1241
+ }
1242
+ }
1243
+ return blocks;
1244
+ }
1245
+ function buildSlackPresentationChartBlock(block) {
1246
+ return buildSlackDataVisualizationBlock(block);
1247
+ }
1248
+ function buildSlackPresentationButtonBlock(block, buttonIndex) {
1249
+ const elements = block.buttons.flatMap((button, choiceIndex) => {
1250
+ const target = resolveSlackButtonTarget(button, choiceIndex);
1251
+ if (!target || (target.kind === "link" ? !isWithinSlackLimit(target.url, SLACK_BUTTON_URL_MAX) : !isWithinSlackLimit(target.value, 2e3))) return [];
1252
+ const style = resolveSlackButtonStyle(button.style);
1253
+ return [{
1254
+ type: "button",
1255
+ action_id: target.kind === "link" ? buildSlackReplyLinkActionId(buttonIndex, choiceIndex) : target.kind === "approval" ? buildSlackApprovalButtonActionId(buttonIndex, choiceIndex) : target.kind === "callback" ? buildSlackCallbackButtonActionId(buttonIndex, choiceIndex) : target.kind === "question" ? buildSlackQuestionButtonActionId(buttonIndex, choiceIndex) : buildSlackReplyButtonActionId(buttonIndex, choiceIndex),
1256
+ text: {
1257
+ type: "plain_text",
1258
+ text: truncateSlackText(button.label, 75),
1259
+ emoji: true
1260
+ },
1261
+ ...target.kind === "link" ? { url: target.url } : { value: target.value },
1262
+ ...style ? { style } : {}
1263
+ }];
1264
+ }).slice(0, 25);
1265
+ return elements.length > 0 ? {
1266
+ type: "actions",
1267
+ block_id: `openclaw_reply_buttons_${buttonIndex}`,
1268
+ elements
1269
+ } : void 0;
1270
+ }
1271
+ /** True when every portable table fits Slack's native per-message table budget. */
1272
+ function canRenderSlackPresentationTables(presentation, options = {}) {
1273
+ let cellCharacterCount = options.dataTableCellCharacterCountOffset ?? 0;
1274
+ for (const block of presentation.blocks) {
1275
+ if (block.type !== "table") continue;
1276
+ const rendered = buildSlackDataTableBlock(block, { cellCharacterCountOffset: cellCharacterCount });
1277
+ if (!rendered) return false;
1278
+ cellCharacterCount += countSlackDataTableCellCharacters(rendered);
1279
+ }
1280
+ return true;
1281
+ }
1282
+ /** True when native Slack rendering preserves every portable control. */
1283
+ function canRenderSlackPresentation(presentation, options = {}) {
1284
+ if (presentation.title && !isWithinSlackLimit(presentation.title.trim(), 150)) return false;
1285
+ if (!canRenderSlackPresentationTables(presentation, options)) return false;
1286
+ let dataVisualizationCount = options.dataVisualizationCountOffset ?? 0;
1287
+ for (const block of presentation.blocks) {
1288
+ if (block.type === "text" || block.type === "context") {
1289
+ if (!isWithinSlackLimit(block.text.trim(), 3e3)) return false;
1290
+ continue;
1291
+ }
1292
+ if (block.type === "buttons") {
1293
+ if (!(block.buttons.length <= 25 && block.buttons.every((button, choiceIndex) => {
1294
+ if (!isWithinSlackLimit(button.label, 75)) return false;
1295
+ const target = resolveSlackButtonTarget(button, choiceIndex);
1296
+ return target ? target.kind === "link" ? isWithinSlackLimit(target.url, SLACK_BUTTON_URL_MAX) : isWithinSlackLimit(target.value, 2e3) : false;
1297
+ }))) return false;
1298
+ continue;
1299
+ }
1300
+ if (block.type === "select") {
1301
+ if (!(isWithinSlackLimit(normalizeOptionalString(block.placeholder) ?? "Choose an option", 75) && block.options.length <= 100 && (!block.placeholder || isWithinSlackLimit(block.placeholder, 75)) && block.options.every((option) => {
1302
+ if (!isWithinSlackLimit(option.label, 75)) return false;
1303
+ const target = resolveSlackOptionTarget(option);
1304
+ return target ? isRenderableSlackOption({
1305
+ label: option.label,
1306
+ ...target
1307
+ }) : false;
1308
+ }) && new Set(block.options.map((option) => resolveSlackOptionTarget(option)?.kind)).size === 1)) return false;
1309
+ continue;
1310
+ }
1311
+ if (block.type === "chart") {
1312
+ if (dataVisualizationCount >= 2 || !canRenderSlackDataVisualization(block)) return false;
1313
+ dataVisualizationCount += 1;
1314
+ continue;
1315
+ }
1316
+ if (block.type === "table") continue;
1317
+ }
1318
+ return true;
1319
+ }
1320
+ function buildSlackPresentationSelectBlock(block, selectIndex) {
1321
+ const options = block.options.flatMap((option) => {
1322
+ const target = resolveSlackOptionTarget(option);
1323
+ return target ? [{
1324
+ label: option.label,
1325
+ ...target
1326
+ }] : [];
1327
+ }).filter(isRenderableSlackOption).slice(0, 100);
1328
+ const optionKinds = new Set(options.map((option) => option.kind));
1329
+ return options.length > 0 && optionKinds.size === 1 ? {
1330
+ type: "actions",
1331
+ block_id: `openclaw_reply_select_${selectIndex}`,
1332
+ elements: [{
1333
+ type: "static_select",
1334
+ action_id: options[0]?.kind === "approval" ? buildSlackApprovalSelectActionId(selectIndex) : options[0]?.kind === "callback" ? buildSlackCallbackSelectActionId(selectIndex) : buildSlackReplySelectActionId(selectIndex),
1335
+ placeholder: {
1336
+ type: "plain_text",
1337
+ text: truncateSlackText(normalizeOptionalString(block.placeholder) ?? "Choose an option", 75),
1338
+ emoji: true
1339
+ },
1340
+ options: options.map((option) => ({
1341
+ text: {
1342
+ type: "plain_text",
1343
+ text: truncateSlackText(option.label, 75),
1344
+ emoji: true
1345
+ },
1346
+ value: option.value
1347
+ }))
1348
+ }]
1349
+ } : void 0;
1350
+ }
1351
+ //#endregion
1352
+ //#region extensions/slack/src/limits.ts
1353
+ const SLACK_TEXT_LIMIT = 8e3;
1354
+ const SLACK_EDIT_TEXT_MAX_BYTES = 4e3;
1355
+ const SLACK_MESSAGE_TEXT_HARD_LIMIT = 4e4;
1356
+ //#endregion
1357
+ //#region extensions/slack/src/authored-text.ts
1358
+ function normalizeComparableSlackText(text) {
1359
+ return text.trim().replace(/\s+/g, " ");
1360
+ }
1361
+ function isSlackAuthoredTextRepresentedInInteractive(text, interactive) {
1362
+ return isSlackAuthoredTextRepresentedInFragments(text, interactive?.blocks.flatMap((block) => block.type === "text" ? [block.text] : []) ?? []);
1363
+ }
1364
+ function isSlackAuthoredTextRepresentedInFragments(text, rawFragments) {
1365
+ const target = normalizeComparableSlackText(text);
1366
+ const fragments = rawFragments.map(normalizeComparableSlackText).filter(Boolean);
1367
+ for (let start = 0; start < fragments.length; start += 1) {
1368
+ let combined = "";
1369
+ for (let end = start; end < fragments.length; end += 1) {
1370
+ combined = normalizeComparableSlackText(`${combined} ${fragments[end]}`);
1371
+ if (combined === target) return true;
1372
+ if (combined.length > target.length) break;
1373
+ }
1374
+ }
1375
+ return false;
1376
+ }
1377
+ /** Resolve placement from producer facts, before accessibility text changes the payload text. */
1378
+ function resolveSlackAuthoredTextPlacement(params) {
1379
+ const text = normalizeOptionalString(params.text);
1380
+ if (!text) return "none";
1381
+ return params.renderedInBlocks || isSlackAuthoredTextRepresentedInFragments(text, params.renderedTextFragments ?? []) || isSlackAuthoredTextRepresentedInInteractive(text, params.interactive) ? "blocks" : "outside-blocks";
1382
+ }
1383
+ //#endregion
1384
+ //#region extensions/slack/src/blocks-fallback.ts
1385
+ const SLACK_SELECT_ELEMENT_TYPES = /* @__PURE__ */ new Set([
1386
+ "static_select",
1387
+ "multi_static_select",
1388
+ "external_select",
1389
+ "multi_external_select",
1390
+ "users_select",
1391
+ "multi_users_select",
1392
+ "conversations_select",
1393
+ "multi_conversations_select",
1394
+ "channels_select",
1395
+ "multi_channels_select"
1396
+ ]);
1397
+ function asRecord$1(value) {
1398
+ return value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
1399
+ }
1400
+ function readNonEmptyString(value) {
1401
+ if (typeof value !== "string") return;
1402
+ const trimmed = value.trim();
1403
+ return trimmed.length > 0 ? trimmed : void 0;
1404
+ }
1405
+ function readTextObject(value, options = {}) {
1406
+ const record = asRecord$1(value);
1407
+ if (!record) return;
1408
+ const text = readNonEmptyString(record?.text);
1409
+ if (!text) return;
1410
+ return record.type === "plain_text" && options.nativeDataFormat !== "plain" ? escapeSlackMrkdwn(text) : text;
1411
+ }
1412
+ function readTextValue(value, options = {}) {
1413
+ return readNonEmptyString(value) ?? readTextObject(value, options);
1414
+ }
1415
+ function renderSlackRichTextLeaf(element) {
1416
+ switch (element.type) {
1417
+ case "text": return typeof element.text === "string" ? escapeSlackMrkdwn(element.text) : "";
1418
+ case "link": return escapeSlackMrkdwn(readNonEmptyString(element.text) ?? readNonEmptyString(element.url) ?? "");
1419
+ case "user": {
1420
+ const userId = readNonEmptyString(element.user_id);
1421
+ return userId ? escapeSlackMrkdwn(`<@${userId}>`) : "";
1422
+ }
1423
+ case "channel": {
1424
+ const channelId = readNonEmptyString(element.channel_id);
1425
+ return channelId ? escapeSlackMrkdwn(`<#${channelId}>`) : "";
1426
+ }
1427
+ case "usergroup": {
1428
+ const usergroupId = readNonEmptyString(element.usergroup_id);
1429
+ return usergroupId ? escapeSlackMrkdwn(`<!subteam^${usergroupId}>`) : "";
1430
+ }
1431
+ case "broadcast": {
1432
+ const range = readNonEmptyString(element.range);
1433
+ return range ? escapeSlackMrkdwn(`<!${range}>`) : "";
1434
+ }
1435
+ case "emoji": {
1436
+ const name = readNonEmptyString(element.name);
1437
+ return name ? `:${name}:` : "";
1438
+ }
1439
+ case "date": return escapeSlackMrkdwn(readNonEmptyString(element.fallback) ?? "");
1440
+ default: return "";
1441
+ }
1442
+ }
1443
+ function renderSlackRichTextElement(value) {
1444
+ const element = asRecord$1(value);
1445
+ if (!element) return "";
1446
+ switch (element.type) {
1447
+ case "rich_text_section":
1448
+ case "rich_text_preformatted":
1449
+ case "rich_text_quote": return renderSlackRichTextElements(element.elements, "");
1450
+ case "rich_text_list": return renderSlackRichTextElements(element.elements, "\n");
1451
+ default: return renderSlackRichTextLeaf(element);
1452
+ }
1453
+ }
1454
+ function renderSlackRichTextElements(value, separator) {
1455
+ if (!Array.isArray(value)) return "";
1456
+ return value.map(renderSlackRichTextElement).filter(Boolean).join(separator);
1457
+ }
1458
+ function readImageText(block) {
1459
+ const altText = readNonEmptyString(block.alt_text);
1460
+ return (altText ? escapeSlackMrkdwn(altText) : void 0) ?? readTextObject(block.title);
1461
+ }
1462
+ function readVideoText(block, options = {}) {
1463
+ const altText = readNonEmptyString(block.alt_text);
1464
+ return readTextObject(block.title, options) ?? (altText ? escapeSlackMrkdwn(altText) : void 0);
1465
+ }
1466
+ function readContextText(block, options = {}) {
1467
+ if (!Array.isArray(block.elements)) return;
1468
+ const parts = block.elements.map((element) => {
1469
+ const record = asRecord$1(element);
1470
+ const altText = readNonEmptyString(record?.alt_text);
1471
+ return readTextObject(record, options) ?? (altText ? escapeSlackMrkdwn(altText) : void 0);
1472
+ }).filter((part) => Boolean(part));
1473
+ return parts.length > 0 ? parts.join(" ") : void 0;
1474
+ }
1475
+ function readControlElementText(value, options = {}) {
1476
+ const element = asRecord$1(value);
1477
+ const type = readNonEmptyString(element?.type);
1478
+ if (type === "button" || type === "workflow_button") return readTextValue(element?.text, options);
1479
+ if (type && SLACK_SELECT_ELEMENT_TYPES.has(type)) return readTextObject(element?.placeholder, options);
1480
+ }
1481
+ function readControlElementsText(values, options = {}) {
1482
+ const seen = /* @__PURE__ */ new Set();
1483
+ const labels = [];
1484
+ for (const value of values) {
1485
+ const candidate = readControlElementText(value, options);
1486
+ if (!candidate || seen.has(candidate)) continue;
1487
+ seen.add(candidate);
1488
+ labels.push(candidate);
1489
+ }
1490
+ return labels.length > 0 ? labels.join("\n") : void 0;
1491
+ }
1492
+ function readSectionText(block, options = {}) {
1493
+ const parts = [readTextObject(block.text, options)];
1494
+ if (Array.isArray(block.fields)) parts.push(...block.fields.map((field) => readTextObject(field, options)));
1495
+ parts.push(readControlElementText(block.accessory, options));
1496
+ const visibleParts = parts.filter((part) => Boolean(part));
1497
+ return visibleParts.length > 0 ? visibleParts.join("\n") : void 0;
1498
+ }
1499
+ function readActionsText(block, options = {}) {
1500
+ return Array.isArray(block.elements) ? readControlElementsText(block.elements, options) : void 0;
1501
+ }
1502
+ /** Read only user-visible text from one Slack block. */
1503
+ function renderSlackBlockFallbackText(raw, options = {}) {
1504
+ const block = asRecord$1(raw);
1505
+ if (!block) return;
1506
+ switch (block.type) {
1507
+ case "rich_text": return readNonEmptyString(renderSlackRichTextElements(block.elements, "\n"));
1508
+ case "header": return readTextObject(block.text, options);
1509
+ case "section": return readSectionText(block, options);
1510
+ case "image": return readImageText(block) ?? "Shared an image";
1511
+ case "video": return readVideoText(block, options) ?? "Shared a video";
1512
+ case "file": return "Shared a file";
1513
+ case "context": return readContextText(block, options);
1514
+ case "actions": return readActionsText(block, options);
1515
+ case "data_visualization": return options.nativeDataFormat === "plain" ? renderSlackDataVisualizationFallbackText(block) : renderSlackDataVisualizationMrkdwnFallbackText(block);
1516
+ case "data_table": return options.nativeDataFormat === "plain" ? renderSlackDataTableFallbackText(block) : renderSlackDataTableMrkdwnFallbackText(block);
1517
+ case "table": return options.nativeDataFormat === "plain" ? renderSlackTableFallbackText(block) : renderSlackTableMrkdwnFallbackText(block);
1518
+ default: return;
1519
+ }
1520
+ }
1521
+ function buildSlackBlocksFallbackText(blocks) {
1522
+ for (const block of blocks) {
1523
+ const text = renderSlackBlockFallbackText(block);
1524
+ if (text) return text;
1525
+ }
1526
+ return "Shared a Block Kit message";
1527
+ }
1528
+ function buildSlackCompleteBlocksFallbackText(blocks) {
1529
+ return blocks.map((block) => renderSlackBlockFallbackText(block)).filter(Boolean).join("\n\n").trim() || buildSlackBlocksFallbackText(blocks);
1530
+ }
1531
+ //#endregion
1532
+ //#region extensions/slack/src/format.ts
1533
+ function escapeSlackMrkdwnSegment(text) {
1534
+ return text.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
1535
+ }
1536
+ const SLACK_ANGLE_TOKEN_RE = /<[^>\n]+>/g;
1537
+ function isAllowedSlackAngleToken(token) {
1538
+ if (!token.startsWith("<") || !token.endsWith(">")) return false;
1539
+ const inner = token.slice(1, -1);
1540
+ return inner.startsWith("@") || inner.startsWith("#") || inner.startsWith("!") || inner.startsWith("mailto:") || inner.startsWith("tel:") || inner.startsWith("http://") || inner.startsWith("https://") || inner.startsWith("slack://");
1541
+ }
1542
+ function escapeSlackMrkdwnContent(text) {
1543
+ if (!text) return "";
1544
+ if (!text.includes("&") && !text.includes("<") && !text.includes(">")) return text;
1545
+ SLACK_ANGLE_TOKEN_RE.lastIndex = 0;
1546
+ const out = [];
1547
+ let lastIndex = 0;
1548
+ for (let match = SLACK_ANGLE_TOKEN_RE.exec(text); match; match = SLACK_ANGLE_TOKEN_RE.exec(text)) {
1549
+ const matchIndex = match.index ?? 0;
1550
+ out.push(escapeSlackMrkdwnSegment(text.slice(lastIndex, matchIndex)));
1551
+ const token = match[0] ?? "";
1552
+ out.push(isAllowedSlackAngleToken(token) ? token : escapeSlackMrkdwnSegment(token));
1553
+ lastIndex = matchIndex + token.length;
1554
+ }
1555
+ out.push(escapeSlackMrkdwnSegment(text.slice(lastIndex)));
1556
+ return out.join("");
1557
+ }
1558
+ function escapeSlackMrkdwnText(text) {
1559
+ if (!text) return "";
1560
+ if (!text.includes("&") && !text.includes("<") && !text.includes(">")) return text;
1561
+ return text.split("\n").map((line) => {
1562
+ if (line.startsWith("> ")) return `> ${escapeSlackMrkdwnContent(line.slice(2))}`;
1563
+ return escapeSlackMrkdwnContent(line);
1564
+ }).join("\n");
1565
+ }
1566
+ function buildSlackLink(link, text) {
1567
+ const href = link.href.trim();
1568
+ if (!href) return null;
1569
+ const trimmedLabel = text.slice(link.start, link.end).trim();
1570
+ const comparableHref = href.startsWith("mailto:") ? href.slice(7) : href;
1571
+ if (!(trimmedLabel.length > 0 && trimmedLabel !== href && trimmedLabel !== comparableHref)) return null;
1572
+ const safeHref = escapeSlackMrkdwnSegment(href);
1573
+ return {
1574
+ start: link.start,
1575
+ end: link.end,
1576
+ open: `<${safeHref}|`,
1577
+ close: ">"
1578
+ };
1579
+ }
1580
+ const SLACK_MRKDWN_WORD_CHARACTER_RE = /[\p{L}\p{M}\p{N}_]/u;
1581
+ const SLACK_MRKDWN_PUNCTUATION_RE = /\p{P}/u;
1582
+ const SLACK_MRKDWN_SYMBOL_RE = /\p{S}/u;
1583
+ const SLACK_MRKDWN_CJK_SCRIPT_RE = /[\p{Script_Extensions=Han}\p{Script_Extensions=Hiragana}\p{Script_Extensions=Katakana}\p{Script_Extensions=Hangul}]/u;
1584
+ const SLACK_MRKDWN_EMOJI_PRESENTATION_RE = /\p{Emoji_Presentation}/u;
1585
+ function getCodePointBefore(text, index) {
1586
+ if (index <= 0) return "";
1587
+ const lastCodeUnit = text.charCodeAt(index - 1);
1588
+ if (lastCodeUnit >= 56320 && lastCodeUnit <= 57343 && index > 1) {
1589
+ const previousCodeUnit = text.charCodeAt(index - 2);
1590
+ if (previousCodeUnit >= 55296 && previousCodeUnit <= 56319) return text.slice(index - 2, index);
1591
+ }
1592
+ return text[index - 1] ?? "";
1593
+ }
1594
+ function getCodePointAt(text, index) {
1595
+ const codePoint = text.codePointAt(index);
1596
+ return codePoint === void 0 ? "" : String.fromCodePoint(codePoint);
1597
+ }
1598
+ function isSlackCjkPunctuation(character) {
1599
+ if (!SLACK_MRKDWN_PUNCTUATION_RE.test(character)) return false;
1600
+ if (SLACK_MRKDWN_CJK_SCRIPT_RE.test(character)) return true;
1601
+ const codePoint = character.codePointAt(0);
1602
+ if (codePoint === void 0) return false;
1603
+ const width = eastAsianWidthType(codePoint);
1604
+ return width === "fullwidth" || width === "halfwidth" || width === "wide" && !SLACK_MRKDWN_EMOJI_PRESENTATION_RE.test(character);
1605
+ }
1606
+ function isUnsafeSlackEmphasisBoundary(character) {
1607
+ if (SLACK_MRKDWN_WORD_CHARACTER_RE.test(character)) return true;
1608
+ const codePoint = character.codePointAt(0);
1609
+ if (codePoint === void 0 || codePoint <= 127) return false;
1610
+ return SLACK_MRKDWN_SYMBOL_RE.test(character) || isSlackCjkPunctuation(character);
1611
+ }
1612
+ function makeSlackEmphasisStylesSafe(ir) {
1613
+ const styles = ir.styles.filter((span) => {
1614
+ if (span.style !== "italic" && span.style !== "bold") return true;
1615
+ return !isUnsafeSlackEmphasisBoundary(getCodePointBefore(ir.text, span.start)) && !isUnsafeSlackEmphasisBoundary(getCodePointAt(ir.text, span.end));
1616
+ });
1617
+ return styles.length === ir.styles.length ? ir : {
1618
+ ...ir,
1619
+ styles
1620
+ };
1621
+ }
1622
+ const SLACK_FORMAT_PROFILE = FormatCapabilityProfile.define({
1623
+ mechanism: "markdown",
1624
+ constructs: {
1625
+ underline: "strip",
1626
+ spoiler: "fallback",
1627
+ codeLanguage: "fallback",
1628
+ heading: "fallback",
1629
+ bulletList: "fallback",
1630
+ orderedList: "fallback",
1631
+ taskList: "fallback",
1632
+ table: "fallback",
1633
+ image: "fallback"
1634
+ },
1635
+ chunk: {
1636
+ limit: 4e3,
1637
+ unit: "chars",
1638
+ hardCap: 4e4
1639
+ }
1640
+ });
1641
+ const SLACK_ASSISTANT_TRANSCRIPT_PREFIX = "`Assistant:` ";
1642
+ function tokenizeSlackMrkdwn(text) {
1643
+ const tokens = [];
1644
+ for (let index = 0; index < text.length;) {
1645
+ if (text.startsWith("```", index)) {
1646
+ tokens.push("```");
1647
+ index += 3;
1648
+ continue;
1649
+ }
1650
+ const entity = [
1651
+ "&amp;",
1652
+ "&lt;",
1653
+ "&gt;"
1654
+ ].find((candidate) => text.startsWith(candidate, index));
1655
+ if (entity) {
1656
+ tokens.push(entity);
1657
+ index += entity.length;
1658
+ continue;
1659
+ }
1660
+ if (text[index] === "<") {
1661
+ const end = text.indexOf(">", index + 1);
1662
+ const angleToken = end >= 0 ? text.slice(index, end + 1) : void 0;
1663
+ if (angleToken && !angleToken.includes("\n") && isAllowedSlackAngleToken(angleToken)) {
1664
+ tokens.push(angleToken);
1665
+ index += angleToken.length;
1666
+ continue;
1667
+ }
1668
+ }
1669
+ const codePoint = text.codePointAt(index);
1670
+ if (codePoint === void 0) break;
1671
+ const character = String.fromCodePoint(codePoint);
1672
+ index += character.length;
1673
+ if (character === "\\" && index < text.length) {
1674
+ const escapedCodePoint = text.codePointAt(index);
1675
+ if (escapedCodePoint !== void 0) {
1676
+ const escapedCharacter = String.fromCodePoint(escapedCodePoint);
1677
+ tokens.push(character + escapedCharacter);
1678
+ index += escapedCharacter.length;
1679
+ continue;
1680
+ }
1681
+ }
1682
+ tokens.push(character);
1683
+ }
1684
+ return tokens;
1685
+ }
1686
+ function resolveSlackCodeMarkerTransition(active, token) {
1687
+ if (token === "```" && active !== "`") return active === "```" ? void 0 : "```";
1688
+ if (token === "`" && active !== "```") return active === "`" ? void 0 : "`";
1689
+ return null;
1690
+ }
1691
+ function maskSlackExcludedText(text) {
1692
+ return text.split("\n").map((line) => line.trim() ? `x${" ".repeat(Math.max(0, line.length - 1))}` : " ".repeat(line.length)).join("\n");
1693
+ }
1694
+ function maskSlackExcludedRanges(projection) {
1695
+ let masked = "";
1696
+ let cursor = 0;
1697
+ for (const range of projection.excludedRanges) {
1698
+ masked += projection.text.slice(cursor, range.start);
1699
+ masked += maskSlackExcludedText(projection.text.slice(range.start, range.end));
1700
+ cursor = range.end;
1701
+ }
1702
+ return masked + projection.text.slice(cursor);
1703
+ }
1704
+ function slackProjectionHasRoleHeader(projection) {
1705
+ return Boolean(markdownToIR(maskSlackExcludedRanges(projection), {
1706
+ assistantTranscriptRoleHeaders: true,
1707
+ autolink: false,
1708
+ blockquotePrefix: "",
1709
+ headingStyle: "none",
1710
+ linkify: false,
1711
+ tableMode: "off"
1712
+ }).annotations?.some((annotation) => annotation.type === "assistant_transcript_role"));
1713
+ }
1714
+ function decodeSlackMrkdwnEntities(text) {
1715
+ return text.replaceAll("&amp;", "&").replaceAll("&lt;", "<").replaceAll("&gt;", ">");
1716
+ }
1717
+ function projectSlackAngleToken(token, dateDisplay) {
1718
+ const inner = token.slice(1, -1);
1719
+ if (inner.startsWith("!date^")) {
1720
+ const fallbackSeparator = inner.indexOf("|");
1721
+ const tokenString = (fallbackSeparator === -1 ? inner : inner.slice(0, fallbackSeparator)).split("^")[2] ?? "";
1722
+ const fallback = fallbackSeparator === -1 ? "" : inner.slice(fallbackSeparator + 1);
1723
+ return decodeSlackMrkdwnEntities(dateDisplay === "fallback" ? fallback || tokenString : tokenString || fallback);
1724
+ }
1725
+ const labelSeparator = inner.indexOf("|");
1726
+ if (labelSeparator >= 0) return decodeSlackMrkdwnEntities(inner.slice(labelSeparator + 1));
1727
+ if (inner.startsWith("@")) return "@";
1728
+ if (inner.startsWith("#")) return "#";
1729
+ if (inner.startsWith("!")) return "!";
1730
+ return decodeSlackMrkdwnEntities(inner);
1731
+ }
1732
+ function appendSlackVisibleProjection(projection, visible, excluded) {
1733
+ if (!visible) return;
1734
+ const start = projection.text.length;
1735
+ projection.text += visible;
1736
+ if (!excluded) return;
1737
+ const previous = projection.excludedRanges.at(-1);
1738
+ if (previous?.end === start) previous.end = projection.text.length;
1739
+ else projection.excludedRanges.push({
1740
+ start,
1741
+ end: projection.text.length
1742
+ });
1743
+ }
1744
+ function projectSlackMrkdwnVisibleText(text, dateDisplay) {
1745
+ const projection = {
1746
+ text: "",
1747
+ excludedRanges: []
1748
+ };
1749
+ let activeMarker;
1750
+ let lineHasVisibleContent = false;
1751
+ for (const token of tokenizeSlackMrkdwn(text)) {
1752
+ const transition = resolveSlackCodeMarkerTransition(activeMarker, token);
1753
+ if (transition !== null) {
1754
+ activeMarker = transition;
1755
+ continue;
1756
+ }
1757
+ let visible = token;
1758
+ if (isAllowedSlackAngleToken(token)) visible = activeMarker ? token : projectSlackAngleToken(token, dateDisplay);
1759
+ else if (token === "&amp;" || token === "&lt;" || token === "&gt;") visible = decodeSlackMrkdwnEntities(token);
1760
+ else if (!activeMarker && (token === "*" || token === "_" || token === "~")) visible = "";
1761
+ else if (!activeMarker && token === ">" && !lineHasVisibleContent) visible = "";
1762
+ else if (token.startsWith("\\") && token.length > 1) visible = token.slice(1);
1763
+ appendSlackVisibleProjection(projection, visible, activeMarker !== void 0);
1764
+ for (const character of visible) if (character === "\n") lineHasVisibleContent = false;
1765
+ else if (character !== " " && character !== " " && character !== "\r") lineHasVisibleContent = true;
1766
+ }
1767
+ return projection;
1768
+ }
1769
+ function protectSlackAssistantTranscriptRoleHeaders(text) {
1770
+ if (text.startsWith(SLACK_ASSISTANT_TRANSCRIPT_PREFIX)) return text;
1771
+ const tokenProjection = projectSlackMrkdwnVisibleText(text, "token");
1772
+ const fallbackProjection = projectSlackMrkdwnVisibleText(text, "fallback");
1773
+ if (!slackProjectionHasRoleHeader(tokenProjection) && !slackProjectionHasRoleHeader(fallbackProjection)) return text;
1774
+ return `${SLACK_ASSISTANT_TRANSCRIPT_PREFIX}${text}`;
1775
+ }
1776
+ function hardSliceSlackToken(token, limit) {
1777
+ const chunks = [];
1778
+ let chunk = "";
1779
+ for (const character of token) {
1780
+ if (chunk && chunk.length + character.length > limit) {
1781
+ chunks.push(chunk);
1782
+ chunk = "";
1783
+ }
1784
+ chunk += character;
1785
+ }
1786
+ if (chunk) chunks.push(chunk);
1787
+ return chunks;
1788
+ }
1789
+ function buildSlackRenderOptions() {
1790
+ return {
1791
+ annotationMarkers: { assistant_transcript_role: {
1792
+ open: "`",
1793
+ close: "`",
1794
+ suppressNestedFormatting: true
1795
+ } },
1796
+ styleMarkers: {
1797
+ bold: {
1798
+ open: "*",
1799
+ close: "*"
1800
+ },
1801
+ italic: {
1802
+ open: "_",
1803
+ close: "_"
1804
+ },
1805
+ strikethrough: {
1806
+ open: "~",
1807
+ close: "~"
1808
+ },
1809
+ code: {
1810
+ open: "`",
1811
+ close: "`"
1812
+ },
1813
+ code_block: {
1814
+ open: "```\n",
1815
+ close: "```"
1816
+ }
1817
+ },
1818
+ escapeText: escapeSlackMrkdwnText,
1819
+ buildLink: buildSlackLink
1820
+ };
1821
+ }
1822
+ function markdownToSlackMrkdwn(markdown, options = {}) {
1823
+ return renderMarkdownWithMarkers(makeSlackEmphasisStylesSafe(markdownToIR(markdown ?? "", {
1824
+ assistantTranscriptRoleHeaders: true,
1825
+ linkify: false,
1826
+ autolink: false,
1827
+ headingStyle: "rich",
1828
+ blockquotePrefix: "> ",
1829
+ tableMode: options.tableMode
1830
+ })), buildSlackRenderOptions(), SLACK_FORMAT_PROFILE);
1831
+ }
1832
+ function normalizeSlackOutboundText(markdown) {
1833
+ return protectSlackAssistantTranscriptRoleHeaders(markdownToSlackMrkdwn(markdown ?? ""));
1834
+ }
1835
+ /** Chunk already-rendered Slack mrkdwn without splitting entities or code markers. */
1836
+ function chunkSlackMrkdwnText(text, limit) {
1837
+ if (text.length <= limit) return [text];
1838
+ if (!(text.includes("`") || text.includes("&amp;") || text.includes("&lt;") || text.includes("&gt;") || (text.match(/<[^>\n]+>/gu)?.some(isAllowedSlackAngleToken) ?? false) || /\\[\s\S]/u.test(text))) return chunkTextForOutbound(text, limit);
1839
+ const chunks = [];
1840
+ let activeMarker;
1841
+ let content = "";
1842
+ const wrapper = () => activeMarker && limit > activeMarker.length * 2 ? activeMarker : void 0;
1843
+ const capacity = () => limit - (wrapper()?.length ?? 0) * 2;
1844
+ const flush = () => {
1845
+ if (!content) return;
1846
+ const marker = wrapper();
1847
+ chunks.push(marker ? `${marker}${content}${marker}` : content);
1848
+ content = "";
1849
+ };
1850
+ for (const token of tokenizeSlackMrkdwn(text)) {
1851
+ const transition = resolveSlackCodeMarkerTransition(activeMarker, token);
1852
+ if (transition !== null) {
1853
+ flush();
1854
+ activeMarker = transition;
1855
+ continue;
1856
+ }
1857
+ const contentLimit = capacity();
1858
+ if (token.length > contentLimit) {
1859
+ flush();
1860
+ const marker = wrapper();
1861
+ if (activeMarker && isAllowedSlackAngleToken(token)) {
1862
+ if (marker) chunks.push(...hardSliceSlackToken(token, contentLimit).map((fragment) => `${marker}${fragment}${marker}`));
1863
+ else chunks.push(...hardSliceSlackToken(escapeSlackMrkdwnSegment(token), limit));
1864
+ continue;
1865
+ }
1866
+ chunks.push(...token.length <= limit ? [token] : chunkTextForOutbound(token, limit));
1867
+ continue;
1868
+ }
1869
+ if (content && content.length + token.length > contentLimit) flush();
1870
+ content += token;
1871
+ }
1872
+ flush();
1873
+ return chunks;
1874
+ }
1875
+ function markdownToSlackMrkdwnChunks(markdown, limit, options = {}) {
1876
+ const ir = makeSlackEmphasisStylesSafe(markdownToIR(markdown ?? "", {
1877
+ assistantTranscriptRoleHeaders: true,
1878
+ linkify: false,
1879
+ autolink: false,
1880
+ headingStyle: "rich",
1881
+ blockquotePrefix: "> ",
1882
+ tableMode: options.tableMode
1883
+ }));
1884
+ const renderOptions = buildSlackRenderOptions();
1885
+ return renderMarkdownIRChunksWithinLimit({
1886
+ ir,
1887
+ limit,
1888
+ renderChunk: (chunk) => protectSlackAssistantTranscriptRoleHeaders(renderMarkdownWithMarkers(chunk, renderOptions, SLACK_FORMAT_PROFILE)),
1889
+ measureRendered: (rendered) => rendered.length
1890
+ }).map(({ rendered }) => rendered);
1891
+ }
1892
+ //#endregion
1893
+ //#region extensions/slack/src/native-data-blocks.ts
1894
+ const SLACK_MALFORMED_NATIVE_DATA_FALLBACK = "Slack could not render this chart or table data.";
1895
+ const SLACK_RESPONSE_URL_BODY_LIMIT_BYTES = 16 * 1024;
1896
+ const SLACK_RESPONSE_URL_BODY_TIMEOUT_MS = 3e4;
1897
+ function asRecord(value) {
1898
+ return value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
1899
+ }
1900
+ /** Detect a native Slack chart or table block. */
1901
+ function hasSlackNativeDataBlock(blocks) {
1902
+ return hasSlackDataVisualizationBlock(blocks) || hasSlackDataTableBlock(blocks);
1903
+ }
1904
+ /** Keep every sibling block while removing Slack's native data blocks. */
1905
+ function stripSlackNativeDataBlocks(blocks) {
1906
+ return (blocks ?? []).filter((block) => {
1907
+ const type = asRecord(block)?.type;
1908
+ return type !== "data_table" && type !== "data_visualization";
1909
+ });
1910
+ }
1911
+ /** Match Slack's Web API and response_url `invalid_blocks` error shapes. */
1912
+ function isSlackInvalidBlocksError(error) {
1913
+ const record = asRecord(error);
1914
+ const rawData = record?.data;
1915
+ const data = asRecord(rawData);
1916
+ const rawResponseData = asRecord(record?.response)?.data;
1917
+ const responseData = asRecord(rawResponseData);
1918
+ const code = data?.error ?? (typeof rawData === "string" ? rawData : void 0) ?? responseData?.error ?? (typeof rawResponseData === "string" ? rawResponseData : void 0) ?? record?.error;
1919
+ return typeof code === "string" && code.trim().toLowerCase() === "invalid_blocks";
1920
+ }
1921
+ function isSlackResponseLike(value) {
1922
+ const record = asRecord(value);
1923
+ const body = asRecord(record?.body);
1924
+ return typeof record?.status === "number" && (typeof record.arrayBuffer === "function" || typeof body?.getReader === "function");
1925
+ }
1926
+ /** Consume Bolt 5's native response_url body under strict time and byte bounds. */
1927
+ async function isSlackInvalidBlocksResponse(response) {
1928
+ if (!isSlackResponseLike(response)) return isSlackInvalidBlocksError(response);
1929
+ try {
1930
+ const body = await readResponseTextLimited(response, SLACK_RESPONSE_URL_BODY_LIMIT_BYTES, { timeoutMs: SLACK_RESPONSE_URL_BODY_TIMEOUT_MS });
1931
+ if (body.trim().toLowerCase() === "invalid_blocks") return true;
1932
+ return isSlackInvalidBlocksError(JSON.parse(body));
1933
+ } catch {
1934
+ return false;
1935
+ }
1936
+ }
1937
+ /** Bolt 5 omits the response body from RespondError; 400 is contextual here. */
1938
+ function isSlackNativeResponseUrlRejection(error) {
1939
+ if (isSlackInvalidBlocksError(error)) return true;
1940
+ const record = asRecord(error);
1941
+ return record?.code === "slack_bolt_respond_error" && record.statusCode === 400;
1942
+ }
1943
+ /** Extract a complete accessible summary from a supported native data block. */
1944
+ function renderSlackNativeDataFallbackText(value) {
1945
+ const type = asRecord(value)?.type;
1946
+ if (type === "data_visualization") return renderSlackDataVisualizationMrkdwnFallbackText(value);
1947
+ if (type === "data_table") return renderSlackDataTableMrkdwnFallbackText(value);
1948
+ }
1949
+ function comparableText(value) {
1950
+ return value.replace(/\s+/gu, " ").trim();
1951
+ }
1952
+ function countComparableOccurrences(value, candidate) {
1953
+ if (!candidate) return 0;
1954
+ let count = 0;
1955
+ let offset = 0;
1956
+ while ((offset = value.indexOf(candidate, offset)) >= 0) {
1957
+ count += 1;
1958
+ offset += candidate.length;
1959
+ }
1960
+ return count;
1961
+ }
1962
+ /** Consume native fallback occurrences already carried by an explicit outside base. */
1963
+ function createSlackNativeDataBaseTextConsumer(baseText) {
1964
+ const comparableBase = comparableText(baseText);
1965
+ const remainingByText = /* @__PURE__ */ new Map();
1966
+ return (text) => {
1967
+ const comparable = comparableText(text);
1968
+ const remaining = remainingByText.get(comparable) ?? countComparableOccurrences(comparableBase, comparable);
1969
+ if (remaining <= 0) return false;
1970
+ remainingByText.set(comparable, remaining - 1);
1971
+ return true;
1972
+ };
1973
+ }
1974
+ function appendSlackNativeDataFallback(text, blocks, render) {
1975
+ const base = text.trim();
1976
+ const consumeFromBase = createSlackNativeDataBaseTextConsumer(base);
1977
+ const dataTexts = [];
1978
+ for (const block of blocks ?? []) {
1979
+ const dataText = render(block);
1980
+ if (!dataText) continue;
1981
+ if (!comparableText(dataText) || consumeFromBase(dataText)) continue;
1982
+ dataTexts.push(dataText);
1983
+ }
1984
+ return [base, ...dataTexts].filter(Boolean).join("\n\n");
1985
+ }
1986
+ function renderSlackNativeDataPlainTextBlock(value) {
1987
+ const type = asRecord(value)?.type;
1988
+ if (type === "data_table") return renderSlackDataTableCompactPlainTextFallback(value);
1989
+ if (type === "data_visualization") return renderSlackDataVisualizationFallbackText(value);
1990
+ }
1991
+ /** Build formatting-disabled accessibility text from actual Slack block order. */
1992
+ function buildSlackNativeDataAccessibilityText(text, blocks) {
1993
+ const parts = [];
1994
+ const consumeFromBase = createSlackNativeDataBaseTextConsumer(text);
1995
+ const append = (value) => {
1996
+ if (value?.trim()) parts.push(value);
1997
+ };
1998
+ append(text);
1999
+ for (const block of blocks ?? []) {
2000
+ const isNativeData = hasSlackNativeDataBlock([block]);
2001
+ const rendered = renderSlackNativeDataPlainTextBlock(block) ?? renderSlackBlockFallbackText(block, { nativeDataFormat: "plain" }) ?? (isNativeData ? "Slack could not render this chart or table data." : void 0);
2002
+ if (!rendered || isNativeData && consumeFromBase(rendered)) continue;
2003
+ append(rendered);
2004
+ }
2005
+ return parts.join("\n\n");
2006
+ }
2007
+ /** Preserve every native data block's content once when Slack requires a text-only retry. */
2008
+ function appendSlackNativeDataFallbackText(text, blocks) {
2009
+ return appendSlackNativeDataFallback(text, blocks, renderSlackNativeDataFallbackText);
2010
+ }
2011
+ /** Build a bounded plain-text retry without activating control tokens. */
2012
+ function appendSlackNativeDataPlainTextFallback(text, blocks) {
2013
+ return appendSlackNativeDataFallback(text, blocks, renderSlackNativeDataPlainTextBlock);
2014
+ }
2015
+ //#endregion
2016
+ //#region extensions/slack/src/reply-blocks.ts
2017
+ function parseSlackReplyBlockSegments(value) {
2018
+ if (value === void 0) return;
2019
+ if (!Array.isArray(value)) throw new Error("Slack rendered presentation segments must be an array");
2020
+ return value.map((raw) => {
2021
+ if (!raw || typeof raw !== "object" || Array.isArray(raw)) throw new Error("Slack rendered presentation segment must be an object");
2022
+ const segment = raw;
2023
+ if (segment.kind === "text" && typeof segment.text === "string" && segment.mrkdwn === false) return {
2024
+ kind: "text",
2025
+ text: segment.text,
2026
+ mrkdwn: false
2027
+ };
2028
+ if (segment.kind === "blocks") {
2029
+ const blocks = parseSlackBlocksInput(segment.blocks);
2030
+ if (blocks?.length) return {
2031
+ kind: "blocks",
2032
+ blocks
2033
+ };
2034
+ }
2035
+ throw new Error("Slack rendered presentation segment is invalid");
2036
+ });
2037
+ }
2038
+ /** Convert compiled segments into ordered sender calls without re-inferring text placement. */
2039
+ function resolveSlackReplyDeliveryMessages(params) {
2040
+ const messages = [];
2041
+ let outsideText = params.authoredTextPlacement === "outside-blocks" ? params.text?.trim() ?? "" : "";
2042
+ for (const segment of params.segments) {
2043
+ if (segment.kind === "text") {
2044
+ const text = [outsideText, segment.text].filter(Boolean).join("\n\n");
2045
+ outsideText = "";
2046
+ if (text) messages.push({
2047
+ text,
2048
+ textIsSlackPlainText: true
2049
+ });
2050
+ continue;
2051
+ }
2052
+ const baseText = outsideText;
2053
+ outsideText = "";
2054
+ const text = buildSlackNativeDataAccessibilityText(baseText, segment.blocks) || buildSlackBlocksFallbackText(segment.blocks);
2055
+ const authoredTextPlacement = baseText ? "outside-blocks" : params.authoredTextPlacement === "blocks" ? "blocks" : "none";
2056
+ messages.push({
2057
+ text,
2058
+ blocks: segment.blocks,
2059
+ authoredTextPlacement,
2060
+ ...baseText ? { nativeDataFallbackBaseText: baseText } : {}
2061
+ });
2062
+ }
2063
+ if (outsideText) messages.push({ text: outsideText });
2064
+ return messages;
2065
+ }
2066
+ function resolveSlackReplyText(payload, text = payload.text) {
2067
+ const presentation = normalizeMessagePresentation(payload.presentation);
2068
+ return presentation ? renderSlackMessagePresentationFallbackText({
2069
+ text,
2070
+ presentation
2071
+ }) : text ?? "";
2072
+ }
2073
+ function resolveSlackReplyRenderPlan(payload, text = payload.text) {
2074
+ const hasStructuredContent = hasSlackReplyStructuredContent(payload);
2075
+ const resolution = resolveSlackReplyBlockResolution({
2076
+ ...payload,
2077
+ text
2078
+ }, { materializeAuthoredText: hasStructuredContent });
2079
+ const messages = resolveSlackReplyDeliveryMessages({
2080
+ authoredTextPlacement: resolution.authoredTextPlacement,
2081
+ segments: resolution.segments,
2082
+ text
2083
+ });
2084
+ if (messages.length <= 1) {
2085
+ const [message] = messages;
2086
+ const sourceText = text?.trim() ?? "";
2087
+ const blocks = message?.authoredTextPlacement === "blocks" ? addPreviewVerbatimToAuthoredTextBlocks(message.blocks, sourceText) : message?.blocks;
2088
+ let renderedText = message?.text ?? resolveSlackReplyText(payload, text);
2089
+ let textIsSlackMrkdwn = Boolean(message && !message.textIsSlackPlainText && (message.authoredTextPlacement !== "outside-blocks" || message.nativeDataFallbackBaseText));
2090
+ if (blocks?.length && sourceText) {
2091
+ if (hasSlackNativeDataBlock(blocks)) {
2092
+ renderedText = appendSlackNativeDataFallbackText(sourceText, blocks) || renderedText;
2093
+ textIsSlackMrkdwn = true;
2094
+ } else if (message?.authoredTextPlacement === "blocks") {
2095
+ renderedText = sourceText;
2096
+ textIsSlackMrkdwn = false;
2097
+ }
2098
+ }
2099
+ return {
2100
+ mode: "single",
2101
+ text: renderedText,
2102
+ ...blocks ? { blocks } : {},
2103
+ ...textIsSlackMrkdwn ? { textIsSlackMrkdwn: true } : {}
2104
+ };
2105
+ }
2106
+ const blockPart = messages.find((message) => message.blocks?.length);
2107
+ return {
2108
+ mode: "split",
2109
+ fallbackText: messages.map((message) => message.text).filter(Boolean).join("\n\n"),
2110
+ ...blockPart ? { blockPart: {
2111
+ text: blockPart.text,
2112
+ blocks: blockPart.blocks
2113
+ } } : {}
2114
+ };
2115
+ }
2116
+ function readSlackChannelBlocks(payload) {
2117
+ const slackData = payload.channelData?.slack;
2118
+ if (!slackData || typeof slackData !== "object" || Array.isArray(slackData)) return [];
2119
+ return parseSlackBlocksInput(slackData.blocks) ?? [];
2120
+ }
2121
+ function hasSlackReplyStructuredContent(payload) {
2122
+ return Boolean(readSlackChannelBlocks(payload).length || normalizeMessagePresentation(payload.presentation) || payload.interactive?.blocks.length);
2123
+ }
2124
+ function renderSlackAuthoredTextFragments(blocks) {
2125
+ return blocks.flatMap((block) => {
2126
+ if (block.type === "actions") return [];
2127
+ const text = renderSlackBlockFallbackText(block, { nativeDataFormat: "plain" });
2128
+ return text ? [text] : [];
2129
+ });
2130
+ }
2131
+ function buildSlackAuthoredTextBlocks(text) {
2132
+ return markdownToSlackMrkdwnChunks(text, SLACK_SECTION_TEXT_MAX).map((chunk) => ({
2133
+ type: "section",
2134
+ text: {
2135
+ type: "mrkdwn",
2136
+ text: chunk,
2137
+ verbatim: true
2138
+ }
2139
+ }));
2140
+ }
2141
+ function addPreviewVerbatimToAuthoredTextBlocks(blocks, sourceText) {
2142
+ if (!blocks?.length || !sourceText) return blocks;
2143
+ const authoredChunks = new Set(markdownToSlackMrkdwnChunks(sourceText, SLACK_SECTION_TEXT_MAX));
2144
+ return blocks.map((block) => {
2145
+ const text = block.text;
2146
+ if (block.type !== "section" || text?.type !== "mrkdwn" || typeof text.text !== "string" || !authoredChunks.has(text.text)) return block;
2147
+ return {
2148
+ ...block,
2149
+ text: {
2150
+ ...text,
2151
+ verbatim: true
2152
+ }
2153
+ };
2154
+ });
2155
+ }
2156
+ function readLastBlockSegment(segments) {
2157
+ const last = segments.at(-1);
2158
+ return last?.kind === "blocks" ? last.blocks : [];
2159
+ }
2160
+ function readAllNativeBlocks(segments) {
2161
+ return segments.flatMap((segment) => segment.kind === "blocks" ? segment.blocks : []);
2162
+ }
2163
+ function appendTextSegment(segments, text) {
2164
+ const trimmed = text.trim();
2165
+ if (!trimmed) return;
2166
+ const last = segments.at(-1);
2167
+ if (last?.kind === "text") {
2168
+ last.text = `${last.text}\n\n${trimmed}`;
2169
+ return;
2170
+ }
2171
+ segments.push({
2172
+ kind: "text",
2173
+ text: trimmed,
2174
+ mrkdwn: false
2175
+ });
2176
+ }
2177
+ function appendBlockSegment(segments, blocks, startNew = false) {
2178
+ let shouldStartNew = startNew;
2179
+ for (const block of blocks) {
2180
+ const last = segments.at(-1);
2181
+ if (!shouldStartNew && last?.kind === "blocks" && last.blocks.length < 50) last.blocks.push(block);
2182
+ else segments.push({
2183
+ kind: "blocks",
2184
+ blocks: [block]
2185
+ });
2186
+ shouldStartNew = false;
2187
+ }
2188
+ }
2189
+ function resolvePresentationRenderOptions(segments, mode) {
2190
+ const allOffsets = resolveSlackBlockOffsets(readAllNativeBlocks(segments));
2191
+ return {
2192
+ ...mode === "current" ? resolveSlackBlockOffsets(readLastBlockSegment(segments)) : {},
2193
+ buttonIndexOffset: allOffsets.buttonIndexOffset,
2194
+ selectIndexOffset: allOffsets.selectIndexOffset
2195
+ };
2196
+ }
2197
+ function renderNativePresentation(presentation, options) {
2198
+ if (!canRenderSlackPresentation(presentation, options)) return;
2199
+ const blocks = buildSlackPresentationBlocks(presentation, options);
2200
+ return blocks.length > 0 ? blocks : void 0;
2201
+ }
2202
+ function appendPresentationPart(segments, presentation) {
2203
+ const currentBlocks = readLastBlockSegment(segments);
2204
+ const currentRendered = renderNativePresentation(presentation, resolvePresentationRenderOptions(segments, "current"));
2205
+ if (currentRendered && currentBlocks.length + currentRendered.length <= 50) {
2206
+ appendBlockSegment(segments, currentRendered);
2207
+ return;
2208
+ }
2209
+ const freshRendered = renderNativePresentation(presentation, resolvePresentationRenderOptions(segments, "new-message"));
2210
+ if (freshRendered) {
2211
+ appendBlockSegment(segments, freshRendered, true);
2212
+ return;
2213
+ }
2214
+ appendTextSegment(segments, renderMessagePresentationFallbackText({ presentation }));
2215
+ }
2216
+ const SLACK_BUTTON_CONTROL_ACTION_IDS = [
2217
+ SLACK_APPROVAL_BUTTON_ACTION_ID,
2218
+ SLACK_CALLBACK_BUTTON_ACTION_ID,
2219
+ SLACK_REPLY_BUTTON_ACTION_ID,
2220
+ SLACK_REPLY_LINK_ACTION_ID
2221
+ ];
2222
+ const SLACK_SELECT_CONTROL_ACTION_IDS = [
2223
+ SLACK_APPROVAL_SELECT_ACTION_ID,
2224
+ SLACK_CALLBACK_SELECT_ACTION_ID,
2225
+ SLACK_REPLY_SELECT_ACTION_ID
2226
+ ];
2227
+ function readGeneratedSlackControlRowKey(block) {
2228
+ const record = block;
2229
+ if (record.type !== "actions" || typeof record.block_id !== "string") return;
2230
+ const expectedElementType = /^openclaw_reply_buttons_[1-9]\d*$/.test(record.block_id) ? "button" : /^openclaw_reply_select_[1-9]\d*$/.test(record.block_id) ? "static_select" : void 0;
2231
+ if (!expectedElementType || !Array.isArray(record.elements) || record.elements.length === 0) return;
2232
+ const actionIds = expectedElementType === "button" ? SLACK_BUTTON_CONTROL_ACTION_IDS : SLACK_SELECT_CONTROL_ACTION_IDS;
2233
+ const elements = record.elements.map((element) => {
2234
+ if (!element || typeof element !== "object" || Array.isArray(element)) return;
2235
+ const { action_id: actionId, ...content } = element;
2236
+ const actionFamily = typeof actionId === "string" ? actionIds.find((candidate) => actionId.startsWith(`${candidate}:`)) : void 0;
2237
+ return actionFamily && content.type === expectedElementType ? [actionFamily, content] : void 0;
2238
+ });
2239
+ return elements.some((element) => element === void 0) ? void 0 : JSON.stringify(elements);
2240
+ }
2241
+ function subtractMirroredSlackControlRows(params) {
2242
+ const remainingMirrors = /* @__PURE__ */ new Map();
2243
+ for (const block of params.presentationBlocks) {
2244
+ const key = readGeneratedSlackControlRowKey(block);
2245
+ if (key) remainingMirrors.set(key, (remainingMirrors.get(key) ?? 0) + 1);
2246
+ }
2247
+ return params.interactiveBlocks.filter((block) => {
2248
+ const key = readGeneratedSlackControlRowKey(block);
2249
+ const remaining = key ? remainingMirrors.get(key) ?? 0 : 0;
2250
+ if (!key || remaining === 0) return true;
2251
+ remainingMirrors.set(key, remaining - 1);
2252
+ return false;
2253
+ });
2254
+ }
2255
+ /**
2256
+ * Resolve reply content into transport-order segments. Each blocks segment is
2257
+ * one Slack message; text segments carry complete fallback content between it.
2258
+ */
2259
+ function resolveSlackReplyBlockResolution(payload, options = {}) {
2260
+ const segments = [];
2261
+ const channelBlocks = readSlackChannelBlocks(payload);
2262
+ let compiledChannelBlocks = channelBlocks;
2263
+ let authoredTextKnownInBlocks = false;
2264
+ if (options.materializeAuthoredText) {
2265
+ const rawTextFragments = renderSlackAuthoredTextFragments(channelBlocks);
2266
+ const initialPlacement = resolveSlackAuthoredTextPlacement({
2267
+ text: payload.text,
2268
+ interactive: payload.interactive,
2269
+ renderedTextFragments: rawTextFragments
2270
+ });
2271
+ authoredTextKnownInBlocks = initialPlacement === "blocks";
2272
+ const text = normalizeOptionalString(payload.text);
2273
+ if (text && initialPlacement === "outside-blocks") {
2274
+ const textBlocks = buildSlackAuthoredTextBlocks(text);
2275
+ if (resolveSlackAuthoredTextPlacement({
2276
+ text: renderSlackAuthoredTextFragments(textBlocks).join(" "),
2277
+ renderedTextFragments: rawTextFragments
2278
+ }) !== "blocks") compiledChannelBlocks = [...channelBlocks, ...textBlocks];
2279
+ authoredTextKnownInBlocks = true;
2280
+ }
2281
+ }
2282
+ if (compiledChannelBlocks.length > 0) appendBlockSegment(segments, compiledChannelBlocks);
2283
+ const presentation = normalizeMessagePresentation(payload.presentation);
2284
+ const presentationBlockOffset = readAllNativeBlocks(segments).length;
2285
+ if (presentation?.title) appendPresentationPart(segments, {
2286
+ title: presentation.title,
2287
+ blocks: []
2288
+ });
2289
+ for (const block of presentation?.blocks ?? []) appendPresentationPart(segments, { blocks: [block] });
2290
+ const renderedPresentationBlocks = readAllNativeBlocks(segments).slice(presentationBlockOffset);
2291
+ appendBlockSegment(segments, subtractMirroredSlackControlRows({
2292
+ interactiveBlocks: buildSlackInteractiveBlocks(payload.interactive, resolveSlackBlockOffsets(readAllNativeBlocks(segments))),
2293
+ presentationBlocks: renderedPresentationBlocks
2294
+ }));
2295
+ const renderedTextFragments = segments.flatMap((segment) => {
2296
+ if (segment.kind === "text") return [segment.text];
2297
+ return renderSlackAuthoredTextFragments(segment.blocks);
2298
+ });
2299
+ const authoredTextPlacement = resolveSlackAuthoredTextPlacement({
2300
+ text: payload.text,
2301
+ interactive: payload.interactive,
2302
+ renderedTextFragments
2303
+ });
2304
+ return {
2305
+ authoredTextPlacement: authoredTextKnownInBlocks ? "blocks" : authoredTextPlacement,
2306
+ segments
2307
+ };
2308
+ }
2309
+ /** Return the single-message native shape when no ordered text fallback is required. */
2310
+ function resolveSlackReplyBlocks(payload) {
2311
+ const { segments } = resolveSlackReplyBlockResolution(payload);
2312
+ return segments.length === 1 && segments[0]?.kind === "blocks" ? segments[0].blocks : void 0;
2313
+ }
2314
+ //#endregion
2315
+ //#region extensions/slack/src/monitor/allow-list.ts
2316
+ const SLACK_SLUG_CACHE_MAX = 512;
2317
+ const slackSlugCache = /* @__PURE__ */ new Map();
2318
+ function normalizeSlackSlug(raw) {
2319
+ const key = raw ?? "";
2320
+ const cached = slackSlugCache.get(key);
2321
+ if (cached !== void 0) return cached;
2322
+ const normalized = normalizeHyphenSlug(raw);
2323
+ slackSlugCache.set(key, normalized);
2324
+ if (slackSlugCache.size > SLACK_SLUG_CACHE_MAX) {
2325
+ const oldest = slackSlugCache.keys().next();
2326
+ if (!oldest.done) slackSlugCache.delete(oldest.value);
2327
+ }
2328
+ return normalized;
2329
+ }
2330
+ function normalizeAllowList(list) {
2331
+ return normalizeStringEntries$1(list);
2332
+ }
2333
+ function normalizeAllowListLower(list) {
2334
+ return normalizeStringEntriesLower$1(list);
2335
+ }
2336
+ function normalizeSlackAllowOwnerEntry(entry) {
2337
+ const trimmed = normalizeOptionalLowercaseString(entry);
2338
+ if (!trimmed || trimmed === "*") return;
2339
+ const withoutPrefix = trimmed.replace(/^(slack:|user:)/, "");
2340
+ return /^u[a-z0-9]+$/.test(withoutPrefix) ? withoutPrefix : void 0;
2341
+ }
2342
+ function resolveSlackAllowListMatch(params) {
2343
+ const compiledAllowList = compileAllowlist(params.allowList);
2344
+ const id = normalizeOptionalLowercaseString(params.id);
2345
+ const name = normalizeOptionalLowercaseString(params.name);
2346
+ const slug = normalizeSlackSlug(name);
2347
+ return resolveCompiledAllowlistMatch({
2348
+ compiledAllowlist: compiledAllowList,
2349
+ candidates: [
2350
+ {
2351
+ value: id,
2352
+ source: "id"
2353
+ },
2354
+ {
2355
+ value: id ? `slack:${id}` : void 0,
2356
+ source: "prefixed-id"
2357
+ },
2358
+ {
2359
+ value: id ? `user:${id}` : void 0,
2360
+ source: "prefixed-user"
2361
+ },
2362
+ ...params.allowNameMatching === true ? [
2363
+ {
2364
+ value: name,
2365
+ source: "name"
2366
+ },
2367
+ {
2368
+ value: name ? `slack:${name}` : void 0,
2369
+ source: "prefixed-name"
2370
+ },
2371
+ {
2372
+ value: slug,
2373
+ source: "slug"
2374
+ }
2375
+ ] : []
2376
+ ]
2377
+ });
2378
+ }
2379
+ function allowListMatches(params) {
2380
+ return resolveSlackAllowListMatch(params).allowed;
2381
+ }
2382
+ function resolveSlackUserAllowed(params) {
2383
+ const allowList = normalizeAllowListLower(params.allowList);
2384
+ if (allowList.length === 0) return true;
2385
+ return allowListMatches({
2386
+ allowList,
2387
+ id: params.userId,
2388
+ name: params.userName,
2389
+ allowNameMatching: params.allowNameMatching
2390
+ });
2391
+ }
2392
+ //#endregion
2393
+ //#region extensions/slack/src/direct-send-admission.ts
2394
+ function assertSlackDirectSendAllowed(account) {
2395
+ if (account.config.enterpriseOrgInstall === true) throw new Error("unsupported_enterprise_slack_delivery");
2396
+ }
2397
+ //#endregion
2398
+ //#region extensions/slack/src/group-policy.ts
2399
+ function buildSlackChannelPolicyScope(params) {
2400
+ const channels = params.channels ?? {};
2401
+ const tree = { scopes: channels };
2402
+ const matchKey = params.candidates.find((candidate) => candidate !== "*" && Object.hasOwn(tree.scopes, candidate)) ?? (Object.hasOwn(tree.scopes, "*") ? "*" : void 0);
2403
+ const matchSource = matchKey === void 0 ? void 0 : matchKey === "*" ? "wildcard" : "direct";
2404
+ return {
2405
+ tree,
2406
+ path: matchKey ? [matchKey] : [],
2407
+ entry: matchKey ? channels[matchKey] : void 0,
2408
+ wildcardEntry: channels["*"],
2409
+ matchKey,
2410
+ matchSource
2411
+ };
2412
+ }
2413
+ function resolveSlackGroupPolicyScope(params) {
2414
+ const accountId = normalizeAccountId(params.accountId ?? resolveDefaultSlackAccountId(params.cfg));
2415
+ const channels = mergeSlackAccountConfig(params.cfg, accountId).channels;
2416
+ const channelId = params.groupId?.trim();
2417
+ const channelName = params.groupChannel?.replace(/^#/, "");
2418
+ return buildSlackChannelPolicyScope({
2419
+ channels,
2420
+ candidates: [
2421
+ channelId,
2422
+ channelName ? `#${channelName}` : void 0,
2423
+ channelName,
2424
+ normalizeHyphenSlug(channelName)
2425
+ ].filter((candidate) => Boolean(candidate))
2426
+ });
2427
+ }
2428
+ function resolveSlackGroupRequireMention(params) {
2429
+ return resolveScopeRequireMention(resolveSlackGroupPolicyScope(params));
2430
+ }
2431
+ function resolveSlackGroupToolPolicy(params) {
2432
+ return resolveScopeToolsPolicy({
2433
+ ...resolveSlackGroupPolicyScope(params),
2434
+ senderPolicyMode: params.senderPolicyMode,
2435
+ senderId: params.senderId,
2436
+ senderName: params.senderName,
2437
+ senderUsername: params.senderUsername,
2438
+ senderE164: params.senderE164
2439
+ });
2440
+ }
2441
+ //#endregion
2442
+ export { escapeSlackMrkdwn as $, normalizeSlackOutboundText as A, canRenderSlackPresentation as B, hasSlackNativeDataBlock as C, stripSlackNativeDataBlocks as D, isSlackNativeResponseUrlRejection as E, SLACK_EDIT_TEXT_MAX_BYTES as F, SLACK_REPLY_LINK_ACTION_ID as G, truncateSlackText as H, SLACK_MESSAGE_TEXT_HARD_LIMIT as I, isSlackCallbackActionId as J, SLACK_REPLY_SELECT_ACTION_ID as K, SLACK_TEXT_LIMIT as L, buildSlackCompleteBlocksFallbackText as M, renderSlackBlockFallbackText as N, chunkSlackMrkdwnText as O, resolveSlackAuthoredTextPlacement as P, renderSlackMessagePresentationFallbackText as Q, buildSlackInteractiveBlocks as R, createSlackNativeDataBaseTextConsumer as S, shouldSuppressLocalSlackExecApprovalPrompt as St, isSlackInvalidBlocksResponse as T, truncateSlackTextByUtf8Bytes as U, countSlackTextUtf8Bytes as V, SLACK_REPLY_BUTTON_ACTION_ID as W, decodeSlackQuestionAction as X, isSlackQuestionActionId as Y, resolveSlackQuestionAction as Z, resolveSlackReplyRenderPlan as _, getSlackExecApprovalApprovers as _t, allowListMatches as a, hasSlackPluginApprovers as at, appendSlackNativeDataPlainTextFallback as b, normalizeSlackApproverId as bt, normalizeSlackAllowOwnerEntry as c, normalizeSlackOriginTarget as ct, resolveSlackUserAllowed as d, resolveTurnSourceSlackOriginTarget as dt, decodeSlackApprovalAction as et, hasSlackReplyStructuredContent as f, shouldHandleSlackNativeApprovalRequest as ft, resolveSlackReplyDeliveryMessages as g, isSlackApprovalAuthorizedSender as gt, resolveSlackReplyBlocks as h, getSlackApprovalApprovers as ht, assertSlackDirectSendAllowed as i, validateSlackBlocksArray as it, buildSlackBlocksFallbackText as j, markdownToSlackMrkdwnChunks as k, normalizeSlackSlug as l, resolveSessionSlackOriginTarget as lt, resolveSlackReplyBlockResolution as m, slackTargetsMatch as mt, resolveSlackGroupRequireMention as n, SLACK_MAX_BLOCKS as nt, normalizeAllowList as o, isSlackAnyNativeApprovalClientEnabled as ot, parseSlackReplyBlockSegments as p, shouldHandleSlackPluginViaForwardingSession as pt, isSlackApprovalActionId as q, resolveSlackGroupToolPolicy as r, parseSlackBlocksInput as rt, normalizeAllowListLower as s, normalizeSlackForwardTarget as st, buildSlackChannelPolicyScope as t, SLACK_PRESENTATION_CAPABILITIES as tt, resolveSlackAllowListMatch as u, resolveSlackFallbackOriginTarget as ut, SLACK_MALFORMED_NATIVE_DATA_FALLBACK as v, isSlackExecApprovalAuthorizedSender as vt, isSlackInvalidBlocksError as w, buildSlackNativeDataAccessibilityText as x, resolveSlackExecApprovalTarget as xt, appendSlackNativeDataFallbackText as y, isSlackExecApprovalClientEnabled as yt, buildSlackPresentationBlocks as z };