@flamingo-stack/openframe-frontend-core 0.0.765 → 0.0.766

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 (1274) hide show
  1. package/dist/build/export-map.json +1 -1
  2. package/dist/chat-protocol/decode.d.ts +0 -1
  3. package/dist/chat-protocol/decode.d.ts.map +1 -1
  4. package/dist/chat-protocol/decode.js +1 -3
  5. package/dist/chat-protocol/index.d.ts +1 -0
  6. package/dist/chat-protocol/index.d.ts.map +1 -1
  7. package/dist/chat-protocol/index.js +2 -0
  8. package/dist/{chunk-FQSXZC2K.cjs → chunk-2JRSYWFP.cjs} +3 -3
  9. package/dist/{chunk-I5MSCD57.cjs → chunk-3LW5TD54.cjs} +7 -3
  10. package/dist/{chunk-7AM3AFM4.cjs → chunk-4YIDZCTL.cjs} +1 -3
  11. package/dist/{chunk-SVP6DJFL.cjs → chunk-57B5RUYD.cjs} +2 -2
  12. package/dist/{chunk-R3TWQ3ZJ.cjs → chunk-5P4TDV7V.cjs} +16 -7
  13. package/dist/chunk-65VVJSQZ.cjs +109 -0
  14. package/dist/{chunk-VLJFAGMR.cjs → chunk-7U3ELNGC.cjs} +103 -61
  15. package/dist/{chunk-T5FRANE6.cjs → chunk-7VI7TOGI.cjs} +509 -353
  16. package/dist/{chunk-PYK4ZSEZ.cjs → chunk-7XFVUUVZ.cjs} +14 -14
  17. package/dist/{chunk-M7YZGRAV.cjs → chunk-AAECWUNV.cjs} +35 -8
  18. package/dist/{chunk-YUMFVQIN.cjs → chunk-C42WIUH6.cjs} +11 -5
  19. package/dist/{chunk-22XAPV6N.cjs → chunk-DGNBXZXT.cjs} +1069 -1020
  20. package/dist/{chunk-HOTM4UM6.cjs → chunk-E76ONBKF.cjs} +28 -0
  21. package/dist/{chunk-PERN37KO.cjs → chunk-F7R3U5EN.cjs} +5 -25
  22. package/dist/{chunk-K6VWTUCH.cjs → chunk-FL2RMEDX.cjs} +2 -2
  23. package/dist/chunk-FZB4RMRK.cjs +695 -0
  24. package/dist/{chunk-BIA77I6B.cjs → chunk-GTONIRJU.cjs} +56 -54
  25. package/dist/{chunk-3FC6AKEJ.cjs → chunk-HNQRY6RU.cjs} +200 -87
  26. package/dist/chunk-INI4ADPT.cjs +495 -0
  27. package/dist/{chunk-2Y36SQSZ.cjs → chunk-JGWN6GH5.cjs} +11 -7
  28. package/dist/{chunk-2OPYWMAV.cjs → chunk-JKQVKWLB.cjs} +258 -179
  29. package/dist/{chunk-EQZXJUYV.cjs → chunk-JTSUAHDL.cjs} +73 -51
  30. package/dist/chunk-K3IHNXR4.cjs +40 -0
  31. package/dist/{chunk-EFTUFJS2.cjs → chunk-LELS4XMX.cjs} +20 -22
  32. package/dist/{chunk-ZCU2PYCW.cjs → chunk-MPTMT773.cjs} +62 -62
  33. package/dist/{chunk-LVKUMVUJ.cjs → chunk-NBVZIHGS.cjs} +12 -8
  34. package/dist/{chunk-RQQVN7LC.cjs → chunk-NF3PBWDJ.cjs} +521 -413
  35. package/dist/{chunk-BVA7YX4P.cjs → chunk-NJMZ3N7Q.cjs} +44 -44
  36. package/dist/{chunk-OJJ4RL2T.cjs → chunk-R3JX4MXD.cjs} +4 -4
  37. package/dist/{chunk-GY2JESOC.cjs → chunk-RB7VLVMD.cjs} +15 -15
  38. package/dist/{chunk-47GZ33ND.cjs → chunk-REJMFXGD.cjs} +198 -73
  39. package/dist/chunk-RMUSPTJN.cjs +102 -0
  40. package/dist/{chunk-3RFQPQ7Z.cjs → chunk-RNLRS4ID.cjs} +3 -3
  41. package/dist/{chunk-MDB65HQC.cjs → chunk-RTBYQWAV.cjs} +286 -201
  42. package/dist/{chunk-63N4FN5V.cjs → chunk-SETFUCZA.cjs} +7 -7
  43. package/dist/{chunk-2QMBXGMQ.cjs → chunk-TF5D5MNO.cjs} +222 -120
  44. package/dist/{chunk-NET74KSQ.cjs → chunk-TZ4GKUO2.cjs} +5 -5
  45. package/dist/{chunk-B3W7RCQF.cjs → chunk-UW7UWUZU.cjs} +105 -117
  46. package/dist/{chunk-MWLD6NXV.cjs → chunk-VFZFCRAL.cjs} +4 -6
  47. package/dist/{chunk-FMH2DYBC.cjs → chunk-VRDHAR3X.cjs} +4229 -3918
  48. package/dist/{chunk-NJS7FQRW.cjs → chunk-VYYLYZUC.cjs} +207 -74
  49. package/dist/{chunk-NO5UJLLQ.cjs → chunk-WEANWBJH.cjs} +6 -1
  50. package/dist/{chunk-QQ7LKNNP.cjs → chunk-WO3XO27C.cjs} +13 -13
  51. package/dist/{chunk-L2V7K7RR.cjs → chunk-X7ECVSVN.cjs} +43 -41
  52. package/dist/chunk-XFRBEXQN.cjs +304 -0
  53. package/dist/{chunk-AKK3EO37.cjs → chunk-XIFEZ2JT.cjs} +35 -23
  54. package/dist/{chunk-XCH7SPGI.cjs → chunk-XVFM6SJA.cjs} +61 -52
  55. package/dist/{chunk-3RYIF4OW.cjs → chunk-XXJL5GY3.cjs} +3 -3
  56. package/dist/{chunk-GZKWF6NH.cjs → chunk-XZ6DKGT4.cjs} +34 -34
  57. package/dist/{chunk-74ALTXXC.cjs → chunk-YL6ZB2SR.cjs} +1624 -1440
  58. package/dist/{chunk-TSJUL6IH.cjs → chunk-YRFWOJF4.cjs} +16 -8
  59. package/dist/{chunk-HTRILBJD.cjs → chunk-YXDHVHB2.cjs} +30 -13
  60. package/dist/{chunk-RO72PRQI.cjs → chunk-ZRDMGMY7.cjs} +75 -50
  61. package/dist/{chunk-WA4X55XY.cjs → chunk-ZV45VS6K.cjs} +359 -432
  62. package/dist/{cloud-tenants-6PSTDE3F.cjs → cloud-tenants-U2KMEIO7.cjs} +35 -39
  63. package/dist/components/agent-identity.d.ts +1 -2
  64. package/dist/components/agent-identity.d.ts.map +1 -1
  65. package/dist/components/agent-identity.js +0 -1
  66. package/dist/components/agent-mark.d.ts +4 -6
  67. package/dist/components/agent-mark.d.ts.map +1 -1
  68. package/dist/components/agent-mark.js +7 -8
  69. package/dist/components/authors/author-detail-view.d.ts.map +1 -1
  70. package/dist/components/authors/author-detail-view.js +51 -18
  71. package/dist/components/calendar.cjs +10 -10
  72. package/dist/components/case-studies/entity-quotes-panel.d.ts +6 -4
  73. package/dist/components/case-studies/entity-quotes-panel.d.ts.map +1 -1
  74. package/dist/components/case-studies/entity-quotes-panel.js +44 -11
  75. package/dist/components/case-studies/index.cjs +140 -70
  76. package/dist/components/case-studies/index.d.ts +2 -2
  77. package/dist/components/case-studies/index.d.ts.map +1 -1
  78. package/dist/components/case-studies/index.js +5 -2
  79. package/dist/components/case-studies/quote-cards-strip.d.ts +23 -2
  80. package/dist/components/case-studies/quote-cards-strip.d.ts.map +1 -1
  81. package/dist/components/case-studies/quote-cards-strip.js +48 -10
  82. package/dist/components/categories-cart.d.ts +7 -0
  83. package/dist/components/categories-cart.d.ts.map +1 -1
  84. package/dist/components/categories-cart.js +58 -36
  85. package/dist/components/category-card.js +1 -1
  86. package/dist/components/chat/chat-attachment-bar.js +1 -1
  87. package/dist/components/chat/chat-container.d.ts.map +1 -1
  88. package/dist/components/chat/chat-container.js +2 -1
  89. package/dist/components/chat/chat-ticket-list.d.ts +0 -1
  90. package/dist/components/chat/chat-ticket-list.d.ts.map +1 -1
  91. package/dist/components/chat/chat-turn.d.ts +31 -1
  92. package/dist/components/chat/chat-turn.d.ts.map +1 -1
  93. package/dist/components/chat/chat-turn.js +85 -19
  94. package/dist/components/chat/embeddable-chat.d.ts.map +1 -1
  95. package/dist/components/chat/embeddable-chat.js +1 -1
  96. package/dist/components/chat/entity-cards/admin-content-card-grid.d.ts +0 -15
  97. package/dist/components/chat/entity-cards/admin-content-card-grid.d.ts.map +1 -1
  98. package/dist/components/chat/entity-cards/admin-content-card-grid.js +2 -38
  99. package/dist/components/chat/entity-cards/admin-content-card.d.ts +15 -0
  100. package/dist/components/chat/entity-cards/admin-content-card.d.ts.map +1 -1
  101. package/dist/components/chat/entity-cards/admin-content-card.js +52 -10
  102. package/dist/components/chat/entity-cards/blog-card.d.ts +9 -2
  103. package/dist/components/chat/entity-cards/blog-card.d.ts.map +1 -1
  104. package/dist/components/chat/entity-cards/blog-card.js +49 -33
  105. package/dist/components/chat/entity-cards/campaign-card-admin.d.ts.map +1 -1
  106. package/dist/components/chat/entity-cards/campaign-card-admin.js +4 -11
  107. package/dist/components/chat/entity-cards/case-study-card.d.ts +27 -9
  108. package/dist/components/chat/entity-cards/case-study-card.d.ts.map +1 -1
  109. package/dist/components/chat/entity-cards/case-study-card.js +80 -54
  110. package/dist/components/chat/entity-cards/chat-ticket-item.d.ts +7 -0
  111. package/dist/components/chat/entity-cards/chat-ticket-item.d.ts.map +1 -1
  112. package/dist/components/chat/entity-cards/chat-ticket-item.js +24 -28
  113. package/dist/components/chat/entity-cards/customer-interview-card.d.ts +9 -2
  114. package/dist/components/chat/entity-cards/customer-interview-card.d.ts.map +1 -1
  115. package/dist/components/chat/entity-cards/customer-interview-card.js +39 -36
  116. package/dist/components/chat/entity-cards/data-room-doc-card.d.ts.map +1 -1
  117. package/dist/components/chat/entity-cards/data-room-doc-card.js +14 -16
  118. package/dist/components/chat/entity-cards/design-doc-card.d.ts +8 -2
  119. package/dist/components/chat/entity-cards/design-doc-card.d.ts.map +1 -1
  120. package/dist/components/chat/entity-cards/design-doc-card.js +37 -43
  121. package/dist/components/chat/entity-cards/dispatch.d.ts +2 -5
  122. package/dist/components/chat/entity-cards/dispatch.d.ts.map +1 -1
  123. package/dist/components/chat/entity-cards/dispatch.js +6 -6
  124. package/dist/components/chat/entity-cards/employee-entry-card.d.ts.map +1 -1
  125. package/dist/components/chat/entity-cards/employee-entry-card.js +5 -5
  126. package/dist/components/chat/entity-cards/entity-author-card.d.ts +33 -6
  127. package/dist/components/chat/entity-cards/entity-author-card.d.ts.map +1 -1
  128. package/dist/components/chat/entity-cards/entity-author-card.js +98 -32
  129. package/dist/components/chat/entity-cards/entity-portrait-card.d.ts +9 -0
  130. package/dist/components/chat/entity-cards/entity-portrait-card.d.ts.map +1 -1
  131. package/dist/components/chat/entity-cards/entity-portrait-card.js +46 -18
  132. package/dist/components/chat/entity-cards/generic-entity-card.d.ts.map +1 -1
  133. package/dist/components/chat/entity-cards/generic-entity-card.js +14 -17
  134. package/dist/components/chat/entity-cards/github-activity-card.d.ts.map +1 -1
  135. package/dist/components/chat/entity-cards/github-activity-card.js +15 -20
  136. package/dist/components/chat/entity-cards/hubspot-ticket-card.d.ts.map +1 -1
  137. package/dist/components/chat/entity-cards/hubspot-ticket-card.js +14 -19
  138. package/dist/components/chat/entity-cards/index.d.ts +8 -7
  139. package/dist/components/chat/entity-cards/index.d.ts.map +1 -1
  140. package/dist/components/chat/entity-cards/index.js +21 -8
  141. package/dist/components/chat/entity-cards/investor-update-card.d.ts +9 -3
  142. package/dist/components/chat/entity-cards/investor-update-card.d.ts.map +1 -1
  143. package/dist/components/chat/entity-cards/investor-update-card.js +28 -28
  144. package/dist/components/chat/entity-cards/onboarding-guide-card.d.ts +11 -2
  145. package/dist/components/chat/entity-cards/onboarding-guide-card.d.ts.map +1 -1
  146. package/dist/components/chat/entity-cards/onboarding-guide-card.js +66 -63
  147. package/dist/components/chat/entity-cards/program-card.d.ts +9 -2
  148. package/dist/components/chat/entity-cards/program-card.d.ts.map +1 -1
  149. package/dist/components/chat/entity-cards/program-card.js +69 -58
  150. package/dist/components/chat/entity-cards/roadmap-card.d.ts +10 -1
  151. package/dist/components/chat/entity-cards/roadmap-card.d.ts.map +1 -1
  152. package/dist/components/chat/entity-cards/roadmap-card.js +148 -156
  153. package/dist/components/chat/entity-cards/roadmap-vote-button.d.ts.map +1 -1
  154. package/dist/components/chat/entity-cards/roadmap-vote-button.js +5 -1
  155. package/dist/components/chat/entity-cards/slack-message-card.d.ts.map +1 -1
  156. package/dist/components/chat/entity-cards/slack-message-card.js +23 -18
  157. package/dist/components/chat/hooks/index.d.ts +7 -1
  158. package/dist/components/chat/hooks/index.d.ts.map +1 -1
  159. package/dist/components/chat/hooks/index.js +8 -1
  160. package/dist/components/chat/hooks/use-ask-prompts.d.ts.map +1 -1
  161. package/dist/components/chat/hooks/use-ask-prompts.js +3 -1
  162. package/dist/components/chat/hooks/use-chat-dialog-manager.d.ts +1 -1
  163. package/dist/components/chat/hooks/use-chat-dialog-manager.d.ts.map +1 -1
  164. package/dist/components/chat/hooks/use-chat-history-hydration.d.ts +1 -1
  165. package/dist/components/chat/hooks/use-chat-history-hydration.d.ts.map +1 -1
  166. package/dist/components/chat/hooks/use-chat.d.ts +1 -2
  167. package/dist/components/chat/hooks/use-chat.d.ts.map +1 -1
  168. package/dist/components/chat/hooks/use-nats-chat-adapter.d.ts +0 -2
  169. package/dist/components/chat/hooks/use-nats-chat-adapter.d.ts.map +1 -1
  170. package/dist/components/chat/hooks/use-nats-chat-adapter.js +0 -8
  171. package/dist/components/chat/hooks/use-proxied-image-url.d.ts +17 -13
  172. package/dist/components/chat/hooks/use-proxied-image-url.d.ts.map +1 -1
  173. package/dist/components/chat/hooks/use-proxied-image-url.js +10 -8
  174. package/dist/components/chat/hooks/use-slash-commands.d.ts +1 -2
  175. package/dist/components/chat/hooks/use-slash-commands.d.ts.map +1 -1
  176. package/dist/components/chat/hooks/use-sse-chat-adapter.d.ts +1 -8
  177. package/dist/components/chat/hooks/use-sse-chat-adapter.d.ts.map +1 -1
  178. package/dist/components/chat/hooks/use-sse-chat-adapter.js +1 -1
  179. package/dist/components/chat/index.cjs +44 -29
  180. package/dist/components/chat/stream/chat-stream-reducer.d.ts +1 -1
  181. package/dist/components/chat/stream/chat-stream-reducer.d.ts.map +1 -1
  182. package/dist/components/chat/stream/chat-stream-reducer.js +1 -1
  183. package/dist/components/chat/types/entities/index.d.ts +6 -4
  184. package/dist/components/chat/types/entities/index.d.ts.map +1 -1
  185. package/dist/components/chat/types/entities/index.js +4 -4
  186. package/dist/components/chat/types/entities/investor-update.d.ts +1 -1
  187. package/dist/components/chat/types/entities/investor-update.d.ts.map +1 -1
  188. package/dist/components/chat/types/entities/program-types.d.ts +2 -1
  189. package/dist/components/chat/types/entities/program-types.d.ts.map +1 -1
  190. package/dist/components/chat/types/entities/program-types.js +1 -4
  191. package/dist/components/chat/utils/compact-card-classes.d.ts +9 -1
  192. package/dist/components/chat/utils/compact-card-classes.d.ts.map +1 -1
  193. package/dist/components/chat/utils/compact-card-classes.js +11 -2
  194. package/dist/components/chat/utils/compact-card-skeleton.d.ts +40 -0
  195. package/dist/components/chat/utils/compact-card-skeleton.d.ts.map +1 -0
  196. package/dist/components/chat/utils/compact-card-skeleton.js +61 -0
  197. package/dist/components/chat/utils/icon-library.d.ts +0 -1
  198. package/dist/components/chat/utils/icon-library.d.ts.map +1 -1
  199. package/dist/components/chat/utils/index.d.ts +5 -3
  200. package/dist/components/chat/utils/index.d.ts.map +1 -1
  201. package/dist/components/chat/utils/index.js +3 -2
  202. package/dist/components/chat/utils/scroll-anchor.d.ts +1 -2
  203. package/dist/components/chat/utils/scroll-anchor.d.ts.map +1 -1
  204. package/dist/components/chat/utils/scroll-anchor.js +0 -1
  205. package/dist/components/chat/utils/source-row-cta.d.ts +0 -2
  206. package/dist/components/chat/utils/source-row-cta.d.ts.map +1 -1
  207. package/dist/components/chat/utils/source-row-cta.js +1 -2
  208. package/dist/components/comment-card.d.ts +15 -0
  209. package/dist/components/comment-card.d.ts.map +1 -1
  210. package/dist/components/comment-card.js +178 -119
  211. package/dist/components/comment-thread.d.ts +29 -0
  212. package/dist/components/comment-thread.d.ts.map +1 -1
  213. package/dist/components/comment-thread.js +76 -18
  214. package/dist/components/contact/index.cjs +36 -40
  215. package/dist/components/content-loading-container.d.ts +1 -1
  216. package/dist/components/docs/doc-viewer.d.ts.map +1 -1
  217. package/dist/components/docs/doc-viewer.js +10 -9
  218. package/dist/components/docs/index.cjs +39 -43
  219. package/dist/components/docs/skeletons.d.ts +0 -5
  220. package/dist/components/docs/skeletons.d.ts.map +1 -1
  221. package/dist/components/docs/skeletons.js +30 -50
  222. package/dist/components/docs/use-document-tree.d.ts +0 -1
  223. package/dist/components/docs/use-document-tree.d.ts.map +1 -1
  224. package/dist/components/docs/use-document-tree.js +6 -1
  225. package/dist/components/embeds/embed-iframe.d.ts.map +1 -1
  226. package/dist/components/embeds/embed-iframe.js +3 -0
  227. package/dist/components/embeds/index.cjs +38 -40
  228. package/dist/components/embeds/index.d.ts +1 -1
  229. package/dist/components/embeds/index.d.ts.map +1 -1
  230. package/dist/components/embeds/index.js +2 -1
  231. package/dist/components/embeds/markdown-image.d.ts.map +1 -1
  232. package/dist/components/embeds/markdown-image.js +5 -2
  233. package/dist/components/embeds/og-link-preview.d.ts +7 -3
  234. package/dist/components/embeds/og-link-preview.d.ts.map +1 -1
  235. package/dist/components/embeds/og-link-preview.js +106 -62
  236. package/dist/components/faq/faq-document-page.d.ts +5 -1
  237. package/dist/components/faq/faq-document-page.d.ts.map +1 -1
  238. package/dist/components/faq/faq-document-page.js +5 -1
  239. package/dist/components/faq/faq-section.d.ts +34 -1
  240. package/dist/components/faq/faq-section.d.ts.map +1 -1
  241. package/dist/components/faq/faq-section.js +146 -59
  242. package/dist/components/faq/index.cjs +41 -41
  243. package/dist/components/faq/index.d.ts +1 -1
  244. package/dist/components/faq/index.d.ts.map +1 -1
  245. package/dist/components/faq/index.js +9 -1
  246. package/dist/components/faq-accordion.d.ts +15 -0
  247. package/dist/components/faq-accordion.d.ts.map +1 -1
  248. package/dist/components/faq-accordion.js +37 -9
  249. package/dist/components/features/ai-enrich/AIStatusIndicator.d.ts.map +1 -1
  250. package/dist/components/features/ai-enrich/AIStatusIndicator.js +2 -1
  251. package/dist/components/features/approval-level.d.ts +15 -1
  252. package/dist/components/features/approval-level.d.ts.map +1 -1
  253. package/dist/components/features/approval-level.js +42 -6
  254. package/dist/components/features/capability-explorer.d.ts +5 -1
  255. package/dist/components/features/capability-explorer.d.ts.map +1 -1
  256. package/dist/components/features/capability-explorer.js +42 -37
  257. package/dist/components/features/cards-strip.d.ts +9 -0
  258. package/dist/components/features/cards-strip.d.ts.map +1 -1
  259. package/dist/components/features/cards-strip.js +35 -11
  260. package/dist/components/features/command-box.d.ts +19 -0
  261. package/dist/components/features/command-box.d.ts.map +1 -1
  262. package/dist/components/features/command-box.js +103 -11
  263. package/dist/components/features/conversation-card.d.ts +70 -5
  264. package/dist/components/features/conversation-card.d.ts.map +1 -1
  265. package/dist/components/features/conversation-card.js +146 -13
  266. package/dist/components/features/devices/device-selector/device-selector.d.ts.map +1 -1
  267. package/dist/components/features/devices/device-selector/device-selector.js +1 -0
  268. package/dist/components/features/devices/devices-panel-view.d.ts +1 -1
  269. package/dist/components/features/devices/devices-panel-view.js +1 -1
  270. package/dist/components/features/entity-tag-badges.d.ts +32 -7
  271. package/dist/components/features/entity-tag-badges.d.ts.map +1 -1
  272. package/dist/components/features/entity-tag-badges.js +73 -9
  273. package/dist/components/features/entity-video-section.d.ts +14 -14
  274. package/dist/components/features/entity-video-section.d.ts.map +1 -1
  275. package/dist/components/features/entity-video-section.js +29 -22
  276. package/dist/components/features/figma-prototype-viewer.d.ts.map +1 -1
  277. package/dist/components/features/figma-prototype-viewer.js +3 -10
  278. package/dist/components/features/index.cjs +77 -39
  279. package/dist/components/features/index.d.ts +3 -0
  280. package/dist/components/features/index.d.ts.map +1 -1
  281. package/dist/components/features/index.js +5 -0
  282. package/dist/components/features/knowledge-base/index.d.ts +2 -1
  283. package/dist/components/features/knowledge-base/index.d.ts.map +1 -1
  284. package/dist/components/features/knowledge-base/knowledge-base-article-view.d.ts +0 -1
  285. package/dist/components/features/knowledge-base/knowledge-base-article-view.d.ts.map +1 -1
  286. package/dist/components/features/model-token-rates.d.ts.map +1 -1
  287. package/dist/components/features/model-token-rates.js +50 -78
  288. package/dist/components/features/notifications/approval-request-notification-tile.d.ts.map +1 -1
  289. package/dist/components/features/notifications/approval-request-notification-tile.js +9 -5
  290. package/dist/components/features/notifications/notification-tile.d.ts +22 -7
  291. package/dist/components/features/notifications/notification-tile.d.ts.map +1 -1
  292. package/dist/components/features/notifications/notification-tile.js +42 -15
  293. package/dist/components/features/paths-display.d.ts +9 -0
  294. package/dist/components/features/paths-display.d.ts.map +1 -1
  295. package/dist/components/features/paths-display.js +50 -5
  296. package/dist/components/features/platform-badge.d.ts +2 -0
  297. package/dist/components/features/platform-badge.d.ts.map +1 -1
  298. package/dist/components/features/platform-badge.js +33 -2
  299. package/dist/components/features/push-button-selector.d.ts +23 -1
  300. package/dist/components/features/push-button-selector.d.ts.map +1 -1
  301. package/dist/components/features/push-button-selector.js +114 -41
  302. package/dist/components/features/remote-session/index.d.ts +2 -2
  303. package/dist/components/features/remote-session/index.d.ts.map +1 -1
  304. package/dist/components/features/remote-session/index.js +3 -3
  305. package/dist/components/features/remote-session/remote-desktop-chat-message-row.d.ts +2 -0
  306. package/dist/components/features/remote-session/remote-desktop-chat-message-row.d.ts.map +1 -1
  307. package/dist/components/features/remote-session/remote-desktop-chat-message-row.js +18 -4
  308. package/dist/components/features/remote-session/remote-desktop-chat-panel.d.ts.map +1 -1
  309. package/dist/components/features/remote-session/remote-desktop-chat-panel.js +11 -2
  310. package/dist/components/features/remote-session/remote-desktop-view.d.ts +6 -6
  311. package/dist/components/features/remote-session/remote-desktop-view.d.ts.map +1 -1
  312. package/dist/components/features/remote-session/remote-desktop-view.js +27 -27
  313. package/dist/components/features/remote-session/remote-session-chat-panel.js +1 -1
  314. package/dist/components/features/status-filter-component.d.ts +19 -1
  315. package/dist/components/features/status-filter-component.d.ts.map +1 -1
  316. package/dist/components/features/status-filter-component.js +106 -43
  317. package/dist/components/features/use-video-warmup.d.ts +1 -1
  318. package/dist/components/features/use-video-warmup.d.ts.map +1 -1
  319. package/dist/components/features/use-video-warmup.js +2 -5
  320. package/dist/components/features/use-walkthrough-video.d.ts.map +1 -1
  321. package/dist/components/features/use-walkthrough-video.js +4 -1
  322. package/dist/components/features/video-bites-strip.d.ts +42 -1
  323. package/dist/components/features/video-bites-strip.d.ts.map +1 -1
  324. package/dist/components/features/video-bites-strip.js +100 -21
  325. package/dist/components/features/video-hover-preview.d.ts +1 -1
  326. package/dist/components/features/video-hover-preview.d.ts.map +1 -1
  327. package/dist/components/features/video.d.ts +9 -2
  328. package/dist/components/features/video.d.ts.map +1 -1
  329. package/dist/components/features/video.js +10 -5
  330. package/dist/components/features/walkthrough-video.d.ts.map +1 -1
  331. package/dist/components/features/walkthrough-video.js +5 -1
  332. package/dist/components/help-center-pages/download-apps-page.d.ts.map +1 -1
  333. package/dist/components/help-center-pages/download-apps-page.js +65 -33
  334. package/dist/components/help-center-pages/index.cjs +410 -316
  335. package/dist/components/help-center-pages/trust-center-page.d.ts +21 -9
  336. package/dist/components/help-center-pages/trust-center-page.d.ts.map +1 -1
  337. package/dist/components/help-center-pages/trust-center-page.js +100 -67
  338. package/dist/components/help-center-pages/trust-center-sections.d.ts +19 -14
  339. package/dist/components/help-center-pages/trust-center-sections.d.ts.map +1 -1
  340. package/dist/components/help-center-pages/trust-center-sections.js +124 -97
  341. package/dist/components/icon-display.d.ts.map +1 -1
  342. package/dist/components/icon-display.js +6 -0
  343. package/dist/components/index.cjs +1505 -380
  344. package/dist/components/index.d.ts +5 -2
  345. package/dist/components/index.d.ts.map +1 -1
  346. package/dist/components/index.js +12 -2
  347. package/dist/components/interactive-wrapper.d.ts.map +1 -1
  348. package/dist/components/interactive-wrapper.js +2 -1
  349. package/dist/components/layout/list-page-layout.d.ts +3 -3
  350. package/dist/components/layout/list-page-layout.d.ts.map +1 -1
  351. package/dist/components/layout/page-container.d.ts +8 -1
  352. package/dist/components/layout/page-container.d.ts.map +1 -1
  353. package/dist/components/layout/page-container.js +25 -10
  354. package/dist/components/layout/page-data-sync.d.ts +7 -1
  355. package/dist/components/layout/page-data-sync.d.ts.map +1 -1
  356. package/dist/components/layout/page-data-sync.js +13 -4
  357. package/dist/components/layout/page-heading.d.ts +31 -0
  358. package/dist/components/layout/page-heading.d.ts.map +1 -1
  359. package/dist/components/layout/page-heading.js +44 -1
  360. package/dist/components/layout/page-layout.d.ts +4 -4
  361. package/dist/components/layout/page-layout.d.ts.map +1 -1
  362. package/dist/components/layout/page-layout.js +4 -5
  363. package/dist/components/layout/title-block.d.ts +12 -1
  364. package/dist/components/layout/title-block.d.ts.map +1 -1
  365. package/dist/components/layout/title-block.js +50 -12
  366. package/dist/components/loading/category-vendor-selector-skeleton.d.ts +3 -0
  367. package/dist/components/loading/category-vendor-selector-skeleton.d.ts.map +1 -1
  368. package/dist/components/loading/deprecated-layout-skeletons.d.ts +25 -0
  369. package/dist/components/loading/deprecated-layout-skeletons.d.ts.map +1 -0
  370. package/dist/components/loading/deprecated-layout-skeletons.js +78 -0
  371. package/dist/components/loading/device-card-skeleton.js +4 -4
  372. package/dist/components/loading/index.d.ts +4 -3
  373. package/dist/components/loading/index.d.ts.map +1 -1
  374. package/dist/components/loading/index.js +10 -16
  375. package/dist/components/loading/loading-region.d.ts +10 -9
  376. package/dist/components/loading/loading-region.d.ts.map +1 -1
  377. package/dist/components/loading/loading-region.js +4 -1
  378. package/dist/components/loading/msp-profile-form-skeleton.d.ts +2 -0
  379. package/dist/components/loading/msp-profile-form-skeleton.d.ts.map +1 -1
  380. package/dist/components/loading/organization-card-skeleton.d.ts +14 -10
  381. package/dist/components/loading/organization-card-skeleton.d.ts.map +1 -1
  382. package/dist/components/loading/organization-card-skeleton.js +38 -40
  383. package/dist/components/loading/page-layout-skeleton.d.ts +7 -51
  384. package/dist/components/loading/page-layout-skeleton.d.ts.map +1 -1
  385. package/dist/components/loading/page-layout-skeleton.js +2 -411
  386. package/dist/components/loading/settings-form-skeleton.d.ts +2 -0
  387. package/dist/components/loading/settings-form-skeleton.d.ts.map +1 -1
  388. package/dist/components/loading/unified-skeleton.d.ts +57 -9
  389. package/dist/components/loading/unified-skeleton.d.ts.map +1 -1
  390. package/dist/components/loading/unified-skeleton.js +57 -8
  391. package/dist/components/log-severity-dot.d.ts +2 -0
  392. package/dist/components/log-severity-dot.d.ts.map +1 -1
  393. package/dist/components/log-severity-dot.js +11 -13
  394. package/dist/components/logs-list.d.ts.map +1 -1
  395. package/dist/components/logs-list.js +34 -43
  396. package/dist/components/media-carousel.d.ts +0 -1
  397. package/dist/components/media-carousel.d.ts.map +1 -1
  398. package/dist/components/meeting-scheduler/booking-form.d.ts +52 -8
  399. package/dist/components/meeting-scheduler/booking-form.d.ts.map +1 -1
  400. package/dist/components/meeting-scheduler/booking-form.js +150 -30
  401. package/dist/components/meeting-scheduler/context-panel.d.ts +18 -2
  402. package/dist/components/meeting-scheduler/context-panel.d.ts.map +1 -1
  403. package/dist/components/meeting-scheduler/context-panel.js +61 -23
  404. package/dist/components/meeting-scheduler/directory.d.ts +11 -1
  405. package/dist/components/meeting-scheduler/directory.d.ts.map +1 -1
  406. package/dist/components/meeting-scheduler/directory.js +47 -27
  407. package/dist/components/meeting-scheduler/index.cjs +556 -344
  408. package/dist/components/meeting-scheduler/index.d.ts +5 -4
  409. package/dist/components/meeting-scheduler/index.d.ts.map +1 -1
  410. package/dist/components/meeting-scheduler/index.js +127 -102
  411. package/dist/components/meeting-scheduler/modal-header.d.ts +7 -3
  412. package/dist/components/meeting-scheduler/modal-header.d.ts.map +1 -1
  413. package/dist/components/meeting-scheduler/modal-header.js +29 -18
  414. package/dist/components/meeting-scheduler/slot-picker.d.ts +11 -4
  415. package/dist/components/meeting-scheduler/slot-picker.d.ts.map +1 -1
  416. package/dist/components/meeting-scheduler/slot-picker.js +12 -7
  417. package/dist/components/metric-value.d.ts +5 -0
  418. package/dist/components/metric-value.d.ts.map +1 -1
  419. package/dist/components/metric-value.js +15 -3
  420. package/dist/components/msp-display.d.ts +5 -0
  421. package/dist/components/msp-display.d.ts.map +1 -1
  422. package/dist/components/msp-display.js +19 -14
  423. package/dist/components/navigation/app-layout.d.ts +0 -2
  424. package/dist/components/navigation/app-layout.d.ts.map +1 -1
  425. package/dist/components/navigation/app-layout.js +1 -4
  426. package/dist/components/navigation/index.cjs +48 -42
  427. package/dist/components/navigation/index.d.ts +8 -3
  428. package/dist/components/navigation/index.d.ts.map +1 -1
  429. package/dist/components/navigation/index.js +18 -3
  430. package/dist/components/navigation/mingo-ai-button.d.ts +0 -2
  431. package/dist/components/navigation/mingo-ai-button.d.ts.map +1 -1
  432. package/dist/components/navigation/mingo-ai-button.js +2 -4
  433. package/dist/components/navigation/mobile-nav-sheet.d.ts +0 -1
  434. package/dist/components/navigation/mobile-nav-sheet.d.ts.map +1 -1
  435. package/dist/components/navigation/mobile-nav-sheet.js +0 -2
  436. package/dist/components/navigation/multi-level-navigation.d.ts +21 -0
  437. package/dist/components/navigation/multi-level-navigation.d.ts.map +1 -1
  438. package/dist/components/navigation/multi-level-navigation.js +98 -24
  439. package/dist/components/navigation/page-section-bar.d.ts +50 -0
  440. package/dist/components/navigation/page-section-bar.d.ts.map +1 -0
  441. package/dist/components/navigation/page-section-bar.js +85 -0
  442. package/dist/components/navigation/sticky-section-nav.d.ts +12 -0
  443. package/dist/components/navigation/sticky-section-nav.d.ts.map +1 -1
  444. package/dist/components/navigation/sticky-section-nav.js +87 -20
  445. package/dist/components/navigation/ticket-alerts-button.js +1 -1
  446. package/dist/components/onboarding-guides/hooks/use-onboarding-guides.d.ts.map +1 -1
  447. package/dist/components/onboarding-guides/hooks/use-onboarding-guides.js +7 -1
  448. package/dist/components/onboarding-guides/index.cjs +38 -42
  449. package/dist/components/onboarding-guides/index.d.ts +1 -2
  450. package/dist/components/onboarding-guides/index.d.ts.map +1 -1
  451. package/dist/components/onboarding-guides/index.js +5 -3
  452. package/dist/components/onboarding-guides/onboarding-guide-detail-view.d.ts +8 -0
  453. package/dist/components/onboarding-guides/onboarding-guide-detail-view.d.ts.map +1 -1
  454. package/dist/components/onboarding-guides/onboarding-guide-detail-view.js +142 -84
  455. package/dist/components/onboarding-guides/onboarding-guides-catalog-skeleton.d.ts +18 -17
  456. package/dist/components/onboarding-guides/onboarding-guides-catalog-skeleton.d.ts.map +1 -1
  457. package/dist/components/onboarding-guides/onboarding-guides-catalog-skeleton.js +28 -21
  458. package/dist/components/onboarding-guides/onboarding-guides-catalog-view.d.ts.map +1 -1
  459. package/dist/components/onboarding-guides/onboarding-guides-catalog-view.js +57 -18
  460. package/dist/components/pagination.d.ts +26 -2
  461. package/dist/components/pagination.d.ts.map +1 -1
  462. package/dist/components/pagination.js +61 -38
  463. package/dist/components/persistent-filter-controls.d.ts.map +1 -1
  464. package/dist/components/persistent-filter-controls.js +1 -2
  465. package/dist/components/persistent-pagination.d.ts.map +1 -1
  466. package/dist/components/persistent-pagination.js +3 -1
  467. package/dist/components/platform/ToolBadge.d.ts +13 -1
  468. package/dist/components/platform/ToolBadge.d.ts.map +1 -1
  469. package/dist/components/platform/ToolBadge.js +38 -9
  470. package/dist/components/platform/index.d.ts +2 -2
  471. package/dist/components/platform/index.d.ts.map +1 -1
  472. package/dist/components/platform/index.js +4 -2
  473. package/dist/components/platform/tool-badge-mark.d.ts +6 -0
  474. package/dist/components/platform/tool-badge-mark.d.ts.map +1 -0
  475. package/dist/components/platform/tool-badge-mark.js +6 -0
  476. package/dist/components/product-demo/fixtures/devices.d.ts +0 -2
  477. package/dist/components/product-demo/fixtures/devices.d.ts.map +1 -1
  478. package/dist/components/product-demo/fixtures/devices.js +0 -2
  479. package/dist/components/product-demo/index.cjs +1889 -32
  480. package/dist/components/product-demo/product-screen.d.ts +5 -5
  481. package/dist/components/product-demo/product-screen.d.ts.map +1 -1
  482. package/dist/components/product-demo/product-screen.js +19 -15
  483. package/dist/components/product-demo/screen-loading.d.ts +10 -0
  484. package/dist/components/product-demo/screen-loading.d.ts.map +1 -0
  485. package/dist/components/product-demo/screen-loading.js +12 -0
  486. package/dist/components/product-demo/screens/devices-view.d.ts +22 -0
  487. package/dist/components/product-demo/screens/devices-view.d.ts.map +1 -0
  488. package/dist/components/product-demo/screens/devices-view.js +35 -0
  489. package/dist/components/product-demo/screens/devices.d.ts +1 -7
  490. package/dist/components/product-demo/screens/devices.d.ts.map +1 -1
  491. package/dist/components/product-demo/screens/devices.js +8 -15
  492. package/dist/components/related-content/card-registry.d.ts +3 -2
  493. package/dist/components/related-content/card-registry.d.ts.map +1 -1
  494. package/dist/components/related-content/card-registry.js +15 -3
  495. package/dist/components/related-content/index.cjs +19 -18
  496. package/dist/components/related-content/index.d.ts +2 -1
  497. package/dist/components/related-content/index.d.ts.map +1 -1
  498. package/dist/components/related-content/index.js +3 -1
  499. package/dist/components/related-content/related-content-section.d.ts +14 -1
  500. package/dist/components/related-content/related-content-section.d.ts.map +1 -1
  501. package/dist/components/related-content/related-content-section.js +144 -32
  502. package/dist/components/results-count.d.ts +5 -0
  503. package/dist/components/results-count.d.ts.map +1 -1
  504. package/dist/components/results-count.js +30 -6
  505. package/dist/components/shared/article-author-byline.d.ts +8 -0
  506. package/dist/components/shared/article-author-byline.d.ts.map +1 -1
  507. package/dist/components/shared/article-author-byline.js +54 -52
  508. package/dist/components/shared/delivery/delivery-lists.d.ts.map +1 -1
  509. package/dist/components/shared/delivery/delivery-lists.js +14 -2
  510. package/dist/components/shared/delivery/delivery-row.d.ts +5 -0
  511. package/dist/components/shared/delivery/delivery-row.d.ts.map +1 -1
  512. package/dist/components/shared/delivery/delivery-row.js +37 -10
  513. package/dist/components/shared/delivery/delivery-table.d.ts +4 -0
  514. package/dist/components/shared/delivery/delivery-table.d.ts.map +1 -1
  515. package/dist/components/shared/delivery/delivery-table.js +14 -26
  516. package/dist/components/shared/detail-page-skeleton.d.ts +3 -0
  517. package/dist/components/shared/detail-page-skeleton.d.ts.map +1 -1
  518. package/dist/components/shared/detail-page-skeleton.js +9 -1
  519. package/dist/components/shared/dev-section/dev-card-row.d.ts +2 -0
  520. package/dist/components/shared/dev-section/dev-card-row.d.ts.map +1 -1
  521. package/dist/components/shared/dev-section/dev-card-row.js +31 -21
  522. package/dist/components/shared/dev-section/dev-section-view.js +1 -1
  523. package/dist/components/shared/legal-document/index.d.ts +1 -1
  524. package/dist/components/shared/legal-document/index.d.ts.map +1 -1
  525. package/dist/components/shared/legal-document/index.js +5 -1
  526. package/dist/components/shared/legal-document/legal-document-page.d.ts +14 -0
  527. package/dist/components/shared/legal-document/legal-document-page.d.ts.map +1 -1
  528. package/dist/components/shared/legal-document/legal-document-page.js +47 -42
  529. package/dist/components/shared/legal-document/use-legal-docs.d.ts.map +1 -1
  530. package/dist/components/shared/legal-document/use-legal-docs.js +4 -1
  531. package/dist/components/shared/legal-document/use-legal-documents.d.ts.map +1 -1
  532. package/dist/components/shared/legal-document/use-legal-documents.js +3 -1
  533. package/dist/components/shared/media-gallery-strip.d.ts +7 -0
  534. package/dist/components/shared/media-gallery-strip.d.ts.map +1 -1
  535. package/dist/components/shared/media-gallery-strip.js +22 -3
  536. package/dist/components/shared/onboarding/index.d.ts +2 -1
  537. package/dist/components/shared/onboarding/index.d.ts.map +1 -1
  538. package/dist/components/shared/onboarding/index.js +1 -3
  539. package/dist/components/shared/product-release/index.d.ts +2 -1
  540. package/dist/components/shared/product-release/index.d.ts.map +1 -1
  541. package/dist/components/shared/product-release/product-release-card-classes.d.ts +26 -0
  542. package/dist/components/shared/product-release/product-release-card-classes.d.ts.map +1 -0
  543. package/dist/components/shared/product-release/product-release-card-classes.js +40 -0
  544. package/dist/components/shared/product-release/product-release-card-skeleton.d.ts.map +1 -1
  545. package/dist/components/shared/product-release/product-release-card-skeleton.js +37 -35
  546. package/dist/components/shared/product-release/product-release-card.d.ts +3 -1
  547. package/dist/components/shared/product-release/product-release-card.d.ts.map +1 -1
  548. package/dist/components/shared/product-release/product-release-card.js +86 -73
  549. package/dist/components/shared/product-release/product-releases-view.d.ts.map +1 -1
  550. package/dist/components/shared/product-release/product-releases-view.js +26 -13
  551. package/dist/components/shared/product-release/release-detail-page.d.ts +0 -1
  552. package/dist/components/shared/product-release/release-detail-page.d.ts.map +1 -1
  553. package/dist/components/shared/product-release/release-detail-page.js +281 -215
  554. package/dist/components/shared/roadmap/roadmap-grid-skeleton.d.ts +9 -1
  555. package/dist/components/shared/roadmap/roadmap-grid-skeleton.d.ts.map +1 -1
  556. package/dist/components/shared/roadmap/roadmap-grid-skeleton.js +12 -11
  557. package/dist/components/shared/roadmap/roadmap-grid.d.ts +13 -1
  558. package/dist/components/shared/roadmap/roadmap-grid.d.ts.map +1 -1
  559. package/dist/components/shared/roadmap/roadmap-grid.js +45 -29
  560. package/dist/components/shared/roadmap/roadmap-view.d.ts.map +1 -1
  561. package/dist/components/shared/roadmap/roadmap-view.js +2 -3
  562. package/dist/components/social-icon-row.d.ts +9 -2
  563. package/dist/components/social-icon-row.d.ts.map +1 -1
  564. package/dist/components/social-icon-row.js +12 -6
  565. package/dist/components/tickets/help-center-list.d.ts.map +1 -1
  566. package/dist/components/tickets/help-center-list.js +6 -2
  567. package/dist/components/tickets/hooks/use-ticket-actions.d.ts +2 -2
  568. package/dist/components/tickets/hooks/use-ticket-actions.d.ts.map +1 -1
  569. package/dist/components/tickets/index.cjs +42 -46
  570. package/dist/components/tickets/index.d.ts +2 -1
  571. package/dist/components/tickets/index.d.ts.map +1 -1
  572. package/dist/components/tickets/index.js +2 -3
  573. package/dist/components/tickets/ticket-center.d.ts.map +1 -1
  574. package/dist/components/tickets/ticket-center.js +117 -58
  575. package/dist/components/tickets/types.d.ts +0 -8
  576. package/dist/components/tickets/types.d.ts.map +1 -1
  577. package/dist/components/tickets/types.js +0 -3
  578. package/dist/components/toggle-group.d.ts +4 -2
  579. package/dist/components/toggle-group.d.ts.map +1 -1
  580. package/dist/components/toggle-group.js +3 -1
  581. package/dist/components/tool-icon.d.ts.map +1 -1
  582. package/dist/components/ui/analyzing-state.d.ts +3 -2
  583. package/dist/components/ui/analyzing-state.d.ts.map +1 -1
  584. package/dist/components/ui/analyzing-state.js +7 -4
  585. package/dist/components/ui/announcement-bar-view.d.ts +5 -0
  586. package/dist/components/ui/announcement-bar-view.d.ts.map +1 -1
  587. package/dist/components/ui/announcement-bar-view.js +3 -1
  588. package/dist/components/ui/autocomplete.d.ts +13 -0
  589. package/dist/components/ui/autocomplete.d.ts.map +1 -1
  590. package/dist/components/ui/autocomplete.js +30 -6
  591. package/dist/components/ui/avatar-stack.d.ts +7 -0
  592. package/dist/components/ui/avatar-stack.d.ts.map +1 -1
  593. package/dist/components/ui/avatar-stack.js +29 -4
  594. package/dist/components/ui/badge.d.ts +9 -1
  595. package/dist/components/ui/badge.d.ts.map +1 -1
  596. package/dist/components/ui/badge.js +11 -0
  597. package/dist/components/ui/benefit-list.d.ts +8 -0
  598. package/dist/components/ui/benefit-list.d.ts.map +1 -1
  599. package/dist/components/ui/benefit-list.js +20 -11
  600. package/dist/components/ui/button/button-styles.d.ts +16 -0
  601. package/dist/components/ui/button/button-styles.d.ts.map +1 -1
  602. package/dist/components/ui/button/button-styles.js +42 -0
  603. package/dist/components/ui/button/button.d.ts +3 -1
  604. package/dist/components/ui/button/button.d.ts.map +1 -1
  605. package/dist/components/ui/button/button.js +4 -40
  606. package/dist/components/ui/button/index.d.ts +1 -0
  607. package/dist/components/ui/button/index.d.ts.map +1 -1
  608. package/dist/components/ui/button/index.js +4 -0
  609. package/dist/components/ui/card.d.ts +13 -1
  610. package/dist/components/ui/card.d.ts.map +1 -1
  611. package/dist/components/ui/card.js +21 -14
  612. package/dist/components/ui/checkbox.d.ts +2 -0
  613. package/dist/components/ui/checkbox.d.ts.map +1 -1
  614. package/dist/components/ui/checkbox.js +5 -1
  615. package/dist/components/ui/compliance-badge.d.ts +2 -0
  616. package/dist/components/ui/compliance-badge.d.ts.map +1 -1
  617. package/dist/components/ui/compliance-badge.js +5 -2
  618. package/dist/components/ui/cursor-pagination.d.ts +8 -1
  619. package/dist/components/ui/cursor-pagination.d.ts.map +1 -1
  620. package/dist/components/ui/cursor-pagination.js +10 -4
  621. package/dist/components/ui/dashboard-info-card.d.ts +6 -1
  622. package/dist/components/ui/dashboard-info-card.d.ts.map +1 -1
  623. package/dist/components/ui/dashboard-info-card.js +19 -10
  624. package/dist/components/ui/data-attribution.d.ts +10 -5
  625. package/dist/components/ui/data-attribution.d.ts.map +1 -1
  626. package/dist/components/ui/data-attribution.js +27 -9
  627. package/dist/components/ui/data-table/data-table-body.d.ts +1 -1
  628. package/dist/components/ui/data-table/data-table-body.d.ts.map +1 -1
  629. package/dist/components/ui/data-table/data-table-body.js +18 -7
  630. package/dist/components/ui/data-table/data-table-row-count.d.ts +5 -0
  631. package/dist/components/ui/data-table/data-table-row-count.d.ts.map +1 -1
  632. package/dist/components/ui/data-table/data-table-row-count.js +18 -3
  633. package/dist/components/ui/data-table/data-table-row.d.ts.map +1 -1
  634. package/dist/components/ui/data-table/data-table-row.js +2 -6
  635. package/dist/components/ui/data-table/data-table-skeleton.js +5 -5
  636. package/dist/components/ui/data-table/index.d.ts +2 -2
  637. package/dist/components/ui/data-table/index.d.ts.map +1 -1
  638. package/dist/components/ui/data-table/index.js +2 -1
  639. package/dist/components/ui/date-picker.d.ts +0 -1
  640. package/dist/components/ui/date-picker.d.ts.map +1 -1
  641. package/dist/components/ui/entity-image.d.ts +4 -0
  642. package/dist/components/ui/entity-image.d.ts.map +1 -1
  643. package/dist/components/ui/entity-image.js +27 -5
  644. package/dist/components/ui/error-state.d.ts.map +1 -1
  645. package/dist/components/ui/error-state.js +4 -1
  646. package/dist/components/ui/feature-card.d.ts +31 -1
  647. package/dist/components/ui/feature-card.d.ts.map +1 -1
  648. package/dist/components/ui/feature-card.js +40 -11
  649. package/dist/components/ui/feature-list.d.ts +15 -1
  650. package/dist/components/ui/feature-list.d.ts.map +1 -1
  651. package/dist/components/ui/feature-list.js +43 -8
  652. package/dist/components/ui/field-wrapper.d.ts +6 -0
  653. package/dist/components/ui/field-wrapper.d.ts.map +1 -1
  654. package/dist/components/ui/field-wrapper.js +16 -5
  655. package/dist/components/ui/file-manager/index.cjs +63 -64
  656. package/dist/components/ui/filter-checkbox-item.d.ts +9 -0
  657. package/dist/components/ui/filter-checkbox-item.d.ts.map +1 -1
  658. package/dist/components/ui/filter-checkbox-item.js +36 -6
  659. package/dist/components/ui/filter-modal.d.ts +2 -3
  660. package/dist/components/ui/filter-modal.d.ts.map +1 -1
  661. package/dist/components/ui/filter-pill-row.d.ts +10 -5
  662. package/dist/components/ui/filter-pill-row.d.ts.map +1 -1
  663. package/dist/components/ui/filter-pill-row.js +56 -19
  664. package/dist/components/ui/incident-feed.d.ts +1 -1
  665. package/dist/components/ui/incident-feed.d.ts.map +1 -1
  666. package/dist/components/ui/incident-feed.js +57 -56
  667. package/dist/components/ui/index.cjs +219 -39
  668. package/dist/components/ui/index.d.ts +10 -1
  669. package/dist/components/ui/index.d.ts.map +1 -1
  670. package/dist/components/ui/index.js +29 -1
  671. package/dist/components/ui/info-card-row.d.ts +12 -0
  672. package/dist/components/ui/info-card-row.d.ts.map +1 -1
  673. package/dist/components/ui/info-card-row.js +56 -30
  674. package/dist/components/ui/info-card.d.ts +24 -1
  675. package/dist/components/ui/info-card.d.ts.map +1 -1
  676. package/dist/components/ui/info-card.js +87 -52
  677. package/dist/components/ui/input-styles.d.ts +7 -0
  678. package/dist/components/ui/input-styles.d.ts.map +1 -0
  679. package/dist/components/ui/input-styles.js +7 -0
  680. package/dist/components/ui/input.d.ts.map +1 -1
  681. package/dist/components/ui/input.js +4 -1
  682. package/dist/components/ui/layout-hold.d.ts +9 -7
  683. package/dist/components/ui/layout-hold.d.ts.map +1 -1
  684. package/dist/components/ui/leader-row.d.ts +11 -4
  685. package/dist/components/ui/leader-row.d.ts.map +1 -1
  686. package/dist/components/ui/leader-row.js +29 -5
  687. package/dist/components/ui/loading-scope.d.ts +26 -0
  688. package/dist/components/ui/loading-scope.d.ts.map +1 -0
  689. package/dist/components/ui/loading-scope.js +31 -0
  690. package/dist/components/ui/markdown/base-components.d.ts +25 -0
  691. package/dist/components/ui/markdown/base-components.d.ts.map +1 -1
  692. package/dist/components/ui/markdown/base-components.js +13 -7
  693. package/dist/components/ui/markdown/engine.d.ts +26 -1
  694. package/dist/components/ui/markdown/engine.d.ts.map +1 -1
  695. package/dist/components/ui/markdown/engine.js +63 -4
  696. package/dist/components/ui/markdown/index.d.ts +5 -3
  697. package/dist/components/ui/markdown/index.d.ts.map +1 -1
  698. package/dist/components/ui/markdown/index.js +12 -4
  699. package/dist/components/ui/markdown/mermaid-diagram.d.ts.map +1 -1
  700. package/dist/components/ui/markdown/mermaid-diagram.js +8 -2
  701. package/dist/components/ui/markdown/rich/rich-markdown-renderer.d.ts +10 -0
  702. package/dist/components/ui/markdown/rich/rich-markdown-renderer.d.ts.map +1 -1
  703. package/dist/components/ui/markdown/rich/rich-markdown-renderer.js +21 -5
  704. package/dist/components/ui/markdown/simple-markdown-renderer.d.ts +0 -2
  705. package/dist/components/ui/markdown/simple-markdown-renderer.d.ts.map +1 -1
  706. package/dist/components/ui/markdown-editor.d.ts +10 -0
  707. package/dist/components/ui/markdown-editor.d.ts.map +1 -1
  708. package/dist/components/ui/markdown-editor.js +23 -7
  709. package/dist/components/ui/numbered-step.d.ts +10 -0
  710. package/dist/components/ui/numbered-step.d.ts.map +1 -1
  711. package/dist/components/ui/numbered-step.js +19 -2
  712. package/dist/components/ui/organization-card.d.ts.map +1 -1
  713. package/dist/components/ui/organization-card.js +30 -5
  714. package/dist/components/ui/page-actions.d.ts.map +1 -1
  715. package/dist/components/ui/page-actions.js +16 -20
  716. package/dist/components/ui/page-loader.d.ts.map +1 -1
  717. package/dist/components/ui/page-loader.js +2 -1
  718. package/dist/components/ui/people-cell.d.ts +4 -0
  719. package/dist/components/ui/people-cell.d.ts.map +1 -1
  720. package/dist/components/ui/people-cell.js +19 -3
  721. package/dist/components/ui/photo-wall.d.ts +1 -1
  722. package/dist/components/ui/photo-wall.d.ts.map +1 -1
  723. package/dist/components/ui/photo-wall.js +13 -3
  724. package/dist/components/ui/product-screen-frame.d.ts.map +1 -1
  725. package/dist/components/ui/product-screen-frame.js +3 -2
  726. package/dist/components/ui/progress-bar.d.ts +9 -0
  727. package/dist/components/ui/progress-bar.d.ts.map +1 -1
  728. package/dist/components/ui/progress-bar.js +34 -14
  729. package/dist/components/ui/progress.d.ts +15 -0
  730. package/dist/components/ui/progress.d.ts.map +1 -1
  731. package/dist/components/ui/progress.js +8 -3
  732. package/dist/components/ui/release-changelog-section.d.ts +22 -1
  733. package/dist/components/ui/release-changelog-section.d.ts.map +1 -1
  734. package/dist/components/ui/release-changelog-section.js +96 -28
  735. package/dist/components/ui/search-input.d.ts.map +1 -1
  736. package/dist/components/ui/search-input.js +11 -3
  737. package/dist/components/ui/searchable-select.d.ts.map +1 -1
  738. package/dist/components/ui/searchable-select.js +17 -4
  739. package/dist/components/ui/skeleton-surface.d.ts +12 -4
  740. package/dist/components/ui/skeleton-surface.d.ts.map +1 -1
  741. package/dist/components/ui/skeleton-surface.js +6 -2
  742. package/dist/components/ui/slack-channel-chip.d.ts +5 -1
  743. package/dist/components/ui/slack-channel-chip.d.ts.map +1 -1
  744. package/dist/components/ui/slack-channel-chip.js +16 -3
  745. package/dist/components/ui/snap-carousel.d.ts +4 -1
  746. package/dist/components/ui/snap-carousel.d.ts.map +1 -1
  747. package/dist/components/ui/snap-carousel.js +2 -0
  748. package/dist/components/ui/square-avatar.d.ts +3 -0
  749. package/dist/components/ui/square-avatar.d.ts.map +1 -1
  750. package/dist/components/ui/square-avatar.js +38 -23
  751. package/dist/components/ui/stacked-rows-panel.d.ts +24 -1
  752. package/dist/components/ui/stacked-rows-panel.d.ts.map +1 -1
  753. package/dist/components/ui/stacked-rows-panel.js +50 -13
  754. package/dist/components/ui/status-badge.d.ts +10 -2
  755. package/dist/components/ui/status-badge.d.ts.map +1 -1
  756. package/dist/components/ui/status-badge.js +14 -0
  757. package/dist/components/ui/status-indicator.d.ts +4 -0
  758. package/dist/components/ui/status-indicator.d.ts.map +1 -1
  759. package/dist/components/ui/status-indicator.js +16 -3
  760. package/dist/components/ui/status-line.d.ts.map +1 -1
  761. package/dist/components/ui/status-line.js +2 -1
  762. package/dist/components/ui/strip-card.d.ts +9 -0
  763. package/dist/components/ui/strip-card.d.ts.map +1 -1
  764. package/dist/components/ui/strip-card.js +57 -39
  765. package/dist/components/ui/tab-navigation.d.ts +26 -2
  766. package/dist/components/ui/tab-navigation.d.ts.map +1 -1
  767. package/dist/components/ui/tab-navigation.js +182 -115
  768. package/dist/components/ui/table/table-header.js +2 -2
  769. package/dist/components/ui/table/table-row.d.ts.map +1 -1
  770. package/dist/components/ui/table/table-row.js +2 -4
  771. package/dist/components/ui/table/table-skeleton.d.ts +6 -1
  772. package/dist/components/ui/table/table-skeleton.d.ts.map +1 -1
  773. package/dist/components/ui/table/table-skeleton.js +38 -50
  774. package/dist/components/ui/table/table.d.ts +1 -1
  775. package/dist/components/ui/table/table.d.ts.map +1 -1
  776. package/dist/components/ui/table/table.js +30 -25
  777. package/dist/components/ui/table/types.d.ts +14 -4
  778. package/dist/components/ui/table/types.d.ts.map +1 -1
  779. package/dist/components/ui/table/utils.d.ts +4 -0
  780. package/dist/components/ui/table/utils.d.ts.map +1 -1
  781. package/dist/components/ui/table/utils.js +4 -0
  782. package/dist/components/ui/tabs.d.ts +22 -1
  783. package/dist/components/ui/tabs.d.ts.map +1 -1
  784. package/dist/components/ui/tabs.js +33 -2
  785. package/dist/components/ui/tag.d.ts +21 -1
  786. package/dist/components/ui/tag.d.ts.map +1 -1
  787. package/dist/components/ui/tag.js +17 -12
  788. package/dist/components/ui/tags-input.d.ts +9 -0
  789. package/dist/components/ui/tags-input.d.ts.map +1 -1
  790. package/dist/components/ui/tags-input.js +41 -10
  791. package/dist/components/ui/textarea.d.ts +17 -1
  792. package/dist/components/ui/textarea.d.ts.map +1 -1
  793. package/dist/components/ui/textarea.js +22 -3
  794. package/dist/components/ui/ticket-info-section.d.ts +0 -1
  795. package/dist/components/ui/ticket-info-section.d.ts.map +1 -1
  796. package/dist/components/ui/timezone-select.d.ts +3 -1
  797. package/dist/components/ui/timezone-select.d.ts.map +1 -1
  798. package/dist/components/ui/timezone-select.js +3 -1
  799. package/dist/components/ui/toggle.d.ts +8 -2
  800. package/dist/components/ui/toggle.d.ts.map +1 -1
  801. package/dist/components/ui/toggle.js +10 -6
  802. package/dist/components/unified-pagination.d.ts +3 -1
  803. package/dist/components/unified-pagination.d.ts.map +1 -1
  804. package/dist/components/unified-pagination.js +7 -1
  805. package/dist/components/user-display.d.ts +11 -0
  806. package/dist/components/user-display.d.ts.map +1 -1
  807. package/dist/components/user-display.js +38 -14
  808. package/dist/components/user-summary-stub.d.ts.map +1 -1
  809. package/dist/components/user-summary-stub.js +7 -14
  810. package/dist/components/vendor-display-button.d.ts +4 -0
  811. package/dist/components/vendor-display-button.d.ts.map +1 -1
  812. package/dist/components/vendor-display-button.js +11 -13
  813. package/dist/components/vendor-icon.d.ts +5 -0
  814. package/dist/components/vendor-icon.d.ts.map +1 -1
  815. package/dist/components/vendor-icon.js +12 -3
  816. package/dist/components/vendor-tag.d.ts +5 -0
  817. package/dist/components/vendor-tag.d.ts.map +1 -1
  818. package/dist/components/vendor-tag.js +13 -5
  819. package/dist/{devices-O5PZ4IR6.cjs → devices-2D3XSIIE.cjs} +43 -55
  820. package/dist/embed-shims/index.cjs +4 -2
  821. package/dist/embed-shims/next-image.cjs +4 -2
  822. package/dist/embed-shims/next-image.d.ts.map +1 -1
  823. package/dist/embed-shims/next-image.js +24 -0
  824. package/dist/{embeddable-chat-YFUCVDMV.cjs → embeddable-chat-YL6ZSTDJ.cjs} +117 -119
  825. package/dist/hooks/index.cjs +12 -12
  826. package/dist/hooks/state/flatten-schema.d.ts +0 -1
  827. package/dist/hooks/state/flatten-schema.d.ts.map +1 -1
  828. package/dist/hooks/state/flatten-schema.js +0 -2
  829. package/dist/hooks/state/index.d.ts +6 -3
  830. package/dist/hooks/state/index.d.ts.map +1 -1
  831. package/dist/hooks/state/index.js +4 -3
  832. package/dist/hooks/state/url-converter.d.ts +1 -1
  833. package/dist/hooks/state/url-converter.d.ts.map +1 -1
  834. package/dist/hooks/state/url-converter.js +1 -2
  835. package/dist/hooks/state/use-api-params.d.ts +1 -3
  836. package/dist/hooks/state/use-api-params.d.ts.map +1 -1
  837. package/dist/hooks/state/use-api-params.js +1 -5
  838. package/dist/hooks/ui/index.d.ts +1 -0
  839. package/dist/hooks/ui/index.d.ts.map +1 -1
  840. package/dist/hooks/ui/use-image-edge-color.d.ts +1 -1
  841. package/dist/hooks/ui/use-image-edge-color.d.ts.map +1 -1
  842. package/dist/hooks/ui/use-image-edge-color.js +3 -1
  843. package/dist/hooks/ui/use-onboarding-state.d.ts +0 -1
  844. package/dist/hooks/ui/use-onboarding-state.d.ts.map +1 -1
  845. package/dist/hooks/use-downloads.d.ts +1 -1
  846. package/dist/hooks/use-downloads.d.ts.map +1 -1
  847. package/dist/hooks/use-downloads.js +8 -1
  848. package/dist/hooks/use-meeting-booking.d.ts.map +1 -1
  849. package/dist/hooks/use-meeting-booking.js +3 -0
  850. package/dist/hooks/use-self-fetch.d.ts +1 -1
  851. package/dist/hooks/use-self-fetch.d.ts.map +1 -1
  852. package/dist/hooks/use-self-fetch.js +7 -4
  853. package/dist/hooks/use-toast.d.ts +1 -1
  854. package/dist/index.cjs +329 -103
  855. package/dist/{knowledge-4OU73KTO.cjs → knowledge-AJ36PMK2.cjs} +36 -40
  856. package/dist/{logs-R6ZH32UU.cjs → logs-DNE44ACE.cjs} +44 -48
  857. package/dist/nats/index.d.ts +1 -0
  858. package/dist/nats/index.d.ts.map +1 -1
  859. package/dist/nats/nats-provider.d.ts +0 -1
  860. package/dist/nats/nats-provider.d.ts.map +1 -1
  861. package/dist/nats/nats.d.ts +0 -1
  862. package/dist/nats/nats.d.ts.map +1 -1
  863. package/dist/nats/use-nats-subscription.d.ts +2 -1
  864. package/dist/nats/use-nats-subscription.d.ts.map +1 -1
  865. package/dist/{policies-XN4TDX3G.cjs → policies-AJHSP6ZY.cjs} +39 -43
  866. package/dist/{remote-session-7NSC7DI5.cjs → remote-session-PPA5SXX7.cjs} +18 -21
  867. package/dist/schemas/meeting-booking-schema.cjs +4 -0
  868. package/dist/schemas/meeting-booking-schema.d.ts +8 -0
  869. package/dist/schemas/meeting-booking-schema.d.ts.map +1 -1
  870. package/dist/schemas/meeting-booking-schema.js +4 -0
  871. package/dist/{scripts-53VHKMY3.cjs → scripts-4YO2QL36.cjs} +42 -46
  872. package/dist/{software-update-KLJSMAUM.cjs → software-update-KMI2EOO3.cjs} +41 -45
  873. package/dist/styles/component-sizes.d.ts +96 -0
  874. package/dist/styles/component-sizes.d.ts.map +1 -0
  875. package/dist/styles/component-sizes.js +77 -0
  876. package/dist/{tickets-board-DXMF7IKL.cjs → tickets-board-G3WBH4SV.cjs} +18 -20
  877. package/dist/types/announcement.d.ts +0 -1
  878. package/dist/types/announcement.d.ts.map +1 -1
  879. package/dist/types/blog.d.ts +0 -1
  880. package/dist/types/blog.d.ts.map +1 -1
  881. package/dist/types/case-study.d.ts +2 -2
  882. package/dist/types/case-study.d.ts.map +1 -1
  883. package/dist/types/customer-interview-ai.types.d.ts +1 -2
  884. package/dist/types/customer-interview-ai.types.d.ts.map +1 -1
  885. package/dist/types/customer-interview.d.ts +0 -1
  886. package/dist/types/customer-interview.d.ts.map +1 -1
  887. package/dist/types/index.d.ts +2 -0
  888. package/dist/types/index.d.ts.map +1 -1
  889. package/dist/types/product-release.d.ts +3 -0
  890. package/dist/types/product-release.d.ts.map +1 -1
  891. package/dist/types/stack.d.ts +0 -2
  892. package/dist/types/stack.d.ts.map +1 -1
  893. package/dist/utils/announcement-storage.d.ts +0 -3
  894. package/dist/utils/announcement-storage.d.ts.map +1 -1
  895. package/dist/utils/announcement-storage.js +1 -3
  896. package/dist/utils/dev-sections/openframe-dev-sections.d.ts +11 -0
  897. package/dist/utils/dev-sections/openframe-dev-sections.d.ts.map +1 -1
  898. package/dist/utils/dev-sections/openframe-dev-sections.js +5 -0
  899. package/dist/utils/index.cjs +19 -0
  900. package/dist/utils/index.d.ts +7 -2
  901. package/dist/utils/index.d.ts.map +1 -1
  902. package/dist/utils/index.js +8 -6
  903. package/dist/utils/markdown-heading-id.d.ts +0 -19
  904. package/dist/utils/markdown-heading-id.d.ts.map +1 -1
  905. package/dist/utils/markdown-heading-id.js +2 -5
  906. package/dist/utils/ods-color-utils.d.ts +0 -1
  907. package/dist/utils/ods-color-utils.d.ts.map +1 -1
  908. package/dist/utils/ods-color-utils.js +0 -2
  909. package/dist/utils/own-click.d.ts +4 -0
  910. package/dist/utils/own-click.d.ts.map +1 -0
  911. package/dist/utils/own-click.js +14 -0
  912. package/dist/utils/platform-config.d.ts +0 -1
  913. package/dist/utils/platform-config.d.ts.map +1 -1
  914. package/dist/utils/platform-config.js +0 -26
  915. package/dist/utils/source-icons.d.ts +2 -2
  916. package/dist/{video-file-player-QZ3YOLHO.cjs → video-file-player-COXRF4M5.cjs} +13 -13
  917. package/eslint-config/base.js +2 -0
  918. package/eslint-config/re-exports.js +56 -0
  919. package/package.json +1 -1
  920. package/src/ODS_TOKEN_RULES.md +2 -2
  921. package/src/chat-protocol/decode.ts +0 -5
  922. package/src/chat-protocol/index.ts +1 -0
  923. package/src/components/agent-identity.tsx +0 -2
  924. package/src/components/agent-mark.tsx +13 -4
  925. package/src/components/authors/author-detail-view.tsx +90 -44
  926. package/src/components/case-studies/entity-quotes-panel.tsx +50 -3
  927. package/src/components/case-studies/index.ts +2 -2
  928. package/src/components/case-studies/quote-cards-strip.tsx +75 -10
  929. package/src/components/categories-cart.tsx +82 -38
  930. package/src/components/category-card.tsx +1 -1
  931. package/src/components/chat/chat-attachment-bar.tsx +1 -1
  932. package/src/components/chat/chat-container.tsx +2 -1
  933. package/src/components/chat/chat-ticket-list.tsx +0 -1
  934. package/src/components/chat/chat-turn.tsx +124 -18
  935. package/src/components/chat/embeddable-chat.tsx +5 -5
  936. package/src/components/chat/entity-cards/admin-content-card-grid.tsx +1 -51
  937. package/src/components/chat/entity-cards/admin-content-card.tsx +80 -15
  938. package/src/components/chat/entity-cards/blog-card.tsx +71 -41
  939. package/src/components/chat/entity-cards/campaign-card-admin.tsx +4 -17
  940. package/src/components/chat/entity-cards/case-study-card.tsx +129 -68
  941. package/src/components/chat/entity-cards/chat-ticket-item.tsx +34 -29
  942. package/src/components/chat/entity-cards/customer-interview-card.tsx +61 -45
  943. package/src/components/chat/entity-cards/data-room-doc-card.tsx +11 -18
  944. package/src/components/chat/entity-cards/design-doc-card.tsx +48 -34
  945. package/src/components/chat/entity-cards/dispatch.tsx +9 -13
  946. package/src/components/chat/entity-cards/employee-entry-card.tsx +5 -5
  947. package/src/components/chat/entity-cards/entity-author-card.tsx +138 -32
  948. package/src/components/chat/entity-cards/entity-portrait-card.tsx +61 -16
  949. package/src/components/chat/entity-cards/generic-entity-card.tsx +11 -19
  950. package/src/components/chat/entity-cards/github-activity-card.tsx +14 -30
  951. package/src/components/chat/entity-cards/hubspot-ticket-card.tsx +11 -23
  952. package/src/components/chat/entity-cards/index.ts +20 -7
  953. package/src/components/chat/entity-cards/investor-update-card.tsx +42 -35
  954. package/src/components/chat/entity-cards/onboarding-guide-card.tsx +78 -64
  955. package/src/components/chat/entity-cards/program-card.tsx +96 -66
  956. package/src/components/chat/entity-cards/roadmap-card.tsx +85 -65
  957. package/src/components/chat/entity-cards/roadmap-vote-button.tsx +12 -1
  958. package/src/components/chat/entity-cards/slack-message-card.tsx +19 -26
  959. package/src/components/chat/hooks/index.ts +12 -2
  960. package/src/components/chat/hooks/use-ask-prompts.ts +5 -1
  961. package/src/components/chat/hooks/use-chat-dialog-manager.ts +1 -1
  962. package/src/components/chat/hooks/use-chat-history-hydration.ts +1 -1
  963. package/src/components/chat/hooks/use-chat.ts +0 -3
  964. package/src/components/chat/hooks/use-nats-chat-adapter.ts +0 -20
  965. package/src/components/chat/hooks/use-proxied-image-url.ts +27 -20
  966. package/src/components/chat/hooks/use-slash-commands.ts +1 -7
  967. package/src/components/chat/hooks/use-sse-chat-adapter.ts +4 -18
  968. package/src/components/chat/stream/chat-stream-reducer.ts +3 -2
  969. package/src/components/chat/types/entities/index.ts +24 -4
  970. package/src/components/chat/types/entities/investor-update.ts +1 -1
  971. package/src/components/chat/types/entities/program-types.ts +2 -5
  972. package/src/components/chat/utils/compact-card-classes.ts +15 -2
  973. package/src/components/chat/utils/compact-card-skeleton.tsx +111 -0
  974. package/src/components/chat/utils/icon-library.tsx +0 -2
  975. package/src/components/chat/utils/index.ts +5 -3
  976. package/src/components/chat/utils/scroll-anchor.ts +0 -2
  977. package/src/components/chat/utils/source-row-cta.ts +1 -5
  978. package/src/components/comment-card.tsx +118 -19
  979. package/src/components/comment-thread.tsx +130 -17
  980. package/src/components/docs/doc-viewer.tsx +33 -31
  981. package/src/components/docs/skeletons.tsx +37 -49
  982. package/src/components/docs/use-document-tree.ts +11 -7
  983. package/src/components/embeds/embed-iframe.tsx +5 -0
  984. package/src/components/embeds/index.ts +1 -1
  985. package/src/components/embeds/markdown-image.tsx +6 -2
  986. package/src/components/embeds/og-link-preview.tsx +155 -81
  987. package/src/components/faq/faq-document-page.tsx +8 -0
  988. package/src/components/faq/faq-section.tsx +249 -70
  989. package/src/components/faq/index.ts +12 -1
  990. package/src/components/faq-accordion.tsx +67 -7
  991. package/src/components/features/ai-enrich/AIStatusIndicator.tsx +2 -1
  992. package/src/components/features/approval-level.tsx +71 -8
  993. package/src/components/features/capability-explorer.tsx +59 -61
  994. package/src/components/features/cards-strip.tsx +54 -12
  995. package/src/components/features/command-box.tsx +139 -10
  996. package/src/components/features/conversation-card.tsx +242 -16
  997. package/src/components/features/devices/device-selector/device-selector.tsx +1 -0
  998. package/src/components/features/devices/devices-panel-view.tsx +2 -2
  999. package/src/components/features/entity-tag-badges.tsx +143 -10
  1000. package/src/components/features/entity-video-section.tsx +52 -14
  1001. package/src/components/features/figma-prototype-viewer.tsx +4 -8
  1002. package/src/components/features/index.ts +11 -0
  1003. package/src/components/features/knowledge-base/index.ts +2 -5
  1004. package/src/components/features/knowledge-base/knowledge-base-article-view.tsx +0 -2
  1005. package/src/components/features/model-token-rates.tsx +64 -84
  1006. package/src/components/features/notifications/approval-request-notification-tile.tsx +9 -11
  1007. package/src/components/features/notifications/notification-tile.tsx +58 -23
  1008. package/src/components/features/paths-display.tsx +73 -6
  1009. package/src/components/features/platform-badge.tsx +41 -1
  1010. package/src/components/features/push-button-selector.tsx +167 -64
  1011. package/src/components/features/remote-session/index.ts +2 -2
  1012. package/src/components/features/remote-session/remote-desktop-chat-message-row.tsx +24 -3
  1013. package/src/components/features/remote-session/remote-desktop-chat-panel.tsx +19 -5
  1014. package/src/components/features/remote-session/remote-desktop-view.tsx +47 -38
  1015. package/src/components/features/remote-session/remote-session-chat-panel.tsx +1 -1
  1016. package/src/components/features/status-filter-component.tsx +105 -11
  1017. package/src/components/features/use-video-warmup.ts +0 -7
  1018. package/src/components/features/use-walkthrough-video.ts +5 -1
  1019. package/src/components/features/video-bites-strip.tsx +137 -22
  1020. package/src/components/features/video-hover-preview.tsx +2 -1
  1021. package/src/components/features/video.tsx +16 -12
  1022. package/src/components/features/walkthrough-video.tsx +9 -2
  1023. package/src/components/help-center-pages/download-apps-page.tsx +86 -32
  1024. package/src/components/help-center-pages/trust-center-page.tsx +132 -66
  1025. package/src/components/help-center-pages/trust-center-sections.tsx +205 -148
  1026. package/src/components/icon-display.tsx +9 -0
  1027. package/src/components/index.ts +11 -2
  1028. package/src/components/interactive-wrapper.tsx +2 -1
  1029. package/src/components/layout/list-page-layout.tsx +4 -5
  1030. package/src/components/layout/page-container.tsx +59 -29
  1031. package/src/components/layout/page-data-sync.tsx +40 -5
  1032. package/src/components/layout/page-heading.tsx +84 -1
  1033. package/src/components/layout/page-layout.tsx +5 -5
  1034. package/src/components/layout/title-block.tsx +72 -17
  1035. package/src/components/loading/category-vendor-selector-skeleton.tsx +4 -0
  1036. package/src/components/loading/deprecated-layout-skeletons.tsx +133 -0
  1037. package/src/components/loading/device-card-skeleton.tsx +4 -4
  1038. package/src/components/loading/index.ts +11 -13
  1039. package/src/components/loading/loading-region.tsx +16 -9
  1040. package/src/components/loading/msp-profile-form-skeleton.tsx +3 -0
  1041. package/src/components/loading/organization-card-skeleton.tsx +45 -71
  1042. package/src/components/loading/page-layout-skeleton.tsx +1 -641
  1043. package/src/components/loading/settings-form-skeleton.tsx +3 -0
  1044. package/src/components/loading/unified-skeleton.tsx +101 -11
  1045. package/src/components/log-severity-dot.tsx +17 -14
  1046. package/src/components/logs-list.tsx +43 -29
  1047. package/src/components/media-carousel.tsx +0 -4
  1048. package/src/components/meeting-scheduler/booking-form.tsx +245 -35
  1049. package/src/components/meeting-scheduler/context-panel.tsx +96 -30
  1050. package/src/components/meeting-scheduler/directory.tsx +70 -37
  1051. package/src/components/meeting-scheduler/index.tsx +136 -132
  1052. package/src/components/meeting-scheduler/modal-header.tsx +45 -31
  1053. package/src/components/meeting-scheduler/slot-picker.tsx +20 -8
  1054. package/src/components/metric-value.tsx +19 -2
  1055. package/src/components/msp-display.tsx +25 -10
  1056. package/src/components/navigation/app-layout.tsx +0 -3
  1057. package/src/components/navigation/index.ts +15 -3
  1058. package/src/components/navigation/mingo-ai-button.tsx +3 -4
  1059. package/src/components/navigation/mobile-nav-sheet.tsx +0 -2
  1060. package/src/components/navigation/multi-level-navigation.tsx +152 -35
  1061. package/src/components/navigation/page-section-bar.tsx +132 -0
  1062. package/src/components/navigation/sticky-section-nav.tsx +109 -18
  1063. package/src/components/navigation/ticket-alerts-button.tsx +1 -1
  1064. package/src/components/onboarding-guides/hooks/use-onboarding-guides.ts +8 -1
  1065. package/src/components/onboarding-guides/index.ts +5 -2
  1066. package/src/components/onboarding-guides/onboarding-guide-detail-view.tsx +166 -67
  1067. package/src/components/onboarding-guides/onboarding-guides-catalog-skeleton.tsx +38 -51
  1068. package/src/components/onboarding-guides/onboarding-guides-catalog-view.tsx +91 -45
  1069. package/src/components/pagination.tsx +103 -48
  1070. package/src/components/persistent-filter-controls.tsx +0 -7
  1071. package/src/components/persistent-pagination.tsx +6 -1
  1072. package/src/components/platform/ToolBadge.tsx +57 -10
  1073. package/src/components/platform/index.ts +2 -2
  1074. package/src/components/platform/tool-badge-mark.ts +6 -0
  1075. package/src/components/product-demo/fixtures/devices.ts +0 -3
  1076. package/src/components/product-demo/product-screen.tsx +42 -23
  1077. package/src/components/product-demo/screen-loading.tsx +20 -0
  1078. package/src/components/product-demo/screens/devices-view.tsx +58 -0
  1079. package/src/components/product-demo/screens/devices.tsx +9 -29
  1080. package/src/components/related-content/card-registry.tsx +20 -6
  1081. package/src/components/related-content/index.ts +3 -1
  1082. package/src/components/related-content/related-content-section.tsx +222 -46
  1083. package/src/components/results-count.tsx +37 -6
  1084. package/src/components/shared/article-author-byline.tsx +65 -41
  1085. package/src/components/shared/delivery/delivery-lists.tsx +15 -2
  1086. package/src/components/shared/delivery/delivery-row.tsx +55 -9
  1087. package/src/components/shared/delivery/delivery-table.tsx +19 -46
  1088. package/src/components/shared/detail-page-skeleton.tsx +15 -1
  1089. package/src/components/shared/dev-section/dev-card-row.tsx +45 -28
  1090. package/src/components/shared/dev-section/dev-section-view.tsx +1 -1
  1091. package/src/components/shared/doc-search/use-doc-search.ts +1 -1
  1092. package/src/components/shared/legal-document/index.ts +2 -0
  1093. package/src/components/shared/legal-document/legal-document-page.tsx +41 -21
  1094. package/src/components/shared/legal-document/use-legal-docs.ts +5 -1
  1095. package/src/components/shared/legal-document/use-legal-documents.ts +4 -1
  1096. package/src/components/shared/media-gallery-strip.tsx +35 -3
  1097. package/src/components/shared/onboarding/index.ts +2 -5
  1098. package/src/components/shared/product-release/index.ts +1 -1
  1099. package/src/components/shared/product-release/product-release-card-classes.ts +28 -0
  1100. package/src/components/shared/product-release/product-release-card-skeleton.tsx +62 -56
  1101. package/src/components/shared/product-release/product-release-card.tsx +62 -44
  1102. package/src/components/shared/product-release/product-releases-view.tsx +32 -24
  1103. package/src/components/shared/product-release/release-detail-page.tsx +229 -134
  1104. package/src/components/shared/roadmap/roadmap-grid-skeleton.tsx +20 -6
  1105. package/src/components/shared/roadmap/roadmap-grid.tsx +59 -9
  1106. package/src/components/shared/roadmap/roadmap-view.tsx +3 -3
  1107. package/src/components/social-icon-row.tsx +14 -8
  1108. package/src/components/tickets/help-center-list.tsx +6 -2
  1109. package/src/components/tickets/hooks/use-ticket-actions.ts +0 -4
  1110. package/src/components/tickets/index.ts +1 -2
  1111. package/src/components/tickets/ticket-center.tsx +189 -75
  1112. package/src/components/tickets/types.ts +0 -9
  1113. package/src/components/toggle-group.tsx +4 -1
  1114. package/src/components/tool-icon.tsx +2 -1
  1115. package/src/components/ui/analyzing-state.tsx +11 -6
  1116. package/src/components/ui/announcement-bar-view.tsx +7 -1
  1117. package/src/components/ui/autocomplete.tsx +58 -6
  1118. package/src/components/ui/avatar-stack.tsx +42 -3
  1119. package/src/components/ui/badge.tsx +16 -1
  1120. package/src/components/ui/benefit-list.tsx +41 -6
  1121. package/src/components/ui/button/button-styles.ts +48 -0
  1122. package/src/components/ui/button/button.tsx +5 -39
  1123. package/src/components/ui/button/index.ts +1 -0
  1124. package/src/components/ui/card.tsx +28 -13
  1125. package/src/components/ui/checkbox.tsx +6 -1
  1126. package/src/components/ui/compliance-badge.tsx +6 -2
  1127. package/src/components/ui/cursor-pagination.tsx +28 -3
  1128. package/src/components/ui/dashboard-info-card.tsx +29 -11
  1129. package/src/components/ui/data-attribution.tsx +42 -12
  1130. package/src/components/ui/data-table/data-table-body.tsx +11 -2
  1131. package/src/components/ui/data-table/data-table-row-count.tsx +19 -1
  1132. package/src/components/ui/data-table/data-table-row.tsx +4 -9
  1133. package/src/components/ui/data-table/data-table-skeleton.tsx +7 -7
  1134. package/src/components/ui/data-table/index.ts +2 -1
  1135. package/src/components/ui/date-picker.tsx +0 -6
  1136. package/src/components/ui/entity-image.tsx +27 -4
  1137. package/src/components/ui/error-state.tsx +8 -1
  1138. package/src/components/ui/feature-card.tsx +77 -12
  1139. package/src/components/ui/feature-list.tsx +72 -8
  1140. package/src/components/ui/field-wrapper.tsx +13 -1
  1141. package/src/components/ui/filter-checkbox-item.tsx +57 -6
  1142. package/src/components/ui/filter-modal.tsx +2 -6
  1143. package/src/components/ui/filter-pill-row.tsx +81 -27
  1144. package/src/components/ui/incident-feed.tsx +20 -11
  1145. package/src/components/ui/index.ts +21 -1
  1146. package/src/components/ui/info-card-row.tsx +74 -19
  1147. package/src/components/ui/info-card.tsx +87 -13
  1148. package/src/components/ui/input-styles.ts +6 -0
  1149. package/src/components/ui/input.tsx +4 -1
  1150. package/src/components/ui/layout-hold.tsx +9 -7
  1151. package/src/components/ui/leader-row.tsx +58 -4
  1152. package/src/components/ui/loading-scope.tsx +54 -0
  1153. package/src/components/ui/markdown/base-components.tsx +18 -9
  1154. package/src/components/ui/markdown/engine.tsx +131 -7
  1155. package/src/components/ui/markdown/index.ts +8 -6
  1156. package/src/components/ui/markdown/mermaid-diagram.tsx +7 -4
  1157. package/src/components/ui/markdown/rich/rich-markdown-renderer.tsx +26 -1
  1158. package/src/components/ui/markdown/simple-markdown-renderer.tsx +0 -3
  1159. package/src/components/ui/markdown-editor.tsx +83 -50
  1160. package/src/components/ui/numbered-step.tsx +32 -2
  1161. package/src/components/ui/organization-card.tsx +32 -7
  1162. package/src/components/ui/page-actions.tsx +25 -29
  1163. package/src/components/ui/page-loader.tsx +2 -1
  1164. package/src/components/ui/people-cell.tsx +25 -2
  1165. package/src/components/ui/photo-wall.tsx +14 -3
  1166. package/src/components/ui/product-screen-frame.tsx +14 -3
  1167. package/src/components/ui/progress-bar.tsx +26 -3
  1168. package/src/components/ui/progress.tsx +14 -3
  1169. package/src/components/ui/release-changelog-section.tsx +153 -20
  1170. package/src/components/ui/search-input.tsx +23 -3
  1171. package/src/components/ui/searchable-select.tsx +26 -6
  1172. package/src/components/ui/skeleton-surface.ts +16 -4
  1173. package/src/components/ui/slack-channel-chip.tsx +23 -3
  1174. package/src/components/ui/snap-carousel.tsx +5 -0
  1175. package/src/components/ui/square-avatar.tsx +41 -23
  1176. package/src/components/ui/stacked-rows-panel.tsx +88 -15
  1177. package/src/components/ui/status-badge.tsx +18 -1
  1178. package/src/components/ui/status-indicator.tsx +21 -2
  1179. package/src/components/ui/status-line.tsx +2 -1
  1180. package/src/components/ui/strip-card.tsx +73 -23
  1181. package/src/components/ui/tab-navigation.tsx +141 -28
  1182. package/src/components/ui/table/table-header.tsx +2 -2
  1183. package/src/components/ui/table/table-row.tsx +2 -4
  1184. package/src/components/ui/table/table-skeleton.tsx +48 -54
  1185. package/src/components/ui/table/table.tsx +36 -19
  1186. package/src/components/ui/table/types.ts +12 -4
  1187. package/src/components/ui/table/utils.ts +5 -0
  1188. package/src/components/ui/tabs.tsx +64 -4
  1189. package/src/components/ui/tag.tsx +33 -13
  1190. package/src/components/ui/tags-input.tsx +48 -10
  1191. package/src/components/ui/textarea.tsx +33 -3
  1192. package/src/components/ui/ticket-info-section.tsx +0 -2
  1193. package/src/components/ui/timezone-select.tsx +4 -0
  1194. package/src/components/ui/toggle.tsx +11 -5
  1195. package/src/components/unified-pagination.tsx +15 -0
  1196. package/src/components/user-display.tsx +53 -12
  1197. package/src/components/user-summary-stub.tsx +7 -11
  1198. package/src/components/vendor-display-button.tsx +15 -12
  1199. package/src/components/vendor-icon.tsx +13 -2
  1200. package/src/components/vendor-tag.tsx +18 -4
  1201. package/src/embed-shims/next-image.tsx +36 -1
  1202. package/src/hooks/state/flatten-schema.ts +0 -4
  1203. package/src/hooks/state/index.ts +5 -3
  1204. package/src/hooks/state/url-converter.ts +2 -2
  1205. package/src/hooks/state/use-api-params.ts +2 -10
  1206. package/src/hooks/ui/index.ts +1 -0
  1207. package/src/hooks/ui/use-image-edge-color.ts +4 -1
  1208. package/src/hooks/ui/use-onboarding-state.ts +0 -2
  1209. package/src/hooks/use-downloads.ts +9 -1
  1210. package/src/hooks/use-meeting-booking.ts +4 -0
  1211. package/src/hooks/use-self-fetch.ts +12 -4
  1212. package/src/nats/index.ts +1 -0
  1213. package/src/nats/nats-provider.tsx +0 -2
  1214. package/src/nats/nats.ts +0 -2
  1215. package/src/nats/use-nats-subscription.ts +2 -1
  1216. package/src/schemas/meeting-booking-schema.ts +11 -0
  1217. package/src/styles/component-sizes.ts +105 -0
  1218. package/src/types/announcement.ts +0 -3
  1219. package/src/types/blog.ts +0 -4
  1220. package/src/types/case-study.ts +2 -2
  1221. package/src/types/customer-interview-ai.types.ts +1 -4
  1222. package/src/types/customer-interview.ts +0 -11
  1223. package/src/types/index.ts +2 -0
  1224. package/src/types/product-release.ts +4 -2
  1225. package/src/types/stack.ts +0 -4
  1226. package/src/utils/announcement-storage.ts +0 -7
  1227. package/src/utils/dev-sections/openframe-dev-sections.ts +11 -0
  1228. package/src/utils/index.ts +6 -9
  1229. package/src/utils/markdown-heading-id.ts +0 -28
  1230. package/src/utils/ods-color-utils.ts +0 -4
  1231. package/src/utils/own-click.ts +25 -0
  1232. package/src/utils/platform-config.tsx +0 -17
  1233. package/src/utils/source-icons.ts +2 -2
  1234. package/dist/chunk-3ATAYP36.cjs +0 -19
  1235. package/dist/chunk-3LU4UFPS.cjs +0 -14
  1236. package/dist/chunk-H3RYUTND.cjs +0 -142
  1237. package/dist/chunk-JB424IQK.cjs +0 -404
  1238. package/dist/chunk-L4UI63K6.cjs +0 -103
  1239. package/dist/chunk-NS64LMVE.cjs +0 -470
  1240. package/dist/chunk-OF336YWG.cjs +0 -20
  1241. package/dist/chunk-RB6BSE3O.cjs +0 -21
  1242. package/dist/chunk-UI2TLQWA.cjs +0 -163
  1243. package/dist/components/chat/entity-cards/product-release-card.d.ts +0 -12
  1244. package/dist/components/chat/entity-cards/product-release-card.d.ts.map +0 -1
  1245. package/dist/components/chat/entity-cards/product-release-card.js +0 -8
  1246. package/dist/components/chat/hooks/use-embedded-chat.d.ts +0 -15
  1247. package/dist/components/chat/hooks/use-embedded-chat.d.ts.map +0 -1
  1248. package/dist/components/chat/hooks/use-embedded-chat.js +0 -6
  1249. package/dist/components/chat/types/entities/blog.d.ts +0 -14
  1250. package/dist/components/chat/types/entities/blog.d.ts.map +0 -1
  1251. package/dist/components/chat/types/entities/blog.js +0 -1
  1252. package/dist/components/chat/types/entities/case-study.d.ts +0 -10
  1253. package/dist/components/chat/types/entities/case-study.d.ts.map +0 -1
  1254. package/dist/components/chat/types/entities/case-study.js +0 -1
  1255. package/dist/components/chat/types/entities/content-ref.d.ts +0 -8
  1256. package/dist/components/chat/types/entities/content-ref.d.ts.map +0 -1
  1257. package/dist/components/chat/types/entities/content-ref.js +0 -1
  1258. package/dist/components/chat/types/entities/customer-interview.d.ts +0 -10
  1259. package/dist/components/chat/types/entities/customer-interview.d.ts.map +0 -1
  1260. package/dist/components/chat/types/entities/customer-interview.js +0 -1
  1261. package/dist/components/chat/utils/source-icons.d.ts +0 -8
  1262. package/dist/components/chat/utils/source-icons.d.ts.map +0 -1
  1263. package/dist/components/chat/utils/source-icons.js +0 -16
  1264. package/dist/utils/image-proxy-stub.d.ts +0 -14
  1265. package/dist/utils/image-proxy-stub.d.ts.map +0 -1
  1266. package/dist/utils/image-proxy-stub.js +0 -22
  1267. package/src/components/chat/entity-cards/product-release-card.tsx +0 -19
  1268. package/src/components/chat/hooks/use-embedded-chat.ts +0 -25
  1269. package/src/components/chat/types/entities/blog.ts +0 -27
  1270. package/src/components/chat/types/entities/case-study.ts +0 -10
  1271. package/src/components/chat/types/entities/content-ref.ts +0 -7
  1272. package/src/components/chat/types/entities/customer-interview.ts +0 -15
  1273. package/src/components/chat/utils/source-icons.ts +0 -14
  1274. package/src/utils/image-proxy-stub.ts +0 -40
