managed-deepagents 0.5.0-dev.89 → 0.5.0-dev.96

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 (275) hide show
  1. package/README.md +36 -37
  2. package/dist/channels/index.d.ts +6 -5
  3. package/dist/channels/index.d.ts.map +1 -1
  4. package/dist/channels/index.js +6 -5
  5. package/dist/channels/index.js.map +1 -1
  6. package/dist/channels/manifest.d.ts +1 -1
  7. package/dist/channels/manifest.d.ts.map +1 -1
  8. package/dist/channels/messaging-registry.d.ts +8 -4
  9. package/dist/channels/messaging-registry.d.ts.map +1 -1
  10. package/dist/channels/messaging-registry.js +22 -16
  11. package/dist/channels/messaging-registry.js.map +1 -1
  12. package/dist/channels/registry-types.d.ts +1 -1
  13. package/dist/channels/registry-types.d.ts.map +1 -1
  14. package/dist/channels/registry.d.ts.map +1 -1
  15. package/dist/channels/registry.js +1 -3
  16. package/dist/channels/registry.js.map +1 -1
  17. package/dist/channels/schedule-delivery.js +1 -1
  18. package/dist/channels/schedule-delivery.js.map +1 -1
  19. package/dist/{connectors → channels}/slack/adapter-core.d.ts +1 -1
  20. package/dist/channels/slack/adapter-core.d.ts.map +1 -0
  21. package/dist/channels/slack/adapter-core.js.map +1 -0
  22. package/dist/{connectors → channels}/slack/adapter.d.ts +3 -3
  23. package/dist/channels/slack/adapter.d.ts.map +1 -0
  24. package/dist/{connectors → channels}/slack/adapter.js +0 -1
  25. package/dist/channels/slack/adapter.js.map +1 -0
  26. package/dist/{connectors → channels}/slack/http.d.ts +7 -5
  27. package/dist/channels/slack/http.d.ts.map +1 -0
  28. package/dist/{connectors → channels}/slack/http.js +46 -11
  29. package/dist/channels/slack/http.js.map +1 -0
  30. package/dist/channels/slack/index.d.ts +104 -0
  31. package/dist/channels/slack/index.d.ts.map +1 -0
  32. package/dist/channels/slack/index.js +151 -0
  33. package/dist/channels/slack/index.js.map +1 -0
  34. package/dist/{connectors → channels}/slack/normalize.d.ts +7 -4
  35. package/dist/channels/slack/normalize.d.ts.map +1 -0
  36. package/dist/{connectors → channels}/slack/normalize.js +47 -11
  37. package/dist/channels/slack/normalize.js.map +1 -0
  38. package/dist/channels/slack/source-thread.d.ts.map +1 -0
  39. package/dist/channels/slack/source-thread.js.map +1 -0
  40. package/dist/{connectors → channels}/slack/transport.d.ts +1 -1
  41. package/dist/channels/slack/transport.d.ts.map +1 -0
  42. package/dist/{connectors → channels}/slack/transport.js +1 -1
  43. package/dist/channels/slack/transport.js.map +1 -0
  44. package/dist/channels/store.d.ts +14 -0
  45. package/dist/channels/store.d.ts.map +1 -1
  46. package/dist/channels/store.js +41 -27
  47. package/dist/channels/store.js.map +1 -1
  48. package/dist/connectors/slack/index.d.ts +10 -79
  49. package/dist/connectors/slack/index.d.ts.map +1 -1
  50. package/dist/connectors/slack/index.js +24 -127
  51. package/dist/connectors/slack/index.js.map +1 -1
  52. package/dist/connectors/toolserver/catalog.d.ts +4 -10
  53. package/dist/connectors/toolserver/catalog.d.ts.map +1 -1
  54. package/dist/connectors/toolserver/catalog.js +6 -54
  55. package/dist/connectors/toolserver/catalog.js.map +1 -1
  56. package/dist/connectors/toolserver/index.d.ts +5 -7
  57. package/dist/connectors/toolserver/index.d.ts.map +1 -1
  58. package/dist/connectors/toolserver/index.js +4 -6
  59. package/dist/connectors/toolserver/index.js.map +1 -1
  60. package/dist/connectors/toolserver/integrations.d.ts +4 -4
  61. package/dist/connectors/toolserver/integrations.d.ts.map +1 -1
  62. package/dist/define-deep-agent.d.ts.map +1 -1
  63. package/dist/define-deep-agent.js +9 -3
  64. package/dist/define-deep-agent.js.map +1 -1
  65. package/dist/extension.d.ts +6 -14
  66. package/dist/extension.d.ts.map +1 -1
  67. package/dist/extension.js +5 -24
  68. package/dist/extension.js.map +1 -1
  69. package/dist/identity/connect-inference.d.ts +6 -7
  70. package/dist/identity/connect-inference.d.ts.map +1 -1
  71. package/dist/identity/connect-inference.js +7 -9
  72. package/dist/identity/connect-inference.js.map +1 -1
  73. package/dist/identity/github/connect-http.d.ts +3 -4
  74. package/dist/identity/github/connect-http.d.ts.map +1 -1
  75. package/dist/identity/github/connect-http.js +7 -10
  76. package/dist/identity/github/connect-http.js.map +1 -1
  77. package/dist/identity/github/credentials-store.d.ts.map +1 -1
  78. package/dist/identity/github/credentials-store.js +26 -10
  79. package/dist/identity/github/credentials-store.js.map +1 -1
  80. package/dist/identity/github/index.d.ts +0 -2
  81. package/dist/identity/github/index.d.ts.map +1 -1
  82. package/dist/identity/github/index.js +0 -2
  83. package/dist/identity/github/index.js.map +1 -1
  84. package/dist/identity/index.d.ts +15 -71
  85. package/dist/identity/index.d.ts.map +1 -1
  86. package/dist/identity/index.js +30 -223
  87. package/dist/identity/index.js.map +1 -1
  88. package/dist/identity/oauth-env.d.ts +4 -3
  89. package/dist/identity/oauth-env.d.ts.map +1 -1
  90. package/dist/identity/oauth-env.js +4 -3
  91. package/dist/identity/oauth-env.js.map +1 -1
  92. package/dist/identity/options.d.ts +12 -72
  93. package/dist/identity/options.d.ts.map +1 -1
  94. package/dist/identity/options.js +38 -112
  95. package/dist/identity/options.js.map +1 -1
  96. package/dist/identity/slack/connect-http.d.ts +3 -1
  97. package/dist/identity/slack/connect-http.d.ts.map +1 -1
  98. package/dist/identity/slack/connect-http.js +3 -1
  99. package/dist/identity/slack/connect-http.js.map +1 -1
  100. package/dist/identity/slack/links.d.ts +3 -2
  101. package/dist/identity/slack/links.d.ts.map +1 -1
  102. package/dist/identity/slack/links.js +29 -12
  103. package/dist/identity/slack/links.js.map +1 -1
  104. package/dist/identity/types.d.ts +12 -43
  105. package/dist/identity/types.d.ts.map +1 -1
  106. package/dist/index.d.ts +8 -12
  107. package/dist/index.d.ts.map +1 -1
  108. package/dist/index.js +3 -2
  109. package/dist/index.js.map +1 -1
  110. package/dist/ingress/index.d.ts.map +1 -1
  111. package/dist/ingress/index.js +26 -10
  112. package/dist/ingress/index.js.map +1 -1
  113. package/dist/memory/define-memory.d.ts +39 -0
  114. package/dist/memory/define-memory.d.ts.map +1 -0
  115. package/dist/memory/define-memory.js +78 -0
  116. package/dist/memory/define-memory.js.map +1 -0
  117. package/dist/memory/index.d.ts +9 -0
  118. package/dist/memory/index.d.ts.map +1 -0
  119. package/dist/memory/index.js +8 -0
  120. package/dist/memory/index.js.map +1 -0
  121. package/dist/memory/instructions-middleware.d.ts +74 -0
  122. package/dist/memory/instructions-middleware.d.ts.map +1 -0
  123. package/dist/memory/instructions-middleware.js +115 -0
  124. package/dist/memory/instructions-middleware.js.map +1 -0
  125. package/dist/memory/slices.d.ts +21 -0
  126. package/dist/memory/slices.d.ts.map +1 -0
  127. package/dist/memory/slices.js +61 -0
  128. package/dist/memory/slices.js.map +1 -0
  129. package/dist/memory/types.d.ts +71 -0
  130. package/dist/memory/types.d.ts.map +1 -0
  131. package/dist/memory/types.js +10 -0
  132. package/dist/memory/types.js.map +1 -0
  133. package/dist/namespaces.d.ts +46 -90
  134. package/dist/namespaces.d.ts.map +1 -1
  135. package/dist/namespaces.js +13 -39
  136. package/dist/namespaces.js.map +1 -1
  137. package/dist/runtime/auth.d.ts +31 -19
  138. package/dist/runtime/auth.d.ts.map +1 -1
  139. package/dist/runtime/auth.js +192 -68
  140. package/dist/runtime/auth.js.map +1 -1
  141. package/dist/runtime/backend.d.ts.map +1 -1
  142. package/dist/runtime/backend.js +26 -18
  143. package/dist/runtime/backend.js.map +1 -1
  144. package/dist/runtime/channel.d.ts +91 -0
  145. package/dist/runtime/channel.d.ts.map +1 -0
  146. package/dist/runtime/channel.js +98 -0
  147. package/dist/runtime/channel.js.map +1 -0
  148. package/dist/runtime/connector.d.ts +1 -1
  149. package/dist/runtime/connector.js +5 -1
  150. package/dist/runtime/connector.js.map +1 -1
  151. package/dist/runtime/cors.d.ts +1 -1
  152. package/dist/runtime/cors.d.ts.map +1 -1
  153. package/dist/runtime/cors.js +5 -1
  154. package/dist/runtime/cors.js.map +1 -1
  155. package/dist/runtime/http.d.ts +1 -2
  156. package/dist/runtime/http.d.ts.map +1 -1
  157. package/dist/runtime/http.js +1 -2
  158. package/dist/runtime/http.js.map +1 -1
  159. package/dist/runtime/identity-http.d.ts +9 -6
  160. package/dist/runtime/identity-http.d.ts.map +1 -1
  161. package/dist/runtime/identity-http.js +67 -42
  162. package/dist/runtime/identity-http.js.map +1 -1
  163. package/dist/runtime/identity-runtime.d.ts +0 -18
  164. package/dist/runtime/identity-runtime.d.ts.map +1 -1
  165. package/dist/runtime/identity-runtime.js +0 -27
  166. package/dist/runtime/identity-runtime.js.map +1 -1
  167. package/dist/runtime/index.d.ts +4 -3
  168. package/dist/runtime/index.d.ts.map +1 -1
  169. package/dist/runtime/index.js +33 -31
  170. package/dist/runtime/index.js.map +1 -1
  171. package/dist/runtime/memory/index.d.ts +0 -3
  172. package/dist/runtime/memory/index.d.ts.map +1 -1
  173. package/dist/runtime/memory/index.js +0 -3
  174. package/dist/runtime/memory/index.js.map +1 -1
  175. package/dist/runtime/memory/mounts.d.ts +2 -10
  176. package/dist/runtime/memory/mounts.d.ts.map +1 -1
  177. package/dist/runtime/memory/mounts.js +3 -11
  178. package/dist/runtime/memory/mounts.js.map +1 -1
  179. package/dist/runtime/sandbox-manager.d.ts +5 -0
  180. package/dist/runtime/sandbox-manager.d.ts.map +1 -1
  181. package/dist/runtime/sandbox-manager.js +21 -15
  182. package/dist/runtime/sandbox-manager.js.map +1 -1
  183. package/dist/runtime/sandbox-stream-retry.d.ts +15 -7
  184. package/dist/runtime/sandbox-stream-retry.d.ts.map +1 -1
  185. package/dist/runtime/sandbox-stream-retry.js +24 -12
  186. package/dist/runtime/sandbox-stream-retry.js.map +1 -1
  187. package/dist/runtime/types.d.ts +16 -0
  188. package/dist/runtime/types.d.ts.map +1 -1
  189. package/dist/runtime/validated-token.d.ts +7 -12
  190. package/dist/runtime/validated-token.d.ts.map +1 -1
  191. package/dist/runtime/validated-token.js +10 -66
  192. package/dist/runtime/validated-token.js.map +1 -1
  193. package/dist/sandbox.d.ts +16 -38
  194. package/dist/sandbox.d.ts.map +1 -1
  195. package/dist/sandbox.js +9 -16
  196. package/dist/sandbox.js.map +1 -1
  197. package/dist/types.d.ts +4 -3
  198. package/dist/types.d.ts.map +1 -1
  199. package/dist/types.js.map +1 -1
  200. package/package.json +8 -8
  201. package/dist/connectors/github/adapter-core.d.ts +0 -15
  202. package/dist/connectors/github/adapter-core.d.ts.map +0 -1
  203. package/dist/connectors/github/adapter-core.js +0 -52
  204. package/dist/connectors/github/adapter-core.js.map +0 -1
  205. package/dist/connectors/github/define.d.ts +0 -168
  206. package/dist/connectors/github/define.d.ts.map +0 -1
  207. package/dist/connectors/github/define.js +0 -72
  208. package/dist/connectors/github/define.js.map +0 -1
  209. package/dist/connectors/github/http.d.ts +0 -25
  210. package/dist/connectors/github/http.d.ts.map +0 -1
  211. package/dist/connectors/github/http.js +0 -146
  212. package/dist/connectors/github/http.js.map +0 -1
  213. package/dist/connectors/github/index.d.ts +0 -121
  214. package/dist/connectors/github/index.d.ts.map +0 -1
  215. package/dist/connectors/github/index.js +0 -192
  216. package/dist/connectors/github/index.js.map +0 -1
  217. package/dist/connectors/github/match.d.ts +0 -20
  218. package/dist/connectors/github/match.d.ts.map +0 -1
  219. package/dist/connectors/github/match.js +0 -41
  220. package/dist/connectors/github/match.js.map +0 -1
  221. package/dist/connectors/github/normalize.d.ts +0 -32
  222. package/dist/connectors/github/normalize.d.ts.map +0 -1
  223. package/dist/connectors/github/normalize.js +0 -152
  224. package/dist/connectors/github/normalize.js.map +0 -1
  225. package/dist/connectors/github/sandbox.d.ts +0 -54
  226. package/dist/connectors/github/sandbox.d.ts.map +0 -1
  227. package/dist/connectors/github/sandbox.js +0 -532
  228. package/dist/connectors/github/sandbox.js.map +0 -1
  229. package/dist/connectors/github/source-thread.d.ts +0 -24
  230. package/dist/connectors/github/source-thread.d.ts.map +0 -1
  231. package/dist/connectors/github/source-thread.js +0 -54
  232. package/dist/connectors/github/source-thread.js.map +0 -1
  233. package/dist/connectors/github/transport.d.ts +0 -25
  234. package/dist/connectors/github/transport.d.ts.map +0 -1
  235. package/dist/connectors/github/transport.js +0 -106
  236. package/dist/connectors/github/transport.js.map +0 -1
  237. package/dist/connectors/langsmith/index.d.ts +0 -397
  238. package/dist/connectors/langsmith/index.d.ts.map +0 -1
  239. package/dist/connectors/langsmith/index.js +0 -436
  240. package/dist/connectors/langsmith/index.js.map +0 -1
  241. package/dist/connectors/langsmith/routes.d.ts +0 -236
  242. package/dist/connectors/langsmith/routes.d.ts.map +0 -1
  243. package/dist/connectors/langsmith/routes.js +0 -1154
  244. package/dist/connectors/langsmith/routes.js.map +0 -1
  245. package/dist/connectors/slack/adapter-core.d.ts.map +0 -1
  246. package/dist/connectors/slack/adapter-core.js.map +0 -1
  247. package/dist/connectors/slack/adapter.d.ts.map +0 -1
  248. package/dist/connectors/slack/adapter.js.map +0 -1
  249. package/dist/connectors/slack/http.d.ts.map +0 -1
  250. package/dist/connectors/slack/http.js.map +0 -1
  251. package/dist/connectors/slack/normalize.d.ts.map +0 -1
  252. package/dist/connectors/slack/normalize.js.map +0 -1
  253. package/dist/connectors/slack/source-thread.d.ts.map +0 -1
  254. package/dist/connectors/slack/source-thread.js.map +0 -1
  255. package/dist/connectors/slack/transport.d.ts.map +0 -1
  256. package/dist/connectors/slack/transport.js.map +0 -1
  257. package/dist/identity/memory-slices.d.ts +0 -21
  258. package/dist/identity/memory-slices.d.ts.map +0 -1
  259. package/dist/identity/memory-slices.js +0 -105
  260. package/dist/identity/memory-slices.js.map +0 -1
  261. package/dist/runtime/memory/lazy-context-backend.d.ts +0 -74
  262. package/dist/runtime/memory/lazy-context-backend.d.ts.map +0 -1
  263. package/dist/runtime/memory/lazy-context-backend.js +0 -166
  264. package/dist/runtime/memory/lazy-context-backend.js.map +0 -1
  265. package/dist/runtime/memory/seed.d.ts +0 -30
  266. package/dist/runtime/memory/seed.d.ts.map +0 -1
  267. package/dist/runtime/memory/seed.js +0 -199
  268. package/dist/runtime/memory/seed.js.map +0 -1
  269. package/dist/runtime/memory/user-repo.d.ts +0 -18
  270. package/dist/runtime/memory/user-repo.d.ts.map +0 -1
  271. package/dist/runtime/memory/user-repo.js +0 -50
  272. package/dist/runtime/memory/user-repo.js.map +0 -1
  273. /package/dist/{connectors → channels}/slack/adapter-core.js +0 -0
  274. /package/dist/{connectors → channels}/slack/source-thread.d.ts +0 -0
  275. /package/dist/{connectors → channels}/slack/source-thread.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/channels/slack/http.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,104 @@
