@rudderhq/server 0.2.10-canary.2 → 0.2.10-canary.21

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 (219) hide show
  1. package/dist/bootstrap/plugin-host-runtime.d.ts +38 -38
  2. package/dist/bundled-plugins/plugin-linear/dist/worker.js +311 -158
  3. package/dist/bundled-plugins/plugin-linear/dist/worker.js.map +2 -2
  4. package/dist/home-paths.d.ts +23 -0
  5. package/dist/home-paths.d.ts.map +1 -1
  6. package/dist/home-paths.js +46 -1
  7. package/dist/home-paths.js.map +1 -1
  8. package/dist/onboarding-assets/ceo/HEARTBEAT.md +7 -6
  9. package/dist/onboarding-assets/ceo/SOUL.md +33 -47
  10. package/dist/routes/access.helpers.d.ts +8 -8
  11. package/dist/routes/agents.d.ts.map +1 -1
  12. package/dist/routes/agents.js +15 -1
  13. package/dist/routes/agents.js.map +1 -1
  14. package/dist/routes/approvals.d.ts.map +1 -1
  15. package/dist/routes/approvals.js +34 -2
  16. package/dist/routes/approvals.js.map +1 -1
  17. package/dist/routes/chat-issue-assignment-wakeup.d.ts +28 -0
  18. package/dist/routes/chat-issue-assignment-wakeup.d.ts.map +1 -0
  19. package/dist/routes/chat-issue-assignment-wakeup.js +54 -0
  20. package/dist/routes/chat-issue-assignment-wakeup.js.map +1 -0
  21. package/dist/routes/chats.d.ts.map +1 -1
  22. package/dist/routes/chats.js +73 -7
  23. package/dist/routes/chats.js.map +1 -1
  24. package/dist/routes/chats.stream-routes.d.ts.map +1 -1
  25. package/dist/routes/chats.stream-routes.js +14 -3
  26. package/dist/routes/chats.stream-routes.js.map +1 -1
  27. package/dist/routes/issues.d.ts.map +1 -1
  28. package/dist/routes/issues.js +3 -0
  29. package/dist/routes/issues.js.map +1 -1
  30. package/dist/routes/messenger.d.ts.map +1 -1
  31. package/dist/routes/messenger.js +10 -0
  32. package/dist/routes/messenger.js.map +1 -1
  33. package/dist/routes/orgs.d.ts.map +1 -1
  34. package/dist/routes/orgs.js +299 -3
  35. package/dist/routes/orgs.js.map +1 -1
  36. package/dist/routes/plugin-ui-static.d.ts +2 -1
  37. package/dist/routes/plugin-ui-static.d.ts.map +1 -1
  38. package/dist/routes/plugin-ui-static.js +8 -42
  39. package/dist/routes/plugin-ui-static.js.map +1 -1
  40. package/dist/routes/projects.d.ts.map +1 -1
  41. package/dist/routes/projects.js +6 -0
  42. package/dist/routes/projects.js.map +1 -1
  43. package/dist/services/access.d.ts +21 -21
  44. package/dist/services/activity.d.ts +19 -19
  45. package/dist/services/agent-run-context.d.ts.map +1 -1
  46. package/dist/services/agent-run-context.js +6 -1
  47. package/dist/services/agent-run-context.js.map +1 -1
  48. package/dist/services/agents.d.ts +171 -171
  49. package/dist/services/approvals.d.ts +29 -29
  50. package/dist/services/assets.d.ts +8 -8
  51. package/dist/services/automation-chat-output.d.ts +3 -3
  52. package/dist/services/automations.d.ts +24 -24
  53. package/dist/services/board-auth.d.ts +32 -32
  54. package/dist/services/calendar.d.ts +26 -26
  55. package/dist/services/chat-assistant.d.ts.map +1 -1
  56. package/dist/services/chat-assistant.helpers.d.ts +3 -2
  57. package/dist/services/chat-assistant.helpers.d.ts.map +1 -1
  58. package/dist/services/chat-assistant.helpers.js +3 -1
  59. package/dist/services/chat-assistant.helpers.js.map +1 -1
  60. package/dist/services/chat-assistant.js +11 -1
  61. package/dist/services/chat-assistant.js.map +1 -1
  62. package/dist/services/chats.d.ts +229 -161
  63. package/dist/services/chats.d.ts.map +1 -1
  64. package/dist/services/chats.helpers.d.ts +10 -5
  65. package/dist/services/chats.helpers.d.ts.map +1 -1
  66. package/dist/services/chats.helpers.js +25 -0
  67. package/dist/services/chats.helpers.js.map +1 -1
  68. package/dist/services/chats.js +183 -17
  69. package/dist/services/chats.js.map +1 -1
  70. package/dist/services/costs.d.ts +8 -8
  71. package/dist/services/documents.d.ts +126 -0
  72. package/dist/services/documents.d.ts.map +1 -1
  73. package/dist/services/documents.js +323 -1
  74. package/dist/services/documents.js.map +1 -1
  75. package/dist/services/finance.d.ts +18 -18
  76. package/dist/services/goals.d.ts +30 -30
  77. package/dist/services/heartbeat.d.ts +1 -1
  78. package/dist/services/heartbeat.d.ts.map +1 -1
  79. package/dist/services/heartbeat.js +1 -1
  80. package/dist/services/heartbeat.js.map +1 -1
  81. package/dist/services/issue-approvals.d.ts +4 -4
  82. package/dist/services/issue-goal-fallback.d.ts.map +1 -1
  83. package/dist/services/issue-goal-fallback.js +4 -1
  84. package/dist/services/issue-goal-fallback.js.map +1 -1
  85. package/dist/services/issue-review-wakeup.d.ts +3 -3
  86. package/dist/services/issues.comments-attachments.d.ts +6 -6
  87. package/dist/services/issues.d.ts +26 -26
  88. package/dist/services/issues.d.ts.map +1 -1
  89. package/dist/services/issues.js +20 -0
  90. package/dist/services/issues.js.map +1 -1
  91. package/dist/services/knowledge-portability/organization-portability.core.d.ts +1 -1
  92. package/dist/services/knowledge-portability/organization-skills.catalog.d.ts +1 -1
  93. package/dist/services/messenger.d.ts +8 -3
  94. package/dist/services/messenger.d.ts.map +1 -1
  95. package/dist/services/messenger.js +146 -16
  96. package/dist/services/messenger.js.map +1 -1
  97. package/dist/services/organization-workspace-browser.d.ts +10 -1
  98. package/dist/services/organization-workspace-browser.d.ts.map +1 -1
  99. package/dist/services/organization-workspace-browser.js +286 -8
  100. package/dist/services/organization-workspace-browser.js.map +1 -1
  101. package/dist/services/orgs.d.ts +9 -9
  102. package/dist/services/plugin-loader.worker-paths.d.ts +5 -1
  103. package/dist/services/plugin-loader.worker-paths.d.ts.map +1 -1
  104. package/dist/services/plugin-loader.worker-paths.js +27 -24
  105. package/dist/services/plugin-loader.worker-paths.js.map +1 -1
  106. package/dist/services/plugin-registry.d.ts +137 -137
  107. package/dist/services/projects.d.ts +8 -8
  108. package/dist/services/projects.d.ts.map +1 -1
  109. package/dist/services/projects.js +52 -6
  110. package/dist/services/projects.js.map +1 -1
  111. package/dist/services/resource-catalog.d.ts.map +1 -1
  112. package/dist/services/resource-catalog.js +92 -27
  113. package/dist/services/resource-catalog.js.map +1 -1
  114. package/dist/services/runtime-kernel/heartbeat.core.d.ts +5 -0
  115. package/dist/services/runtime-kernel/heartbeat.core.d.ts.map +1 -1
  116. package/dist/services/runtime-kernel/heartbeat.core.js +28 -0
  117. package/dist/services/runtime-kernel/heartbeat.core.js.map +1 -1
  118. package/dist/services/runtime-kernel/heartbeat.d.ts +33 -33
  119. package/dist/services/runtime-kernel/heartbeat.execute.js +1 -1
  120. package/dist/services/runtime-kernel/heartbeat.execute.js.map +1 -1
  121. package/dist/services/runtime-kernel/heartbeat.recovery.d.ts.map +1 -1
  122. package/dist/services/runtime-kernel/heartbeat.recovery.js +14 -63
  123. package/dist/services/runtime-kernel/heartbeat.recovery.js.map +1 -1
  124. package/dist/services/runtime-kernel/heartbeat.sessions.d.ts +1 -1
  125. package/dist/services/secrets.d.ts +25 -25
  126. package/dist/services/sidebar-badges.d.ts +0 -3
  127. package/dist/services/sidebar-badges.d.ts.map +1 -1
  128. package/dist/services/sidebar-badges.js +4 -54
  129. package/dist/services/sidebar-badges.js.map +1 -1
  130. package/dist/services/workspace-runtime.services.d.ts +13 -13
  131. package/package.json +13 -13
  132. package/resources/bundled-skills/rudder/SKILL.md +28 -11
  133. package/resources/bundled-skills/rudder/references/api-reference.md +17 -0
  134. package/resources/bundled-skills/rudder/references/cli-reference.md +8 -1
  135. package/skills/rudder/SKILL.md +28 -11
  136. package/skills/rudder/references/api-reference.md +17 -0
  137. package/skills/rudder/references/cli-reference.md +8 -1
  138. package/ui-dist/assets/_basePickBy-B84mG_C-.js +1 -0
  139. package/ui-dist/assets/_baseUniq-C1wQfJWU.js +1 -0
  140. package/ui-dist/assets/{arc-muUWLX91.js → arc-kUpBd_xW.js} +1 -1
  141. package/ui-dist/assets/{architectureDiagram-2XIMDMQ5-BouC2Fqt.js → architectureDiagram-2XIMDMQ5-DfZu-Jcn.js} +1 -1
  142. package/ui-dist/assets/{blockDiagram-WCTKOSBZ-mvmERYx2.js → blockDiagram-WCTKOSBZ-ZYrIA2K3.js} +1 -1
  143. package/ui-dist/assets/{c4Diagram-IC4MRINW-D7udaAyR.js → c4Diagram-IC4MRINW-BIFD9mx4.js} +1 -1
  144. package/ui-dist/assets/channel-BMg_oQ6z.js +1 -0
  145. package/ui-dist/assets/{chunk-4BX2VUAB-1rY8bTG6.js → chunk-4BX2VUAB-BviJ7Prt.js} +1 -1
  146. package/ui-dist/assets/{chunk-55IACEB6-B1rF152Q.js → chunk-55IACEB6-BZFEE6wA.js} +1 -1
  147. package/ui-dist/assets/{chunk-FMBD7UC4-BwtEPX8r.js → chunk-FMBD7UC4-BmJPRdR-.js} +1 -1
  148. package/ui-dist/assets/{chunk-JSJVCQXG-CcpnEC5H.js → chunk-JSJVCQXG-A1WByaW-.js} +1 -1
  149. package/ui-dist/assets/{chunk-KX2RTZJC-DKw956bG.js → chunk-KX2RTZJC-CIGYPhxY.js} +1 -1
  150. package/ui-dist/assets/{chunk-NQ4KR5QH-nKLqz7bZ.js → chunk-NQ4KR5QH-Cok5N0qO.js} +1 -1
  151. package/ui-dist/assets/{chunk-QZHKN3VN-BKUt9Y-x.js → chunk-QZHKN3VN-dDMpPYnn.js} +1 -1
  152. package/ui-dist/assets/{chunk-WL4C6EOR-yazm-9IF.js → chunk-WL4C6EOR-DNuPtZhH.js} +1 -1
  153. package/ui-dist/assets/classDiagram-VBA2DB6C-B46gbxWl.js +1 -0
  154. package/ui-dist/assets/classDiagram-v2-RAHNMMFH-B46gbxWl.js +1 -0
  155. package/ui-dist/assets/clone-8p1TdYAS.js +1 -0
  156. package/ui-dist/assets/{cose-bilkent-S5V4N54A-CTgk_2V0.js → cose-bilkent-S5V4N54A-Dw_CJHOQ.js} +1 -1
  157. package/ui-dist/assets/{dagre-KLK3FWXG-B2b0BY-j.js → dagre-KLK3FWXG-Dooz_2G1.js} +1 -1
  158. package/ui-dist/assets/{diagram-E7M64L7V-B8obHkTT.js → diagram-E7M64L7V-BLKOVAhJ.js} +1 -1
  159. package/ui-dist/assets/{diagram-IFDJBPK2-CZ9r9xjC.js → diagram-IFDJBPK2-BF5WZ5g4.js} +1 -1
  160. package/ui-dist/assets/{diagram-P4PSJMXO-B40Tol6x.js → diagram-P4PSJMXO-BKrdMkXn.js} +1 -1
  161. package/ui-dist/assets/{erDiagram-INFDFZHY-Da2HbTV5.js → erDiagram-INFDFZHY-B__-ibvt.js} +1 -1
  162. package/ui-dist/assets/{flowDiagram-PKNHOUZH-BIRgGJJl.js → flowDiagram-PKNHOUZH-C-hjm_OT.js} +1 -1
  163. package/ui-dist/assets/{ganttDiagram-A5KZAMGK-BRBABq4S.js → ganttDiagram-A5KZAMGK-wxhez1p-.js} +1 -1
  164. package/ui-dist/assets/{gitGraphDiagram-K3NZZRJ6-BLGAUn7n.js → gitGraphDiagram-K3NZZRJ6-Cp8kbn7i.js} +1 -1
  165. package/ui-dist/assets/{graph-CwuTTksT.js → graph-DZiyJUXX.js} +1 -1
  166. package/ui-dist/assets/{index-Cko-pzd-.js → index-B9L9WlXc.js} +1 -1
  167. package/ui-dist/assets/{index-DYOYazns.js → index-BKgV1Wq7.js} +1 -1
  168. package/ui-dist/assets/{index-DoeV0SWN.js → index-BN8Y-wmy.js} +1 -1
  169. package/ui-dist/assets/{index-4zZf1QtZ.js → index-C3fAZIeC.js} +1 -1
  170. package/ui-dist/assets/{index-Bt4qZmf2.js → index-C8bqPhPM.js} +1 -1
  171. package/ui-dist/assets/{index-CVFGvcWE.js → index-CVUHbI_k.js} +1 -1
  172. package/ui-dist/assets/{index-CV3WaXXH.js → index-C_QG-WJb.js} +1 -1
  173. package/ui-dist/assets/{index-DERwo60Q.js → index-Ch8tmO6B.js} +1 -1
  174. package/ui-dist/assets/{index-8svLp8cS.js → index-ChDA38Dg.js} +1 -1
  175. package/ui-dist/assets/index-CybAI1SK.js +1568 -0
  176. package/ui-dist/assets/{index-3uFm-AEl.js → index-DEZd60Ta.js} +1 -1
  177. package/ui-dist/assets/{index-EL6bTGiI.js → index-DHQjaSv-.js} +1 -1
  178. package/ui-dist/assets/{index-CCL9_NDM.js → index-DH_L_PgP.js} +1 -1
  179. package/ui-dist/assets/{index-DDtf8KU5.js → index-DIYJRvXK.js} +1 -1
  180. package/ui-dist/assets/{index-mq3dqkhR.js → index-DTWZM5-L.js} +1 -1
  181. package/ui-dist/assets/index-DW8GcqZn.css +1 -0
  182. package/ui-dist/assets/{index-CTxFNX6G.js → index-DgGp5c8D.js} +1 -1
  183. package/ui-dist/assets/{index-BY5bTh9h.js → index-Do-fiFQL.js} +1 -1
  184. package/ui-dist/assets/{index-AmFx57dj.js → index-DyYghCWH.js} +1 -1
  185. package/ui-dist/assets/{index-CzLbS1Fq.js → index-Dz6brya1.js} +1 -1
  186. package/ui-dist/assets/{index-qzeaBbfS.js → index-FnV0E58J.js} +1 -1
  187. package/ui-dist/assets/{index-D1yidpUd.js → index-MQscBKNJ.js} +1 -1
  188. package/ui-dist/assets/{index-Ba107H6_.js → index-Nb4qkCNr.js} +1 -1
  189. package/ui-dist/assets/{index-CCXbP8bR.js → index-pL9dqAww.js} +1 -1
  190. package/ui-dist/assets/{infoDiagram-LFFYTUFH-Cw-pFXvz.js → infoDiagram-LFFYTUFH-DoMYSWm0.js} +1 -1
  191. package/ui-dist/assets/{ishikawaDiagram-PHBUUO56-DYBE89ch.js → ishikawaDiagram-PHBUUO56-CHNtw8iI.js} +1 -1
  192. package/ui-dist/assets/{journeyDiagram-4ABVD52K-BffUyqL3.js → journeyDiagram-4ABVD52K-DKQdzarJ.js} +1 -1
  193. package/ui-dist/assets/{kanban-definition-K7BYSVSG-DLm2JOTw.js → kanban-definition-K7BYSVSG-DBgiLRzL.js} +1 -1
  194. package/ui-dist/assets/layout-BRIMvAi6.js +1 -0
  195. package/ui-dist/assets/{linear-C1MJByFR.js → linear-D4eTWwgG.js} +1 -1
  196. package/ui-dist/assets/{mermaid.core-to6hGwLu.js → mermaid.core-CV74wx1T.js} +57 -57
  197. package/ui-dist/assets/{mindmap-definition-YRQLILUH-M5rIZLx4.js → mindmap-definition-YRQLILUH-BupnhMjU.js} +1 -1
  198. package/ui-dist/assets/{pieDiagram-SKSYHLDU-CWkhJOUA.js → pieDiagram-SKSYHLDU-BCBWun2O.js} +1 -1
  199. package/ui-dist/assets/{quadrantDiagram-337W2JSQ-BJArGhA1.js → quadrantDiagram-337W2JSQ-BpLw3VwI.js} +1 -1
  200. package/ui-dist/assets/{requirementDiagram-Z7DCOOCP-ClgtLP-6.js → requirementDiagram-Z7DCOOCP-DWbjrtUM.js} +1 -1
  201. package/ui-dist/assets/{sankeyDiagram-WA2Y5GQK-DURQUXKr.js → sankeyDiagram-WA2Y5GQK-Dbi8ppiF.js} +1 -1
  202. package/ui-dist/assets/{sequenceDiagram-2WXFIKYE-9NReo3EB.js → sequenceDiagram-2WXFIKYE-CMm2yoGY.js} +1 -1
  203. package/ui-dist/assets/{stateDiagram-RAJIS63D-CM8QxhYg.js → stateDiagram-RAJIS63D-L6YwWQ2H.js} +1 -1
  204. package/ui-dist/assets/stateDiagram-v2-FVOUBMTO-D3owTYsb.js +1 -0
  205. package/ui-dist/assets/{timeline-definition-YZTLITO2-CSzS4egL.js → timeline-definition-YZTLITO2-C6gUqn7X.js} +1 -1
  206. package/ui-dist/assets/{treemap-KZPCXAKY-DqwRUSvK.js → treemap-KZPCXAKY-BwJ0Tkq9.js} +4 -4
  207. package/ui-dist/assets/{vennDiagram-LZ73GAT5-ny0b2nXN.js → vennDiagram-LZ73GAT5-BFN1AzRi.js} +1 -1
  208. package/ui-dist/assets/{xychartDiagram-JWTSCODW-D1CHqiUl.js → xychartDiagram-JWTSCODW-Cj7hspvA.js} +1 -1
  209. package/ui-dist/index.html +2 -2
  210. package/ui-dist/assets/_basePickBy-ADNVqvyv.js +0 -1
  211. package/ui-dist/assets/_baseUniq-BC2K5rPi.js +0 -1
  212. package/ui-dist/assets/channel-C6wc7Z0r.js +0 -1
  213. package/ui-dist/assets/classDiagram-VBA2DB6C-DfnjPhAc.js +0 -1
  214. package/ui-dist/assets/classDiagram-v2-RAHNMMFH-DfnjPhAc.js +0 -1
  215. package/ui-dist/assets/clone-COIuvM38.js +0 -1
  216. package/ui-dist/assets/index-BFUBUA_w.js +0 -1534
  217. package/ui-dist/assets/index-C4Z-ti7D.css +0 -1
  218. package/ui-dist/assets/layout-B0odtFVd.js +0 -1
  219. package/ui-dist/assets/stateDiagram-v2-FVOUBMTO-DUT46WZk.js +0 -1