@@ -12,13 +12,13 @@
12
12
 
13
13
 
14
14
 
15
- var _chunk74ALTXXCcjs = require('./chunk-74ALTXXC.cjs');
15
+ var _chunkYL6ZB2SRcjs = require('./chunk-YL6ZB2SR.cjs');
16
16
 
17
17
 
18
18
 
19
19
 
20
20
 
21
- var _chunkBIA77I6Bcjs = require('./chunk-BIA77I6B.cjs');
21
+ var _chunkGTONIRJUcjs = require('./chunk-GTONIRJU.cjs');
22
22
 
23
23
 
24
24
  var _chunkSXGDKNVEcjs = require('./chunk-SXGDKNVE.cjs');
@@ -84,13 +84,13 @@ var _chunkBFMRU3R6cjs = require('./chunk-BFMRU3R6.cjs');
84
84
 
85
85
 
86
86
 
87
- var _chunkNET74KSQcjs = require('./chunk-NET74KSQ.cjs');
87
+ var _chunkTZ4GKUO2cjs = require('./chunk-TZ4GKUO2.cjs');
88
88
 
89
89
 
90
90
 
91
91
 
92
92
 
93
- var _chunk3RYIF4OWcjs = require('./chunk-3RYIF4OW.cjs');
93
+ var _chunkXXJL5GY3cjs = require('./chunk-XXJL5GY3.cjs');
94
94
 