1
+ /**
2
+ * `channels.slack` — Slack Events ingress, messaging, and deploy requirements.
3
+ *
4
+ * Files under `channels/` export a named `channel` created with
5
+ * `channels.slack(...)`. Tool-server Slack tools live on `connectors.slack`.
6
+ *
7
+ * Event Subscriptions and OAuth scopes are configured on the developer's Slack
8
+ * app (api.slack.com/apps). This authoring surface only covers MDA runtime
9
+ * behavior that the Slack app manifest cannot express.
10
+ */
11
+ import type { ChannelManifest } from "../manifest.js";
12
+ import { type Channel } from "../../runtime/channel.js";
13
+ export type { ChannelManifest } from "../manifest.js";
14
+ /** Env vars deploy must ensure for Slack Events + auto-reply. */
15
+ export declare const SLACK_CHANNEL_REQUIRED_ENV: readonly ["SLACK_SIGNING_SECRET", "SLACK_BOT_TOKEN"];
16
+ /**
17
+ * Event kinds the runtime can normalize.
18
+ * Which events Slack delivers is configured on the BYO Slack app
19
+ * (Event Subscriptions); MDA accepts any of these when they arrive.
20
+ */
21
+ export type SlackChannelTrigger = "app_mention" | "direct_message" | "thread_reply";
22
+ export type SlackMentionBehavior = "strip" | "preserve";
23
+ export type SlackConversationMapping = "thread" | "conversation" | "message";
24
+ export interface SlackChannelFilters {
25
+ includeConversations?: readonly string[];
26
+ excludeConversations?: readonly string[];
27
+ /** Fully-qualified mapped actor IDs such as `slack:T123:U456`. */
28
+ includeUsers?: readonly string[];
29
+ excludeUsers?: readonly string[];
30
+ /**
31
+ * Slack Connect shared conversations. Phase 1 rejects `true`.
32
+ * @default false
33
+ */
34
+ allowSharedConversations?: boolean;
35
+ }
36
+ export interface SlackConversationPolicy {
37
+ /** @default "thread" */
38
+ appMention?: SlackConversationMapping;
39
+ /** @default "conversation" */
40
+ directMessage?: SlackConversationMapping;
41
+ }
42
+ /**
43
+ * MDA-side Slack channel options. Bot events and OAuth scopes belong on the
44
+ * Slack app (Event Subscriptions / OAuth & Permissions), not here.
45
+ */
46
+ export interface SlackChannelConfig {
47
+ /** @default true */
48
+ autoReply?: boolean;
49
+ /** @default "strip" */
50
+ mentionBehavior?: SlackMentionBehavior;
51
+ filters?: SlackChannelFilters;
52
+ conversation?: SlackConversationPolicy;
53
+ }
54
+ /** Normalized config with defaults applied. */
55
+ export interface RequiredSlackChannelConfig {
56
+ autoReply: boolean;
57
+ mentionBehavior: SlackMentionBehavior;
58
+ filters: {
59
+ includeConversations?: readonly string[];
60
+ excludeConversations?: readonly string[];
61
+ includeUsers?: readonly string[];
62
+ excludeUsers?: readonly string[];
63
+ allowSharedConversations: boolean;
64
+ };
65
+ conversation: {
66
+ appMention: SlackConversationMapping;
67
+ directMessage: SlackConversationMapping;
68
+ };
69
+ }
70
+ /** Branded Slack channel declaration. */
71
+ export type SlackChannel = Channel & RequiredSlackChannelConfig & {
72
+ kind: "slack";
73
+ };
74
+ /**
75
+ * Recommended bot token scopes for a BYO Slack app that handles Phase 1
76
+ * events (`app_mention`, DMs, and channel/group thread replies). Configure
77
+ * these under OAuth & Permissions on api.slack.com/apps — MDA does not
78
+ * provision the app.
79
+ */
80
+ export declare const RECOMMENDED_SLACK_SCOPES: readonly ["app_mentions:read", "channels:history", "chat:write", "groups:history", "im:history"];
81
+ /**
82
+ * Declare a managed Slack channel. Files under `channels/*.ts` export a named
83
+ * `channel` created with `channels.slack(...)`.
84
+ *
85
+ * Subscribe to bot events and add OAuth scopes on your Slack app at
86
+ * api.slack.com/apps. For Slack tool-server tools, use
87
+ * `connectors.slack({ includeTools / excludeTools })`.
88
+ */
89
+ export declare function slackChannel(config?: SlackChannelConfig): SlackChannel;
90
+ /** Recommended Slack OAuth scopes for a BYO app handling Phase 1 events. */
91
+ export declare function requiredSlackScopes(): string[];
92
+ /** Build deploy/runtime requirements for a file-derived channel name. */
93
+ export declare function toSlackRequirements(name: string, definition: RequiredSlackChannelConfig | SlackChannel): ChannelManifest;
94
+ export { decodeSlackEscaping, normalizeSlackEvent, verifySlackRequest, } from "./normalize.js";
95
+ export type { NormalizeSlackEventInput, NormalizeSlackEventResult, SlackInstallationContext, SlackSignatureHeaders, } from "./normalize.js";
96
+ export { createSlackWebApiTransport, setSlackAssistantStatus, DEFAULT_ASSISTANT_STATUS, DEFAULT_LOADING_MESSAGES, SLACK_API_BASE_ENV, } from "./transport.js";
97
+ export type { SetSlackAssistantStatusOptions, SlackWebApiTransportOptions, } from "./transport.js";
98
+ export { handleSlackEventsRequest, stableThreadId, SLACK_SIGNING_SECRET_ENV, SLACK_API_APP_ID_ENV, SLACK_TEAM_ID_ENV, SLACK_BOT_USER_ID_ENV, } from "./http.js";
99
+ export type { InvokeIngressAgentInput, InvokeIngressAgentResult, SlackChannelHttpConfig, } from "./http.js";
100
+ export { decodeSlackSourceThreadKey, encodeSlackSourceThreadKey, slackGroupingId, } from "./source-thread.js";
101
+ export type { InstallationKind, SlackSourceThreadParts, SourceThreadMode, } from "./source-thread.js";
102
+ export { slackChannelAdapter } from "./adapter-core.js";
103
+ export { slackConfigFromManifest } from "./adapter.js";
104
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/channels/slack/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,151 @@
1
+ /**
2
+ * `channels.slack` — Slack Events ingress, messaging, and deploy requirements.
3
+ *
4
+ * Files under `channels/` export a named `channel` created with
5
+ * `channels.slack(...)`. Tool-server Slack tools live on `connectors.slack`.
6
+ *
7
+ * Event Subscriptions and OAuth scopes are configured on the developer's Slack
8
+ * app (api.slack.com/apps). This authoring surface only covers MDA runtime
9
+ * behavior that the Slack app manifest cannot express.
10
+ */
11
+ import { z } from "zod";
12
+ import { CHANNEL_BRAND, } from "../../runtime/channel.js";
13
+ import { handleSlackEventsRequest } from "./http.js";
14
+ import { createSlackWebApiTransport } from "./transport.js";
15
+ /** Env vars deploy must ensure for Slack Events + auto-reply. */
16
+ export const SLACK_CHANNEL_REQUIRED_ENV = [
17
+ "SLACK_SIGNING_SECRET",
18
+ "SLACK_BOT_TOKEN",
19
+ ];
20
+ /**
21
+ * Recommended bot token scopes for a BYO Slack app that handles Phase 1
22
+ * events (`app_mention`, DMs, and channel/group thread replies). Configure
23
+ * these under OAuth & Permissions on api.slack.com/apps — MDA does not
24
+ * provision the app.
25
+ */
26
+ export const RECOMMENDED_SLACK_SCOPES = [
27
+ "app_mentions:read",
28
+ "channels:history",
29
+ "chat:write",
30
+ "groups:history",
31
+ "im:history",
32
+ ];
33
+ /** Slack IDs and mapped actor IDs, e.g. `C123` or `slack:T123:U456`. */
34
+ const identifiers = z
35
+ .array(z
36
+ .string("must be a list of non-empty strings")
37
+ .refine((entry) => entry.trim().length > 0, "must be a list of non-empty strings"))
38
+ .optional();
39
+ const conversationMapping = z.enum(["thread", "conversation", "message"], {
40
+ error: 'must be "thread", "conversation", or "message"',
41
+ });
42
+ const slackChannelConfig = z
43
+ .object({
44
+ autoReply: z.boolean().default(true),
45
+ mentionBehavior: z
46
+ .enum(["strip", "preserve"], { error: 'must be "strip" or "preserve"' })
47
+ .default("strip"),
48
+ filters: z
49
+ .object({
50
+ includeConversations: identifiers,
51
+ excludeConversations: identifiers,
52
+ includeUsers: identifiers,
53
+ excludeUsers: identifiers,
54
+ allowSharedConversations: z
55
+ .literal(false, { error: "is not supported in Phase 1" })
56
+ .default(false),
57
+ })
58
+ .prefault({}),
59
+ conversation: z
60
+ .object({
61
+ appMention: conversationMapping.default("thread"),
62
+ directMessage: conversationMapping.default("conversation"),
63
+ })
64
+ .prefault({}),
65
+ })
66
+ .strict()
67
+ .prefault({});
68
+ function hide(target, key, value) {
69
+ Object.defineProperty(target, key, { value, enumerable: false });
70
+ }
71
+ /**
72
+ * Declare a managed Slack channel. Files under `channels/*.ts` export a named
73
+ * `channel` created with `channels.slack(...)`.
74
+ *
75
+ * Subscribe to bot events and add OAuth scopes on your Slack app at
76
+ * api.slack.com/apps. For Slack tool-server tools, use
77
+ * `connectors.slack({ includeTools / excludeTools })`.
78
+ */
79
+ export function slackChannel(config) {
80
+ const raw = (config ?? {});
81
+ if ("on" in raw) {
82
+ throw new Error("channels.slack(...) no longer accepts `on`. Subscribe to bot events " +
83
+ "under Event Subscriptions on your Slack app (api.slack.com/apps).");
84
+ }
85
+ const validate = slackChannelConfig["~standard"].validate;
86
+ const result = validate(config ?? {});
87
+ if (result instanceof Promise) {
88
+ throw new TypeError("channels.slack(...) needs a schema that validates synchronously");
89
+ }
90
+ if (result.issues) {
91
+ const message = result.issues
92
+ .map((issue) => {
93
+ const path = (issue.path ?? [])
94
+ .map((segment) => String(typeof segment === "object" && segment && "key" in segment
95
+ ? segment.key
96
+ : segment))
97
+ .join(".");
98
+ return path.length > 0 ? `${path}: ${issue.message}` : issue.message;
99
+ })
100
+ .join("; ");
101
+ throw new Error(`channels.slack(...) ${message}`);
102
+ }
103
+ const args = result.value;
104
+ const self = { kind: "slack", ...args };
105
+ hide(self, CHANNEL_BRAND, true);
106
+ hide(self, "events", (ctx) => handleSlackEventsRequest(ctx.request, {
107
+ name: ctx.name,
108
+ config: {
109
+ autoReply: self.autoReply,
110
+ mentionBehavior: self.mentionBehavior,
111
+ filters: self.filters,
112
+ conversation: self.conversation,
113
+ },
114
+ rawBody: ctx.rawBody,
115
+ }));
116
+ hide(self, "messaging", (env) => {
117
+ const token = env.SLACK_BOT_TOKEN;
118
+ if (!token)
119
+ return undefined;
120
+ return createSlackWebApiTransport({ botToken: token });
121
+ });
122
+ hide(self, "requirements", (name) => toSlackRequirements(name, self));
123
+ return self;
124
+ }
125
+ /** Recommended Slack OAuth scopes for a BYO app handling Phase 1 events. */
126
+ export function requiredSlackScopes() {
127
+ return [...RECOMMENDED_SLACK_SCOPES];
128
+ }
129
+ /** Build deploy/runtime requirements for a file-derived channel name. */
130
+ export function toSlackRequirements(name, definition) {
131
+ const config = definition;
132
+ return {
133
+ name,
134
+ provider: "slack",
135
+ autoReply: config.autoReply,
136
+ requiredPermissions: requiredSlackScopes(),
137
+ requiredEnv: [...SLACK_CHANNEL_REQUIRED_ENV],
138
+ providerConfig: {
139
+ mentionBehavior: config.mentionBehavior,
140
+ filters: config.filters,
141
+ conversation: config.conversation,
142
+ },
143
+ };
144
+ }
145
+ export { decodeSlackEscaping, normalizeSlackEvent, verifySlackRequest, } from "./normalize.js";
146
+ export { createSlackWebApiTransport, setSlackAssistantStatus, DEFAULT_ASSISTANT_STATUS, DEFAULT_LOADING_MESSAGES, SLACK_API_BASE_ENV, } from "./transport.js";
147
+ export { handleSlackEventsRequest, stableThreadId, SLACK_SIGNING_SECRET_ENV, SLACK_API_APP_ID_ENV, SLACK_TEAM_ID_ENV, SLACK_BOT_USER_ID_ENV, } from "./http.js";
148
+ export { decodeSlackSourceThreadKey, encodeSlackSourceThreadKey, slackGroupingId, } from "./source-thread.js";
149
+ export { slackChannelAdapter } from "./adapter-core.js";
150
+ export { slackConfigFromManifest } from "./adapter.js";
151
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/channels/slack/index.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,8 @@
5
5
  * They do not perform HTTP I/O or durable enqueue.