@@ -1,5 +1,5 @@
1
1
  import type { Db } from "@rudderhq/db";
2
- import { type MessengerApprovalThreadItem, type MessengerBudgetThreadItem, type MessengerHeartbeatRunThreadItem, type MessengerIssueThreadItem, type MessengerJoinRequestThreadItem, type MessengerSystemThreadKind, type MessengerThreadDetail, type MessengerThreadSummary } from "@rudderhq/shared";
2
+ import { type MessengerApprovalThreadItem, type MessengerBudgetThreadItem, type MessengerHeartbeatRunThreadItem, type MessengerIssueThreadItem, type MessengerJoinRequestThreadItem, type MessengerSystemThreadKind, type MessengerThreadDetail, type MessengerThreadSummary, type MessengerThreadSummaryPage } from "@rudderhq/shared";
3
3
  import { chatService } from "./chats.js";
4
4
  type ThreadReadState = {
5
5
  lastReadAt: Date;
@@ -13,6 +13,10 @@ type ChatConversationRow = Awaited<ReturnType<ReturnType<typeof chatService>["li
13
13
  type ChatMessageRow = Awaited<ReturnType<ReturnType<typeof chatService>["listMessages"]>>[number];
14
14
  export declare function messengerService(db: Db): {
15
15
  listThreadSummaries: (orgId: string, userId: string) => Promise<MessengerThreadSummary[]>;
16
+ listThreadSummaryPage: (orgId: string, userId: string, options?: {
17
+ limit?: number;
18
+ cursor?: string | null;
19
+ }) => Promise<MessengerThreadSummaryPage>;
16
20
  getChatThread: (conversationId: string, userId: string) => Promise<{
17
21
  conversation: ChatConversationRow;
18
22
  messages: ChatMessageRow[];
@@ -21,6 +25,7 @@ export declare function messengerService(db: Db): {
21
25
  summary: MessengerThreadSummary;
22
26
  detail: MessengerThreadDetail<MessengerIssueThreadItem>;
23
27
  }>;
28
+ countUnreadIssueThreadEntries: (orgId: string, userId: string) => Promise<number>;
24
29
  getApprovalsThread: (orgId: string, userId: string) => Promise<{
25
30
  summary: MessengerThreadSummary;
26
31
  detail: {
@@ -92,11 +97,11 @@ export declare function messengerService(db: Db): {
92
97
  };
93
98
  } | null>;
94
99
  getThreadState: (orgId: string, userId: string, threadKey: string) => Promise<{
95
- createdAt: Date;
96
100
  id: string;
97
- userId: string;
98
101
  updatedAt: Date;
99
102
  orgId: string;
103
+ createdAt: Date;
104
+ userId: string;
100
105
  lastReadAt: Date;
101
106
  threadKey: string;
102
107
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"messenger.d.ts","sourceRoot":"","sources":["../../src/services/messenger.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAevC,OAAO,EASL,KAAK,2BAA2B,EAChC,KAAK,yBAAyB,EAE9B,KAAK,+BAA+B,EACpC,KAAK,wBAAwB,EAC7B,KAAK,8BAA8B,EACnC,KAAK,yBAAyB,EAE9B,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAsBzC,KAAK,eAAe,GAAG;IACrB,UAAU,EAAE,IAAI,CAAC;CAClB,CAAC;AAUF,KAAK,wBAAwB,GAAG;IAC9B,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB,CAAC;AA6IF,KAAK,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAK/F,KAAK,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AA6jBlG,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,EAAE;iCA81BK,MAAM,UAAU,MAAM;oCA8DnB,MAAM,UAAU,MAAM;sBAKjC,mBAAmB;kBAC3B,cAAc,EAAE;;6BA9BjC,MAAM,UACL,MAAM,YACL,IAAI,CAAC,wBAAwB,EAAE,OAAO,GAAG,QAAQ,CAAC;;;;gCAKpB,MAAM,UAAU,MAAM;;;;;;;;;;;;;;;;;;6BAIzB,MAAM,UAAU,MAAM,cAAc,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAuB9D,MAAM,UAAU,MAAM,aAAa,MAAM;;;;;;;;;4BAQzC,MAAM,UAAU,MAAM,aAAa,MAAM;2BAAzC,MAAM,UAAU,MAAM,aAAa,MAAM;EA+C/E"}
1
+ {"version":3,"file":"messenger.d.ts","sourceRoot":"","sources":["../../src/services/messenger.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAevC,OAAO,EASL,KAAK,2BAA2B,EAChC,KAAK,yBAAyB,EAE9B,KAAK,+BAA+B,EACpC,KAAK,wBAAwB,EAC7B,KAAK,8BAA8B,EACnC,KAAK,yBAAyB,EAE9B,KAAK,qBAAqB,EAE1B,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,EAChC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AA0BzC,KAAK,eAAe,GAAG;IACrB,UAAU,EAAE,IAAI,CAAC;CAClB,CAAC;AAUF,KAAK,wBAAwB,GAAG;IAC9B,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB,CAAC;AAkJF,KAAK,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAK/F,KAAK,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAunBlG,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,EAAE;iCAg2BK,MAAM,UAAU,MAAM;mCAsCvD,MAAM,UACL,MAAM,YACL;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,KAClD,OAAO,CAAC,0BAA0B,CAAC;oCA8FO,MAAM,UAAU,MAAM;sBAKjC,mBAAmB;kBAC3B,cAAc,EAAE;;6BApCjC,MAAM,UACL,MAAM,YACL,IAAI,CAAC,wBAAwB,EAAE,OAAO,GAAG,QAAQ,CAAC;;;;2CAKT,MAAM,UAAU,MAAM;gCAMjC,MAAM,UAAU,MAAM;;;;;;;;;;;;;;;;;;6BAIzB,MAAM,UAAU,MAAM,cAAc,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAuB9D,MAAM,UAAU,MAAM,aAAa,MAAM;;;;;;;;;4BAQzC,MAAM,UAAU,MAAM,aAAa,MAAM;2BAAzC,MAAM,UAAU,MAAM,aAAa,MAAM;EAiD/E"}
@@ -1,4 +1,4 @@
1
- import { and, desc, eq, gt, inArray, sql } from "drizzle-orm";
1
+ import { and, desc, eq, gt, inArray, isNull, ne, or, sql } from "drizzle-orm";
2
2
  import { activityLog, approvalComments, approvals, agents, authUsers, heartbeatRuns, issueComments, issueFollows, issues, joinRequests, messengerThreadUserStates, } from "@rudderhq/db";
3
3
  import { formatMessengerPreview, formatMessengerTitle, } from "@rudderhq/shared";
4
4
  import { chatService } from "./chats.js";
@@ -18,8 +18,11 @@ const ISSUE_ACTIVITY_ACTIONS = [
18
18
  "heartbeat.retried",
19
19
  ];
20
20
  const ACTIONABLE_APPROVAL_STATUSES = new Set(["pending"]);
21
+ const DEFAULT_THREAD_SUMMARY_LIMIT = 40;
22
+ const MAX_THREAD_SUMMARY_LIMIT = 100;
21
23
  const DEFAULT_ISSUE_THREAD_DETAIL_LIMIT = 50;
22
24
  const MAX_ISSUE_THREAD_DETAIL_LIMIT = 100;
25
+ const FAILED_RUN_USER_SUMMARY = "The run hit a system-level execution problem. Rudder saved the technical details for diagnostics.";
23
26
  function truncate(value, max = 140) {
24
27
  return formatMessengerPreview(value, { max });
25
28
  }
@@ -42,7 +45,17 @@ function compareLatestActivity(a, b) {
42
45
  const bTime = b.latestActivityAt?.getTime() ?? Number.NEGATIVE_INFINITY;
43
46
  if (aTime !== bTime)
44
47
  return bTime - aTime;
45
- return a.title.localeCompare(b.title);
48
+ const titleDiff = a.title.localeCompare(b.title);
49
+ if (titleDiff !== 0)
50
+ return titleDiff;
51
+ return (a.threadKey ?? "").localeCompare(b.threadKey ?? "");
52
+ }
53
+ function comparePinnedThenLatest(a, b) {
54
+ const aPinned = Boolean(a.isPinned);
55
+ const bPinned = Boolean(b.isPinned);
56
+ if (aPinned !== bPinned)
57
+ return aPinned ? -1 : 1;
58
+ return compareLatestActivity(a, b);
46
59
  }
47
60
  function compareChronologicalActivity(a, b) {
48
61
  const aTime = a.latestActivityAt?.getTime() ?? Number.NEGATIVE_INFINITY;
@@ -56,6 +69,59 @@ function normalizeIssueThreadLimit(limit) {
56
69
  return DEFAULT_ISSUE_THREAD_DETAIL_LIMIT;
57
70
  return Math.min(MAX_ISSUE_THREAD_DETAIL_LIMIT, Math.max(1, Math.floor(limit)));
58
71
  }
72
+ function normalizeThreadSummaryLimit(limit) {
73
+ if (typeof limit !== "number" || !Number.isFinite(limit))
74
+ return DEFAULT_THREAD_SUMMARY_LIMIT;
75
+ return Math.min(MAX_THREAD_SUMMARY_LIMIT, Math.max(1, Math.floor(limit)));
76
+ }
77
+ function encodeThreadSummaryCursor(summary) {
78
+ const payload = {
79
+ activityAt: (normalizeDate(summary.latestActivityAt) ?? new Date(0)).toISOString(),
80
+ title: summary.title,
81
+ threadKey: summary.threadKey,
82
+ };
83
+ return Buffer.from(JSON.stringify(payload), "utf8").toString("base64url");
84
+ }
85
+ function decodeThreadSummaryCursor(cursor) {
86
+ if (!cursor)
87
+ return null;
88
+ try {
89
+ const decoded = JSON.parse(Buffer.from(cursor, "base64url").toString("utf8"));
90
+ if (typeof decoded.activityAt !== "string" || Number.isNaN(new Date(decoded.activityAt).getTime()))
91
+ return null;
92
+ if (typeof decoded.title !== "string")
93
+ return null;
94
+ if (typeof decoded.threadKey !== "string" || decoded.threadKey.length === 0)
95
+ return null;
96
+ return {
97
+ activityAt: decoded.activityAt,
98
+ title: decoded.title,
99
+ threadKey: decoded.threadKey,
100
+ };
101
+ }
102
+ catch {
103
+ return null;
104
+ }
105
+ }
106
+ function threadSummaryIsAfterCursor(summary, cursor) {
107
+ if (!cursor)
108
+ return true;
109
+ const summaryTime = normalizeDate(summary.latestActivityAt)?.getTime() ?? Number.NEGATIVE_INFINITY;
110
+ const cursorTime = new Date(cursor.activityAt).getTime();
111
+ if (summaryTime !== cursorTime)
112
+ return summaryTime < cursorTime;
113
+ const titleDiff = summary.title.localeCompare(cursor.title);
114
+ if (titleDiff !== 0)
115
+ return titleDiff > 0;
116
+ return summary.threadKey.localeCompare(cursor.threadKey) > 0;
117
+ }
118
+ function threadSummaryPageInfo(limit, items, hasMore) {
119
+ return {
120
+ limit,
121
+ nextCursor: hasMore && items.length > 0 ? encodeThreadSummaryCursor(items[items.length - 1]) : null,
122
+ hasMore,
123
+ };
124
+ }
59
125
  function encodeIssueThreadCursor(entry) {
60
126
  const payload = {
61
127
  activityAt: entry.latestActivityAt.toISOString(),
@@ -417,8 +483,8 @@ function failedRunCard(run, agentName) {
417
483
  kind: "failed-runs",
418
484
  title: agentName ? `${agentName} · Failed run` : "Failed run",
419
485
  subtitle: run.status.replaceAll("_", " "),
420
- body: truncate(run.error) ?? truncate(run.stderrExcerpt) ?? "Run exited with an error.",
421
- preview: truncate(run.error) ?? truncate(run.stderrExcerpt),
486
+ body: FAILED_RUN_USER_SUMMARY,
487
+ preview: FAILED_RUN_USER_SUMMARY,
422
488
  href: `/agents/${run.agentId}/runs/${run.id}`,
423
489
  latestActivityAt: run.updatedAt ?? run.createdAt,
424
490
  actions: [
@@ -621,7 +687,9 @@ export function messengerService(db) {
621
687
  latest_external_activity.created_at as "latestExternalActivityCreatedAt",
622
688
  latest_external_activity.run_id as "latestExternalActivityRunId"
623
689
  from tracked_issue_ids
624
- inner join ${issues} issue_row on issue_row.id = tracked_issue_ids.id
690
+ inner join ${issues} issue_row
691
+ on issue_row.id = tracked_issue_ids.id
692
+ and issue_row.origin_kind <> 'automation_execution'
625
693
  left join lateral (
626
694
  select
627
695
  comment_row.body,
@@ -687,7 +755,7 @@ export function messengerService(db) {
687
755
  ${tail}
688
756
  `;
689
757
  }
690
- async function loadLatestIssueCommentsForDisplay(orgId, issueIds) {
758
+ async function loadLatestIssueCommentsForDisplay(orgId, issueIds, userId) {
691
759
  if (issueIds.length === 0)
692
760
  return [];
693
761
  return (await db
@@ -704,7 +772,7 @@ export function messengerService(db) {
704
772
  .from(issueComments)
705
773
  .leftJoin(agents, eq(issueComments.authorAgentId, agents.id))
706
774
  .leftJoin(authUsers, eq(issueComments.authorUserId, authUsers.id))
707
- .where(and(eq(issueComments.orgId, orgId), inArray(issueComments.issueId, issueIds)))
775
+ .where(and(eq(issueComments.orgId, orgId), inArray(issueComments.issueId, issueIds), or(isNull(issueComments.authorUserId), ne(issueComments.authorUserId, userId))))
708
776
  .orderBy(issueComments.issueId, desc(issueComments.createdAt), desc(issueComments.id)));
709
777
  }
710
778
  function issueThreadEntryFromRow(row, userId) {
@@ -783,9 +851,7 @@ export function messengerService(db) {
783
851
  where "attentionActivityAt" is not null
784
852
  and (${lastReadAtIso}::timestamptz is null or "attentionActivityAt" > ${lastReadAtIso}::timestamptz)
785
853
  )::int as "unreadCount",
786
- max("attentionActivityAt") filter (
787
- where ${lastReadAtIso}::timestamptz is null or "attentionActivityAt" > ${lastReadAtIso}::timestamptz
788
- ) as "latestActivityAt"
854
+ max("attentionActivityAt") as "latestActivityAt"
789
855
  from (${issueEntryRowsQuery(orgId, userId)}) issue_entry_stats
790
856
  `));
791
857
  const row = rows[0];
@@ -797,11 +863,9 @@ export function messengerService(db) {
797
863
  }
798
864
  : { itemCount: 0, unreadCount: 0, latestActivityAt: null };
799
865
  }
800
- async function loadLatestUnreadIssueEntry(orgId, userId, lastReadAt) {
801
- const lastReadAtIso = lastReadAt?.toISOString() ?? null;
866
+ async function loadLatestIssueAttentionEntry(orgId, userId) {
802
867
  const rows = (await db.execute(issueEntryRowsQuery(orgId, userId, sql `
803
868
  where "attentionActivityAt" is not null
804
- and (${lastReadAtIso}::timestamptz is null or "attentionActivityAt" > ${lastReadAtIso}::timestamptz)
805
869
  order by "attentionActivityAt" desc, id asc
806
870
  limit 1
807
871
  `)));
@@ -833,7 +897,7 @@ export function messengerService(db) {
833
897
  }
834
898
  const [stats, latestAttentionEntry, detailEntries] = await Promise.all([
835
899
  loadIssueThreadStats(orgId, userId, lastReadAt),
836
- loadLatestUnreadIssueEntry(orgId, userId, lastReadAt),
900
+ loadLatestIssueAttentionEntry(orgId, userId),
837
901
  options.includeDetail
838
902
  ? loadIssueDetailEntries(orgId, userId, detailLimit, decodedCursor)
839
903
  : Promise.resolve([]),
@@ -841,7 +905,7 @@ export function messengerService(db) {
841
905
  const hasMoreDetailEntries = options.includeDetail && detailEntries.length > detailLimit;
842
906
  const pageEntries = hasMoreDetailEntries ? detailEntries.slice(0, detailLimit) : detailEntries;
843
907
  const cursorEntry = hasMoreDetailEntries ? pageEntries.at(-1) ?? null : null;
844
- const latestDisplayCommentRows = await loadLatestIssueCommentsForDisplay(orgId, pageEntries.map((entry) => entry.issue.id));
908
+ const latestDisplayCommentRows = await loadLatestIssueCommentsForDisplay(orgId, pageEntries.map((entry) => entry.issue.id), userId);
845
909
  const latestDisplayCommentByIssue = new Map();
846
910
  for (const row of latestDisplayCommentRows) {
847
911
  latestDisplayCommentByIssue.set(row.issueId, row);
@@ -1141,7 +1205,7 @@ export function messengerService(db) {
1141
1205
  const unreadCount = lastReadAt ? Number(unreadRows[0]?.unreadCount ?? 0) : itemCount;
1142
1206
  return {
1143
1207
  itemCount,
1144
- summary: systemSummary("failed-runs", "Failed runs", itemCount, normalizeDate(summaryRow?.latestActivityAt ?? null), unreadCount, lastReadAt, "No failed runs yet", truncate(latestRun?.error) ?? truncate(latestRun?.stderrExcerpt)),
1208
+ summary: systemSummary("failed-runs", "Failed runs", itemCount, normalizeDate(summaryRow?.latestActivityAt ?? null), unreadCount, lastReadAt, "No failed runs yet", latestRun ? FAILED_RUN_USER_SUMMARY : null),
1145
1209
  };
1146
1210
  }
1147
1211
  async function loadBudgetAlertData(orgId, userId, threadStates) {
@@ -1278,9 +1342,73 @@ export function messengerService(db) {
1278
1342
  });
1279
1343
  return threadSummaries;
1280
1344
  }
1345
+ async function listThreadSummaryPage(orgId, userId, options = {}) {
1346
+ const limit = normalizeThreadSummaryLimit(options.limit);
1347
+ const cursor = decodeThreadSummaryCursor(options.cursor);
1348
+ const syntheticThreadStates = loadThreadStates(db, orgId, userId, [
1349
+ "issues",
1350
+ "approvals",
1351
+ "failed-runs",
1352
+ "budget-alerts",
1353
+ "join-requests",
1354
+ ]);
1355
+ const [issueData, approvalData, failedRunData, budgetData, joinRequestData,] = await Promise.all([
1356
+ loadIssueThreadSummaryData(orgId, userId, syntheticThreadStates),
1357
+ loadApprovalThreadSummaryData(orgId, userId, syntheticThreadStates),
1358
+ loadFailedRunSummaryData(orgId, userId, syntheticThreadStates),
1359
+ loadBudgetAlertData(orgId, userId, syntheticThreadStates),
1360
+ loadJoinRequestSummaryData(orgId, userId, syntheticThreadStates),
1361
+ ]);
1362
+ const syntheticSummaries = [];
1363
+ if (issueData.itemCount > 0)
1364
+ syntheticSummaries.push(issueData.summary);
1365
+ if (approvalData.itemCount > 0)
1366
+ syntheticSummaries.push(approvalData.summary);
1367
+ if (failedRunData.itemCount > 0)
1368
+ syntheticSummaries.push(failedRunData.summary);
1369
+ if (budgetData.detail.items.length > 0)
1370
+ syntheticSummaries.push(budgetData.summary);
1371
+ if (joinRequestData.itemCount > 0)
1372
+ syntheticSummaries.push(joinRequestData.summary);
1373
+ const syntheticAfterCursor = syntheticSummaries.filter((summary) => threadSummaryIsAfterCursor(summary, cursor));
1374
+ const pinnedChats = cursor ? [] : await chatsSvc.listPinnedSummaries(orgId, userId);
1375
+ const chatLimit = limit + syntheticAfterCursor.length + 1;
1376
+ const chatAfter = cursor
1377
+ ? {
1378
+ activityAt: new Date(cursor.activityAt),
1379
+ title: cursor.title,
1380
+ threadKey: cursor.threadKey,
1381
+ }
1382
+ : null;
1383
+ const chats = await chatsSvc.listSummaries(orgId, {
1384
+ status: "active",
1385
+ limit: chatLimit,
1386
+ after: chatAfter,
1387
+ excludePinned: true,
1388
+ }, userId);
1389
+ const combined = [
1390
+ ...pinnedChats.map(chatSummary),
1391
+ ...chats.map(chatSummary),
1392
+ ...syntheticAfterCursor,
1393
+ ]
1394
+ .filter((summary) => threadSummaryIsAfterCursor(summary, cursor))
1395
+ .sort(comparePinnedThenLatest);
1396
+ const itemLimit = limit + pinnedChats.length;
1397
+ const items = combined.slice(0, itemLimit);
1398
+ const hasMore = combined.length > itemLimit;
1399
+ return {
1400
+ items,
1401
+ pageInfo: threadSummaryPageInfo(limit, items, hasMore),
1402
+ };
1403
+ }
1281
1404
  async function getIssuesThread(orgId, userId, options = {}) {
1282
1405
  return loadIssueSummaryData(orgId, userId, undefined, options);
1283
1406
  }
1407
+ async function countUnreadIssueThreadEntries(orgId, userId) {
1408
+ const lastReadAt = await lastReadAtForThread(db, orgId, userId, "issues");
1409
+ const stats = await loadIssueThreadStats(orgId, userId, lastReadAt);
1410
+ return stats.unreadCount;
1411
+ }
1284
1412
  async function getApprovalsThread(orgId, userId) {
1285
1413
  return loadApprovalSummaryData(orgId, userId);
1286
1414
  }
@@ -1351,8 +1479,10 @@ export function messengerService(db) {
1351
1479
  }
1352
1480
  return {
1353
1481
  listThreadSummaries,
1482
+ listThreadSummaryPage,
1354
1483
  getChatThread,
1355
1484
  getIssuesThread,
1485
+ countUnreadIssueThreadEntries,
1356
1486
  getApprovalsThread,
1357
1487
  getSystemThread,
1358
1488
  getThreadState,
@@ -1 +1 @@
1
- {"version":3,"file":"messenger.js","sourceRoot":"","sources":["../../src/services/messenger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messenger.js","sourceRoot":"","sources":["../../src/services/messenger.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,11 @@
1
1
  import { type Db } from "@rudderhq/db";
2
- import type { OrganizationWorkspaceFileDetail, OrganizationWorkspaceFileList } from "@rudderhq/shared";
2
+ import type { OrganizationWorkspaceEntryMutationResult, OrganizationWorkspaceFileDetail, OrganizationWorkspaceFileEntry, OrganizationWorkspaceFileList } from "@rudderhq/shared";
3
3
  export declare function organizationWorkspaceBrowserService(db: Db): {
4
4
  listFiles(orgId: string, directoryPath?: string): Promise<OrganizationWorkspaceFileList>;
5
+ listMentionableFiles(orgId: string, options?: {
6
+ query?: string | null;
7
+ limit?: number | null;
8
+ }): Promise<OrganizationWorkspaceFileEntry[]>;
5
9
  readFile(orgId: string, filePath: string): Promise<OrganizationWorkspaceFileDetail>;
6
10
  readAttachmentFile(orgId: string, filePath: string): Promise<{
7
11
  normalizedPath: string;
@@ -10,5 +14,10 @@ export declare function organizationWorkspaceBrowserService(db: Db): {
10
14
  buffer: Buffer;
11
15
  }>;
12
16
  writeFile(orgId: string, filePath: string, content: string): Promise<OrganizationWorkspaceFileDetail>;
17
+ createFile(orgId: string, filePath: string, content: string): Promise<OrganizationWorkspaceFileDetail>;
18
+ createDirectory(orgId: string, directoryPath: string): Promise<OrganizationWorkspaceEntryMutationResult>;
19
+ renameEntry(orgId: string, entryPath: string, name: string): Promise<OrganizationWorkspaceEntryMutationResult>;
20
+ moveEntry(orgId: string, entryPath: string, destinationDirectoryPath: string): Promise<OrganizationWorkspaceEntryMutationResult>;
21
+ deleteEntry(orgId: string, entryPath: string): Promise<OrganizationWorkspaceEntryMutationResult>;
13
22
  };
14
23
  //# sourceMappingURL=organization-workspace-browser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"organization-workspace-browser.d.ts","sourceRoot":"","sources":["../../src/services/organization-workspace-browser.ts"],"names":[],"mappings":"AAEA,OAAO,EAAU,KAAK,EAAE,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAEV,+BAA+B,EAE/B,6BAA6B,EAE9B,MAAM,kBAAkB,CAAC;AA2G1B,wBAAgB,mCAAmC,CAAC,EAAE,EAAE,EAAE;qBAkF/B,MAAM,2BAAuB,OAAO,CAAC,6BAA6B,CAAC;oBA+CpE,MAAM,YAAY,MAAM,GAAG,OAAO,CAAC,+BAA+B,CAAC;8BA2EzD,MAAM,YAAY,MAAM,GAAG,OAAO,CAAC;QACjE,cAAc,EAAE,MAAM,CAAC;QACvB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;qBAqBO,MAAM,YACH,MAAM,WACP,MAAM,GACd,OAAO,CAAC,+BAA+B,CAAC;EA4B9C"}
1
+ {"version":3,"file":"organization-workspace-browser.d.ts","sourceRoot":"","sources":["../../src/services/organization-workspace-browser.ts"],"names":[],"mappings":"AAEA,OAAO,EAAU,KAAK,EAAE,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAEV,wCAAwC,EACxC,+BAA+B,EAC/B,8BAA8B,EAC9B,6BAA6B,EAE9B,MAAM,kBAAkB,CAAC;AA4L1B,wBAAgB,mCAAmC,CAAC,EAAE,EAAE,EAAE;qBAkF/B,MAAM,2BAAuB,OAAO,CAAC,6BAA6B,CAAC;gCA+CxD,MAAM,YAAY;QAClD,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KACvB,GAAG,OAAO,CAAC,8BAA8B,EAAE,CAAC;oBA8CvB,MAAM,YAAY,MAAM,GAAG,OAAO,CAAC,+BAA+B,CAAC;8BAyEzD,MAAM,YAAY,MAAM,GAAG,OAAO,CAAC;QACjE,cAAc,EAAE,MAAM,CAAC;QACvB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;qBAqBO,MAAM,YACH,MAAM,WACP,MAAM,GACd,OAAO,CAAC,+BAA+B,CAAC;sBA6BlC,MAAM,YACH,MAAM,WACP,MAAM,GACd,OAAO,CAAC,+BAA+B,CAAC;2BAkClC,MAAM,iBACE,MAAM,GACpB,OAAO,CAAC,wCAAwC,CAAC;uBAuB3C,MAAM,aACF,MAAM,QACX,MAAM,GACX,OAAO,CAAC,wCAAwC,CAAC;qBA4C3C,MAAM,aACF,MAAM,4BACS,MAAM,GAC/B,OAAO,CAAC,wCAAwC,CAAC;uBAwD3B,MAAM,aAAa,MAAM,GAAG,OAAO,CAAC,wCAAwC,CAAC;EAqBzG"}