95
95
 
96
96
  var _chunkJKX2C3I2cjs = require('./chunk-JKX2C3I2.cjs');
@@ -100,7 +100,7 @@ var _chunkJKX2C3I2cjs = require('./chunk-JKX2C3I2.cjs');
100
100
  var _chunkEWPR7662cjs = require('./chunk-EWPR7662.cjs');
101
101
 
102
102
 
103
- var _chunkNS64LMVEcjs = require('./chunk-NS64LMVE.cjs');
103
+ var _chunkFZB4RMRKcjs = require('./chunk-FZB4RMRK.cjs');
104
104
 
105
105
 
106
106
 
@@ -120,16 +120,21 @@ var _chunkNS64LMVEcjs = require('./chunk-NS64LMVE.cjs');
120
120
 
121
121
 
122
122
 
123
- var _chunk22XAPV6Ncjs = require('./chunk-22XAPV6N.cjs');
124
123
 
125
124
 
126
125
 
126
+ var _chunkDGNBXZXTcjs = require('./chunk-DGNBXZXT.cjs');
127
127
 
128
128
 
129
129
 
130
130
 
131
131
 
132
- var _chunkEQZXJUYVcjs = require('./chunk-EQZXJUYV.cjs');
132
+
133
+
134
+
135
+
136
+
137
+ var _chunkJTSUAHDLcjs = require('./chunk-JTSUAHDL.cjs');
133
138
 