6
6
  */
7
7
  import { type InstallationKind, type SourceThreadMode } from "./source-thread.js";
8
- import type { ChannelEvent } from "../../channels/types.js";
9
- import type { RequiredSlackConnectorConfig, SlackChannelTrigger } from "./index.js";
8
+ import type { ChannelEvent } from "../types.js";
9
+ import type { RequiredSlackChannelConfig, SlackChannelTrigger } from "./index.js";
10
10
  export interface SlackSignatureHeaders {
11
11
  signature: string;
12
12
  timestamp: string;
@@ -16,13 +16,16 @@ export interface SlackInstallationContext {
16
16
  id: string;
17
17
  /** Workspace context for the conversation (team_id or context_team_id). */
18
18
  contextTeamId: string;
19
- /** Bot user id used to filter the adapter's own messages. */
19
+ /**
20
+ * Optional install pin for the bot user id. When unset, normalize reads the
21
+ * installing bot from the Events envelope `authorizations` field.
22
+ */
20
23
  botUserId?: string;
21
24
  apiAppId: string;
22
25
  }
23
26
  export interface NormalizeSlackEventInput {
24
27
  body: unknown;
25
- config: RequiredSlackConnectorConfig;
28
+ config: RequiredSlackChannelConfig;
26
29
  installation: SlackInstallationContext;
27
30
  deliveryId: string;
28
31
  /** When true, treat `message` events as `message.im` (DM surface). */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../../../src/channels/slack/normalize.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAGL,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,YAAY,EAAyB,MAAM,aAAa,CAAC;AACvE,OAAO,KAAK,EACV,0BAA0B,EAC1B,mBAAmB,EAEpB,MAAM,YAAY,CAAC;AAIpB,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,gBAAgB,CAAC;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,2EAA2E;IAC3E,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,0BAA0B,CAAC;IACnC,YAAY,EAAE,wBAAwB,CAAC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,sEAAsE;IACtE,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,MAAM,yBAAyB,GACjC;IAAE,MAAM,EAAE,kBAAkB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACjD;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACxD;IACE,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,mBAAmB,CAAC;IAC7B,YAAY,EAAE,gBAAgB,CAAC;CAChC,CAAC;AAEN;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,GAAG,UAAU,EAC5B,OAAO,EAAE,qBAAqB,EAC9B,aAAa,EAAE,MAAM,EACrB,UAAU,GAAE,MAAsC,GACjD,OAAO,CAAC,IAAI,CAAC,CA8Bf;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,wBAAwB,GAC9B,yBAAyB,CAiM3B;AAwHD,+DAA+D;AAC/D,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAOxD"}
@@ -4,7 +4,7 @@
4
4
  * These helpers are pure library primitives for the managed channel service.
5
5
  * They do not perform HTTP I/O or durable enqueue.
6
6
  */
7
- import { ChannelError } from "../../channels/errors.js";
7
+ import { ChannelError } from "../errors.js";
8
8
  import { encodeSlackSourceThreadKey, slackGroupingId, } from "./source-thread.js";
9
9
  const REPLAY_WINDOW_SECONDS = 60 * 5;
10
10
  /**
@@ -73,12 +73,15 @@ export function normalizeSlackEvent(input) {
73
73
  if (!event) {
74
74
  return { status: "filtered", reason: "missing_event", eventId };
75
75
  }
76
+ // Prefer install pin; otherwise Slack Events payloads include the installing
77
+ // bot under `authorizations` (so dual-delivery suppression does not depend
78
+ // on optional `SLACK_BOT_USER_ID`).
79
+ const botUserId = resolveBotUserId(body, input.installation);
76
80
  // Always filter bot/app messages in Phase 1.
77
81
  if (event.bot_id || event.subtype === "bot_message") {
78
82
  return { status: "filtered", reason: "bot_message", eventId };
79
83
  }
80
- if (input.installation.botUserId &&
81
- stringField(event, "user") === input.installation.botUserId) {
84
+ if (botUserId && stringField(event, "user") === botUserId) {
82
85
  return { status: "filtered", reason: "own_bot_message", eventId };
83
86
  }
84
87
  if (typeof event.subtype === "string" &&
@@ -87,11 +90,11 @@ export function normalizeSlackEvent(input) {
87
90
  return { status: "filtered", reason: `subtype_${event.subtype}`, eventId };
88
91
  }
89
92
  const trigger = resolveTrigger(event, input.isDirectMessageSurface === true);
90
- const enabledTriggers = input.config.on ?? [];
91
- if (!trigger || !enabledTriggers.includes(trigger)) {
93
+ // Which events arrive is gated by the BYO Slack app's Event Subscriptions.
94
+ if (!trigger) {
92
95
  return {
93
96
  status: "filtered",
94
- reason: trigger ? "trigger_disabled" : "unsupported_trigger",
97
+ reason: "unsupported_trigger",
95
98
  eventId,
96
99
  };
97
100
  }
@@ -125,12 +128,15 @@ export function normalizeSlackEvent(input) {
125
128
  : threadTs;
126
129
  let text = typeof event.text === "string" ? event.text : "";
127
130
  text = decodeSlackEscaping(text);
128
- // When Slack dual-delivers message + app_mention for an @mention, drop the
129
- // message path so app_mention owns the run.
131
+ // When both `app_mention` and `message.*` are subscribed, Slack dual-delivers
132
+ // the same @mention. Drop the message path here (not in the process-local
133
+ // store) so multi-replica Host deploys only invoke once. Subscribe to
134
+ // `app_mention` for @mentions; use `message.channels` / `message.groups` for
135
+ // non-mention thread follow-ups. Bot id comes from install pin or envelope
136
+ // `authorizations` (always present on modern Events API deliveries).
130
137
  if (trigger === "thread_reply" &&
131
- enabledTriggers.includes("app_mention") &&
132
- input.installation.botUserId &&
133
- textMentionsBot(text, input.installation.botUserId)) {
138
+ botUserId &&
139
+ textMentionsBot(text, botUserId)) {
134
140
  return { status: "filtered", reason: "covered_by_app_mention", eventId };
135
141
  }
136
142
  if (trigger === "app_mention") {
@@ -215,6 +221,36 @@ function textMentionsBot(text, botUserId) {
215
221
  const escaped = botUserId.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
216
222
  return new RegExp(`<@${escaped}(?:\\|[^>]+)?>`, "i").test(text);
217
223
  }
224
+ function resolveBotUserId(body, installation) {
225
+ const fromInstall = installation.botUserId?.trim();
226
+ if (fromInstall)
227
+ return fromInstall;
228
+ return botUserIdFromAuthorizations(body);
229
+ }
230
+ /** Bot user id for the installing authorization on an Events API envelope. */
231
+ function botUserIdFromAuthorizations(body) {
232
+ const authorizations = body.authorizations;
233
+ if (!Array.isArray(authorizations))
234
+ return undefined;
235
+ for (const entry of authorizations) {
236
+ const rec = asRecord(entry);
237
+ if (!rec || rec.is_bot !== true)
238
+ continue;
239
+ const userId = stringField(rec, "user_id");
240
+ if (userId)
241
+ return userId;
242
+ }
243
+ // Single-workspace apps sometimes omit `is_bot`; use the first user_id.
244
+ for (const entry of authorizations) {
245
+ const rec = asRecord(entry);
246
+ if (!rec)
247
+ continue;
248
+ const userId = stringField(rec, "user_id");
249
+ if (userId)
250
+ return userId;
251
+ }
252
+ return undefined;
253
+ }
218
254
  function resolveUserTeamId(body, event, installation) {
219
255
  const fromEvent = stringField(event, "team");
220
256
  if (fromEvent)
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalize.js","sourceRoot":"","sources":["../../../src/channels/slack/normalize.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source-thread.d.ts","sourceRoot":"","sources":["../../../src/channels/slack/source-thread.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,cAAc,GAAG,SAAS,CAAC;AAErE,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,YAAY,CAAC;AAErD,MAAM,WAAW,sBAAsB;IACrC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,gBAAgB,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;CACpB;AAID;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,sBAAsB,GAC5B,MAAM,CAWR;AAED,kFAAkF;AAClF,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,MAAM,GACV,sBAAsB,GAAG,SAAS,CAuCpC;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,gBAAgB,EACtB,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAQR"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source-thread.js","sourceRoot":"","sources":["../../../src/channels/slack/source-thread.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  * Credentials stay in process env / constructor args; they never appear on
6
6
  * `runtime.channel`.
7
7
  */
8
- import type { ChannelTransport } from "../../channels/runtime.js";
8
+ import type { ChannelTransport } from "../runtime.js";
9
9
  /** Optional override so tests can point at a local mock Slack Web API. */
10
10
  export declare const SLACK_API_BASE_ENV = "SLACK_API_BASE";
11
11
  /** Default status string for Slack Assistants `assistant.threads.setStatus`. */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../src/channels/slack/transport.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAKtD,0EAA0E;AAC1E,eAAO,MAAM,kBAAkB,mBAAmB,CAAC;AAEnD,gFAAgF;AAChF,eAAO,MAAM,wBAAwB,sBAAiB,CAAC;AAEvD;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,SAAS,MAAM,EAWrD,CAAC;AAEF,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,sDAAsD;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,2BAA2B,GACnC,gBAAgB,CAsElB;AAED;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,OAAO,CAAC,CAyClB"}
@@ -6,7 +6,7 @@
6
6
  * `runtime.channel`.
7
7
  */
8
8
  import { fetchWithTimeout, PROVIDER_HTTP_TIMEOUT_MS, } from "../../runtime/http.js";
9
- import { ChannelError } from "../../channels/errors.js";
9
+ import { ChannelError } from "../errors.js";
10
10
  const DEFAULT_SLACK_API = "https://slack.com/api";
11
11
  /** Optional override so tests can point at a local mock Slack Web API. */
12
12
  export const SLACK_API_BASE_ENV = "SLACK_API_BASE";
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/channels/slack/transport.ts"],"names":[],"mappings":"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"}
@@ -33,12 +33,26 @@ export declare class InMemoryChannelStore {
33
33
  apiAppId: string;
34
34
  eventId: string;
35
35
  }): string;
36
+ /**
37
+ * Dedupe key for provider message identity (Slack dual-delivers distinct
38
+ * event_ids for app_mention + message that share the same message ts).
39
+ */
40
+ providerMessageKey(parts: {
41
+ deploymentId: string;
42
+ channelDefinitionId: string;
43
+ apiAppId: string;
44
+ conversationId: string;
45
+ messageId: string;
46
+ }): string;
36
47
  acceptDelivery(input: {
37
48
  deploymentId: string;
38
49
  channelDefinitionId: string;
39
50
  provider: string;
40
51
  apiAppId: string;
41
52
  eventId?: string;
53
+ /** Slack message ts (or equivalent); dedupes dual app_mention/message. */
54
+ providerMessageId?: string;
55
+ conversationId?: string;
42
56
  sourceThreadKey?: string;
43
57
  status: Extract<DeliveryStatus, "accepted" | "filtered">;
44
58
  filterReason?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/channels/store.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,MAAM,cAAc,GACtB,UAAU,GACV,UAAU,GACV,SAAS,GACT,kBAAkB,GAClB,WAAW,GACX,QAAQ,CAAC;AAEb,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,cAAc,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,oEAAoE;AACpE,qBAAa,oBAAoB;IAC/B,QAAQ,CAAC,UAAU,8BAAqC;IACxD,kEAAkE;IAClE,QAAQ,CAAC,eAAe,sBAA6B;IAErD,aAAa,CAAC,KAAK,EAAE;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,MAAM,CAOT;IAED,cAAc,CAAC,KAAK,EAAE;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,MAAM,EAAE,OAAO,CAAC,cAAc,EAAE,UAAU,GAAG,UAAU,CAAC,CAAC;QACzD,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,KAAK,CAAC,EAAE,YAAY,CAAC;KACtB,GAAG;QAAE,QAAQ,EAAE,cAAc,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,CAsDnD;CACF"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/channels/store.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,MAAM,cAAc,GACtB,UAAU,GACV,UAAU,GACV,SAAS,GACT,kBAAkB,GAClB,WAAW,GACX,QAAQ,CAAC;AAEb,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,cAAc,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,oEAAoE;AACpE,qBAAa,oBAAoB;IAC/B,QAAQ,CAAC,UAAU,8BAAqC;IACxD,kEAAkE;IAClE,QAAQ,CAAC,eAAe,sBAA6B;IAErD,aAAa,CAAC,KAAK,EAAE;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,MAAM,CAOT;IAED;;;OAGG;IACH,kBAAkB,CAAC,KAAK,EAAE;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;KACnB,GAAG,MAAM,CAST;IAED,cAAc,CAAC,KAAK,EAAE;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,0EAA0E;QAC1E,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,MAAM,EAAE,OAAO,CAAC,cAAc,EAAE,UAAU,GAAG,UAAU,CAAC,CAAC;QACzD,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,KAAK,CAAC,EAAE,YAAY,CAAC;KACtB,GAAG;QAAE,QAAQ,EAAE,cAAc,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,CA4DnD;CACF"}