134
139
 
135
140
 
@@ -141,62 +146,53 @@ var _chunkEQZXJUYVcjs = require('./chunk-EQZXJUYV.cjs');
141
146
  var _chunkDGFDBPO7cjs = require('./chunk-DGFDBPO7.cjs');
142
147
 
143
148
 
144
- var _chunkHOTM4UM6cjs = require('./chunk-HOTM4UM6.cjs');
149
+ var _chunkE76ONBKFcjs = require('./chunk-E76ONBKF.cjs');
145
150
 
146
151
 
147
- var _chunkUJ7AXHRZcjs = require('./chunk-UJ7AXHRZ.cjs');
148
152
 
153
+ var _chunkYXDHVHB2cjs = require('./chunk-YXDHVHB2.cjs');
149
154
 
150
155
 
151
- var _chunkHTRILBJDcjs = require('./chunk-HTRILBJD.cjs');
156
+ var _chunkFL2RMEDXcjs = require('./chunk-FL2RMEDX.cjs');
152
157
 
153
158
 
154
- var _chunkK6VWTUCHcjs = require('./chunk-K6VWTUCH.cjs');
159
+ var _chunkWEANWBJHcjs = require('./chunk-WEANWBJH.cjs');
155
160
 
156
161
 
157
- var _chunk2QMBXGMQcjs = require('./chunk-2QMBXGMQ.cjs');
158
162
 
159
163
 
160
- var _chunkV45KLJQPcjs = require('./chunk-V45KLJQP.cjs');
161
164
 
165
+ var _chunkXFRBEXQNcjs = require('./chunk-XFRBEXQN.cjs');
162
166
 
163
167
 
168
+ var _chunkTF5D5MNOcjs = require('./chunk-TF5D5MNO.cjs');
164
169
 
165
- var _chunkKHKPLOU4cjs = require('./chunk-KHKPLOU4.cjs');
166
170
 
171
+ var _chunkV45KLJQPcjs = require('./chunk-V45KLJQP.cjs');
167
172
 
168
- var _chunkH3RYUTNDcjs = require('./chunk-H3RYUTND.cjs');
169
173
 
174
+ var _chunk65VVJSQZcjs = require('./chunk-65VVJSQZ.cjs');
170
175
 
171
- var _chunk3ATAYP36cjs = require('./chunk-3ATAYP36.cjs');
172
176
 
173
- // src/components/chat/index.ts
174
- var _react = require('react'); var _react2 = _interopRequireDefault(_react);
175
177
 
176
- // src/components/chat/chat-message-row.tsx
177
178
 
179
+ var _chunkKHKPLOU4cjs = require('./chunk-KHKPLOU4.cjs');
178
180
 
179
- // src/components/chat/hooks/use-proxied-image-url.ts
180
- function useProxiedImageUrl(url) {
181
- const r = _chunkUJ7AXHRZcjs.useRequiredChatRuntime.call(void 0, );
182
- return _nullishCoalesce(_chunk22XAPV6Ncjs.getProxiedImageUrl.call(void 0, _nullishCoalesce(url, () => ( "")), {
183
- proxyPrefix: r.endpoints.imageProxyUrlPrefix,
184
- skipDomains: r.endpoints.imageProxySkipDomains,
185
- directHttps: true
186
- }), () => ( ""));
187
- }
181
+ // src/components/chat/index.ts
182
+ var _react = require('react'); var _react2 = _interopRequireDefault(_react);
188
183
 
189
184
  // src/components/chat/chat-message-row.tsx
185
+
190
186
  var _jsxruntime = require('react/jsx-runtime');
191
187
  function ChatMessageRow({ displayName, avatarUrl, timeLabel, body, footer }) {
192
- const proxiedAvatar = useProxiedImageUrl(_nullishCoalesce(avatarUrl, () => ( "")));
188
+ const proxiedAvatar = _chunkDGNBXZXTcjs.useProxiedImageUrl.call(void 0, _nullishCoalesce(avatarUrl, () => ( "")));
193
189
  const resolvedAvatar = proxiedAvatar || avatarUrl || void 0;
194
190
  const [failedSrc, setFailedSrc] = _react.useState.call(void 0, null);
195
191
  const src = resolvedAvatar && resolvedAvatar !== failedSrc ? resolvedAvatar : void 0;
196
192
  const hasBody = typeof body === "string" ? body.trim().length > 0 : body != null && body !== false;
197
193
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 gap-2 md:gap-3", children: [
198
194
  src ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
199
- _chunkHOTM4UM6cjs.next_image_default,
195
+ _chunkE76ONBKFcjs.next_image_default,
200
196
  {
201
197
  src,
202
198
  alt: displayName,
@@ -205,7 +201,7 @@ function ChatMessageRow({ displayName, avatarUrl, timeLabel, body, footer }) {
205
201
  height: 40,
206
202
  onError: () => setFailedSrc(_nullishCoalesce(resolvedAvatar, () => ( null)))
207
203
  }
208
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-lg border border-ods-border bg-ods-bg text-ods-text-primary text-h6 md:h-10 md:w-10", children: _chunkEQZXJUYVcjs.personInitials.call(void 0, displayName) || "?" }),
204
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-lg border border-ods-border bg-ods-bg text-ods-text-primary text-h6 md:h-10 md:w-10", children: _chunkJTSUAHDLcjs.personInitials.call(void 0, displayName) || "?" }),
209
205
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 max-w-full flex-1", children: [
210
206
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-1 flex min-w-0 max-w-full items-center gap-2", children: [
211
207
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate font-body text-[14px] font-bold leading-[1.33] tracking-[-0.02em] text-ods-text-primary md:text-[15px]", children: displayName }),
@@ -218,41 +214,100 @@ function ChatMessageRow({ displayName, avatarUrl, timeLabel, body, footer }) {
218
214
  }
219
215
  function ChatMessageRowSkeleton() {
220
216
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 gap-2 md:gap-3", children: [
221
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-8 w-8 flex-shrink-0 rounded-lg md:h-10 md:w-10" }),
217
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-8 w-8 flex-shrink-0 rounded-lg md:h-10 md:w-10" }),
222
218
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
223
219
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-1 flex items-center gap-2", children: [
224
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-[15px] w-24 rounded md:h-[20px] md:w-32" }),
225
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-[12px] w-12 rounded md:h-[16px] md:w-16" })
220
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-[15px] w-24 rounded md:h-[20px] md:w-32" }),
221
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-[12px] w-12 rounded md:h-[16px] md:w-16" })
226
222
  ] }),
227
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-[14px] w-full rounded md:h-[18px]" }),
228
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "mt-1 h-[14px] w-3/4 rounded md:h-[18px]" })
223
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-[14px] w-full rounded md:h-[18px]" }),
224
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "mt-1 h-[14px] w-3/4 rounded md:h-[18px]" })
229
225
  ] })
230
226
  ] });
231
227
  }
232
228
 
233
229
  // src/components/chat/chat-turn.tsx
234
230
 
235
- function ChatTurn({ avatar, name, meta, nameSize = "default", time, children, className }) {
236
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex min-w-0 items-start gap-[var(--spacing-system-sf)]", className), children: [
231
+ var TURN_ROW_CLASS = "flex min-w-0 items-start gap-[var(--spacing-system-sf)]";
232
+ var TURN_BODY_CLASS = "flex min-w-0 flex-1 flex-col gap-[var(--spacing-system-xxs)]";
233
+ var NAME_ROW_CLASS = "flex min-w-0 items-baseline gap-[var(--spacing-system-xsf)]";
234
+ var NAME_GROUP_CLASS = "flex min-w-0 flex-1 flex-col content-md:flex-row content-md:items-baseline content-md:gap-[var(--spacing-system-xsf)]";
235
+ var META_CLASS = "min-w-0 text-ods-text-secondary text-h6 content-md:truncate";
236
+ var NAME_TYPE = { default: "h4", quiet: "h6" };
237
+ var NAME_CLASS = { default: "text-ods-text-primary text-h4", quiet: "text-ods-text-secondary text-h6" };
238
+ var TIME_CLASS = "shrink-0 text-ods-text-secondary text-h6";
239
+ var MESSAGE_CLASS = "m-0 whitespace-pre-wrap text-ods-text-primary text-h4";
240
+ function ChatTurn({
241
+ avatar,
242
+ name,
243
+ meta,
244
+ nameSize = "default",
245
+ time,
246
+ children,
247
+ className,
248
+ skeleton
249
+ }) {
250
+ if (_chunkXFRBEXQNcjs.useLoadingScope.call(void 0, )) {
251
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
252
+ ChatTurnSkeleton,
253
+ {
254
+ nameSize,
255
+ time: _nullishCoalesce(_optionalChain([skeleton, 'optionalAccess', _2 => _2.time]), () => ( time != null)),
256
+ meta: _nullishCoalesce(_optionalChain([skeleton, 'optionalAccess', _3 => _3.meta]), () => ( !!meta)),
257
+ lines: _optionalChain([skeleton, 'optionalAccess', _4 => _4.lines]),
258
+ avatarPx: _optionalChain([skeleton, 'optionalAccess', _5 => _5.avatarPx]),
259
+ className
260
+ }
261
+ );
262
+ }
263
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, TURN_ROW_CLASS, className), children: [
237
264
  avatar && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: avatar }),
238
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-[var(--spacing-system-xxs)]", children: [
239
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-baseline gap-[var(--spacing-system-xsf)]", children: [
240
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 flex-1 items-baseline gap-[var(--spacing-system-xsf)]", children: [
241
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
242
- "span",
243
- {
244
- className: _chunk3ATAYP36cjs.cn.call(void 0,
245
- "min-w-0 truncate",
246
- nameSize === "quiet" ? "text-ods-text-secondary text-h6" : "text-ods-text-primary text-h4"
247
- ),
248
- children: name
249
- }
250
- ),
251
- meta && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 truncate text-ods-text-secondary text-h6", children: meta })
265
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TURN_BODY_CLASS, children: [
266
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: NAME_ROW_CLASS, children: [
267
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: NAME_GROUP_CLASS, children: [
268
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk65VVJSQZcjs.cn.call(void 0, "min-w-0 truncate", NAME_CLASS[nameSize]), children: name }),
269
+ meta && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: META_CLASS, children: meta })
252
270
  ] }),
253
- time && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary text-h6", children: time })
271
+ time && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: TIME_CLASS, children: time })
254
272
  ] }),
255
- typeof children === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "m-0 whitespace-pre-wrap text-ods-text-primary text-h4", children }) : children
273
+ typeof children === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: MESSAGE_CLASS, children }) : children
274
+ ] })
275
+ ] });
276
+ }
277
+ function ChatTurnNameSkeleton({
278
+ nameSize = "default",
279
+ meta = false,
280
+ time = false
281
+ }) {
282
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: NAME_ROW_CLASS, children: [
283
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: NAME_GROUP_CLASS, children: [
284
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: NAME_TYPE[nameSize], className: "w-24" }),
285
+ typeof meta === "string" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: META_CLASS, children: meta }) : meta && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "h6", className: "w-20" })
286
+ ] }),
287
+ time && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "h6", className: "w-12 shrink-0" })
288
+ ] });
289
+ }
290
+ function ChatTurnSkeleton({
291
+ avatarPx,
292
+ avatarShape = "round",
293
+ nameSize = "default",
294
+ lines = 1,
295
+ time = false,
296
+ meta = false,
297
+ className
298
+ }) {
299
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, TURN_ROW_CLASS, className), "aria-hidden": true, children: [
300
+ avatarPx ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJTSUAHDLcjs.SquareAvatarSkeleton, { sizePx: avatarPx, variant: avatarShape }) : null,
301
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TURN_BODY_CLASS, children: [
302
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChatTurnNameSkeleton, { nameSize, meta, time }),
303
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: Array.from({ length: lines }, (_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
304
+ _chunkXFRBEXQNcjs.TextLineSkeleton,
305
+ {
306
+ type: "h4",
307
+ className: i === lines - 1 && lines > 1 ? "w-2/3" : "w-full"
308
+ },
309
+ i
310
+ )) })
256
311
  ] })
257
312
  ] });
258
313
  }
@@ -271,8 +326,8 @@ function aiProvider(key, stated) {
271
326
  const known = AI_PROVIDERS[key];
272
327
  const parts = words(key);
273
328
  return {
274
- label: _optionalChain([stated, 'optionalAccess', _2 => _2.label]) || _optionalChain([known, 'optionalAccess', _3 => _3.label]) || parts.map((word) => word.charAt(0).toUpperCase() + word.slice(1)).join(" ") || key,
275
- icon: _optionalChain([stated, 'optionalAccess', _4 => _4.icon]) || _optionalChain([known, 'optionalAccess', _5 => _5.icon]) || `${parts.join("-")}-logo-grey`
329
+ label: _optionalChain([stated, 'optionalAccess', _6 => _6.label]) || _optionalChain([known, 'optionalAccess', _7 => _7.label]) || parts.map((word) => word.charAt(0).toUpperCase() + word.slice(1)).join(" ") || key,
330
+ icon: _optionalChain([stated, 'optionalAccess', _8 => _8.icon]) || _optionalChain([known, 'optionalAccess', _9 => _9.icon]) || `${parts.join("-")}-logo-grey`
276
331
  };
277
332
  }
278
333
 
@@ -332,6 +387,19 @@ function trialLabels(days) {
332
387
  return { ...TRIAL_TERMS, length: days === null || days === void 0 || days === "" ? null : trialLengthLabel(days) };
333
388
  }
334
389
 
390
+ // src/utils/own-click.ts
391
+ var NO_ROW_CLICK_SELECTOR = "[data-no-row-click]";
392
+ var CONTROL_SELECTOR = 'a, button, input, select, textarea, label, [role="button"], [role="link"]';
393
+ function isOwnClick(target, container, { controls = false } = {}) {
394
+ if (!(target instanceof Element) || !_optionalChain([container, 'optionalAccess', _10 => _10.contains, 'call', _11 => _11(target)])) return false;
395
+ if (target.closest(NO_ROW_CLICK_SELECTOR)) return false;
396
+ if (controls) {
397
+ const control = target.closest(CONTROL_SELECTOR);
398
+ if (control && control !== container && container.contains(control)) return false;
399
+ }
400
+ return true;
401
+ }
402
+
335
403
  // src/utils/seo-title.ts
336
404
  var SEO_TITLE_MAX_LENGTH = 60;
337
405
 
@@ -704,7 +772,7 @@ function getShellIcon(shellType) {
704
772
  if (!shellType) return void 0;
705
773
  const normalized = shellType.toUpperCase();
706
774
  const shellDef = SHELL_TYPES.find((s) => s.id === normalized);
707
- return _optionalChain([shellDef, 'optionalAccess', _6 => _6.icon]);
775
+ return _optionalChain([shellDef, 'optionalAccess', _12 => _12.icon]);
708
776
  }
709
777
 
710
778
  // src/utils/video-bite-id.ts
@@ -806,7 +874,7 @@ function getOSIcon(osType) {
806
874
  const normalized = normalizeOSType(osType);
807
875
  if (!normalized) return void 0;
808
876
  const osTypeDef = OS_TYPES.find((t) => t.id === normalized);
809
- return _optionalChain([osTypeDef, 'optionalAccess', _7 => _7.icon]);
877
+ return _optionalChain([osTypeDef, 'optionalAccess', _13 => _13.icon]);
810
878
  }
811
879
  function getOSTypeDefinition(osType) {
812
880
  if (!osType) return void 0;
@@ -816,7 +884,7 @@ function getOSTypeDefinition(osType) {
816
884
  }
817
885
  function getOSPlatformId(osType) {
818
886
  const osTypeDef = getOSTypeDefinition(osType);
819
- return _optionalChain([osTypeDef, 'optionalAccess', _8 => _8.platformId]);
887
+ return _optionalChain([osTypeDef, 'optionalAccess', _14 => _14.platformId]);
820
888
  }
821
889
  function isOSPlatform(deviceOS, targetPlatform) {
822
890
  if (!deviceOS || !targetPlatform) return false;
@@ -827,7 +895,7 @@ function isOSPlatform(deviceOS, targetPlatform) {
827
895
  // src/utils/mobile-app.ts
828
896
  var DOWNLOAD_PAGE_PATH = "/download";
829
897
  function resolveMobileStoreUrl(links, userAgent, maxTouchPoints) {
830
- const os = _chunkNET74KSQcjs.detectVisitorOs.call(void 0, userAgent, { maxTouchPoints });
898
+ const os = _chunkTZ4GKUO2cjs.detectVisitorOs.call(void 0, userAgent, { maxTouchPoints });
831
899
  if (os === "ios") return links.appStoreUrl;
832
900
  if (os === "android") return links.googlePlayUrl;
833
901
  return null;
@@ -979,7 +1047,7 @@ function getCountryByName(name) {
979
1047
  }
980
1048
  function getFlagFromCountryName(countryName) {
981
1049
  const country = getCountryByName(countryName);
982
- return _optionalChain([country, 'optionalAccess', _9 => _9.flag]);
1050
+ return _optionalChain([country, 'optionalAccess', _15 => _15.flag]);
983
1051
  }
984
1052
  function validatePhoneNumber(phoneNumber, countryCode) {
985
1053
  if (!phoneNumber.trim()) return true;
@@ -1088,10 +1156,10 @@ var GENERIC_EMAIL_DOMAINS = [
1088
1156
  ];
1089
1157
  function extractDomainFromEmail(email) {
1090
1158
  if (!email || !email.includes("@")) return null;
1091
- return _optionalChain([email, 'access', _10 => _10.split, 'call', _11 => _11("@"), 'access', _12 => _12[1], 'optionalAccess', _13 => _13.toLowerCase, 'call', _14 => _14()]) || null;
1159
+ return _optionalChain([email, 'access', _16 => _16.split, 'call', _17 => _17("@"), 'access', _18 => _18[1], 'optionalAccess', _19 => _19.toLowerCase, 'call', _20 => _20()]) || null;
1092
1160
  }
1093
1161
  function normalizeDomain(domain) {
1094
- return _optionalChain([domain, 'optionalAccess', _15 => _15.toLowerCase, 'call', _16 => _16(), 'access', _17 => _17.replace, 'call', _18 => _18(/^https?:\/\//, ""), 'access', _19 => _19.replace, 'call', _20 => _20(/^www\./, ""), 'access', _21 => _21.split, 'call', _22 => _22("/"), 'access', _23 => _23[0], 'access', _24 => _24.trim, 'call', _25 => _25()]) || "";
1162
+ return _optionalChain([domain, 'optionalAccess', _21 => _21.toLowerCase, 'call', _22 => _22(), 'access', _23 => _23.replace, 'call', _24 => _24(/^https?:\/\//, ""), 'access', _25 => _25.replace, 'call', _26 => _26(/^www\./, ""), 'access', _27 => _27.split, 'call', _28 => _28("/"), 'access', _29 => _29[0], 'access', _30 => _30.trim, 'call', _31 => _31()]) || "";
1095
1163
  }
1096
1164
  function isGenericDomain(domain) {
1097
1165
  const normalized = normalizeDomain(domain);
@@ -1189,7 +1257,7 @@ function clearLegacyAnnouncementCache(platform) {
1189
1257
  // src/utils/announcement-surface.ts
1190
1258
  function isAnnouncementOnSurface(announcement, surface) {
1191
1259
  const surfaces = announcement.surfaces;
1192
- return !_optionalChain([surfaces, 'optionalAccess', _26 => _26.length]) || surfaces.includes(surface);
1260
+ return !_optionalChain([surfaces, 'optionalAccess', _32 => _32.length]) || surfaces.includes(surface);
1193
1261
  }
1194
1262
 
1195
1263
  // src/utils/dismissal-storage.ts
@@ -1256,7 +1324,7 @@ function createSseSubscription(options) {
1256
1324
  if (connected === next) return;
1257
1325
  connected = next;
1258
1326
  try {
1259
- _optionalChain([onConnectedChange, 'optionalCall', _27 => _27(next)]);
1327
+ _optionalChain([onConnectedChange, 'optionalCall', _33 => _33(next)]);
1260
1328
  } catch (err) {
1261
1329
  console.error("[sse-subscription] onConnectedChange threw:", err);
1262
1330
  }
@@ -1272,7 +1340,7 @@ function createSseSubscription(options) {
1272
1340
  if (status !== "open") {
1273
1341
  confirmTimerId = clearLifecycleTimer(confirmTimerId);
1274
1342
  }
1275
- _optionalChain([onStatusChange, 'optionalCall', _28 => _28(status)]);
1343
+ _optionalChain([onStatusChange, 'optionalCall', _34 => _34(status)]);
1276
1344
  };
1277
1345
  const internalReconnect = (delayMs) => {
1278
1346
  failedDelayTimerId = clearLifecycleTimer(failedDelayTimerId);
@@ -1286,7 +1354,7 @@ function createSseSubscription(options) {
1286
1354
  }, delayMs);
1287
1355
  };
1288
1356
  const handleServerStatus = (data) => {
1289
- const status = _optionalChain([data, 'optionalAccess', _29 => _29.status]);
1357
+ const status = _optionalChain([data, 'optionalAccess', _35 => _35.status]);
1290
1358
  if (status === "subscribed") {
1291
1359
  confirmTimerId = clearLifecycleTimer(confirmTimerId);
1292
1360
  serverGraceTimerId = clearLifecycleTimer(serverGraceTimerId);
@@ -1327,7 +1395,7 @@ function createSseSubscription(options) {
1327
1395
  const armSilenceTimer = () => {
1328
1396
  if (silenceTimerId) clearTimeout(silenceTimerId);
1329
1397
  silenceTimerId = setTimeout(() => {
1330
- _optionalChain([abortController, 'optionalAccess', _30 => _30.abort, 'call', _31 => _31()]);
1398
+ _optionalChain([abortController, 'optionalAccess', _36 => _36.abort, 'call', _37 => _37()]);
1331
1399
  }, silenceTimeoutMs);
1332
1400
  };
1333
1401
  const scheduleReconnect = (delayMs) => {
@@ -1480,7 +1548,7 @@ function createSseSubscription(options) {
1480
1548
  generation += 1;
1481
1549
  clearTimers();
1482
1550
  attempt = 0;
1483
- _optionalChain([abortController, 'optionalAccess', _32 => _32.abort, 'call', _33 => _33()]);
1551
+ _optionalChain([abortController, 'optionalAccess', _38 => _38.abort, 'call', _39 => _39()]);
1484
1552
  void connect();
1485
1553
  }
1486
1554
  const suspend = () => {
@@ -1488,7 +1556,7 @@ function createSseSubscription(options) {
1488
1556
  suspended = true;
1489
1557
  generation += 1;
1490
1558
  clearTimers();
1491
- _optionalChain([abortController, 'optionalAccess', _34 => _34.abort, 'call', _35 => _35()]);
1559
+ _optionalChain([abortController, 'optionalAccess', _40 => _40.abort, 'call', _41 => _41()]);
1492
1560
  setStatus("suspended");
1493
1561
  };
1494
1562
  const retryIfStalled = () => {
@@ -1533,15 +1601,15 @@ function createSseSubscription(options) {
1533
1601
  generation += 1;
1534
1602
  clearTimers();
1535
1603
  hiddenGraceTimerId = clearLifecycleTimer(hiddenGraceTimerId);
1536
- _optionalChain([abortController, 'optionalAccess', _36 => _36.abort, 'call', _37 => _37()]);
1604
+ _optionalChain([abortController, 'optionalAccess', _42 => _42.abort, 'call', _43 => _43()]);
1537
1605
  if (listenersActive) {
1538
1606
  document.removeEventListener("visibilitychange", onVisibilityChange);
1539
1607
  window.removeEventListener("online", onOnline);
1540
1608
  window.removeEventListener("focus", retryIfStalled);
1541
1609
  }
1542
- _optionalChain([unsubscribeCredentials, 'optionalCall', _38 => _38()]);
1610
+ _optionalChain([unsubscribeCredentials, 'optionalCall', _44 => _44()]);
1543
1611
  setConnected(false);
1544
- _optionalChain([onStatusChange, 'optionalCall', _39 => _39("closed")]);
1612
+ _optionalChain([onStatusChange, 'optionalCall', _45 => _45("closed")]);
1545
1613
  },
1546
1614
  reconnectNow: () => {
1547
1615
  if (closed) return;
@@ -1553,7 +1621,7 @@ function createSseSubscription(options) {
1553
1621
 
1554
1622
  // src/utils/sse-decision-frame.ts
1555
1623
  async function readLeadingDecisionFrame(response) {
1556
- const reader = _optionalChain([response, 'access', _40 => _40.body, 'optionalAccess', _41 => _41.getReader, 'call', _42 => _42()]);
1624
+ const reader = _optionalChain([response, 'access', _46 => _46.body, 'optionalAccess', _47 => _47.getReader, 'call', _48 => _48()]);
1557
1625
  if (!reader) throw new Error("readLeadingDecisionFrame: response has no body");
1558
1626
  const decoder = new TextDecoder();
1559
1627
  let buffer = "";
@@ -1578,8 +1646,8 @@ async function readLeadingDecisionFrame(response) {
1578
1646
  throw new Error(`readLeadingDecisionFrame: leading JSON parse failed: ${err.message}`);
1579
1647
  }
1580
1648
  const obj = parsed;
1581
- if (_optionalChain([obj, 'optionalAccess', _43 => _43.kind]) !== "decision_resolved") {
1582
- throw new Error(`readLeadingDecisionFrame: expected decision_resolved, got kind=${String(_optionalChain([obj, 'optionalAccess', _44 => _44.kind]))}`);
1649
+ if (_optionalChain([obj, 'optionalAccess', _49 => _49.kind]) !== "decision_resolved") {
1650
+ throw new Error(`readLeadingDecisionFrame: expected decision_resolved, got kind=${String(_optionalChain([obj, 'optionalAccess', _50 => _50.kind]))}`);
1583
1651
  }
1584
1652
  frame = normalizeDecisionFrame(obj);
1585
1653
  buffer = buffer.slice(nullIdx + 1);
@@ -1655,6 +1723,7 @@ var TICKET_STATUS_OPTIONS = [
1655
1723
  ];
1656
1724
  var OPENFRAME_DEV_SECTIONS = {
1657
1725
  roadmap: {
1726
+ mirrored: true,
1658
1727
  href: "/roadmap",
1659
1728
  icon: _lucidereact.Map,
1660
1729
  navigator: {
@@ -1674,6 +1743,7 @@ var OPENFRAME_DEV_SECTIONS = {
1674
1743
  }
1675
1744
  },
1676
1745
  delivery: {
1746
+ mirrored: true,
1677
1747
  href: "/bug-fixes-and-enhancements",
1678
1748
  icon: _lucidereact.Wrench,
1679
1749
  navigator: {
@@ -1693,6 +1763,7 @@ var OPENFRAME_DEV_SECTIONS = {
1693
1763
  }
1694
1764
  },
1695
1765
  releases: {
1766
+ mirrored: false,
1696
1767
  href: "/releases",
1697
1768
  icon: _lucidereact.Rocket,
1698
1769
  navigator: {
@@ -1712,6 +1783,7 @@ var OPENFRAME_DEV_SECTIONS = {
1712
1783
  }
1713
1784
  },
1714
1785
  onboarding: {
1786
+ mirrored: false,
1715
1787
  href: "/onboarding-guides",
1716
1788
  icon: _lucidereact.GraduationCap,
1717
1789
  navigator: {
@@ -1733,6 +1805,7 @@ var OPENFRAME_DEV_SECTIONS = {
1733
1805
  filter: null
1734
1806
  },
1735
1807
  tickets: {
1808
+ mirrored: true,
1736
1809
  href: "/tickets",
1737
1810
  icon: _lucidereact.LifeBuoy,
1738
1811
  navigator: {
@@ -1785,12 +1858,12 @@ var FullscreenSwitchController = class {
1785
1858
  if (fullscreenElementOf(doc)) {
1786
1859
  if (doc.exitFullscreen) doc.exitFullscreen().catch(() => {
1787
1860
  });
1788
- else _optionalChain([doc, 'access', _45 => _45.webkitExitFullscreen, 'optionalCall', _46 => _46()]);
1861
+ else _optionalChain([doc, 'access', _51 => _51.webkitExitFullscreen, 'optionalCall', _52 => _52()]);
1789
1862
  } else {
1790
- const el = _nullishCoalesce(_optionalChain([this, 'access', _47 => _47.opts, 'access', _48 => _48.target, 'optionalCall', _49 => _49()]), () => ( document.documentElement));
1863
+ const el = _nullishCoalesce(_optionalChain([this, 'access', _53 => _53.opts, 'access', _54 => _54.target, 'optionalCall', _55 => _55()]), () => ( document.documentElement));
1791
1864
  if (el.requestFullscreen) el.requestFullscreen({ navigationUI: "hide" }).catch(() => {
1792
1865
  });
1793
- else _optionalChain([el, 'access', _50 => _50.webkitRequestFullscreen, 'optionalCall', _51 => _51()]);
1866
+ else _optionalChain([el, 'access', _56 => _56.webkitRequestFullscreen, 'optionalCall', _57 => _57()]);
1794
1867
  }
1795
1868
  };
1796
1869
  /** Raise the mask + start tracking. Idempotent — safe from the pre-emptive
@@ -1805,7 +1878,7 @@ var FullscreenSwitchController = class {
1805
1878
  window.clearTimeout(this.quietTimer);
1806
1879
  window.clearTimeout(this.capTimer);
1807
1880
  window.removeEventListener("resize", this.onResize);
1808
- _optionalChain([this, 'access', _52 => _52.opts, 'access', _53 => _53.onGeometryPulse, 'optionalCall', _54 => _54()]);
1881
+ _optionalChain([this, 'access', _58 => _58.opts, 'access', _59 => _59.onGeometryPulse, 'optionalCall', _60 => _60()]);
1809
1882
  if (this.opts.switchingClass) document.documentElement.classList.remove(this.opts.switchingClass);
1810
1883
  };
1811
1884
  this.armQuiet = () => {
@@ -1813,7 +1886,7 @@ var FullscreenSwitchController = class {
1813
1886
  this.quietTimer = window.setTimeout(this.endSwitch, _nullishCoalesce(this.opts.quietMs, () => ( DEFAULT_QUIET_MS)));
1814
1887
  };
1815
1888
  this.onResize = () => {
1816
- _optionalChain([this, 'access', _55 => _55.opts, 'access', _56 => _56.onGeometryPulse, 'optionalCall', _57 => _57()]);
1889
+ _optionalChain([this, 'access', _61 => _61.opts, 'access', _62 => _62.onGeometryPulse, 'optionalCall', _63 => _63()]);
1817
1890
  this.armQuiet();
1818
1891
  };
1819
1892
  /** Escape is the one exit path that skips toggle() — pre-mask on the
@@ -1825,7 +1898,7 @@ var FullscreenSwitchController = class {
1825
1898
  const fs = this.isFullscreen;
1826
1899
  if (this.opts.activeClass) document.documentElement.classList.toggle(this.opts.activeClass, fs);
1827
1900
  this.beginSwitch();
1828
- requestAnimationFrame(() => _optionalChain([this, 'access', _58 => _58.opts, 'access', _59 => _59.onGeometryPulse, 'optionalCall', _60 => _60()]));
1901
+ requestAnimationFrame(() => _optionalChain([this, 'access', _64 => _64.opts, 'access', _65 => _65.onGeometryPulse, 'optionalCall', _66 => _66()]));
1829
1902
  this.armQuiet();
1830
1903
  this.opts.onFullscreenChange(fs);
1831
1904
  };
@@ -1839,7 +1912,7 @@ var FullscreenSwitchController = class {
1839
1912
  }
1840
1913
  get isFullscreen() {
1841
1914
  const fs = fullscreenElementOf(document);
1842
- const target = _optionalChain([this, 'access', _61 => _61.opts, 'access', _62 => _62.target, 'optionalCall', _63 => _63()]);
1915
+ const target = _optionalChain([this, 'access', _67 => _67.opts, 'access', _68 => _68.target, 'optionalCall', _69 => _69()]);
1843
1916
  return target ? fs === target : Boolean(fs);
1844
1917
  }
1845
1918
  attach() {
@@ -1886,7 +1959,7 @@ function primaryPlatformOf(platforms) {
1886
1959
  if (!Array.isArray(platforms)) return null;
1887
1960
  for (const entry of platforms) {
1888
1961
  const row = entry;
1889
- const name = _nullishCoalesce(_nullishCoalesce(_optionalChain([row, 'optionalAccess', _64 => _64.platforms, 'optionalAccess', _65 => _65.name]), () => ( _optionalChain([row, 'optionalAccess', _66 => _66.platform_name]))), () => ( _optionalChain([row, 'optionalAccess', _67 => _67.name])));
1962
+ const name = _nullishCoalesce(_nullishCoalesce(_optionalChain([row, 'optionalAccess', _70 => _70.platforms, 'optionalAccess', _71 => _71.name]), () => ( _optionalChain([row, 'optionalAccess', _72 => _72.platform_name]))), () => ( _optionalChain([row, 'optionalAccess', _73 => _73.name])));
1890
1963
  if (typeof name === "string" && name.trim()) return name.trim();
1891
1964
  }
1892
1965
  return null;
@@ -1903,21 +1976,21 @@ function lastPathSegment(url) {
1903
1976
  function makeComposeContentUrl(opts) {
1904
1977
  const suffixes = _nullishCoalesce(opts.suffixes, () => ( DEFAULT_CONTENT_SUFFIXES));
1905
1978
  return ({ type: rawType, identifier, slug: slugHint, externalUrl, targetPlatform, platforms }) => {
1906
- const type = _chunk22XAPV6Ncjs.canonicalContentRefType.call(void 0, rawType);
1979
+ const type = _chunkDGNBXZXTcjs.canonicalContentRefType.call(void 0, rawType);
1907
1980
  const override = opts.overrides && Object.prototype.hasOwnProperty.call(opts.overrides, type) ? opts.overrides[type] : void 0;
1908
1981
  if (override) return { ...override(identifier), hostOverride: true };
1909
1982
  const seg = _nullishCoalesce((Object.prototype.hasOwnProperty.call(suffixes, type) ? suffixes[type] : void 0), () => ( type));
1910
1983
  if (opts.hostedTypes.has(type)) {
1911
1984
  const recovered = externalUrl ? lastPathSegment(externalUrl) : null;
1912
- const slug = recovered && recovered !== seg ? recovered : _optionalChain([slugHint, 'optionalAccess', _68 => _68.trim, 'call', _69 => _69()]) || identifier;
1985
+ const slug = recovered && recovered !== seg ? recovered : _optionalChain([slugHint, 'optionalAccess', _74 => _74.trim, 'call', _75 => _75()]) || identifier;
1913
1986
  return { href: `/${seg}/${slug}`, targetPlatform: null };
1914
1987
  }
1915
1988
  if (externalUrl) return { href: externalUrl, targetPlatform: _nullishCoalesce(targetPlatform, () => ( null)) };
1916
1989
  const claimedOwner = _nullishCoalesce(targetPlatform, () => ( primaryPlatformOf(platforms)));
1917
- const owner = claimedOwner && _chunk74ALTXXCcjs.byKey.call(void 0, claimedOwner) ? claimedOwner : null;
1918
- const origin = owner ? _chunk74ALTXXCcjs.getPlatformProductionUrl.call(void 0, owner) : opts.contentOrigin;
1990
+ const owner = claimedOwner && _chunkYL6ZB2SRcjs.byKey.call(void 0, claimedOwner) ? claimedOwner : null;
1991
+ const origin = owner ? _chunkYL6ZB2SRcjs.getPlatformProductionUrl.call(void 0, owner) : opts.contentOrigin;
1919
1992
  return {
1920
- href: `${origin.replace(/\/+$/, "")}/${seg}/${_optionalChain([slugHint, 'optionalAccess', _70 => _70.trim, 'call', _71 => _71()]) || identifier}`,
1993
+ href: `${origin.replace(/\/+$/, "")}/${seg}/${_optionalChain([slugHint, 'optionalAccess', _76 => _76.trim, 'call', _77 => _77()]) || identifier}`,
1921
1994
  // Report the owner so `decideNewTab` can compare it against the current
1922
1995
  // app instead of falling back to an origin guess (which is unreliable in
1923
1996
  // dev, where every platform shares localhost). `null` whenever the href
@@ -1993,7 +2066,7 @@ function getDocSourceDefaultPath(structure, folderIndexFile = DEFAULT_FOLDER_IND
1993
2066
  const hasRootIndex = structure.some((node) => node.type === "file" && node.path === folderIndexFile);
1994
2067
  if (hasRootIndex) return null;
1995
2068
  const firstFolderWithReadme = structure.find((node) => node.type === "folder" && node.hasReadme && !!node.path);
1996
- return _nullishCoalesce(_optionalChain([firstFolderWithReadme, 'optionalAccess', _72 => _72.path]), () => ( null));
2069
+ return _nullishCoalesce(_optionalChain([firstFolderWithReadme, 'optionalAccess', _78 => _78.path]), () => ( null));
1997
2070
  }
1998
2071
 
1999
2072
  // src/utils/doc-path-utils.ts
@@ -2004,7 +2077,7 @@ function pathToNodeId(path) {
2004
2077
  return path.replace(/[/\s]/g, "-").toLowerCase();
2005
2078
  }
2006
2079
  function normalizeDocPath(segments, folderIndexFile = DEFAULT_FOLDER_INDEX_FILE) {
2007
- const lowerPath = (_optionalChain([segments, 'optionalAccess', _73 => _73.join, 'call', _74 => _74("/")]) || "").toLowerCase();
2080
+ const lowerPath = (_optionalChain([segments, 'optionalAccess', _79 => _79.join, 'call', _80 => _80("/")]) || "").toLowerCase();
2008
2081
  const lowerIndex = folderIndexFile.toLowerCase();
2009
2082
  const suffix = `/${lowerIndex}`;
2010
2083
  if (lowerPath.endsWith(suffix)) return lowerPath.slice(0, -suffix.length);
@@ -2087,8 +2160,8 @@ var DEFAULT_OPTIONS = {
2087
2160
  function extractSections(markdown, options = {}) {
2088
2161
  const opts = { ...DEFAULT_OPTIONS, ...options };
2089
2162
  const sections = [];
2090
- const dedupe = _chunk3RYIF4OWcjs.createHeadingIdDeduper.call(void 0, );
2091
- const scanned = _chunk3RYIF4OWcjs.scanHeadings.call(void 0, markdown, {
2163
+ const dedupe = _chunkXXJL5GY3cjs.createHeadingIdDeduper.call(void 0, );
2164
+ const scanned = _chunkXXJL5GY3cjs.scanHeadings.call(void 0, markdown, {
2092
2165
  skipFrontmatter: opts.skipCodeAndYamlBlocks,
2093
2166
  skipFences: opts.skipCodeAndYamlBlocks
2094
2167
  });
@@ -2096,9 +2169,9 @@ function extractSections(markdown, options = {}) {
2096
2169
  if (heading.level > opts.maxLevel) continue;
2097
2170
  let title = heading.text;
2098
2171
  if (opts.stripFormattingMarkers) {
2099
- title = _chunk74ALTXXCcjs.stripInlineMarkdown.call(void 0, title).trim();
2172
+ title = _chunkYL6ZB2SRcjs.stripInlineMarkdown.call(void 0, title).trim();
2100
2173
  }
2101
- const baseId = _chunk3RYIF4OWcjs.slugifyHeadingBase.call(void 0, opts.removeEmojis ? _chunk3RYIF4OWcjs.stripHeadingEmojis.call(void 0, title) : title);
2174
+ const baseId = _chunkXXJL5GY3cjs.slugifyHeadingBase.call(void 0, opts.removeEmojis ? _chunkXXJL5GY3cjs.stripHeadingEmojis.call(void 0, title) : title);
2102
2175
  const cleanId = baseId || `section-${sections.length + 1}`;
2103
2176
  sections.push({
2104
2177
  id: opts.handleDuplicateIds ? dedupe(cleanId) : cleanId,
@@ -2362,7 +2435,7 @@ function isValidPathPattern(pattern) {
2362
2435
  return pattern.trim().length > 0 && compile(pattern.trim()) !== null;
2363
2436
  }
2364
2437
  function matchesPathPattern(pathname, pattern) {
2365
- return _nullishCoalesce(_optionalChain([compile, 'call', _75 => _75(pattern.trim()), 'optionalAccess', _76 => _76.test, 'call', _77 => _77(pathname)]), () => ( false));
2438
+ return _nullishCoalesce(_optionalChain([compile, 'call', _81 => _81(pattern.trim()), 'optionalAccess', _82 => _82.test, 'call', _83 => _83(pathname)]), () => ( false));
2366
2439
  }
2367
2440
  function pathMatchesAny(pathname, patterns) {
2368
2441
  return (_nullishCoalesce(patterns, () => ( []))).some((pattern) => matchesPathPattern(pathname, pattern));
@@ -2409,9 +2482,9 @@ function demoClockTimes(seed, options = {}) {
2409
2482
  // src/components/navigation/mingo-ai-button.tsx
2410
2483
 
2411
2484
  function openAskAi(source, options) {
2412
- const prompt = _optionalChain([options, 'optionalAccess', _78 => _78.prompt, 'optionalAccess', _79 => _79.trim, 'call', _80 => _80()]);
2485
+ const prompt = _optionalChain([options, 'optionalAccess', _84 => _84.prompt, 'optionalAccess', _85 => _85.trim, 'call', _86 => _86()]);
2413
2486
  const detail = prompt ? { source: _nullishCoalesce(source, () => ( "")), prompt } : { source: _nullishCoalesce(source, () => ( "")) };
2414
- window.dispatchEvent(new CustomEvent(_chunk74ALTXXCcjs.ASK_AI_OPEN_EVENT, { detail }));
2487
+ window.dispatchEvent(new CustomEvent(_chunkYL6ZB2SRcjs.ASK_AI_OPEN_EVENT, { detail }));
2415
2488
  }
2416
2489
  function MingoAiButton({
2417
2490
  source,
@@ -2423,15 +2496,15 @@ function MingoAiButton({
2423
2496
  onClick,
2424
2497
  ...props
2425
2498
  }) {
2426
- const visitor = _chunkNET74KSQcjs.useVisitorOs.call(void 0, );
2499
+ const visitor = _chunkTZ4GKUO2cjs.useVisitorOs.call(void 0, );
2427
2500
  const field = variant === "field";
2428
2501
  const inPage = variant === "button";
2429
- const commandKey = visitor.known && _chunkNET74KSQcjs.usesCommandKey.call(void 0, visitor.os);
2502
+ const commandKey = visitor.known && _chunkTZ4GKUO2cjs.usesCommandKey.call(void 0, visitor.os);
2430
2503
  const assistant = _chunkEWPR7662cjs.useAssistantRuntime.call(void 0, );
2431
- const label = _nullishCoalesce(labelProp, () => ( _optionalChain([assistant, 'optionalAccess', _81 => _81.name])));
2432
- const icon = _nullishCoalesce(iconProp, () => ( _optionalChain([assistant, 'optionalAccess', _82 => _82.icon])));
2433
- const runtimeOpen = _optionalChain([assistant, 'optionalAccess', _83 => _83.open]);
2434
- const eventSource = _nullishCoalesce(source, () => ( _optionalChain([assistant, 'optionalAccess', _84 => _84.source])));
2504
+ const label = _nullishCoalesce(labelProp, () => ( _optionalChain([assistant, 'optionalAccess', _87 => _87.name])));
2505
+ const icon = _nullishCoalesce(iconProp, () => ( _optionalChain([assistant, 'optionalAccess', _88 => _88.icon])));
2506
+ const runtimeOpen = _optionalChain([assistant, 'optionalAccess', _89 => _89.open]);
2507
+ const eventSource = _nullishCoalesce(source, () => ( _optionalChain([assistant, 'optionalAccess', _90 => _90.source])));
2435
2508
  const openRef = _react.useRef.call(void 0, () => void 0);
2436
2509
  _react.useEffect.call(void 0, () => {
2437
2510
  openRef.current = () => runtimeOpen ? runtimeOpen({}) : openAskAi(eventSource);
@@ -2441,7 +2514,7 @@ function MingoAiButton({
2441
2514
  const onKeyDown = (event) => {
2442
2515
  if (event.defaultPrevented || event.altKey || event.shiftKey) return;
2443
2516
  const modifier = commandKey ? event.metaKey && !event.ctrlKey : event.ctrlKey && !event.metaKey;
2444
- if (event.key.toLowerCase() !== "k" || !modifier) return;
2517
+ if (typeof event.key !== "string" || event.key.toLowerCase() !== "k" || !modifier) return;
2445
2518
  event.preventDefault();
2446
2519
  openRef.current();
2447
2520
  };
@@ -2450,7 +2523,7 @@ function MingoAiButton({
2450
2523
  }, [shortcutHint, commandKey]);
2451
2524
  if (!label) return null;
2452
2525
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
2453
- _chunk2QMBXGMQcjs.Button,
2526
+ _chunkTF5D5MNOcjs.Button,
2454
2527
  {
2455
2528
  ...props,
2456
2529
  type: "button",
@@ -2461,9 +2534,9 @@ function MingoAiButton({
2461
2534
  onClick: (e) => {
2462
2535
  if (runtimeOpen) runtimeOpen({});
2463
2536
  else openAskAi(eventSource);
2464
- _optionalChain([onClick, 'optionalCall', _85 => _85(e)]);
2537
+ _optionalChain([onClick, 'optionalCall', _91 => _91(e)]);
2465
2538
  },
2466
- className: _chunk3ATAYP36cjs.cn.call(void 0,
2539
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
2467
2540
  "group/mingo flex shrink-0 justify-start focus-visible:ring-ods-accent",
2468
2541
  field ? (
2469
2542
  // A row of the mobile menu like the groups under it: same height,
@@ -2492,23 +2565,23 @@ function MingoAiButton({
2492
2565
  icon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2493
2566
  "span",
2494
2567
  {
2495
- className: _chunk3ATAYP36cjs.cn.call(void 0,
2568
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
2496
2569
  "relative inline-flex shrink-0 items-center justify-center overflow-hidden rounded-full",
2497
2570
  field ? "size-6" : "size-5"
2498
2571
  ),
2499
2572
  children: icon
2500
2573
  }
2501
2574
  ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2502
- _chunkBIA77I6Bcjs.AgentMark,
2575
+ _chunkGTONIRJUcjs.AgentMark,
2503
2576
  {
2504
2577
  agent: "mingo",
2505
- className: _chunk3ATAYP36cjs.cn.call(void 0, "relative shrink-0 text-ods-text-primary", field ? "size-6" : "size-5")
2578
+ className: _chunk65VVJSQZcjs.cn.call(void 0, "relative shrink-0 text-ods-text-primary", field ? "size-6" : "size-5")
2506
2579
  }
2507
2580
  ),
2508
2581
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2509
2582
  "span",
2510
2583
  {
2511
- className: _chunk3ATAYP36cjs.cn.call(void 0,
2584
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
2512
2585
  "relative whitespace-nowrap",
2513
2586
  field ? "min-w-0 flex-1 truncate" : inPage ? "text-h6" : "sr-only text-h6 lg:not-sr-only"
2514
2587
  ),
@@ -2522,11 +2595,11 @@ function MingoAiButton({
2522
2595
  "kbd",
2523
2596
  {
2524
2597
  "aria-hidden": "true",
2525
- className: _chunk3ATAYP36cjs.cn.call(void 0,
2598
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
2526
2599
  "relative h-6 min-w-9 items-center justify-center rounded border border-ods-border px-[var(--spacing-system-xxs)] text-h6",
2527
2600
  inPage ? "inline-flex" : "hidden lg:inline-flex"
2528
2601
  ),
2529
- children: visitor.known ? _chunkNET74KSQcjs.shortcutLabel.call(void 0, visitor.os, "K") : ""
2602
+ children: visitor.known ? _chunkTZ4GKUO2cjs.shortcutLabel.call(void 0, visitor.os, "K") : ""
2530
2603
  }
2531
2604
  )
2532
2605
  ]
@@ -2537,7 +2610,7 @@ function MingoAiButton({
2537
2610
  // src/components/chat/ask-prompts.tsx
2538
2611
 
2539
2612
  function AssistantGlyph({ icon, className }) {
2540
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, "inline-flex shrink-0 items-center justify-center overflow-hidden rounded-full", className), children: _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBIA77I6Bcjs.AgentMark, { agent: "mingo", className: "size-full" }))) });
2613
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk65VVJSQZcjs.cn.call(void 0, "inline-flex shrink-0 items-center justify-center overflow-hidden rounded-full", className), children: _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGTONIRJUcjs.AgentMark, { agent: "mingo", className: "size-full" }))) });
2541
2614
  }
2542
2615
  var DEFAULT_LOADING_SLOTS = 2;
2543
2616
  var slotCount = (count, loading, prompts) => _nullishCoalesce(count, () => ( (loading ? DEFAULT_LOADING_SLOTS : prompts.length)));
@@ -2557,13 +2630,13 @@ function QuestionChips({
2557
2630
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: count }, (_, slot) => {
2558
2631
  const prompt = loading ? void 0 : prompts[slot];
2559
2632
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _nullishCoalesce(slotClassName, () => ( CHIP_SLOT_CLASS)), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2560
- _chunk74ALTXXCcjs.QuickActionChipSkeleton,
2633
+ _chunkYL6ZB2SRcjs.QuickActionChipSkeleton,
2561
2634
  {
2562
2635
  variant: "question",
2563
2636
  labelCh: SKELETON_LABEL_CH[slot % SKELETON_LABEL_CH.length]
2564
2637
  }
2565
2638
  ) : prompt ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2566
- _chunk74ALTXXCcjs.QuickActionChipButton,
2639
+ _chunkYL6ZB2SRcjs.QuickActionChipButton,
2567
2640
  {
2568
2641
  variant: "question",
2569
2642
  label: prompt.label,
@@ -2572,10 +2645,10 @@ function QuestionChips({
2572
2645
  const request = { prompt: _nullishCoalesce(prompt.prompt, () => ( prompt.label)) };
2573
2646
  if (onOpen) onOpen(request);
2574
2647
  else openAskAi(source, request);
2575
- _optionalChain([onAsk, 'optionalCall', _86 => _86(prompt)]);
2648
+ _optionalChain([onAsk, 'optionalCall', _92 => _92(prompt)]);
2576
2649
  }
2577
2650
  }
2578
- ) : null }, _nullishCoalesce(_optionalChain([prompt, 'optionalAccess', _87 => _87.id]), () => ( `slot-${slot}`)));
2651
+ ) : null }, _nullishCoalesce(_optionalChain([prompt, 'optionalAccess', _93 => _93.id]), () => ( `slot-${slot}`)));
2579
2652
  }) });
2580
2653
  }
2581
2654
  function AskPrompts({
@@ -2595,12 +2668,12 @@ function AskPrompts({
2595
2668
  if (!loading && prompts.length === 0) return null;
2596
2669
  const end = align === "end";
2597
2670
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
2598
- _chunk74ALTXXCcjs.ScrollShadow,
2671
+ _chunkYL6ZB2SRcjs.ScrollShadow,
2599
2672
  {
2600
2673
  axis: "horizontal",
2601
2674
  color: fadeColor,
2602
2675
  className: "w-full min-w-0 content-md:w-auto",
2603
- scrollClassName: _chunk3ATAYP36cjs.cn.call(void 0, ASK_PROMPTS_ROW_CLASS, end ? "content-md:items-end" : "content-md:items-start", className),
2676
+ scrollClassName: _chunk65VVJSQZcjs.cn.call(void 0, ASK_PROMPTS_ROW_CLASS, end ? "content-md:items-end" : "content-md:items-start", className),
2604
2677
  children: [
2605
2678
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoAiButton, { variant: "button", source, label, icon, className: "shrink-0" }),
2606
2679
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -2612,7 +2685,7 @@ function AskPrompts({
2612
2685
  source,
2613
2686
  onOpen,
2614
2687
  onAsk,
2615
- slotClassName: _chunk3ATAYP36cjs.cn.call(void 0, ROW_CHIP_SLOT_CLASS, end && "content-md:justify-end")
2688
+ slotClassName: _chunk65VVJSQZcjs.cn.call(void 0, ROW_CHIP_SLOT_CLASS, end && "content-md:justify-end")
2616
2689
  }
2617
2690
  )
2618
2691
  ]
@@ -2637,7 +2710,7 @@ function AskCard({
2637
2710
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
2638
2711
  "div",
2639
2712
  {
2640
- className: _chunk3ATAYP36cjs.cn.call(void 0,
2713
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
2641
2714
  "flex flex-col gap-[var(--spacing-system-m)] rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-l)]",
2642
2715
  className
2643
2716
  ),
@@ -2686,7 +2759,7 @@ function buildAskPromptsUrl(base, { count, topic, exclude = [] }) {
2686
2759
  return `${base}${base.includes("?") ? "&" : "?"}${params.toString()}`;
2687
2760
  }
2688
2761
  function assistantAvailable(assistant) {
2689
- return !!_optionalChain([assistant, 'optionalAccess', _88 => _88.available]);
2762
+ return !!_optionalChain([assistant, 'optionalAccess', _94 => _94.available]);
2690
2763
  }
2691
2764
  function useAskPrompts({
2692
2765
  topic,
@@ -2697,14 +2770,14 @@ function useAskPrompts({
2697
2770
  const assistant = _chunkEWPR7662cjs.useAssistantRuntime.call(void 0, );
2698
2771
  const base = assistantAvailable(assistant) ? assistant.askPromptsUrl : void 0;
2699
2772
  const url = base && enabled ? buildAskPromptsUrl(base, { count, topic, exclude }) : null;
2700
- const { data, dataUrl, error } = _chunkNS64LMVEcjs.useSelfFetch.call(void 0, url);
2773
+ const { data, dataUrl, error } = _chunkFZB4RMRKcjs.useSelfFetch.call(void 0, url);
2701
2774
  const landed = url !== null && (dataUrl === url || error);
2702
- return { prompts: landed ? _nullishCoalesce(_optionalChain([data, 'optionalAccess', _89 => _89.prompts]), () => ( [])) : [], isLoading: !!base && !landed, supported: !!base };
2775
+ return { prompts: landed ? _nullishCoalesce(_optionalChain([data, 'optionalAccess', _95 => _95.prompts]), () => ( [])) : [], isLoading: !!base && !landed, supported: !!base };
2703
2776
  }
2704
2777
  function useAssistantOpen(topic, onOpen) {
2705
2778
  const assistant = _chunkEWPR7662cjs.useAssistantRuntime.call(void 0, );
2706
- const runtimeOpen = _optionalChain([assistant, 'optionalAccess', _90 => _90.open]);
2707
- const source = _optionalChain([assistant, 'optionalAccess', _91 => _91.source]);
2779
+ const runtimeOpen = _optionalChain([assistant, 'optionalAccess', _96 => _96.open]);
2780
+ const source = _optionalChain([assistant, 'optionalAccess', _97 => _97.source]);
2708
2781
  return _react.useCallback.call(void 0,
2709
2782
  (request) => {
2710
2783
  const full = { ...request, topic };
@@ -2730,7 +2803,7 @@ function createAskQueue() {
2730
2803
  },
2731
2804
  settle(surface, ids) {
2732
2805
  const entry = entries.get(surface);
2733
- if (!entry || (_nullishCoalesce(_optionalChain([entry, 'access', _92 => _92.ids, 'optionalAccess', _93 => _93.join, 'call', _94 => _94(",")]), () => ( null))) === (_nullishCoalesce(_optionalChain([ids, 'optionalAccess', _95 => _95.join, 'call', _96 => _96(",")]), () => ( null)))) return;
2806
+ if (!entry || (_nullishCoalesce(_optionalChain([entry, 'access', _98 => _98.ids, 'optionalAccess', _99 => _99.join, 'call', _100 => _100(",")]), () => ( null))) === (_nullishCoalesce(_optionalChain([ids, 'optionalAccess', _101 => _101.join, 'call', _102 => _102(",")]), () => ( null)))) return;
2734
2807
  entry.ids = ids;
2735
2808
  publish();
2736
2809
  },
@@ -2759,7 +2832,7 @@ function createAskQueue() {
2759
2832
  }
2760
2833
  var askQueues = /* @__PURE__ */ new Map();
2761
2834
  function useAskQueue() {
2762
- const scope = _nullishCoalesce(_optionalChain([_chunkEWPR7662cjs.useAssistantRuntime.call(void 0, ), 'optionalAccess', _97 => _97.askPromptsUrl]), () => ( ""));
2835
+ const scope = _nullishCoalesce(_optionalChain([_chunkEWPR7662cjs.useAssistantRuntime.call(void 0, ), 'optionalAccess', _103 => _103.askPromptsUrl]), () => ( ""));
2763
2836
  let queue = askQueues.get(scope);
2764
2837
  if (!queue) {
2765
2838
  queue = createAskQueue();
@@ -2777,7 +2850,8 @@ function useAskSurface({
2777
2850
  const assistant = _chunkEWPR7662cjs.useAssistantRuntime.call(void 0, );
2778
2851
  const surface = _react.useId.call(void 0, );
2779
2852
  const queue = useAskQueue();
2780
- const picks = assistantAvailable(assistant) && !!assistant.askPromptsUrl && enabled && exclude !== null;
2853
+ const held = _chunkXFRBEXQNcjs.useLoadingScope.call(void 0, );
2854
+ const picks = !held && assistantAvailable(assistant) && !!assistant.askPromptsUrl && enabled && exclude !== null;
2781
2855
  _react.useLayoutEffect.call(void 0, () => {
2782
2856
  if (!picks) return void 0;
2783
2857
  queue.enter(surface);
@@ -2804,8 +2878,8 @@ function useAskSurface({
2804
2878
  }, [queue, surface, settled]);
2805
2879
  const open = useAssistantOpen(topic, onOpen);
2806
2880
  const scoped = _react.useMemo.call(void 0, () => assistant ? { ...assistant, open } : null, [assistant, open]);
2807
- const onAsk = _optionalChain([assistant, 'optionalAccess', _98 => _98.onAsk]);
2808
- const reportAsk = _react.useCallback.call(void 0, (prompt) => _optionalChain([onAsk, 'optionalCall', _99 => _99({ promptId: prompt.id, topic })]), [onAsk, topic]);
2881
+ const onAsk = _optionalChain([assistant, 'optionalAccess', _104 => _104.onAsk]);
2882
+ const reportAsk = _react.useCallback.call(void 0, (prompt) => _optionalChain([onAsk, 'optionalCall', _105 => _105({ promptId: prompt.id, topic })]), [onAsk, topic]);
2809
2883
  return { assistant, scoped, prompts, isLoading: supported && (!picks || isLoading), supported, open, reportAsk };
2810
2884
  }
2811
2885
 
@@ -2833,7 +2907,7 @@ function AssistantAskPrompts({
2833
2907
  }) {
2834
2908
  const card = variant === "card";
2835
2909
  const assistant = _chunkEWPR7662cjs.useAssistantRuntime.call(void 0, );
2836
- const slots = _nullishCoalesce(_nullishCoalesce(count, () => ( (card ? _optionalChain([assistant, 'optionalAccess', _100 => _100.askCard, 'optionalAccess', _101 => _101.count]) : void 0))), () => ( ASK_PROMPTS_DEFAULT_COUNT));
2910
+ const slots = _nullishCoalesce(_nullishCoalesce(count, () => ( (card ? _optionalChain([assistant, 'optionalAccess', _106 => _106.askCard, 'optionalAccess', _107 => _107.count]) : void 0))), () => ( ASK_PROMPTS_DEFAULT_COUNT));
2837
2911
  const ask = useAskSurface({ topic, count: slots, exclude, enabled, onOpen });
2838
2912
  if (!assistantAvailable(assistant)) return null;
2839
2913
  const shared = {
@@ -2847,12 +2921,12 @@ function AssistantAskPrompts({
2847
2921
  if (card) {
2848
2922
  const name = _nullishCoalesce(label, () => ( assistant.name));
2849
2923
  if (!name) return null;
2850
- const words2 = _nullishCoalesce(_nullishCoalesce(description, () => ( _optionalChain([assistant, 'access', _102 => _102.askCard, 'optionalAccess', _103 => _103.description]))), () => ( DEFAULT_ASK_CARD.description));
2924
+ const words2 = _nullishCoalesce(_nullishCoalesce(description, () => ( _optionalChain([assistant, 'access', _108 => _108.askCard, 'optionalAccess', _109 => _109.description]))), () => ( DEFAULT_ASK_CARD.description));
2851
2925
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEWPR7662cjs.AssistantRuntimeContext.Provider, { value: ask.scoped, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2852
2926
  AskCard,
2853
2927
  {
2854
2928
  ...shared,
2855
- title: fillAssistant(_nullishCoalesce(_nullishCoalesce(title, () => ( _optionalChain([assistant, 'access', _104 => _104.askCard, 'optionalAccess', _105 => _105.title]))), () => ( DEFAULT_ASK_CARD.title)), name),
2929
+ title: fillAssistant(_nullishCoalesce(_nullishCoalesce(title, () => ( _optionalChain([assistant, 'access', _110 => _110.askCard, 'optionalAccess', _111 => _111.title]))), () => ( DEFAULT_ASK_CARD.title)), name),
2856
2930
  description: words2 ? fillAssistant(words2, name) : void 0,
2857
2931
  count: ask.supported ? slots : 0,
2858
2932
  label: name,
@@ -2899,7 +2973,7 @@ function QuickActionMarquee({
2899
2973
  );
2900
2974
  if (items.length === 0) return null;
2901
2975
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2902
- _chunk74ALTXXCcjs.QuickActionWall,
2976
+ _chunkYL6ZB2SRcjs.QuickActionWall,
2903
2977
  {
2904
2978
  chips,
2905
2979
  mode,
@@ -2924,37 +2998,31 @@ function QuickActionMarquee({
2924
2998
 
2925
2999
 
2926
3000
  var UNREAD_NOTICE = "You have a new unread message";
3001
+ var TICKET_ROW = _chunk65VVJSQZcjs.cn.call(void 0, "flex h-20 w-full items-center gap-4 px-4", "border-b border-ods-border bg-ods-card");
3002
+ var TICKET_ROW_TEXT = "flex min-w-0 flex-1 flex-col justify-center";
3003
+ var TICKET_ROW_CHEVRON = `flex ${_chunkXFRBEXQNcjs.TILE_SIZE.xl} shrink-0 items-center justify-center rounded-md border`;
3004
+ function ChatTicketItemSkeleton({ className }) {
3005
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { "aria-hidden": true, className: _chunk65VVJSQZcjs.cn.call(void 0, TICKET_ROW, className), children: [
3006
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TICKET_ROW_TEXT, children: [
3007
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "h3", className: "w-1/2" }),
3008
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "h6", className: "w-1/3" })
3009
+ ] }),
3010
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJTSUAHDLcjs.TagSkeleton, { className: "w-20" }),
3011
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, TICKET_ROW_CHEVRON, "border-ods-border bg-ods-card"), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "size-6 text-ods-text-secondary" }) })
3012
+ ] });
3013
+ }
2927
3014
  var ChatTicketItem = _react.forwardRef.call(void 0,
2928
3015
  ({ className, ticket, onClick, isLoading = false, ...props }, ref) => {
2929
- if (isLoading) {
2930
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
2931
- "div",
2932
- {
2933
- "aria-hidden": true,
2934
- className: _chunk3ATAYP36cjs.cn.call(void 0,
2935
- "flex h-20 w-full items-center gap-4 px-4",
2936
- "border-b border-ods-border bg-ods-card",
2937
- className
2938
- ),
2939
- children: [
2940
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center gap-1", children: [
2941
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-5 w-1/2" }),
2942
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-4 w-1/3" })
2943
- ] }),
2944
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-8 w-20 shrink-0 rounded-r-md" }),
2945
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "size-12 shrink-0 rounded-md" })
2946
- ]
2947
- }
2948
- );
2949
- }
3016
+ const scoped = _chunkXFRBEXQNcjs.useLoadingScope.call(void 0, );
3017
+ if (isLoading || scoped) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChatTicketItemSkeleton, { className });
2950
3018
  if (!ticket) return null;
2951
- const statusTagProps = _chunkBIA77I6Bcjs.resolveStatusTagProps.call(void 0, {
3019
+ const statusTagProps = _chunkGTONIRJUcjs.resolveStatusTagProps.call(void 0, {
2952
3020
  status: ticket.status,
2953
3021
  statusKind: ticket.statusKind,
2954
3022
  statusName: ticket.statusLabel,
2955
3023
  statusColor: ticket.statusColor
2956
3024
  });
2957
- const isResolved = ticket.statusKind === "RESOLVED" || _chunkBIA77I6Bcjs.resolveTicketStatus.call(void 0, ticket.status) === "RESOLVED";
3025
+ const isResolved = ticket.statusKind === "RESOLVED" || _chunkGTONIRJUcjs.resolveTicketStatus.call(void 0, ticket.status) === "RESOLVED";
2958
3026
  const composedSubtitle = [ticket.ticketNumber, ticket.category, ticket.timeAgo].filter(Boolean).join(" \u2022 ");
2959
3027
  const subtitle = _nullishCoalesce(ticket.subtitle, () => ( (ticket.unread ? UNREAD_NOTICE : composedSubtitle)));
2960
3028
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -2962,10 +3030,9 @@ var ChatTicketItem = _react.forwardRef.call(void 0,
2962
3030
  {
2963
3031
  ref,
2964
3032
  type: "button",
2965
- onClick: () => _optionalChain([onClick, 'optionalCall', _106 => _106(ticket.id)]),
2966
- className: _chunk3ATAYP36cjs.cn.call(void 0,
2967
- "flex h-20 w-full items-center gap-4 px-4",
2968
- "border-b border-ods-border bg-ods-card",
3033
+ onClick: () => _optionalChain([onClick, 'optionalCall', _112 => _112(ticket.id)]),
3034
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
3035
+ TICKET_ROW,
2969
3036
  "cursor-pointer transition-colors duration-150",
2970
3037
  "hover:bg-ods-bg-hover",
2971
3038
  // `focus-visible:` covers keyboard nav AND the post-click state
@@ -2978,11 +3045,11 @@ var ChatTicketItem = _react.forwardRef.call(void 0,
2978
3045
  ),
2979
3046
  ...props,
2980
3047
  children: [
2981
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center text-left", children: [
3048
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, TICKET_ROW_TEXT, "text-left"), children: [
2982
3049
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2983
3050
  "p",
2984
3051
  {
2985
- className: _chunk3ATAYP36cjs.cn.call(void 0, "truncate text-h3", isResolved ? "text-ods-text-secondary" : "text-ods-text-primary"),
3052
+ className: _chunk65VVJSQZcjs.cn.call(void 0, "truncate text-h3", isResolved ? "text-ods-text-secondary" : "text-ods-text-primary"),
2986
3053
  title: ticket.title,
2987
3054
  children: ticket.title
2988
3055
  }
@@ -2990,14 +3057,14 @@ var ChatTicketItem = _react.forwardRef.call(void 0,
2990
3057
  subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2991
3058
  "p",
2992
3059
  {
2993
- className: _chunk3ATAYP36cjs.cn.call(void 0, "truncate text-h6", ticket.unread ? "text-ods-open-yellow" : "text-ods-text-secondary"),
3060
+ className: _chunk65VVJSQZcjs.cn.call(void 0, "truncate text-h6", ticket.unread ? "text-ods-open-yellow" : "text-ods-text-secondary"),
2994
3061
  title: subtitle,
2995
3062
  children: subtitle
2996
3063
  }
2997
3064
  )
2998
3065
  ] }),
2999
3066
  ticket.linkedTaskLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3000
- _chunkEQZXJUYVcjs.Tag,
3067
+ _chunkJTSUAHDLcjs.Tag,
3001
3068
  {
3002
3069
  label: ticket.linkedTaskLabel,
3003
3070
  variant: "outline",
@@ -3005,19 +3072,19 @@ var ChatTicketItem = _react.forwardRef.call(void 0,
3005
3072
  className: "hidden shrink-0 sm:inline-flex"
3006
3073
  }
3007
3074
  ),
3008
- (statusTagProps.status || statusTagProps.label) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBIA77I6Bcjs.TicketStatusTag, { ...statusTagProps }),
3075
+ (statusTagProps.status || statusTagProps.label) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGTONIRJUcjs.TicketStatusTag, { ...statusTagProps }),
3009
3076
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3010
3077
  "div",
3011
3078
  {
3012
3079
  "data-testid": "chat-ticket-item-chevron",
3013
- className: _chunk3ATAYP36cjs.cn.call(void 0,
3014
- "flex size-12 shrink-0 items-center justify-center rounded-md border",
3080
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
3081
+ TICKET_ROW_CHEVRON,
3015
3082
  ticket.unread ? "border-ods-open-yellow bg-ods-open-yellow" : "border-ods-border bg-ods-card"
3016
3083
  ),
3017
3084
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3018
3085
  _lucidereact.ChevronRight,
3019
3086
  {
3020
- className: _chunk3ATAYP36cjs.cn.call(void 0, "size-6", ticket.unread ? "text-ods-text-on-accent" : "text-ods-text-secondary")
3087
+ className: _chunk65VVJSQZcjs.cn.call(void 0, "size-6", ticket.unread ? "text-ods-text-on-accent" : "text-ods-text-secondary")
3021
3088
  }
3022
3089
  )
3023
3090
  }
@@ -3033,28 +3100,28 @@ ChatTicketItem.displayName = "ChatTicketItem";
3033
3100
 
3034
3101
  var ChatTicketList = _react.forwardRef.call(void 0,
3035
3102
  ({ className, tickets, onTicketClick, isLoading = false, skeletonCount = 5, ...props }, ref) => {
3036
- const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunk74ALTXXCcjs.useScrollFade.call(void 0, );
3103
+ const { scrollRef, fadeTop, fadeBottom, update: updateFade } = _chunkYL6ZB2SRcjs.useScrollFade.call(void 0, );
3037
3104
  if (isLoading) {
3038
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref, className: _chunk3ATAYP36cjs.cn.call(void 0, "flex min-h-0 flex-col gap-2", className), ...props, children: [
3105
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref, className: _chunk65VVJSQZcjs.cn.call(void 0, "flex min-h-0 flex-col gap-2", className), ...props, children: [
3039
3106
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "shrink-0 text-ods-text-secondary text-h5", children: "Your Chats:" }),
3040
3107
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-0 flex-1 overflow-hidden rounded-md border border-ods-border", children: Array.from({ length: skeletonCount }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChatTicketItem, { isLoading: true }, i)) })
3041
3108
  ] });
3042
3109
  }
3043
3110
  if (tickets.length === 0) return null;
3044
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref, className: _chunk3ATAYP36cjs.cn.call(void 0, "flex min-h-0 flex-col gap-2", className), ...props, children: [
3111
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref, className: _chunk65VVJSQZcjs.cn.call(void 0, "flex min-h-0 flex-col gap-2", className), ...props, children: [
3045
3112
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "shrink-0 text-ods-text-secondary text-h5", children: "Your Chats:" }),
3046
3113
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
3047
3114
  "div",
3048
3115
  {
3049
- className: _chunk3ATAYP36cjs.cn.call(void 0,
3116
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
3050
3117
  "relative min-h-0 flex-1 overflow-hidden border-x border-ods-border",
3051
3118
  !fadeTop && "rounded-t-md border-t",
3052
3119
  !fadeBottom && "rounded-b-md border-b"
3053
3120
  ),
3054
3121
  children: [
3055
3122
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: scrollRef, className: "h-full overflow-y-auto overscroll-contain", onScroll: updateFade, children: tickets.map((ticket) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ChatTicketItem, { ticket, onClick: onTicketClick }, ticket.id)) }),
3056
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk74ALTXXCcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop }),
3057
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk74ALTXXCcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom })
3123
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYL6ZB2SRcjs.ScrollFadeOverlay, { edge: "top", visible: fadeTop }),
3124
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYL6ZB2SRcjs.ScrollFadeOverlay, { edge: "bottom", visible: fadeBottom })
3058
3125
  ]
3059
3126
  }
3060
3127
  )
@@ -3075,7 +3142,7 @@ var DialogListItemSkeleton = _react.forwardRef.call(void 0,
3075
3142
  "div",
3076
3143
  {
3077
3144
  ref,
3078
- className: _chunk3ATAYP36cjs.cn.call(void 0,
3145
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
3079
3146
  "flex items-center gap-4 overflow-clip",
3080
3147
  "px-4 py-3",
3081
3148
  "border-b border-ods-border",
@@ -3085,10 +3152,10 @@ var DialogListItemSkeleton = _react.forwardRef.call(void 0,
3085
3152
  ...props,
3086
3153
  children: [
3087
3154
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 flex-col items-start justify-center gap-1", children: [
3088
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-6 w-full max-w-[200px] rounded" }) }),
3089
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-4 w-32 rounded" })
3155
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-6 w-full max-w-[200px] rounded" }) }),
3156
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-4 w-32 rounded" })
3090
3157
  ] }),
3091
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "size-6 shrink-0 rounded" })
3158
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "size-6 shrink-0 rounded" })
3092
3159
  ]
3093
3160
  }
3094
3161
  );
@@ -3101,11 +3168,11 @@ var ChatSidebarSkeleton = _react.forwardRef.call(void 0,
3101
3168
  "div",
3102
3169
  {
3103
3170
  ref,
3104
- className: _chunk3ATAYP36cjs.cn.call(void 0, "flex h-full w-80 flex-col", "bg-ods-bg", "border-r border-ods-border", className),
3171
+ className: _chunk65VVJSQZcjs.cn.call(void 0, "flex h-full w-80 flex-col", "bg-ods-bg", "border-r border-ods-border", className),
3105
3172
  ...props,
3106
3173
  children: [
3107
3174
  showNewChatButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center justify-center border-b border-ods-border bg-ods-card px-4 py-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3108
- _chunk2QMBXGMQcjs.Button,
3175
+ _chunkTF5D5MNOcjs.Button,
3109
3176
  {
3110
3177
  variant: "transparent",
3111
3178
  disabled: true,
@@ -3127,17 +3194,17 @@ ChatSidebarSkeleton.displayName = "ChatSidebarSkeleton";
3127
3194
  var DialogListItem = _react.forwardRef.call(void 0,
3128
3195
  ({ className, dialog, isActive, onDialogSelect, onClick, ...props }, ref) => {
3129
3196
  const handleClick = (e) => {
3130
- _optionalChain([onDialogSelect, 'optionalCall', _107 => _107(dialog.id)]);
3131
- _optionalChain([onClick, 'optionalCall', _108 => _108(e)]);
3197
+ _optionalChain([onDialogSelect, 'optionalCall', _113 => _113(dialog.id)]);
3198
+ _optionalChain([onClick, 'optionalCall', _114 => _114(e)]);
3132
3199
  };
3133
3200
  const formatTimestamp = (timestamp) => {
3134
- return _chunkEQZXJUYVcjs.formatDateWithTimezone.call(void 0, timestamp, _chunkEQZXJUYVcjs.VIEWER_TIMEZONE, "numericDateTime24h");
3201
+ return _chunkJTSUAHDLcjs.formatDateWithTimezone.call(void 0, timestamp, _chunkJTSUAHDLcjs.VIEWER_TIMEZONE, "numericDateTime24h");
3135
3202
  };
3136
3203
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
3137
3204
  "div",
3138
3205
  {
3139
3206
  ref,
3140
- className: _chunk3ATAYP36cjs.cn.call(void 0,
3207
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
3141
3208
  "flex items-center gap-4 overflow-clip",
3142
3209
  "px-4 py-3",
3143
3210
  "cursor-pointer border-b border-ods-border",
@@ -3153,7 +3220,7 @@ var DialogListItem = _react.forwardRef.call(void 0,
3153
3220
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full min-w-0 items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3154
3221
  "h3",
3155
3222
  {
3156
- className: _chunk3ATAYP36cjs.cn.call(void 0,
3223
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
3157
3224
  "min-w-0 flex-1 text-h6",
3158
3225
  isActive ? "text-ods-accent" : "text-ods-text-primary",
3159
3226
  "truncate"
@@ -3201,7 +3268,7 @@ var ChatSidebar = _react.forwardRef.call(void 0,
3201
3268
  (entries) => {
3202
3269
  const [entry] = entries;
3203
3270
  if (entry.isIntersecting && !isFetchingRef.current) {
3204
- _optionalChain([onLoadMoreRef, 'access', _109 => _109.current, 'optionalCall', _110 => _110()]);
3271
+ _optionalChain([onLoadMoreRef, 'access', _115 => _115.current, 'optionalCall', _116 => _116()]);
3205
3272
  }
3206
3273
  },
3207
3274
  { root: scrollContainer, rootMargin: "100px", threshold: 0.1 }
@@ -3216,11 +3283,11 @@ var ChatSidebar = _react.forwardRef.call(void 0,
3216
3283
  "div",
3217
3284
  {
3218
3285
  ref,
3219
- className: _chunk3ATAYP36cjs.cn.call(void 0, "flex h-full w-80 flex-col", "bg-ods-bg", "border-r border-ods-border", className),
3286
+ className: _chunk65VVJSQZcjs.cn.call(void 0, "flex h-full w-80 flex-col", "bg-ods-bg", "border-r border-ods-border", className),
3220
3287
  ...props,
3221
3288
  children: [
3222
3289
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex shrink-0 items-center justify-center border-b border-ods-border bg-ods-card px-4 py-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3223
- _chunk2QMBXGMQcjs.Button,
3290
+ _chunkTF5D5MNOcjs.Button,
3224
3291
  {
3225
3292
  onClick: onNewChat,
3226
3293
  variant: "transparent",
@@ -3271,7 +3338,7 @@ ChatSidebar.displayName = "ChatSidebar";
3271
3338
  // src/components/chat/chat-top-navigation.tsx
3272
3339
 
3273
3340
 
3274
- var edgeButtonClass = _chunk3ATAYP36cjs.cn.call(void 0,
3341
+ var edgeButtonClass = _chunk65VVJSQZcjs.cn.call(void 0,
3275
3342
  "flex size-14 shrink-0 items-center justify-center border-ods-border text-ods-text-secondary",
3276
3343
  "hover:text-ods-text-primary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ods-focus",
3277
3344
  "[&_svg]:size-6"
@@ -3289,7 +3356,7 @@ var ChatTopNavigation = _react.forwardRef.call(void 0,
3289
3356
  before,
3290
3357
  isLoading,
3291
3358
  ...props
3292
- }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "header", { ref, className: _chunk3ATAYP36cjs.cn.call(void 0, "flex shrink-0 flex-col bg-ods-bg", className), ...props, children: [
3359
+ }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "header", { ref, className: _chunk65VVJSQZcjs.cn.call(void 0, "flex shrink-0 flex-col bg-ods-bg", className), ...props, children: [
3293
3360
  before,
3294
3361
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-14 items-stretch border-b border-ods-border", children: [
3295
3362
  onToggleSidebar && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -3299,19 +3366,19 @@ var ChatTopNavigation = _react.forwardRef.call(void 0,
3299
3366
  onClick: onToggleSidebar,
3300
3367
  "aria-label": sidebarOpen ? "Hide sidebar" : "Show sidebar",
3301
3368
  "aria-expanded": sidebarOpen,
3302
- className: _chunk3ATAYP36cjs.cn.call(void 0, edgeButtonClass, "border-r"),
3369
+ className: _chunk65VVJSQZcjs.cn.call(void 0, edgeButtonClass, "border-r"),
3303
3370
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5TANV4ONcjs.SidebarIcon, {})
3304
3371
  }
3305
3372
  ),
3306
3373
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-[var(--spacing-system-m)] px-[var(--spacing-system-m)]", children: [
3307
3374
  isLoading ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
3308
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "size-10 shrink-0 rounded-full" }),
3375
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "size-10 shrink-0 rounded-full" }),
3309
3376
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-[var(--spacing-system-xxs)]", children: [
3310
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-5 w-24" }),
3311
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-4 w-32" })
3377
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-5 w-24" }),
3378
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-4 w-32" })
3312
3379
  ] })
3313
3380
  ] }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
3314
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.SquareAvatar, { src: _nullishCoalesce(avatarUrl, () => ( void 0)), alt: name, fallback: name, size: "md", variant: "round" }),
3381
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJTSUAHDLcjs.SquareAvatar, { src: _nullishCoalesce(avatarUrl, () => ( void 0)), alt: name, fallback: name, size: "md", variant: "round" }),
3315
3382
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
3316
3383
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-primary text-h3", children: name }),
3317
3384
  subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-secondary text-h6", children: subtitle })
@@ -3325,7 +3392,7 @@ var ChatTopNavigation = _react.forwardRef.call(void 0,
3325
3392
  type: "button",
3326
3393
  onClick: onOpenSettings,
3327
3394
  "aria-label": "Settings",
3328
- className: _chunk3ATAYP36cjs.cn.call(void 0, edgeButtonClass, "border-l"),
3395
+ className: _chunk65VVJSQZcjs.cn.call(void 0, edgeButtonClass, "border-l"),
3329
3396
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNAGWQAIMcjs.Settings01Icon, {})
3330
3397
  }
3331
3398
  )
@@ -3368,7 +3435,7 @@ function OnboardingCarousel({
3368
3435
  "aria-roledescription": "carousel",
3369
3436
  "aria-label": label,
3370
3437
  onKeyDown: handleKeyDown,
3371
- className: _chunk3ATAYP36cjs.cn.call(void 0,
3438
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
3372
3439
  "flex min-h-0 w-full flex-1 flex-col items-center gap-[calc(2*var(--spacing-system-xlf))]",
3373
3440
  className
3374
3441
  ),
@@ -3390,7 +3457,7 @@ function OnboardingCarousel({
3390
3457
  "aria-label": `${i + 1} of ${steps.length}`,
3391
3458
  "aria-hidden": !isCurrent,
3392
3459
  inert: !isCurrent || void 0,
3393
- className: _chunk3ATAYP36cjs.cn.call(void 0,
3460
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
3394
3461
  "flex w-[var(--onboarding-card-w)] shrink-0 flex-col items-center justify-center gap-[var(--spacing-system-m)] rounded-md border border-ods-border bg-ods-card px-[var(--spacing-system-xl)] py-[calc(2*var(--spacing-system-xlf))] text-center",
3395
3462
  i === 0 && "ml-[calc((100%-var(--onboarding-card-w))/2)]"
3396
3463
  ),
@@ -3416,12 +3483,12 @@ function OnboardingCarousel({
3416
3483
  " of ",
3417
3484
  steps.length,
3418
3485
  ": ",
3419
- _optionalChain([steps, 'access', _111 => _111[index], 'optionalAccess', _112 => _112.title])
3486
+ _optionalChain([steps, 'access', _117 => _117[index], 'optionalAccess', _118 => _118.title])
3420
3487
  ] }),
3421
3488
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", role: "group", "aria-label": "Choose step", children: steps.map((step, i) => {
3422
3489
  const isCurrent = i === index;
3423
3490
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3424
- _chunk2QMBXGMQcjs.Button,
3491
+ _chunkTF5D5MNOcjs.Button,
3425
3492
  {
3426
3493
  variant: "transparent",
3427
3494
  "aria-current": isCurrent ? "step" : void 0,
@@ -3431,7 +3498,7 @@ function OnboardingCarousel({
3431
3498
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3432
3499
  "span",
3433
3500
  {
3434
- className: _chunk3ATAYP36cjs.cn.call(void 0,
3501
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
3435
3502
  "size-1.5 rounded-full transition-colors duration-150",
3436
3503
  isCurrent ? "bg-ods-accent" : "bg-ods-text-secondary"
3437
3504
  )
@@ -3444,7 +3511,7 @@ function OnboardingCarousel({
3444
3511
  ] }),
3445
3512
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-wrap items-center justify-center gap-[var(--spacing-system-m)]", children: [
3446
3513
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3447
- _chunk2QMBXGMQcjs.Button,
3514
+ _chunkTF5D5MNOcjs.Button,
3448
3515
  {
3449
3516
  variant: "outline",
3450
3517
  className: "w-[200px]",
@@ -3453,13 +3520,71 @@ function OnboardingCarousel({
3453
3520
  children: previousLabel
3454
3521
  }
3455
3522
  ),
3456
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "accent", className: "w-[200px]", onClick: isLast ? onComplete : () => goTo(index + 1), children: isLast ? completeLabel : nextLabel })
3523
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTF5D5MNOcjs.Button, { variant: "accent", className: "w-[200px]", onClick: isLast ? onComplete : () => goTo(index + 1), children: isLast ? completeLabel : nextLabel })
3457
3524
  ] })
3458
3525
  ]
3459
3526
  }
3460
3527
  );
3461
3528
  }
3462
3529
 
3530
+ // src/components/chat/entity-cards/admin-content-card-grid.tsx
3531
+
3532
+ var ADMIN_CONTENT_CARD_GRID_CLASS = "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-[var(--spacing-system-lf)]";
3533
+ function AdminContentCardGridSkeleton({
3534
+ count = 12,
3535
+ Skeleton = _chunkDGNBXZXTcjs.AdminContentCardSkeleton,
3536
+ className,
3537
+ label = "Loading",
3538
+ region = true
3539
+ }) {
3540
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3541
+ _chunkWEANWBJHcjs.LoadingRegion,
3542
+ {
3543
+ label,
3544
+ announce: region,
3545
+ className: _chunk65VVJSQZcjs.cn.call(void 0, ADMIN_CONTENT_CARD_GRID_CLASS, className),
3546
+ "data-state": "loading",
3547
+ children: Array.from({ length: count }, (_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Skeleton, {}, i))
3548
+ }
3549
+ );
3550
+ }
3551
+ function AdminContentCardGrid({
3552
+ items,
3553
+ pageSize,
3554
+ loading,
3555
+ itemKey,
3556
+ renderCard,
3557
+ empty,
3558
+ Skeleton = _chunkDGNBXZXTcjs.AdminContentCardSkeleton,
3559
+ className,
3560
+ loadingLabel,
3561
+ loadingRegion
3562
+ }) {
3563
+ const gridClass = _chunk65VVJSQZcjs.cn.call(void 0, ADMIN_CONTENT_CARD_GRID_CLASS, className);
3564
+ if (loading)
3565
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3566
+ AdminContentCardGridSkeleton,
3567
+ {
3568
+ count: pageSize,
3569
+ Skeleton,
3570
+ className,
3571
+ label: loadingLabel,
3572
+ region: loadingRegion
3573
+ }
3574
+ );
3575
+ const slots = Array.from({ length: Math.max(0, pageSize - items.length) }, (_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Skeleton, { className: "invisible" }, `slot-${i}`));
3576
+ if (items.length === 0) {
3577
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative", "data-state": "empty", children: [
3578
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: gridClass, children: slots }),
3579
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute inset-x-0 top-0", children: empty })
3580
+ ] });
3581
+ }
3582
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: gridClass, "data-state": "items", children: [
3583
+ items.map((item) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-full", children: renderCard(item) }, itemKey(item))),
3584
+ slots.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "contents", children: slots })
3585
+ ] });
3586
+ }
3587
+
3463
3588
  // src/components/chat/entity-cards/slack-message-card.tsx
3464
3589
 
3465
3590
 
@@ -3477,8 +3602,9 @@ function parseChannelFromUrl(url) {
3477
3602
  return null;
3478
3603
  }
3479
3604
  function SlackMessageCard({ item, variant = "compact", className, anchorProps }) {
3605
+ if (_chunkXFRBEXQNcjs.useLoadingScope.call(void 0, )) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SlackMessageCardSkeleton, { variant, className });
3480
3606
  const channel = _nullishCoalesce(_nullishCoalesce(item.channel, () => ( parseChannelFromUrl(item.url))), () => ( null));
3481
- const dateText = _chunkEQZXJUYVcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
3607
+ const dateText = _chunkJTSUAHDLcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
3482
3608
  if (variant === "row") {
3483
3609
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `flex min-w-0 items-center gap-3 ${_nullishCoalesce(className, () => ( ""))}`, children: [
3484
3610
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOWDRZM73cjs.SlackIcon, { className: "h-3.5 w-3.5 shrink-0" }),
@@ -3504,46 +3630,50 @@ function SlackMessageCard({ item, variant = "compact", className, anchorProps })
3504
3630
  metaParts.push(
3505
3631
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap", children: dateText }, "date")
3506
3632
  );
3507
- const href = _chunk22XAPV6Ncjs.safeHref.call(void 0, item.url);
3633
+ const href = _chunkDGNBXZXTcjs.safeHref.call(void 0, item.url);
3508
3634
  const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
3509
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOWDRZM73cjs.SlackIcon, { className: "h-5 w-5" }) }),
3510
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_TEXT_COL, children: [
3511
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_TITLE, children: item.title }) }),
3512
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_SUMMARY, children: item.preview || _chunk22XAPV6Ncjs.COMPACT_CARD_ROW_FILLER }) }),
3513
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_META_ROW, children: metaParts.length > 0 ? metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react2.default.Fragment, { children: [
3635
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOWDRZM73cjs.SlackIcon, { className: "h-5 w-5" }) }),
3636
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_TEXT_COL, children: [
3637
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_TITLE, children: item.title }) }),
3638
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_SUMMARY, children: item.preview || _chunkDGNBXZXTcjs.COMPACT_CARD_ROW_FILLER }) }),
3639
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_META_ROW, children: metaParts.length > 0 ? metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react2.default.Fragment, { children: [
3514
3640
  i > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary/40", children: "\xB7" }) : null,
3515
3641
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 truncate", children: part })
3516
- ] }, i)) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_SUMMARY, children: _chunk22XAPV6Ncjs.COMPACT_CARD_ROW_FILLER }) }) })
3642
+ ] }, i)) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_SUMMARY, children: _chunkDGNBXZXTcjs.COMPACT_CARD_ROW_FILLER }) }) })
3517
3643
  ] }),
3518
3644
  href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-3.5 w-3.5" }) }) : null
3519
3645
  ] });
3520
3646
  if (anchorProps) {
3521
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { ...anchorProps, className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
3647
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { ...anchorProps, className: `${_chunkDGNBXZXTcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
3522
3648
  }
3523
- return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { href, target: "_blank", rel: "noopener noreferrer", className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
3649
+ return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { href, target: "_blank", rel: "noopener noreferrer", className: `${_chunkDGNBXZXTcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkDGNBXZXTcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
3524
3650
  }
3525
3651
  function SlackMessageCardSkeleton({
3526
3652
  variant = "compact",
3527
3653
  className
3528
3654
  }) {
3529
3655
  if (variant === "row") {
3530
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `flex min-w-0 items-center gap-3 ${_nullishCoalesce(className, () => ( ""))}`, children: [
3531
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-3.5 w-3.5 shrink-0 rounded" }),
3532
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-3 w-32 shrink-0 rounded" }),
3533
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-3 w-2/3 flex-1 rounded" }),
3534
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-3 w-24 shrink-0 rounded" }),
3535
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-3 w-20 shrink-0 rounded" })
3536
- ] });
3656
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3657
+ _chunkDGNBXZXTcjs.ActivityRowSkeleton,
3658
+ {
3659
+ lead: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
3660
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-3.5 w-3.5 shrink-0 rounded" }),
3661
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-3 w-32 shrink-0 rounded" })
3662
+ ] }),
3663
+ trailingWidths: ["w-24", "w-20"],
3664
+ className
3665
+ }
3666
+ );
3537
3667
  }
3538
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_SKELETON_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: [
3539
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: _chunk22XAPV6Ncjs.COMPACT_CARD_SKELETON_IMAGE_SLOT }),
3540
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_TEXT_COL, children: [
3541
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-3.5 w-2/3 rounded" }) }),
3542
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-3 w-5/6 rounded" }) }),
3543
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-3 w-1/3 rounded" }) })
3544
- ] }),
3545
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-3.5 w-3.5 rounded" }) })
3546
- ] });
3668
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3669
+ _chunkDGNBXZXTcjs.CompactCardSkeleton,
3670
+ {
3671
+ titleWidth: "w-2/3",
3672
+ rows: [{ width: "w-5/6" }, { width: "w-1/3" }],
3673
+ trailingIcon: true,
3674
+ className
3675
+ }
3676
+ );
3547
3677
  }
3548
3678
 
3549
3679
  // src/components/chat/entity-cards/hubspot-ticket-card.tsx
@@ -3569,14 +3699,15 @@ function statusScheme(status) {
3569
3699
  return "default";
3570
3700
  }
3571
3701
  function HubspotTicketCard({ item, variant = "compact", className, anchorProps }) {
3702
+ if (_chunkXFRBEXQNcjs.useLoadingScope.call(void 0, )) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HubspotTicketCardSkeleton, { variant, className });
3572
3703
  const statusText = _nullishCoalesce(item.statusLabel, () => ( formatToken(item.status)));
3573
3704
  const priorityText = formatToken(item.priority);
3574
- const dateText = _chunkEQZXJUYVcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
3705
+ const dateText = _chunkJTSUAHDLcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
3575
3706
  if (variant === "row") {
3576
3707
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `flex min-w-0 items-center gap-3 ${_nullishCoalesce(className, () => ( ""))}`, children: [
3577
3708
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "max-w-[260px] shrink-0 truncate text-ods-text-primary text-h6", children: item.title }),
3578
3709
  item.preview ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 flex-1 truncate text-ods-text-secondary text-h6", children: item.preview }) : null,
3579
- statusText ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.StatusBadge, { text: statusText, variant: "button", colorScheme: statusScheme(item.status) }) : null,
3710
+ statusText ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDGNBXZXTcjs.StatusBadge, { text: statusText, variant: "button", colorScheme: statusScheme(item.status) }) : null,
3580
3711
  dateText ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "w-24 shrink-0 text-right text-ods-text-secondary text-h6", children: dateText }) : null
3581
3712
  ] });
3582
3713
  }
@@ -3590,13 +3721,13 @@ function HubspotTicketCard({ item, variant = "compact", className, anchorProps }
3590
3721
  metaParts.push(
3591
3722
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap", children: dateText }, "date")
3592
3723
  );
3593
- const href = _chunk22XAPV6Ncjs.safeHref.call(void 0, item.url);
3724
+ const href = _chunkDGNBXZXTcjs.safeHref.call(void 0, item.url);
3594
3725
  const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
3595
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_TEXT_COL, children: [
3726
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_TEXT_COL, children: [
3596
3727
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 flex-wrap items-center gap-1.5", children: [
3597
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_TITLE} min-w-0 shrink`, children: item.title }),
3728
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkDGNBXZXTcjs.COMPACT_CARD_TITLE} min-w-0 shrink`, children: item.title }),
3598
3729
  priorityText ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3599
- _chunk22XAPV6Ncjs.StatusBadge,
3730
+ _chunkDGNBXZXTcjs.StatusBadge,
3600
3731
  {
3601
3732
  text: priorityText,
3602
3733
  variant: "button",
@@ -3605,7 +3736,7 @@ function HubspotTicketCard({ item, variant = "compact", className, anchorProps }
3605
3736
  }
3606
3737
  ) : null,
3607
3738
  statusText ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3608
- _chunk22XAPV6Ncjs.StatusBadge,
3739
+ _chunkDGNBXZXTcjs.StatusBadge,
3609
3740
  {
3610
3741
  text: statusText,
3611
3742
  variant: "button",
@@ -3619,7 +3750,7 @@ function HubspotTicketCard({ item, variant = "compact", className, anchorProps }
3619
3750
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 truncate", children: item.customerEmail })
3620
3751
  ] }) : null,
3621
3752
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "line-clamp-4 whitespace-pre-wrap break-words text-ods-text-secondary text-h6", children: item.preview || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "italic text-ods-text-secondary/60", children: "No description provided." }) }) }),
3622
- metaParts.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_META_ROW, children: metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react2.default.Fragment, { children: [
3753
+ metaParts.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_META_ROW, children: metaParts.map((part, i) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _react2.default.Fragment, { children: [
3623
3754
  i > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary/40", children: "\xB7" }) : null,
3624
3755
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 truncate", children: part })
3625
3756
  ] }, i)) }) }) : null
@@ -3627,9 +3758,9 @@ function HubspotTicketCard({ item, variant = "compact", className, anchorProps }
3627
3758
  href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-3.5 w-3.5" }) }) : null
3628
3759
  ] });
3629
3760
  if (anchorProps) {
3630
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { ...anchorProps, className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
3761
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { ...anchorProps, className: `${_chunkDGNBXZXTcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
3631
3762
  }
3632
- return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { href, target: "_blank", rel: "noopener noreferrer", className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
3763
+ return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { href, target: "_blank", rel: "noopener noreferrer", className: `${_chunkDGNBXZXTcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkDGNBXZXTcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
3633
3764
  }
3634
3765
  function HubspotTicketCardSkeleton({
3635
3766
  variant = "compact",
@@ -3637,41 +3768,35 @@ function HubspotTicketCardSkeleton({
3637
3768
  }) {
3638
3769
  if (variant === "row") {
3639
3770
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: `flex min-w-0 items-center gap-3 ${_nullishCoalesce(className, () => ( ""))}`, children: [
3640
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-3 w-40 shrink-0 rounded" }),
3641
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-3 w-2/3 flex-1 rounded" }),
3642
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-3 w-16 shrink-0 rounded" }),
3643
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-3 w-20 shrink-0 rounded" })
3771
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-3 w-40 shrink-0 rounded" }),
3772
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-3 w-2/3 flex-1 rounded" }),
3773
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-3 w-16 shrink-0 rounded" }),
3774
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-3 w-20 shrink-0 rounded" })
3644
3775
  ] });
3645
3776
  }
3646
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_SKELETON_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: [
3647
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_TEXT_COL, children: [
3648
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 flex-wrap items-center gap-1.5", children: [
3649
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-3.5 w-2/3 rounded" }),
3650
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-4 w-12 rounded-full" }),
3651
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-4 w-16 rounded-full" })
3652
- ] }),
3653
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-4 w-1/2 rounded" }),
3654
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 flex-col gap-0", children: [
3655
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-5 w-5/6 rounded" }),
3656
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-5 w-4/6 rounded" }),
3657
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-5 w-3/4 rounded" }),
3658
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-5 w-2/5 rounded" })
3659
- ] }),
3660
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-3 w-1/3 rounded" }) })
3661
- ] }),
3662
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-3.5 w-3.5 rounded" }) })
3663
- ] });
3777
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3778
+ _chunkDGNBXZXTcjs.CompactCardSkeleton,
3779
+ {
3780
+ slot: false,
3781
+ titleWidth: "w-2/3",
3782
+ titleBadges: ["w-12", "w-16"],
3783
+ rows: [{ width: "w-1/2" }, { width: "w-5/6", lines: 4 }, { width: "w-1/3" }],
3784
+ trailingIcon: true,
3785
+ className
3786
+ }
3787
+ );
3664
3788
  }
3665
3789
 
3666
3790
  // src/components/chat/entity-cards/data-room-doc-card.tsx
3667
3791
 
3668
3792
 
3669
3793
  function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
3794
+ if (_chunkXFRBEXQNcjs.useLoadingScope.call(void 0, )) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DataRoomDocCardSkeleton, { className });
3670
3795
  const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
3671
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_TEXT_COL, children: [
3796
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_TEXT_COL, children: [
3672
3797
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 flex-wrap items-center gap-1.5", children: [
3673
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_TITLE} min-w-0 shrink`, children: item.title }),
3674
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.StatusBadge, { text: badgeText, variant: "button", colorScheme: "cyan", className: "shrink-0" })
3798
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkDGNBXZXTcjs.COMPACT_CARD_TITLE} min-w-0 shrink`, children: item.title }),
3799
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDGNBXZXTcjs.StatusBadge, { text: badgeText, variant: "button", colorScheme: "cyan", className: "shrink-0" })
3675
3800
  ] }),
3676
3801
  item.path ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-center gap-1 text-ods-text-secondary text-h6", children: [
3677
3802
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0 text-ods-text-secondary/70", children: "Path:" }),
@@ -3679,42 +3804,67 @@ function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
3679
3804
  ] }) : null,
3680
3805
  item.preview ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "line-clamp-2 whitespace-pre-wrap break-words text-ods-text-secondary text-h6", children: item.preview }) }) : null
3681
3806
  ] }),
3682
- _optionalChain([anchorProps, 'optionalAccess', _113 => _113.href]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-3.5 w-3.5" }) }) : null
3807
+ _optionalChain([anchorProps, 'optionalAccess', _119 => _119.href]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-3.5 w-3.5" }) }) : null
3683
3808
  ] });
3684
3809
  if (!anchorProps) {
3685
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
3810
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkDGNBXZXTcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
3686
3811
  }
3687
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { ...anchorProps, className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
3812
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { ...anchorProps, className: `${_chunkDGNBXZXTcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
3688
3813
  }
3689
3814
  function DataRoomDocCardSkeleton({ className }) {
3690
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_SKELETON_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: [
3691
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_TEXT_COL, children: [
3692
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-center gap-1.5", children: [
3693
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-3.5 w-2/3 rounded" }),
3694
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-4 w-16 rounded-full" })
3695
- ] }),
3696
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-4 w-1/2 rounded" }),
3697
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 flex-col gap-0", children: [
3698
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-5 w-5/6 rounded" }),
3699
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-5 w-3/4 rounded" })
3700
- ] })
3701
- ] }),
3702
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-3.5 w-3.5 rounded" }) })
3815
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3816
+ _chunkDGNBXZXTcjs.CompactCardSkeleton,
3817
+ {
3818
+ slot: false,
3819
+ titleWidth: "w-2/3",
3820
+ titleBadges: ["w-16"],
3821
+ rows: [{ width: "w-1/2" }, { width: "w-5/6", lines: 2 }],
3822
+ trailingIcon: true,
3823
+ className
3824
+ }
3825
+ );
3826
+ }
3827
+
3828
+ // src/components/chat/entity-cards/campaign-card-admin.tsx
3829
+
3830
+
3831
+ function CampaignCardAdmin({ campaign, className, anchorProps }) {
3832
+ if (_chunkXFRBEXQNcjs.useLoadingScope.call(void 0, )) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, { className });
3833
+ const goalsCount = _optionalChain([campaign, 'access', _120 => _120.goals, 'optionalAccess', _121 => _121.length]) || 0;
3834
+ const innerChildren = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
3835
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Megaphone, { className: "h-5 w-5" }) }),
3836
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_TEXT_COL, children: [
3837
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_TITLE, children: campaign.name }) }),
3838
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_SUBTITLE, children: [
3839
+ campaign.start_date ? _chunkDGNBXZXTcjs.formatDateShort.call(void 0, campaign.start_date) : null,
3840
+ goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
3841
+ "Marketing campaign"
3842
+ ].filter(Boolean).join(" \xB7 ") }) }),
3843
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_SUMMARY, children: campaign.description || _chunkDGNBXZXTcjs.COMPACT_CARD_ROW_FILLER }) })
3844
+ ] })
3703
3845
  ] });
3846
+ if (anchorProps) {
3847
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { ...anchorProps, className: `${_chunkDGNBXZXTcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: innerChildren });
3848
+ }
3849
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkDGNBXZXTcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: innerChildren });
3850
+ }
3851
+ function CampaignCardAdminSkeleton({ className }) {
3852
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDGNBXZXTcjs.CompactCardSkeleton, { rows: [{ width: "w-1/2" }, { width: "w-11/12" }], className });
3704
3853
  }
3705
3854
 
3706
3855
  // src/components/chat/entity-cards/generic-entity-card.tsx
3707
3856
 
3708
3857
 
3709
3858
  function GenericEntityCard({ item, className, anchorProps }) {
3710
- const href = _chunk22XAPV6Ncjs.safeHref.call(void 0, item.url);
3711
- const dateText = _chunkEQZXJUYVcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
3859
+ if (_chunkXFRBEXQNcjs.useLoadingScope.call(void 0, )) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, GenericEntityCardSkeleton, { className });
3860
+ const href = _chunkDGNBXZXTcjs.safeHref.call(void 0, item.url);
3861
+ const dateText = _chunkJTSUAHDLcjs.formatDateUTC.call(void 0, item.dateUpdated, { fallback: "", timezone: "local" });
3712
3862
  const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
3713
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_TEXT_COL, children: [
3863
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_TEXT_COL, children: [
3714
3864
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 flex-wrap items-center gap-1.5", children: [
3715
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_TITLE} min-w-0 shrink`, children: item.title }),
3865
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkDGNBXZXTcjs.COMPACT_CARD_TITLE} min-w-0 shrink`, children: item.title }),
3716
3866
  item.badge ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3717
- _chunk22XAPV6Ncjs.StatusBadge,
3867
+ _chunkDGNBXZXTcjs.StatusBadge,
3718
3868
  {
3719
3869
  text: item.badge.text,
3720
3870
  variant: "button",
@@ -3732,31 +3882,27 @@ function GenericEntityCard({ item, className, anchorProps }) {
3732
3882
  ] }),
3733
3883
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate font-medium text-ods-text-primary", children: f.value })
3734
3884
  ] }, i)) }) : null,
3735
- dateText ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_META_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap", children: dateText }) }) }) : null
3885
+ dateText ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunkDGNBXZXTcjs.COMPACT_CARD_META_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap", children: dateText }) }) }) : null
3736
3886
  ] }),
3737
3887
  href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-3.5 w-3.5" }) }) : null
3738
3888
  ] });
3739
3889
  if (anchorProps) {
3740
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { ...anchorProps, className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
3890
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { ...anchorProps, className: `${_chunkDGNBXZXTcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body });
3741
3891
  }
3742
- return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { href, className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
3892
+ return href ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkV45KLJQPcjs.next_link_default, { href, className: `${_chunkDGNBXZXTcjs.COMPACT_CARD_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: body }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${_chunkDGNBXZXTcjs.COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
3743
3893
  }
3744
3894
  function GenericEntityCardSkeleton({ className }) {
3745
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: `${_chunk22XAPV6Ncjs.COMPACT_CARD_SKELETON_OUTER} ${_nullishCoalesce(className, () => ( ""))}`, children: [
3746
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunk22XAPV6Ncjs.COMPACT_CARD_TEXT_COL, children: [
3747
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 items-center gap-1.5", children: [
3748
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-3.5 w-2/3 rounded" }),
3749
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-4 w-16 rounded-full" })
3750
- ] }),
3751
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-4 w-1/2 rounded" }),
3752
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex min-w-0 flex-col gap-0", children: [
3753
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-5 w-5/6 rounded" }),
3754
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-5 w-3/4 rounded" })
3755
- ] }),
3756
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-3 w-1/4 rounded" })
3757
- ] }),
3758
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex h-5 shrink-0 items-center self-start", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { as: "span", className: "h-3.5 w-3.5 rounded" }) })
3759
- ] });
3895
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3896
+ _chunkDGNBXZXTcjs.CompactCardSkeleton,
3897
+ {
3898
+ slot: false,
3899
+ titleWidth: "w-2/3",
3900
+ titleBadges: ["w-16"],
3901
+ rows: [{ width: "w-1/2" }, { width: "w-5/6", lines: 2 }, { width: "w-1/4" }],
3902
+ trailingIcon: true,
3903
+ className
3904
+ }
3905
+ );
3760
3906
  }
3761
3907
 
3762
3908
  // src/components/chat/types/network.types.ts
@@ -3777,7 +3923,7 @@ var NETWORK_CONFIG = {
3777
3923
 
3778
3924
  var EMPTY_FRAME = { messages: [], phase: "idle", typing: false, delayMs: 0 };
3779
3925
  function prefersReducedMotion() {
3780
- return typeof window !== "undefined" && _optionalChain([window, 'access', _114 => _114.matchMedia, 'optionalCall', _115 => _115("(prefers-reduced-motion: reduce)"), 'access', _116 => _116.matches]) === true;
3926
+ return typeof window !== "undefined" && _optionalChain([window, 'access', _122 => _122.matchMedia, 'optionalCall', _123 => _123("(prefers-reduced-motion: reduce)"), 'access', _124 => _124.matches]) === true;
3781
3927
  }
3782
3928
  function useScriptedStream(frames, resetKey, enabled = true) {
3783
3929
  const [index, setIndex] = _react.useState.call(void 0, 0);
@@ -3788,7 +3934,7 @@ function useScriptedStream(frames, resetKey, enabled = true) {
3788
3934
  setIndex(0);
3789
3935
  }
3790
3936
  _react.useEffect.call(void 0, () => {
3791
- const mq = _optionalChain([window, 'access', _117 => _117.matchMedia, 'optionalCall', _118 => _118("(prefers-reduced-motion: reduce)")]);
3937
+ const mq = _optionalChain([window, 'access', _125 => _125.matchMedia, 'optionalCall', _126 => _126("(prefers-reduced-motion: reduce)")]);
3792
3938
  const sync = () => setReducedMotion(mq ? mq.matches : prefersReducedMotion());
3793
3939
  sync();
3794
3940
  if (!mq) return void 0;
@@ -3933,7 +4079,7 @@ function useJetStreamDialogSubscription({
3933
4079
  const lifecycle = _chunkKHKPLOU4cjs.startConnectionLifecycle.call(void 0, {
3934
4080
  conn: sharedConn,
3935
4081
  wsUrl,
3936
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _119 => _119.current, 'optionalCall', _120 => _120()]),
4082
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _127 => _127.current, 'optionalCall', _128 => _128()]),
3937
4083
  backoff: reconnectionBackoffRef.current,
3938
4084
  getFreshUrl: () => getNatsWsUrlRef.current(),
3939
4085
  // JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
@@ -3948,7 +4094,7 @@ function useJetStreamDialogSubscription({
3948
4094
  setReconnectionCount((c) => c + 1);
3949
4095
  }
3950
4096
  hadConnectionBeforeRef.current = true;
3951
- _optionalChain([onConnectRef, 'access', _121 => _121.current, 'optionalCall', _122 => _122()]);
4097
+ _optionalChain([onConnectRef, 'access', _129 => _129.current, 'optionalCall', _130 => _130()]);
3952
4098
  }
3953
4099
  if (status === "error") {
3954
4100
  console.warn("[JetStream] NATS protocol error:", evt.data);
@@ -3958,7 +4104,7 @@ function useJetStreamDialogSubscription({
3958
4104
  setIsConnected(false);
3959
4105
  setIsSubscribed(false);
3960
4106
  tearDownSubscription();
3961
- _optionalChain([onDisconnectRef, 'access', _123 => _123.current, 'optionalCall', _124 => _124()]);
4107
+ _optionalChain([onDisconnectRef, 'access', _131 => _131.current, 'optionalCall', _132 => _132()]);
3962
4108
  }
3963
4109
  }
3964
4110
  });
@@ -4102,7 +4248,7 @@ function useJetStreamDialogSubscription({
4102
4248
  subscriptionRef.current = handle;
4103
4249
  setIsSubscribed(true);
4104
4250
  try {
4105
- _optionalChain([onSubscribedRef, 'access', _125 => _125.current, 'optionalCall', _126 => _126()]);
4251
+ _optionalChain([onSubscribedRef, 'access', _133 => _133.current, 'optionalCall', _134 => _134()]);
4106
4252
  } catch (e) {
4107
4253
  console.warn("[JetStream] onSubscribed threw:", e);
4108
4254
  }
@@ -4214,7 +4360,7 @@ function useChat({
4214
4360
  onMessagesChangeRef.current = onMessagesChange;
4215
4361
  });
4216
4362
  _react.useEffect.call(void 0, () => {
4217
- _optionalChain([onMessagesChangeRef, 'access', _127 => _127.current, 'optionalCall', _128 => _128(messages)]);
4363
+ _optionalChain([onMessagesChangeRef, 'access', _135 => _135.current, 'optionalCall', _136 => _136(messages)]);
4218
4364
  }, [messages]);
4219
4365
  const {
4220
4366
  streamMessage,
@@ -4251,7 +4397,7 @@ function useChat({
4251
4397
  name: "You",
4252
4398
  content: text,
4253
4399
  timestamp: /* @__PURE__ */ new Date(),
4254
- ..._optionalChain([options, 'optionalAccess', _129 => _129.hidden]) ? { hidden: true } : {}
4400
+ ..._optionalChain([options, 'optionalAccess', _137 => _137.hidden]) ? { hidden: true } : {}
4255
4401
  };
4256
4402
  addMessage(userMessage);
4257
4403
  setIsTyping(true);
@@ -4482,19 +4628,19 @@ function turnRequestKeys(content) {
4482
4628
  if (!Array.isArray(content)) return keys;
4483
4629
  for (const seg of content) {
4484
4630
  if (seg.type === "tool_execution") {
4485
- const id = _optionalChain([seg, 'access', _130 => _130.data, 'optionalAccess', _131 => _131.toolExecutionRequestId]);
4631
+ const id = _optionalChain([seg, 'access', _138 => _138.data, 'optionalAccess', _139 => _139.toolExecutionRequestId]);
4486
4632
  if (id) keys.add(id);
4487
4633
  } else if (seg.type === "approval_request") {
4488
- const id = _optionalChain([seg, 'access', _132 => _132.data, 'optionalAccess', _133 => _133.requestId]);
4634
+ const id = _optionalChain([seg, 'access', _140 => _140.data, 'optionalAccess', _141 => _141.requestId]);
4489
4635
  if (id) keys.add(id);
4490
4636
  } else if (seg.type === "escalation_offer") {
4491
- const id = _optionalChain([seg, 'access', _134 => _134.data, 'optionalAccess', _135 => _135.offerId]);
4637
+ const id = _optionalChain([seg, 'access', _142 => _142.data, 'optionalAccess', _143 => _143.offerId]);
4492
4638
  if (id) keys.add(id);
4493
4639
  } else if (seg.type === "approval_batch") {
4494
4640
  const data = seg.data;
4495
- if (_optionalChain([data, 'optionalAccess', _136 => _136.approvalRequestId])) keys.add(data.approvalRequestId);
4496
- for (const call of _nullishCoalesce(_optionalChain([data, 'optionalAccess', _137 => _137.toolCalls]), () => ( []))) {
4497
- if (_optionalChain([call, 'optionalAccess', _138 => _138.toolExecutionRequestId])) keys.add(call.toolExecutionRequestId);
4641
+ if (_optionalChain([data, 'optionalAccess', _144 => _144.approvalRequestId])) keys.add(data.approvalRequestId);
4642
+ for (const call of _nullishCoalesce(_optionalChain([data, 'optionalAccess', _145 => _145.toolCalls]), () => ( []))) {
4643
+ if (_optionalChain([call, 'optionalAccess', _146 => _146.toolExecutionRequestId])) keys.add(call.toolExecutionRequestId);
4498
4644
  }
4499
4645
  }
4500
4646
  }
@@ -4598,18 +4744,18 @@ function mergeHistoryWithRealtime(input) {
4598
4744
  }
4599
4745
  }
4600
4746
  const trailing = processedHistory[processedHistory.length - 1];
4601
- const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _139 => _139.role]) === "assistant" ? trailing : null;
4602
- const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _140 => _140.content, 'access', _141 => _141.find, 'call', _142 => _142((s) => s.type === "approval_batch"), 'optionalAccess', _143 => _143.data, 'optionalAccess', _144 => _144.approvalRequestId]), () => ( null)) : null;
4747
+ const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _147 => _147.role]) === "assistant" ? trailing : null;
4748
+ const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _148 => _148.content, 'access', _149 => _149.find, 'call', _150 => _150((s) => s.type === "approval_batch"), 'optionalAccess', _151 => _151.data, 'optionalAccess', _152 => _152.approvalRequestId]), () => ( null)) : null;
4603
4749
  let processedToUse = processedHistory;
4604
4750
  const pinnedSyntheticIds = /* @__PURE__ */ new Set();
4605
4751
  const droppedSyntheticIds = /* @__PURE__ */ new Set();
4606
4752
  if (historyBatchId) {
4607
4753
  const batchTwins = existingMessages.filter(
4608
- (m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some((s) => s.type === "approval_batch" && _optionalChain([s, 'access', _145 => _145.data, 'optionalAccess', _146 => _146.approvalRequestId]) === historyBatchId)
4754
+ (m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some((s) => s.type === "approval_batch" && _optionalChain([s, 'access', _153 => _153.data, 'optionalAccess', _154 => _154.approvalRequestId]) === historyBatchId)
4609
4755
  );
4610
4756
  const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
4611
4757
  if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
4612
- const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _147 => _147.content])) ? historyTrailingAssistant.content.length : 0;
4758
+ const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _155 => _155.content])) ? historyTrailingAssistant.content.length : 0;
4613
4759
  const realtimeSize = existingWithSameBatch.content.length;
4614
4760
  if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
4615
4761
  processedToUse = processedHistory.slice(0, -1);
@@ -4642,9 +4788,9 @@ function mergeHistoryWithRealtime(input) {
4642
4788
  const trailingAssistantText = lastProcessed && lastProcessed.role === "assistant" ? assistantAnswerText(lastProcessed.content) : "";
4643
4789
  const windowSignals = collectTwinSignals(processedToUse);
4644
4790
  const seenUserSyntheticByContent = /* @__PURE__ */ new Map();
4645
- const isInWindow = (m) => processedIds.has(m.id) || (_nullishCoalesce(_optionalChain([rawHistoryIds, 'optionalAccess', _148 => _148.has, 'call', _149 => _149(m.id)]), () => ( false)));
4791
+ const isInWindow = (m) => processedIds.has(m.id) || (_nullishCoalesce(_optionalChain([rawHistoryIds, 'optionalAccess', _156 => _156.has, 'call', _157 => _157(m.id)]), () => ( false)));
4646
4792
  const firstWindowIndex = existingMessages.findIndex(isInWindow);
4647
- const isPersistedOlder = (m) => !isClientMintedId(m.id) && (_nullishCoalesce(_optionalChain([m, 'access', _150 => _150.timestamp, 'optionalAccess', _151 => _151.getTime, 'call', _152 => _152()]), () => ( 0))) <= historyFetchedAt;
4793
+ const isPersistedOlder = (m) => !isClientMintedId(m.id) && (_nullishCoalesce(_optionalChain([m, 'access', _158 => _158.timestamp, 'optionalAccess', _159 => _159.getTime, 'call', _160 => _160()]), () => ( 0))) <= historyFetchedAt;
4648
4794
  let lastOlderPersistedIndex = -1;
4649
4795
  if (firstWindowIndex < 0) {
4650
4796
  for (const [index, m] of existingMessages.entries()) {
@@ -4662,7 +4808,7 @@ function mergeHistoryWithRealtime(input) {
4662
4808
  } else if (pm.role === "assistant") {
4663
4809
  windowHasUnstampedAssistant = true;
4664
4810
  }
4665
- const time = _optionalChain([pm, 'access', _153 => _153.timestamp, 'optionalAccess', _154 => _154.getTime, 'call', _155 => _155()]);
4811
+ const time = _optionalChain([pm, 'access', _161 => _161.timestamp, 'optionalAccess', _162 => _162.getTime, 'call', _163 => _163()]);
4666
4812
  if (typeof time === "number" && time < windowMinTime) windowMinTime = time;
4667
4813
  }
4668
4814
  const threadHasClientMintedRow = existingMessages.some((m) => isClientMintedId(m.id));
@@ -4680,14 +4826,14 @@ function mergeHistoryWithRealtime(input) {
4680
4826
  const verdict = twinVerdict(windowSignals, m);
4681
4827
  return verdict === "unknown" ? !seqCanMislead(m) : verdict === "distinct";
4682
4828
  }
4683
- const time = _optionalChain([m, 'access', _156 => _156.timestamp, 'optionalAccess', _157 => _157.getTime, 'call', _158 => _158()]);
4829
+ const time = _optionalChain([m, 'access', _164 => _164.timestamp, 'optionalAccess', _165 => _165.getTime, 'call', _166 => _166()]);
4684
4830
  if (typeof time !== "number" || time > historyFetchedAt) return false;
4685
4831
  if (!Number.isFinite(windowMinTime) || time >= windowMinTime) return false;
4686
4832
  return twinVerdict(windowSignals, m) === "distinct";
4687
4833
  };
4688
4834
  const keepRealtime = (m) => {
4689
4835
  if (m.role === "user" && isOptimisticId(m.id) && typeof m.content === "string") {
4690
- const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _159 => _159.timestamp, 'optionalAccess', _160 => _160.getTime, 'call', _161 => _161()]), () => ( 0))) <= historyFetchedAt;
4836
+ const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _167 => _167.timestamp, 'optionalAccess', _168 => _168.getTime, 'call', _169 => _169()]), () => ( 0))) <= historyFetchedAt;
4691
4837
  return !(canBeInSnapshot && windowSignals.userContents.has(userTwinKey(m)));
4692
4838
  }
4693
4839
  if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
@@ -4712,7 +4858,7 @@ function mergeHistoryWithRealtime(input) {
4712
4858
  } else if (typeof m.streamSeq === "number") {
4713
4859
  covered = historyMaxStreamSeq > 0 && historyMaxStreamSeq >= m.streamSeq;
4714
4860
  } else {
4715
- covered = historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _162 => _162.timestamp, 'optionalAccess', _163 => _163.getTime, 'call', _164 => _164()]), () => ( 0))) <= historyFetchedAt;
4861
+ covered = historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _170 => _170.timestamp, 'optionalAccess', _171 => _171.getTime, 'call', _172 => _172()]), () => ( 0))) <= historyFetchedAt;
4716
4862
  }
4717
4863
  if (covered) return false;
4718
4864
  }
@@ -4803,7 +4949,7 @@ function normalizeHistoricalMessageData(md) {
4803
4949
  function isHistoricalUserTurn(m) {
4804
4950
  return !!m.owner;
4805
4951
  }
4806
- var isTextSegment = (d) => _optionalChain([d, 'optionalAccess', _165 => _165.type]) === "TEXT" && typeof d.text === "string";
4952
+ var isTextSegment = (d) => _optionalChain([d, 'optionalAccess', _173 => _173.type]) === "TEXT" && typeof d.text === "string";
4807
4953
  var THINK_MS = 550;
4808
4954
  var TOKEN_MS = 55;
4809
4955
  var USER_MS = 480;
@@ -4866,9 +5012,9 @@ function buildStreamFrames(messages) {
4866
5012
 
4867
5013
  function InfoHint({ children, label, side = "top", className }) {
4868
5014
  const describedById = _react.useId.call(void 0, );
4869
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunk3ATAYP36cjs.cn.call(void 0, "inline-flex shrink-0 items-center", className), children: [
5015
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: _chunk65VVJSQZcjs.cn.call(void 0, "inline-flex shrink-0 items-center", className), children: [
4870
5016
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4871
- _chunkEQZXJUYVcjs.FloatingTooltip,
5017
+ _chunkJTSUAHDLcjs.FloatingTooltip,
4872
5018
  {
4873
5019
  content: children,
4874
5020
  side,
@@ -4876,7 +5022,7 @@ function InfoHint({ children, label, side = "top", className }) {
4876
5022
  triggerClassName: "inline-flex shrink-0 items-center",
4877
5023
  className: "text-h6",
4878
5024
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4879
- _chunk2QMBXGMQcjs.Button,
5025
+ _chunkTF5D5MNOcjs.Button,
4880
5026
  {
4881
5027
  type: "button",
4882
5028
  variant: "transparent",
@@ -4907,9 +5053,9 @@ function Field({ label, hint, required, children, error, labelExtras, labelEnd }
4907
5053
  };
4908
5054
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-xxs)]", children: [
4909
5055
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1.5", children: [
4910
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkK6VWTUCHcjs.Label, { htmlFor: controlId, children: [
5056
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkFL2RMEDXcjs.Label, { htmlFor: controlId, children: [
4911
5057
  label,
4912
- required && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHTRILBJDcjs.RequiredMark, {})
5058
+ required && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXDHVHB2cjs.RequiredMark, {})
4913
5059
  ] }),
4914
5060
  hint && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoHint, { label, children: hint }),
4915
5061
  labelExtras,
@@ -4970,7 +5116,7 @@ var GROUPS = [
4970
5116
  }
4971
5117
  ];
4972
5118
  function maskKey(key) {
4973
- const prefix = _nullishCoalesce(_optionalChain([/^fpk_[a-z0-9-]+_/i, 'access', _166 => _166.exec, 'call', _167 => _167(key), 'optionalAccess', _168 => _168[0]]), () => ( ""));
5119
+ const prefix = _nullishCoalesce(_optionalChain([/^fpk_[a-z0-9-]+_/i, 'access', _174 => _174.exec, 'call', _175 => _175(key), 'optionalAccess', _176 => _176[0]]), () => ( ""));
4974
5120
  return key.length - prefix.length <= 8 ? `${prefix}\u2022\u2022\u2022\u2022` : `${prefix}\u2026${key.slice(-4)}`;
4975
5121
  }
4976
5122
  function HeaderName({ children }) {
@@ -4986,7 +5132,7 @@ function Section({ title, description, children }) {
4986
5132
  ] });
4987
5133
  }
4988
5134
  function ProxyCredentialsPanel({ description }) {
4989
- const hydrated = _chunk74ALTXXCcjs.useIsHydrated.call(void 0, );
5135
+ const hydrated = _chunkYL6ZB2SRcjs.useIsHydrated.call(void 0, );
4990
5136
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4991
5137
  ProxyCredentialsForm,
4992
5138
  {
@@ -5007,8 +5153,8 @@ function ProxyCredentialsForm({ description, saved }) {
5007
5153
  const errors = _react.useMemo.call(void 0, () => {
5008
5154
  const out = {};
5009
5155
  for (const { field } of _chunkDGFDBPO7cjs.EMBED_PROXY_OPTIONAL_HEADERS) {
5010
- const value = _optionalChain([optional, 'access', _169 => _169[field], 'optionalAccess', _170 => _170.trim, 'call', _171 => _171()]);
5011
- const message = value ? _optionalChain([OPTIONAL_FIELD_COPY, 'access', _172 => _172[field], 'access', _173 => _173.validate, 'optionalCall', _174 => _174(value)]) : null;
5156
+ const value = _optionalChain([optional, 'access', _177 => _177[field], 'optionalAccess', _178 => _178.trim, 'call', _179 => _179()]);
5157
+ const message = value ? _optionalChain([OPTIONAL_FIELD_COPY, 'access', _180 => _180[field], 'access', _181 => _181.validate, 'optionalCall', _182 => _182(value)]) : null;
5012
5158
  if (message) out[field] = message;
5013
5159
  }
5014
5160
  return out;
@@ -5020,12 +5166,12 @@ function ProxyCredentialsForm({ description, saved }) {
5020
5166
  ...keyForPreview ? [["Authorization", `Bearer ${keyForPreview}`]] : [],
5021
5167
  ...email.trim() ? [["X-Chat-Act-As", email.trim().toLowerCase()]] : [],
5022
5168
  ..._chunkDGFDBPO7cjs.EMBED_PROXY_OPTIONAL_HEADERS.flatMap(({ field, header }) => {
5023
- const value = _optionalChain([optional, 'access', _175 => _175[field], 'optionalAccess', _176 => _176.trim, 'call', _177 => _177()]);
5169
+ const value = _optionalChain([optional, 'access', _183 => _183[field], 'optionalAccess', _184 => _184.trim, 'call', _185 => _185()]);
5024
5170
  return value ? [[header, value]] : [];
5025
5171
  })
5026
5172
  ];
5027
5173
  const save = () => {
5028
- const key = secret.trim() || _optionalChain([_chunkDGFDBPO7cjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _178 => _178.secret]);
5174
+ const key = secret.trim() || _optionalChain([_chunkDGFDBPO7cjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _186 => _186.secret]);
5029
5175
  const actAs = email.trim().toLowerCase();
5030
5176
  if (!key || !actAs || hasErrors) {
5031
5177
  setStatus(hasErrors ? "Fix the highlighted fields first." : "API key and act-as email are required.");
@@ -5047,13 +5193,13 @@ function ProxyCredentialsForm({ description, saved }) {
5047
5193
  setStatus("Cleared. Requests use the session again.");
5048
5194
  };
5049
5195
  const setField = (field, value) => setOptional((prev) => ({ ...prev, [field]: value }));
5050
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.Card, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk22XAPV6Ncjs.CardContent, { className: "space-y-[var(--spacing-system-lf)] p-[var(--spacing-system-mf)]", children: [
5196
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDGNBXZXTcjs.Card, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkDGNBXZXTcjs.CardContent, { className: "space-y-[var(--spacing-system-lf)] p-[var(--spacing-system-mf)]", children: [
5051
5197
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "header", { className: "flex flex-col gap-[var(--spacing-system-sf)] sm:flex-row sm:items-start sm:justify-between", children: [
5052
5198
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { children: [
5053
5199
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "text-ods-text-primary text-h3", children: "Proxy credentials" }),
5054
5200
  description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: description })
5055
5201
  ] }),
5056
- activeEmail && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "self-start", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.StatusBadge, { singleLine: true, colorScheme: "success", text: `Active: ${activeEmail}` }) })
5202
+ activeEmail && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "self-start", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDGNBXZXTcjs.StatusBadge, { singleLine: true, colorScheme: "success", text: `Active: ${activeEmail}` }) })
5057
5203
  ] }),
5058
5204
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
5059
5205
  Section,
@@ -5069,7 +5215,7 @@ function ProxyCredentialsForm({ description, saved }) {
5069
5215
  hint: "A SERVICE key may act as anyone; a personal key only as its owner.",
5070
5216
  labelEnd: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderName, { children: "Authorization" }),
5071
5217
  children: (props) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
5072
- _chunkHTRILBJDcjs.Input,
5218
+ _chunkYXDHVHB2cjs.Input,
5073
5219
  {
5074
5220
  ...props,
5075
5221
  type: "password",
@@ -5090,7 +5236,7 @@ function ProxyCredentialsForm({ description, saved }) {
5090
5236
  hint: "The end user the requests run as.",
5091
5237
  labelEnd: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderName, { children: "X-Chat-Act-As" }),
5092
5238
  children: (props) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
5093
- _chunkHTRILBJDcjs.Input,
5239
+ _chunkYXDHVHB2cjs.Input,
5094
5240
  {
5095
5241
  ...props,
5096
5242
  type: "email",
@@ -5116,7 +5262,7 @@ function ProxyCredentialsForm({ description, saved }) {
5116
5262
  error: _nullishCoalesce(errors[field], () => ( null)),
5117
5263
  labelEnd: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderName, { children: header }),
5118
5264
  children: (props) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
5119
- _chunkHTRILBJDcjs.Input,
5265
+ _chunkYXDHVHB2cjs.Input,
5120
5266
  {
5121
5267
  ...props,
5122
5268
  type: _nullishCoalesce(copy.type, () => ( "text")),
@@ -5141,8 +5287,8 @@ function ProxyCredentialsForm({ description, saved }) {
5141
5287
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-wrap items-center justify-between gap-[var(--spacing-system-sf)]", children: [
5142
5288
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary text-h6", children: status }),
5143
5289
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex gap-[var(--spacing-system-xsf)]", children: [
5144
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "outline", onClick: clear, disabled: !activeEmail && !secret && !email, children: "Clear" }),
5145
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { onClick: save, disabled: !canSave, children: "Save" })
5290
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTF5D5MNOcjs.Button, { variant: "outline", onClick: clear, disabled: !activeEmail && !secret && !email, children: "Clear" }),
5291
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTF5D5MNOcjs.Button, { onClick: save, disabled: !canSave, children: "Save" })
5146
5292
  ] })
5147
5293
  ] })
5148
5294
  ] }) });
@@ -5150,10 +5296,10 @@ function ProxyCredentialsForm({ description, saved }) {
5150
5296
 
5151
5297
  // src/components/chat/index.ts
5152
5298
  var LoadedEmbeddableChat = _react.lazy.call(void 0,
5153
- () => Promise.resolve().then(() => _interopRequireWildcard(require("./embeddable-chat-YFUCVDMV.cjs"))).then((module) => ({ default: module.EmbeddableChat }))
5299
+ () => Promise.resolve().then(() => _interopRequireWildcard(require("./embeddable-chat-YL6ZSTDJ.cjs"))).then((module) => ({ default: module.EmbeddableChat }))
5154
5300
  );
5155
5301
  var EmbeddableChat = _react.forwardRef.call(void 0, (props, ref) => {
5156
- _react.useEffect.call(void 0, () => _chunk74ALTXXCcjs.holdAskAiOpens.call(void 0, ), []);
5302
+ _react.useEffect.call(void 0, () => _chunkYL6ZB2SRcjs.holdAskAiOpens.call(void 0, ), []);
5157
5303
  return _react.createElement.call(void 0, _react.Suspense, { fallback: null }, _react.createElement.call(void 0, LoadedEmbeddableChat, { ...props, ref }));
5158
5304
  });
5159
5305
  EmbeddableChat.displayName = "EmbeddableChat";
@@ -5367,4 +5513,14 @@ EmbeddableChat.displayName = "EmbeddableChat";
5367
5513
 
5368
5514
 
5369
5515
 
5370
- exports.InfoHint = InfoHint; exports.Field = Field; exports.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS = HUBSPOT_DO_NOT_COLLECT_FORM_PROPS; exports.FullscreenSwitchController = FullscreenSwitchController; exports.SOCIAL_PLATFORM_ALIASES = SOCIAL_PLATFORM_ALIASES; exports.normalizeSocialPlatform = normalizeSocialPlatform; exports.hostMatches = hostMatches; exports.SOCIAL_PLATFORM_ALT_HOSTS = SOCIAL_PLATFORM_ALT_HOSTS; exports.socialPlatformHosts = socialPlatformHosts; exports.classifySocialHost = classifySocialHost; exports.pickSocialLink = pickSocialLink; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.ChatTurn = ChatTurn; exports.AI_PROVIDERS = AI_PROVIDERS; exports.aiProvider = aiProvider; exports.TOKEN_RATE_EMPTY = TOKEN_RATE_EMPTY; exports.formatTokenRate = formatTokenRate; exports.tokenCost = tokenCost; exports.formatTokenAmount = formatTokenAmount; exports.tokensForBalance = tokensForBalance; exports.tokenRateProviderLabel = tokenRateProviderLabel; exports.groupTokenRatesByProvider = groupTokenRatesByProvider; exports.TRIAL_TERMS = TRIAL_TERMS; exports.trialLengthLabel = trialLengthLabel; exports.trialLabels = trialLabels; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.SEO_DESCRIPTION_MAX_LENGTH = SEO_DESCRIPTION_MAX_LENGTH; exports.BRAND_MARK_SVGS = BRAND_MARK_SVGS; exports.brandMarkDataUri = brandMarkDataUri; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.devSectionAnchorId = devSectionAnchorId; exports.TICKET_OPEN_PARAM = TICKET_OPEN_PARAM; exports.buildTicketOpenHref = buildTicketOpenHref; exports.ToolTypeValues = ToolTypeValues; exports.toolLabels = toolLabels; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.BITE_ID_RE = BITE_ID_RE; exports.generateBiteId = generateBiteId; exports.ensureBiteIds = ensureBiteIds; exports.matchBiteElement = matchBiteElement; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.DOWNLOAD_PAGE_PATH = DOWNLOAD_PAGE_PATH; exports.resolveMobileStoreUrl = resolveMobileStoreUrl; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.getCountryByName = getCountryByName; exports.getFlagFromCountryName = getFlagFromCountryName; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.COMPLIANCE_STANDARDS = COMPLIANCE_STANDARDS; exports.complianceStandardForName = complianceStandardForName; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.isDismissedCookieValue = isDismissedCookieValue; exports.readDismissCookie = readDismissCookie; exports.writeDismissCookie = writeDismissCookie; exports.clearDismissCookie = clearDismissCookie; exports.announcementDismissCookieName = announcementDismissCookieName; exports.dismissAnnouncement = dismissAnnouncement; exports.isAnnouncementDismissed = isAnnouncementDismissed; exports.clearAnnouncementDismissals = clearAnnouncementDismissals; exports.clearLegacyAnnouncementCache = clearLegacyAnnouncementCache; exports.isAnnouncementOnSurface = isAnnouncementOnSurface; exports.WALKTHROUGH_VIDEO_DISMISS_KEY = WALKTHROUGH_VIDEO_DISMISS_KEY; exports.walkthroughDismissCookieName = walkthroughDismissCookieName; exports.isWalkthroughDismissed = isWalkthroughDismissed; exports.dismissWalkthrough = dismissWalkthrough; exports.clearWalkthroughDismissal = clearWalkthroughDismissal; exports.WALKTHROUGH_OPEN_QUERY_PARAM = WALKTHROUGH_OPEN_QUERY_PARAM; exports.withWalkthroughOpenParam = withWalkthroughOpenParam; exports.createSseSubscription = createSseSubscription; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS; exports.DELIVERY_TASK_TYPE_OPTIONS = DELIVERY_TASK_TYPE_OPTIONS; exports.TICKET_STATUS_OPTIONS = TICKET_STATUS_OPTIONS; exports.OPENFRAME_DEV_SECTIONS = OPENFRAME_DEV_SECTIONS; exports.openInNewTab = openInNewTab; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.LEGAL_DOCUMENT_TYPES = LEGAL_DOCUMENT_TYPES; exports.isLegalDocumentType = isLegalDocumentType; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.extractSections = extractSections; exports.SCHEDULING_SLUG_SHAPE = SCHEDULING_SLUG_SHAPE; exports.MAX_MONTH_OFFSET = MAX_MONTH_OFFSET; exports.normalizeSchedulingSlug = normalizeSchedulingSlug; exports.isValidSchedulingSlug = isValidSchedulingSlug; exports.parseSchedulingLinkName = parseSchedulingLinkName; exports.isListedSchedulingName = isListedSchedulingName; exports.schedulingAudienceKey = schedulingAudienceKey; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.FIRST_TOUCH_ATTRIBUTION_KEY = FIRST_TOUCH_ATTRIBUTION_KEY; exports.sanitizeLandingUrl = sanitizeLandingUrl; exports.parseAttributionFromUrl = parseAttributionFromUrl; exports.captureFirstTouchAttribution = captureFirstTouchAttribution; exports.getFirstTouchAttribution = getFirstTouchAttribution; exports.withFirstTouchAttribution = withFirstTouchAttribution; exports.clearFirstTouchAttribution = clearFirstTouchAttribution; exports.ODS_SPACING_TOKENS = ODS_SPACING_TOKENS; exports.ODS_SPACING_TOKEN_PATTERN = ODS_SPACING_TOKEN_PATTERN; exports.ODS_SPACING_PROPS = ODS_SPACING_PROPS; exports.TAILWIND_STEP_TO_ODS_TOKEN = TAILWIND_STEP_TO_ODS_TOKEN; exports.CSV_CONTENT_TYPE = CSV_CONTENT_TYPE; exports.csvEscape = csvEscape; exports.toCsv = toCsv; exports.copyrightLine = copyrightLine; exports.isValidPathPattern = isValidPathPattern; exports.matchesPathPattern = matchesPathPattern; exports.pathMatchesAny = pathMatchesAny; exports.formatDemoClock = formatDemoClock; exports.demoClockTimes = demoClockTimes; exports.openAskAi = openAskAi; exports.MingoAiButton = MingoAiButton; exports.AskPrompts = AskPrompts; exports.AskCard = AskCard; exports.ASK_PROMPTS_DEFAULT_COUNT = ASK_PROMPTS_DEFAULT_COUNT; exports.buildAskPromptsUrl = buildAskPromptsUrl; exports.assistantAvailable = assistantAvailable; exports.useAskPrompts = useAskPrompts; exports.useAssistantOpen = useAssistantOpen; exports.useAskSurface = useAskSurface; exports.AssistantAskPrompts = AssistantAskPrompts; exports.QuickActionMarquee = QuickActionMarquee; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.ChatTopNavigation = ChatTopNavigation; exports.OnboardingCarousel = OnboardingCarousel; exports.SlackMessageCard = SlackMessageCard; exports.SlackMessageCardSkeleton = SlackMessageCardSkeleton; exports.HubspotTicketCard = HubspotTicketCard; exports.HubspotTicketCardSkeleton = HubspotTicketCardSkeleton; exports.DataRoomDocCard = DataRoomDocCard; exports.DataRoomDocCardSkeleton = DataRoomDocCardSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.useScriptedStream = useScriptedStream; exports.RESYNC_AFTER_HIDDEN_MS = RESYNC_AFTER_HIDDEN_MS; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useSSE = useSSE; exports.useChat = useChat; exports.SYNTHETIC_REALTIME_ID_PREFIXES = SYNTHETIC_REALTIME_ID_PREFIXES; exports.flattenMessagePagesChronological = flattenMessagePagesChronological; exports.maxPersistedStreamSeq = maxPersistedStreamSeq; exports.mergeHistoryWithRealtime = mergeHistoryWithRealtime; exports.computeHistoryPrepend = computeHistoryPrepend; exports.CHIP_ACTION_BUTTON_CLASS = CHIP_ACTION_BUTTON_CLASS; exports.normalizeHistoricalMessageData = normalizeHistoricalMessageData; exports.isHistoricalUserTurn = isHistoricalUserTurn; exports.buildStreamFrames = buildStreamFrames; exports.ProxyCredentialsPanel = ProxyCredentialsPanel; exports.EmbeddableChat = EmbeddableChat;
5516
+
5517
+
5518
+
5519
+
5520
+
5521
+
5522
+
5523
+
5524
+
5525
+
5526
+ exports.InfoHint = InfoHint; exports.Field = Field; exports.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS = HUBSPOT_DO_NOT_COLLECT_FORM_PROPS; exports.FullscreenSwitchController = FullscreenSwitchController; exports.SOCIAL_PLATFORM_ALIASES = SOCIAL_PLATFORM_ALIASES; exports.normalizeSocialPlatform = normalizeSocialPlatform; exports.hostMatches = hostMatches; exports.SOCIAL_PLATFORM_ALT_HOSTS = SOCIAL_PLATFORM_ALT_HOSTS; exports.socialPlatformHosts = socialPlatformHosts; exports.classifySocialHost = classifySocialHost; exports.pickSocialLink = pickSocialLink; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.TURN_ROW_CLASS = TURN_ROW_CLASS; exports.TURN_BODY_CLASS = TURN_BODY_CLASS; exports.ChatTurn = ChatTurn; exports.ChatTurnNameSkeleton = ChatTurnNameSkeleton; exports.ChatTurnSkeleton = ChatTurnSkeleton; exports.AI_PROVIDERS = AI_PROVIDERS; exports.aiProvider = aiProvider; exports.TOKEN_RATE_EMPTY = TOKEN_RATE_EMPTY; exports.formatTokenRate = formatTokenRate; exports.tokenCost = tokenCost; exports.formatTokenAmount = formatTokenAmount; exports.tokensForBalance = tokensForBalance; exports.tokenRateProviderLabel = tokenRateProviderLabel; exports.groupTokenRatesByProvider = groupTokenRatesByProvider; exports.TRIAL_TERMS = TRIAL_TERMS; exports.trialLengthLabel = trialLengthLabel; exports.trialLabels = trialLabels; exports.isOwnClick = isOwnClick; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.SEO_DESCRIPTION_MAX_LENGTH = SEO_DESCRIPTION_MAX_LENGTH; exports.BRAND_MARK_SVGS = BRAND_MARK_SVGS; exports.brandMarkDataUri = brandMarkDataUri; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.devSectionAnchorId = devSectionAnchorId; exports.TICKET_OPEN_PARAM = TICKET_OPEN_PARAM; exports.buildTicketOpenHref = buildTicketOpenHref; exports.ToolTypeValues = ToolTypeValues; exports.toolLabels = toolLabels; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.BITE_ID_RE = BITE_ID_RE; exports.generateBiteId = generateBiteId; exports.ensureBiteIds = ensureBiteIds; exports.matchBiteElement = matchBiteElement; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.DOWNLOAD_PAGE_PATH = DOWNLOAD_PAGE_PATH; exports.resolveMobileStoreUrl = resolveMobileStoreUrl; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.getCountryByName = getCountryByName; exports.getFlagFromCountryName = getFlagFromCountryName; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.COMPLIANCE_STANDARDS = COMPLIANCE_STANDARDS; exports.complianceStandardForName = complianceStandardForName; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.isDismissedCookieValue = isDismissedCookieValue; exports.readDismissCookie = readDismissCookie; exports.writeDismissCookie = writeDismissCookie; exports.clearDismissCookie = clearDismissCookie; exports.announcementDismissCookieName = announcementDismissCookieName; exports.dismissAnnouncement = dismissAnnouncement; exports.isAnnouncementDismissed = isAnnouncementDismissed; exports.clearAnnouncementDismissals = clearAnnouncementDismissals; exports.clearLegacyAnnouncementCache = clearLegacyAnnouncementCache; exports.isAnnouncementOnSurface = isAnnouncementOnSurface; exports.WALKTHROUGH_VIDEO_DISMISS_KEY = WALKTHROUGH_VIDEO_DISMISS_KEY; exports.walkthroughDismissCookieName = walkthroughDismissCookieName; exports.isWalkthroughDismissed = isWalkthroughDismissed; exports.dismissWalkthrough = dismissWalkthrough; exports.clearWalkthroughDismissal = clearWalkthroughDismissal; exports.WALKTHROUGH_OPEN_QUERY_PARAM = WALKTHROUGH_OPEN_QUERY_PARAM; exports.withWalkthroughOpenParam = withWalkthroughOpenParam; exports.createSseSubscription = createSseSubscription; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS; exports.DELIVERY_TASK_TYPE_OPTIONS = DELIVERY_TASK_TYPE_OPTIONS; exports.TICKET_STATUS_OPTIONS = TICKET_STATUS_OPTIONS; exports.OPENFRAME_DEV_SECTIONS = OPENFRAME_DEV_SECTIONS; exports.openInNewTab = openInNewTab; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.LEGAL_DOCUMENT_TYPES = LEGAL_DOCUMENT_TYPES; exports.isLegalDocumentType = isLegalDocumentType; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.extractSections = extractSections; exports.SCHEDULING_SLUG_SHAPE = SCHEDULING_SLUG_SHAPE; exports.MAX_MONTH_OFFSET = MAX_MONTH_OFFSET; exports.normalizeSchedulingSlug = normalizeSchedulingSlug; exports.isValidSchedulingSlug = isValidSchedulingSlug; exports.parseSchedulingLinkName = parseSchedulingLinkName; exports.isListedSchedulingName = isListedSchedulingName; exports.schedulingAudienceKey = schedulingAudienceKey; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.FIRST_TOUCH_ATTRIBUTION_KEY = FIRST_TOUCH_ATTRIBUTION_KEY; exports.sanitizeLandingUrl = sanitizeLandingUrl; exports.parseAttributionFromUrl = parseAttributionFromUrl; exports.captureFirstTouchAttribution = captureFirstTouchAttribution; exports.getFirstTouchAttribution = getFirstTouchAttribution; exports.withFirstTouchAttribution = withFirstTouchAttribution; exports.clearFirstTouchAttribution = clearFirstTouchAttribution; exports.ODS_SPACING_TOKENS = ODS_SPACING_TOKENS; exports.ODS_SPACING_TOKEN_PATTERN = ODS_SPACING_TOKEN_PATTERN; exports.ODS_SPACING_PROPS = ODS_SPACING_PROPS; exports.TAILWIND_STEP_TO_ODS_TOKEN = TAILWIND_STEP_TO_ODS_TOKEN; exports.CSV_CONTENT_TYPE = CSV_CONTENT_TYPE; exports.csvEscape = csvEscape; exports.toCsv = toCsv; exports.copyrightLine = copyrightLine; exports.isValidPathPattern = isValidPathPattern; exports.matchesPathPattern = matchesPathPattern; exports.pathMatchesAny = pathMatchesAny; exports.formatDemoClock = formatDemoClock; exports.demoClockTimes = demoClockTimes; exports.openAskAi = openAskAi; exports.MingoAiButton = MingoAiButton; exports.AskPrompts = AskPrompts; exports.AskCard = AskCard; exports.ASK_PROMPTS_DEFAULT_COUNT = ASK_PROMPTS_DEFAULT_COUNT; exports.buildAskPromptsUrl = buildAskPromptsUrl; exports.assistantAvailable = assistantAvailable; exports.useAskPrompts = useAskPrompts; exports.useAssistantOpen = useAssistantOpen; exports.useAskSurface = useAskSurface; exports.AssistantAskPrompts = AssistantAskPrompts; exports.QuickActionMarquee = QuickActionMarquee; exports.ChatTicketItemSkeleton = ChatTicketItemSkeleton; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.ChatTopNavigation = ChatTopNavigation; exports.OnboardingCarousel = OnboardingCarousel; exports.ADMIN_CONTENT_CARD_GRID_CLASS = ADMIN_CONTENT_CARD_GRID_CLASS; exports.AdminContentCardGridSkeleton = AdminContentCardGridSkeleton; exports.AdminContentCardGrid = AdminContentCardGrid; exports.SlackMessageCard = SlackMessageCard; exports.SlackMessageCardSkeleton = SlackMessageCardSkeleton; exports.HubspotTicketCard = HubspotTicketCard; exports.HubspotTicketCardSkeleton = HubspotTicketCardSkeleton; exports.DataRoomDocCard = DataRoomDocCard; exports.DataRoomDocCardSkeleton = DataRoomDocCardSkeleton; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.useScriptedStream = useScriptedStream; exports.RESYNC_AFTER_HIDDEN_MS = RESYNC_AFTER_HIDDEN_MS; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useSSE = useSSE; exports.useChat = useChat; exports.SYNTHETIC_REALTIME_ID_PREFIXES = SYNTHETIC_REALTIME_ID_PREFIXES; exports.flattenMessagePagesChronological = flattenMessagePagesChronological; exports.maxPersistedStreamSeq = maxPersistedStreamSeq; exports.mergeHistoryWithRealtime = mergeHistoryWithRealtime; exports.computeHistoryPrepend = computeHistoryPrepend; exports.CHIP_ACTION_BUTTON_CLASS = CHIP_ACTION_BUTTON_CLASS; exports.normalizeHistoricalMessageData = normalizeHistoricalMessageData; exports.isHistoricalUserTurn = isHistoricalUserTurn; exports.buildStreamFrames = buildStreamFrames; exports.ProxyCredentialsPanel = ProxyCredentialsPanel; exports.EmbeddableChat = EmbeddableChat;