@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
@@ -10,14 +10,14 @@ var _chunkA6P6DHEZcjs = require('./chunk-A6P6DHEZ.cjs');
10
10
 
11
11
 
12
12
 
13
- var _chunkGZKWF6NHcjs = require('./chunk-GZKWF6NH.cjs');
13
+ var _chunkXZ6DKGT4cjs = require('./chunk-XZ6DKGT4.cjs');
14
14
 
15
15
 
16
16
 
17
17
 
18
18
 
19
19
 
20
- var _chunkEFTUFJS2cjs = require('./chunk-EFTUFJS2.cjs');
20
+ var _chunkLELS4XMXcjs = require('./chunk-LELS4XMX.cjs');
21
21
 
22
22
 
23
23
  var _chunk2NETL2MScjs = require('./chunk-2NETL2MS.cjs');
@@ -102,242 +102,59 @@ var _chunkSKI6NKOEcjs = require('./chunk-SKI6NKOE.cjs');
102
102
 
103
103
 
104
104
 
105
- var _chunkEQZXJUYVcjs = require('./chunk-EQZXJUYV.cjs');
105
+ var _chunkJTSUAHDLcjs = require('./chunk-JTSUAHDL.cjs');
106
106
 
107
107
 
108
108
  var _chunkRUHKTWGBcjs = require('./chunk-RUHKTWGB.cjs');
109
109
 
110
110
 
111
111
 
112
- var _chunkR3TWQ3ZJcjs = require('./chunk-R3TWQ3ZJ.cjs');
112
+ var _chunk5P4TDV7Vcjs = require('./chunk-5P4TDV7V.cjs');
113
113
 
114
114
 
115
- var _chunkHOTM4UM6cjs = require('./chunk-HOTM4UM6.cjs');
115
+ var _chunkE76ONBKFcjs = require('./chunk-E76ONBKF.cjs');
116
116
 
117
117
 
118
118
 
119
- var _chunkHTRILBJDcjs = require('./chunk-HTRILBJD.cjs');
119
+ var _chunkYXDHVHB2cjs = require('./chunk-YXDHVHB2.cjs');
120
120
 
121
121
 
122
122
 
123
123
 
124
124
 
125
- var _chunkAKK3EO37cjs = require('./chunk-AKK3EO37.cjs');
126
125
 
126
+ var _chunkXIFEZ2JTcjs = require('./chunk-XIFEZ2JT.cjs');
127
127
 
128
- var _chunkNO5UJLLQcjs = require('./chunk-NO5UJLLQ.cjs');
129
128
 
129
+ var _chunkWEANWBJHcjs = require('./chunk-WEANWBJH.cjs');
130
130
 
131
131
 
132
132
 
133
133
 
134
- var _chunk2QMBXGMQcjs = require('./chunk-2QMBXGMQ.cjs');
135
134
 
136
135
 
137
- var _chunkV45KLJQPcjs = require('./chunk-V45KLJQP.cjs');
138
-
136
+ var _chunkXFRBEXQNcjs = require('./chunk-XFRBEXQN.cjs');
139
137
 
140
- var _chunkOF336YWGcjs = require('./chunk-OF336YWG.cjs');
141
138
 
142
139
 
143
- var _chunkRB6BSE3Ocjs = require('./chunk-RB6BSE3O.cjs');
140
+ var _chunkTF5D5MNOcjs = require('./chunk-TF5D5MNO.cjs');
144
141
 
145
142
 
146
- var _chunkH3RYUTNDcjs = require('./chunk-H3RYUTND.cjs');
143
+ var _chunkV45KLJQPcjs = require('./chunk-V45KLJQP.cjs');
147
144
 
148
145
 
149
- var _chunk3ATAYP36cjs = require('./chunk-3ATAYP36.cjs');
146
+ var _chunk65VVJSQZcjs = require('./chunk-65VVJSQZ.cjs');
150
147
 
151
- // src/components/ui/button/split-button.tsx
152
- var _classvarianceauthority = require('class-variance-authority');
148
+ // src/components/ui/hidden-tags-popup.tsx
153
149
  var _react = require('react'); var _react2 = _interopRequireDefault(_react);
154
150
  var _jsxruntime = require('react/jsx-runtime');
155
- var splitHalfBase = [
156
- "relative inline-flex items-center justify-center gap-[var(--spacing-system-xsf)]",
157
- "whitespace-nowrap transition-colors duration-200",
158
- "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ods-focus focus-visible:z-10",
159
- "disabled:pointer-events-none",
160
- "[&_svg]:pointer-events-none [&_svg]:shrink-0"
161
- ];
162
- var splitHalfVariants = _classvarianceauthority.cva.call(void 0, splitHalfBase, {
163
- variants: {
164
- variant: {
165
- accent: _chunk2QMBXGMQcjs.buttonSurfaceClasses.accent,
166
- outline: _chunk2QMBXGMQcjs.buttonSurfaceClasses.outline,
167
- // Outline border lives in compoundVariants so we can omit the seam edge.
168
- transparent: _chunk2QMBXGMQcjs.buttonSurfaceClasses.transparent,
169
- destructive: _chunk2QMBXGMQcjs.buttonSurfaceClasses.destructive,
170
- warning: _chunk2QMBXGMQcjs.buttonSurfaceClasses.warning
171
- },
172
- size: {
173
- default: `h-10 px-[var(--spacing-system-m)] py-[var(--spacing-system-sf)] text-h3 md:h-12 ${_chunk2QMBXGMQcjs.splitGlyphSizeClasses}`,
174
- small: "h-6 px-[var(--spacing-system-xs)] text-h5 md:h-8 [&_svg]:h-3 [&_svg]:w-3 md:[&_svg]:h-4 md:[&_svg]:w-4"
175
- },
176
- side: { main: "", icon: "" },
177
- soloOnMobile: { true: "", false: "" }
178
- },
179
- compoundVariants: [
180
- // Rounded corners + per-variant seam. The icon-side's left border is the divider.
181
- { variant: "accent", side: "main", class: "rounded-l-md" },
182
- {
183
- variant: "accent",
184
- side: "icon",
185
- class: _chunk3ATAYP36cjs.cn.call(void 0,
186
- "rounded-r-md border-l",
187
- _chunk2QMBXGMQcjs.splitDividerColorClasses.accent,
188
- "disabled:border-ods-disabled aria-disabled:border-ods-disabled"
189
- )
190
- },
191
- { variant: "destructive", side: "main", class: "rounded-l-md" },
192
- {
193
- variant: "destructive",
194
- side: "icon",
195
- class: _chunk3ATAYP36cjs.cn.call(void 0,
196
- "rounded-r-md border-l",
197
- _chunk2QMBXGMQcjs.splitDividerColorClasses.destructive,
198
- "disabled:border-ods-disabled aria-disabled:border-ods-disabled"
199
- )
200
- },
201
- { variant: "warning", side: "main", class: "rounded-l-md" },
202
- {
203
- variant: "warning",
204
- side: "icon",
205
- class: _chunk3ATAYP36cjs.cn.call(void 0,
206
- "rounded-r-md border-l",
207
- _chunk2QMBXGMQcjs.splitDividerColorClasses.warning,
208
- "disabled:border-ods-disabled aria-disabled:border-ods-disabled"
209
- )
210
- },
211
- { variant: "outline", side: "main", class: "rounded-l-md border-y border-l border-ods-border" },
212
- { variant: "outline", side: "icon", class: "rounded-r-md border border-ods-border" },
213
- { variant: "transparent", side: "main", class: "rounded-md" },
214
- { variant: "transparent", side: "icon", class: _chunk3ATAYP36cjs.cn.call(void 0, "rounded-md", _chunk2QMBXGMQcjs.splitDividerColorClasses.transparent) },
215
- // Icon half: per Figma, narrower than main height (default: 40×48; small: 32×32).
216
- { side: "icon", size: "default", class: "w-10 px-0" },
217
- { side: "icon", size: "small", class: "w-6 px-0 md:w-8" },
218
- { side: "icon", soloOnMobile: true, class: "max-md:hidden" },
219
- { side: "main", soloOnMobile: true, class: "max-md:rounded-r-md" },
220
- { variant: "outline", side: "main", soloOnMobile: true, class: "max-md:border-r" }
221
- ],
222
- defaultVariants: { variant: "accent", size: "default", side: "main", soloOnMobile: false }
223
- });
224
- function Half({
225
- variant,
226
- size,
227
- side,
228
- soloOnMobile,
229
- href,
230
- openInNewTab,
231
- prefetch,
232
- onClick,
233
- disabled,
234
- grow,
235
- type = "button",
236
- ariaLabel,
237
- children
238
- }) {
239
- const classes = _chunk3ATAYP36cjs.cn.call(void 0, splitHalfVariants({ variant, size, side, soloOnMobile }), grow && "flex-1");
240
- if (href) {
241
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
242
- _chunkV45KLJQPcjs.next_link_default,
243
- {
244
- href,
245
- prefetch,
246
- target: openInNewTab ? "_blank" : void 0,
247
- rel: openInNewTab ? "noopener noreferrer" : void 0,
248
- "aria-disabled": disabled || void 0,
249
- tabIndex: disabled ? -1 : void 0,
250
- "aria-label": ariaLabel,
251
- className: _chunk3ATAYP36cjs.cn.call(void 0, classes, disabled && "pointer-events-none"),
252
- onClick,
253
- children
254
- }
255
- );
256
- }
257
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type, className: classes, disabled, "aria-label": ariaLabel, onClick, children });
258
- }
259
- var SplitButton = _react2.default.forwardRef(function SplitButtonImpl({
260
- variant = "accent",
261
- size = "default",
262
- fullWidth = false,
263
- className,
264
- children,
265
- onClick,
266
- href,
267
- openInNewTab,
268
- prefetch,
269
- leftIcon,
270
- rightIcon,
271
- disabled,
272
- mainDisabled,
273
- type,
274
- iconAction,
275
- "aria-label": ariaLabel,
276
- groupAriaLabel
277
- }, ref) {
278
- const soloOnMobile = !!iconAction.openInNewTab;
279
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
280
- "div",
281
- {
282
- ref,
283
- role: "group",
284
- "aria-label": groupAriaLabel,
285
- className: _chunk3ATAYP36cjs.cn.call(void 0, "inline-flex items-stretch", fullWidth && "w-full", className),
286
- children: [
287
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
288
- Half,
289
- {
290
- variant,
291
- size,
292
- side: "main",
293
- soloOnMobile,
294
- href,
295
- openInNewTab,
296
- prefetch,
297
- onClick,
298
- disabled: disabled || mainDisabled,
299
- grow: fullWidth,
300
- type,
301
- ariaLabel,
302
- children: [
303
- leftIcon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex items-center", children: leftIcon }),
304
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children }),
305
- rightIcon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex items-center", children: rightIcon })
306
- ]
307
- }
308
- ),
309
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
310
- Half,
311
- {
312
- variant,
313
- size,
314
- side: "icon",
315
- soloOnMobile,
316
- href: iconAction.href,
317
- openInNewTab: iconAction.openInNewTab,
318
- prefetch: iconAction.prefetch,
319
- onClick: iconAction.onClick,
320
- disabled: disabled || iconAction.disabled,
321
- ariaLabel: iconAction["aria-label"],
322
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex items-center", children: iconAction.icon })
323
- }
324
- )
325
- ]
326
- }
327
- );
328
- });
329
- SplitButton.displayName = "SplitButton";
330
-
331
- // src/components/ui/hidden-tags-popup.tsx
332
-
333
-
334
151
  var HiddenTagsPopup = _react.forwardRef.call(void 0, function HiddenTagsPopupImpl({ items, onRemove, disabled, className, style }, ref) {
335
152
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
336
153
  "div",
337
154
  {
338
155
  ref,
339
156
  style,
340
- className: _chunk3ATAYP36cjs.cn.call(void 0,
157
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
341
158
  // Base positioning is neutral (left-anchored); consumers override via
342
159
  // `style.left` (search-input, tag-search-input) or `className` (autocomplete).
343
160
  "absolute left-0 top-full z-50 mt-1 min-w-[200px]",
@@ -348,7 +165,7 @@ var HiddenTagsPopup = _react.forwardRef.call(void 0, function HiddenTagsPopupImp
348
165
  children: items.map((item) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
349
166
  "div",
350
167
  {
351
- className: _chunk3ATAYP36cjs.cn.call(void 0,
168
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
352
169
  "flex h-11 items-center justify-between gap-3 px-3 md:h-12",
353
170
  "border-b border-ods-border last:border-b-0"
354
171
  ),
@@ -417,22 +234,22 @@ function TruncateText({
417
234
  as = "div"
418
235
  }) {
419
236
  const isMultiLine = lines > 1;
420
- const { ref, isTruncated } = _chunkR3TWQ3ZJcjs.useIsTruncated.call(void 0, children, { multiline: isMultiLine });
237
+ const { ref, isTruncated } = _chunk5P4TDV7Vcjs.useIsTruncated.call(void 0, children, { multiline: isMultiLine });
421
238
  const clampClass = isMultiLine ? LINE_CLAMP_CLASS[lines] : "truncate block";
422
239
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
423
- _chunkEQZXJUYVcjs.FloatingTooltip,
240
+ _chunkJTSUAHDLcjs.FloatingTooltip,
424
241
  {
425
242
  content: _nullishCoalesce(tooltip, () => ( children)),
426
243
  side,
427
244
  disabled: !isTruncated,
428
245
  className: "max-w-xs whitespace-pre-line [overflow-wrap:anywhere]",
429
246
  as,
430
- triggerClassName: _chunk3ATAYP36cjs.cn.call(void 0, "min-w-0 max-w-full", as === "span" && "inline-block align-bottom", triggerClassName),
247
+ triggerClassName: _chunk65VVJSQZcjs.cn.call(void 0, "min-w-0 max-w-full", as === "span" && "inline-block align-bottom", triggerClassName),
431
248
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
432
249
  "span",
433
250
  {
434
251
  ref,
435
- className: _chunk3ATAYP36cjs.cn.call(void 0,
252
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
436
253
  VARIANT_CLASS[variant],
437
254
  TONE_CLASS[tone],
438
255
  mono && "[font-family:var(--font-family-heading)]",
@@ -459,14 +276,22 @@ var _lucidereact = require('lucide-react');
459
276
 
460
277
 
461
278
 
462
- var innerInputStyles = _chunk3ATAYP36cjs.cn.call(void 0,
279
+ var innerInputStyles = _chunk65VVJSQZcjs.cn.call(void 0,
463
280
  "min-w-[60px] flex-1 border-none bg-transparent outline-none",
464
281
  "text-h4",
465
282
  "text-ods-text-primary placeholder:text-ods-text-secondary",
466
283
  // Disabled - match Input exactly (value greys out, placeholder dims further)
467
284
  "disabled:cursor-not-allowed disabled:text-ods-text-disabled disabled:placeholder:text-ods-border"
468
285
  );
286
+ var AUTOCOMPLETE_ANCHOR_HEIGHT_CLASS = "min-h-11 md:min-h-12";
287
+ var AUTOCOMPLETE_OPTION_ROW_CLASS = "flex min-h-11 items-center border-b border-ods-border px-[var(--spacing-system-mf)] py-[var(--spacing-system-xsf)] last:border-b-0 md:min-h-12 text-h4";
288
+ var AUTOCOMPLETE_OPTIONS_FOLD = 5;
289
+ var AUTOCOMPLETE_ANCHOR_SHAPE_CLASS = "rounded-[6px]";
290
+ function AutocompleteSkeleton({ label, labelVariant, className }) {
291
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXDHVHB2cjs.FieldWrapper, { label, labelVariant, className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: _chunk65VVJSQZcjs.cn.call(void 0, "w-full", AUTOCOMPLETE_ANCHOR_SHAPE_CLASS, AUTOCOMPLETE_ANCHOR_HEIGHT_CLASS) }) });
292
+ }
469
293
  function AutocompleteInner(props, ref) {
294
+ const inScope = _chunkXFRBEXQNcjs.useLoadingScope.call(void 0, );
470
295
  const {
471
296
  options,
472
297
  disabled = false,
@@ -485,7 +310,8 @@ function AutocompleteInner(props, ref) {
485
310
  inputValue: inputValueProp,
486
311
  onInputChange,
487
312
  loading = false,
488
- loadingText = "Loading...",
313
+ loadingText = "Loading options",
314
+ fieldLoading = false,
489
315
  creatable = false,
490
316
  onCreateOption,
491
317
  maxCreateLength,
@@ -513,7 +339,7 @@ function AutocompleteInner(props, ref) {
513
339
  if (!isInputControlled) {
514
340
  setInternalInputValue(value);
515
341
  }
516
- _optionalChain([onInputChange, 'optionalCall', _ => _(value, reason)]);
342
+ _optionalChain([onInputChange, 'optionalCall', _2 => _2(value, reason)]);
517
343
  };
518
344
  const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
519
345
  const [highlightedIndex, setHighlightedIndex] = _react.useState.call(void 0, -1);
@@ -526,7 +352,7 @@ function AutocompleteInner(props, ref) {
526
352
  return valueArray.map((v) => _nullishCoalesce(options.find((opt) => opt.value === v), () => ( { label: String(v), value: v })));
527
353
  }, [valueArray, options]);
528
354
  const selectedOption = !multiple && selectedOptions.length > 0 ? selectedOptions[0] : null;
529
- const resolvedStartAdornment = _nullishCoalesce(_nullishCoalesce(startAdornment, () => ( _optionalChain([selectedOption, 'optionalAccess', _2 => _2.icon]))), () => ( null));
355
+ const resolvedStartAdornment = _nullishCoalesce(_nullishCoalesce(startAdornment, () => ( _optionalChain([selectedOption, 'optionalAccess', _3 => _3.icon]))), () => ( null));
530
356
  const inputPlaceholder = multiple ? valueArray.length === 0 ? placeholder : "Add More..." : placeholder;
531
357
  const {
532
358
  visibleCount: autoVisibleCount,
@@ -550,8 +376,8 @@ function AutocompleteInner(props, ref) {
550
376
  if (!showHiddenTags) return void 0;
551
377
  const handleClick = (e) => {
552
378
  const target = e.target;
553
- const inButton = _optionalChain([hiddenTagsRef, 'access', _3 => _3.current, 'optionalAccess', _4 => _4.contains, 'call', _5 => _5(target)]);
554
- const inPopup = _optionalChain([hiddenTagsPopupRef, 'access', _6 => _6.current, 'optionalAccess', _7 => _7.contains, 'call', _8 => _8(target)]);
379
+ const inButton = _optionalChain([hiddenTagsRef, 'access', _4 => _4.current, 'optionalAccess', _5 => _5.contains, 'call', _6 => _6(target)]);
380
+ const inPopup = _optionalChain([hiddenTagsPopupRef, 'access', _7 => _7.current, 'optionalAccess', _8 => _8.contains, 'call', _9 => _9(target)]);
555
381
  if (!inButton && !inPopup) {
556
382
  setShowHiddenTags(false);
557
383
  }
@@ -594,7 +420,7 @@ function AutocompleteInner(props, ref) {
594
420
  }
595
421
  updateInputValue("", "reset");
596
422
  setIsOpen(false);
597
- _optionalChain([onCreateOption, 'optionalCall', _9 => _9(trimmed)]);
423
+ _optionalChain([onCreateOption, 'optionalCall', _10 => _10(trimmed)]);
598
424
  };
599
425
  const [highlightedFor, setHighlightedFor] = _react.useState.call(void 0, filteredOptions.length);
600
426
  if (highlightedFor !== filteredOptions.length) {
@@ -620,7 +446,7 @@ function AutocompleteInner(props, ref) {
620
446
  props.onChange([...valueArray, option.value]);
621
447
  }
622
448
  updateInputValue("", "reset");
623
- _optionalChain([inputRef, 'access', _10 => _10.current, 'optionalAccess', _11 => _11.focus, 'call', _12 => _12()]);
449
+ _optionalChain([inputRef, 'access', _11 => _11.current, 'optionalAccess', _12 => _12.focus, 'call', _13 => _13()]);
624
450
  } else {
625
451
  props.onChange(option.value);
626
452
  updateInputValue(clearOnOpen ? "" : option.label, "reset");
@@ -638,7 +464,7 @@ function AutocompleteInner(props, ref) {
638
464
  if (!isInputControlled) {
639
465
  setInternalInputValue("");
640
466
  }
641
- _optionalChain([onInputChange, 'optionalCall', _13 => _13("", "clear")]);
467
+ _optionalChain([onInputChange, 'optionalCall', _14 => _14("", "clear")]);
642
468
  setIsOpen(false);
643
469
  };
644
470
  const handleKeyDown = (e) => {
@@ -695,9 +521,11 @@ function AutocompleteInner(props, ref) {
695
521
  "div",
696
522
  {
697
523
  "data-invalid": isInvalid || void 0,
698
- className: _chunk3ATAYP36cjs.cn.call(void 0,
524
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
699
525
  // Layout — single line, no wrapping
700
- "flex min-h-11 cursor-text items-center rounded-[6px] border md:min-h-12",
526
+ "flex cursor-text items-center border",
527
+ AUTOCOMPLETE_ANCHOR_SHAPE_CLASS,
528
+ AUTOCOMPLETE_ANCHOR_HEIGHT_CLASS,
701
529
  "focus-within:outline-none",
702
530
  "transition-colors duration-200",
703
531
  "border-ods-border bg-ods-card",
@@ -717,7 +545,7 @@ function AutocompleteInner(props, ref) {
717
545
  ),
718
546
  onClick: () => {
719
547
  if (!disabled) {
720
- _optionalChain([inputRef, 'access', _14 => _14.current, 'optionalAccess', _15 => _15.focus, 'call', _16 => _16()]);
548
+ _optionalChain([inputRef, 'access', _15 => _15.current, 'optionalAccess', _16 => _16.focus, 'call', _17 => _17()]);
721
549
  openDropdown();
722
550
  }
723
551
  },
@@ -725,7 +553,7 @@ function AutocompleteInner(props, ref) {
725
553
  resolvedStartAdornment && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
726
554
  "span",
727
555
  {
728
- className: _chunk3ATAYP36cjs.cn.call(void 0,
556
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
729
557
  // Images are sized alongside svgs: an entity adornment is
730
558
  // usually a flag or a crest, and an unconstrained <img> lays
731
559
  // out at 0x0 inside this flex row.
@@ -741,13 +569,13 @@ function AutocompleteInner(props, ref) {
741
569
  "div",
742
570
  {
743
571
  ref: middleRef,
744
- className: _chunk3ATAYP36cjs.cn.call(void 0,
572
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
745
573
  "flex min-w-0 flex-1 items-center gap-2 px-2",
746
574
  wrapTags ? "flex-wrap py-[var(--spacing-system-xsf)]" : "overflow-hidden"
747
575
  ),
748
576
  children: [
749
577
  multiple && visibleTags.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
750
- _chunkEQZXJUYVcjs.Tag,
578
+ _chunkJTSUAHDLcjs.Tag,
751
579
  {
752
580
  variant: "outline",
753
581
  className: wrapTags ? "max-w-full" : void 0,
@@ -771,7 +599,7 @@ function AutocompleteInner(props, ref) {
771
599
  return !prev;
772
600
  });
773
601
  },
774
- className: _chunk3ATAYP36cjs.cn.call(void 0,
602
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
775
603
  "flex h-8 items-center px-2",
776
604
  "rounded-[6px] border border-ods-border bg-ods-card",
777
605
  "text-ods-text-secondary text-h5",
@@ -811,7 +639,7 @@ function AutocompleteInner(props, ref) {
811
639
  loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
812
640
  _lucidereact.Loader2,
813
641
  {
814
- className: _chunk3ATAYP36cjs.cn.call(void 0,
642
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
815
643
  "size-4 animate-spin md:size-6",
816
644
  isInvalid ? "text-ods-error" : isOpen ? "text-ods-accent" : "text-ods-text-secondary"
817
645
  )
@@ -819,7 +647,7 @@ function AutocompleteInner(props, ref) {
819
647
  ) : showChevron && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
820
648
  _chunkSKI6NKOEcjs.Chevron02DownIcon,
821
649
  {
822
- className: _chunk3ATAYP36cjs.cn.call(void 0,
650
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
823
651
  "size-4 transition-all duration-200 md:size-6",
824
652
  "text-ods-text-secondary",
825
653
  isOpen && "rotate-180",
@@ -835,7 +663,7 @@ function AutocompleteInner(props, ref) {
835
663
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
836
664
  PopoverPrimitive.Content,
837
665
  {
838
- className: _chunk3ATAYP36cjs.cn.call(void 0,
666
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
839
667
  "z-50 mt-1 w-[var(--radix-popover-trigger-width)]",
840
668
  "rounded-[4px] border border-ods-border bg-ods-card",
841
669
  "flex max-h-[var(--radix-popper-available-height)] flex-col overflow-hidden",
@@ -848,15 +676,22 @@ function AutocompleteInner(props, ref) {
848
676
  collisionPadding: { bottom: keyboardPadding },
849
677
  onOpenAutoFocus: (e) => {
850
678
  e.preventDefault();
851
- _optionalChain([inputRef, 'access', _17 => _17.current, 'optionalAccess', _18 => _18.focus, 'call', _19 => _19()]);
679
+ _optionalChain([inputRef, 'access', _18 => _18.current, 'optionalAccess', _19 => _19.focus, 'call', _20 => _20()]);
852
680
  },
853
681
  onInteractOutside: (e) => {
854
- if (_optionalChain([containerRef, 'access', _20 => _20.current, 'optionalAccess', _21 => _21.contains, 'call', _22 => _22(e.target)])) {
682
+ if (_optionalChain([containerRef, 'access', _21 => _21.current, 'optionalAccess', _22 => _22.contains, 'call', _23 => _23(e.target)])) {
855
683
  e.preventDefault();
856
684
  }
857
685
  },
858
686
  children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, ScrollAreaPrimitive.Root, { className: "flex min-h-0 flex-col overflow-hidden", children: [
859
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScrollAreaPrimitive.Viewport, { className: "max-h-[240px] min-h-0 w-full [&>div]:!block", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { role: "listbox", children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-3 py-2 text-ods-text-secondary text-h6", children: loadingText }) : filteredOptions.length === 0 ? showCreateOption ? isCreateTooLong ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-11 min-w-0 items-center px-[var(--spacing-system-mf)] text-ods-error text-h5 md:h-12", children: [
687
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScrollAreaPrimitive.Viewport, { className: "max-h-[240px] min-h-0 w-full [&>div]:!block", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { role: loading ? void 0 : "listbox", children: loading ? (
688
+ // The options while they are read: the list's own rows, a label bar each (`loadingText` is what a
689
+ // screen reader hears).
690
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWEANWBJHcjs.LoadingRegion, { label: loadingText, children: Array.from({ length: AUTOCOMPLETE_OPTIONS_FOLD }, (_, i) => (
691
+ // biome-ignore lint/suspicious/noArrayIndexKey: skeleton rows never reorder
692
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: AUTOCOMPLETE_OPTION_ROW_CLASS, "aria-hidden": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "inherit", className: "w-2/3" }) }, i)
693
+ )) })
694
+ ) : filteredOptions.length === 0 ? showCreateOption ? isCreateTooLong ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex h-11 min-w-0 items-center px-[var(--spacing-system-mf)] text-ods-error text-h5 md:h-12", children: [
860
695
  "Maximum ",
861
696
  maxCreateLength,
862
697
  " characters"
@@ -865,7 +700,7 @@ function AutocompleteInner(props, ref) {
865
700
  {
866
701
  role: "option",
867
702
  "aria-selected": false,
868
- className: _chunk3ATAYP36cjs.cn.call(void 0,
703
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
869
704
  "flex h-11 min-w-0 cursor-pointer items-center px-[var(--spacing-system-mf)] transition-colors md:h-12",
870
705
  "text-ods-accent text-h4",
871
706
  "hover:bg-ods-bg-hover"
@@ -885,11 +720,11 @@ function AutocompleteInner(props, ref) {
885
720
  {
886
721
  role: "option",
887
722
  "aria-selected": isSelected,
888
- className: _chunk3ATAYP36cjs.cn.call(void 0,
723
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
889
724
  // `min-h` rather than a fixed height: an option may carry
890
725
  // a second line, and a clipped one is worse than a taller row.
891
- "group/item flex min-h-11 cursor-pointer items-center border-b border-ods-border px-[var(--spacing-system-mf)] py-[var(--spacing-system-xsf)] transition-colors last:border-b-0 md:min-h-12",
892
- "text-h4",
726
+ AUTOCOMPLETE_OPTION_ROW_CLASS,
727
+ "group/item cursor-pointer transition-colors",
893
728
  isHighlighted && "bg-ods-bg-surface",
894
729
  isSelected ? "text-ods-accent" : "text-ods-text-primary",
895
730
  !isHighlighted && "hover:bg-ods-bg-hover"
@@ -931,8 +766,10 @@ function AutocompleteInner(props, ref) {
931
766
  }
932
767
  )
933
768
  ] });
769
+ if (inScope || fieldLoading)
770
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AutocompleteSkeleton, { label, labelVariant, className });
934
771
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
935
- _chunkHTRILBJDcjs.FieldWrapper,
772
+ _chunkYXDHVHB2cjs.FieldWrapper,
936
773
  {
937
774
  label,
938
775
  labelVariant,
@@ -972,7 +809,7 @@ function AutocompleteInner(props, ref) {
972
809
  "aria-hidden": "true",
973
810
  className: "pointer-events-none invisible absolute left-0 top-0 -z-10 flex gap-2",
974
811
  children: selectedOptions.map((option) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
975
- _chunkEQZXJUYVcjs.Tag,
812
+ _chunkJTSUAHDLcjs.Tag,
976
813
  {
977
814
  variant: "outline",
978
815
  labelClassName: "max-w-[90px] truncate",
@@ -1008,7 +845,7 @@ var SelectTrigger = _react.forwardRef.call(void 0, (allProps, ref) => {
1008
845
  {
1009
846
  ref,
1010
847
  "data-invalid": isInvalid || void 0,
1011
- className: _chunk3ATAYP36cjs.cn.call(void 0,
848
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1012
849
  // Layout & spacing - match Input
1013
850
  // text-left resets the <button> UA default text-align:center, which the
1014
851
  // SelectValue span inherits and would otherwise center short values,
@@ -1040,7 +877,7 @@ var SelectTrigger = _react.forwardRef.call(void 0, (allProps, ref) => {
1040
877
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1041
878
  _chunkSKI6NKOEcjs.Chevron02DownIcon,
1042
879
  {
1043
- className: _chunk3ATAYP36cjs.cn.call(void 0,
880
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1044
881
  "shrink-0 text-ods-text-secondary transition-all duration-200 group-data-[state=open]:rotate-180",
1045
882
  isInvalid ? "text-ods-error" : "group-data-[state=open]:text-ods-accent"
1046
883
  ),
@@ -1050,14 +887,14 @@ var SelectTrigger = _react.forwardRef.call(void 0, (allProps, ref) => {
1050
887
  ]
1051
888
  }
1052
889
  );
1053
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHTRILBJDcjs.FieldWrapper, { label, labelVariant, error, errorSlot, children: trigger });
890
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXDHVHB2cjs.FieldWrapper, { label, labelVariant, error, errorSlot, children: trigger });
1054
891
  });
1055
892
  SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
1056
893
  var SelectScrollUpButton = _react.forwardRef.call(void 0, ({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1057
894
  SelectPrimitive.ScrollUpButton,
1058
895
  {
1059
896
  ref,
1060
- className: _chunk3ATAYP36cjs.cn.call(void 0, "flex cursor-default items-center justify-center py-1", className),
897
+ className: _chunk65VVJSQZcjs.cn.call(void 0, "flex cursor-default items-center justify-center py-1", className),
1061
898
  ...props,
1062
899
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronUp, { className: "h-4 w-4" })
1063
900
  }
@@ -1067,19 +904,19 @@ var SelectScrollDownButton = _react.forwardRef.call(void 0, ({ className, ...pro
1067
904
  SelectPrimitive.ScrollDownButton,
1068
905
  {
1069
906
  ref,
1070
- className: _chunk3ATAYP36cjs.cn.call(void 0, "flex cursor-default items-center justify-center py-1", className),
907
+ className: _chunk65VVJSQZcjs.cn.call(void 0, "flex cursor-default items-center justify-center py-1", className),
1071
908
  ...props,
1072
909
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronDown, { className: "h-4 w-4" })
1073
910
  }
1074
911
  ));
1075
912
  SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
1076
913
  var SelectContent = _react.forwardRef.call(void 0, ({ className, children, position = "popper", ...props }, ref) => {
1077
- const container = _chunkRB6BSE3Ocjs.usePortalContainer.call(void 0, );
914
+ const container = _chunkXIFEZ2JTcjs.usePortalContainer.call(void 0, );
1078
915
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectPrimitive.Portal, { container: _nullishCoalesce(container, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1079
916
  SelectPrimitive.Content,
1080
917
  {
1081
918
  ref,
1082
- className: _chunk3ATAYP36cjs.cn.call(void 0,
919
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1083
920
  "relative z-[9999] max-h-96 overflow-hidden rounded-[4px] border border-ods-border bg-ods-card text-ods-text-primary",
1084
921
  "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
1085
922
  position === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
@@ -1100,13 +937,13 @@ var SelectContent = _react.forwardRef.call(void 0, ({ className, children, posit
1100
937
  ) });
1101
938
  });
1102
939
  SelectContent.displayName = SelectPrimitive.Content.displayName;
1103
- var SelectLabel = _react.forwardRef.call(void 0, ({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectPrimitive.Label, { ref, className: _chunk3ATAYP36cjs.cn.call(void 0, "py-1.5 pl-8 pr-2 font-semibold text-h6", className), ...props }));
940
+ var SelectLabel = _react.forwardRef.call(void 0, ({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectPrimitive.Label, { ref, className: _chunk65VVJSQZcjs.cn.call(void 0, "py-1.5 pl-8 pr-2 font-semibold text-h6", className), ...props }));
1104
941
  SelectLabel.displayName = SelectPrimitive.Label.displayName;
1105
942
  var SelectItem = _react.forwardRef.call(void 0, ({ className, children, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1106
943
  SelectPrimitive.Item,
1107
944
  {
1108
945
  ref,
1109
- className: _chunk3ATAYP36cjs.cn.call(void 0,
946
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1110
947
  "flex h-11 w-full cursor-pointer select-none items-center justify-between border-b border-ods-border px-4 last:border-b-0 md:h-12",
1111
948
  // Typography - match trigger
1112
949
  "whitespace-nowrap text-h4",
@@ -1124,12 +961,12 @@ var SelectItem = _react.forwardRef.call(void 0, ({ className, children, ...props
1124
961
  }
1125
962
  ));
1126
963
  SelectItem.displayName = SelectPrimitive.Item.displayName;
1127
- var SelectSeparator = _react.forwardRef.call(void 0, ({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectPrimitive.Separator, { ref, className: _chunk3ATAYP36cjs.cn.call(void 0, "-mx-1 my-1 h-px bg-ods-border", className), ...props }));
964
+ var SelectSeparator = _react.forwardRef.call(void 0, ({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectPrimitive.Separator, { ref, className: _chunk65VVJSQZcjs.cn.call(void 0, "-mx-1 my-1 h-px bg-ods-border", className), ...props }));
1128
965
  SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
1129
966
 
1130
967
  // src/components/layout/back-button.tsx
1131
968
 
1132
- var BACK_BUTTON_CLASS = _chunk3ATAYP36cjs.cn.call(void 0,
969
+ var BACK_BUTTON_CLASS = _chunk65VVJSQZcjs.cn.call(void 0,
1133
970
  "group inline-flex items-center justify-center self-start rounded-md",
1134
971
  "gap-[var(--spacing-system-xsf)] py-[var(--spacing-system-sf)]",
1135
972
  "text-ods-text-secondary hover:text-ods-text-primary",
@@ -1160,12 +997,12 @@ function BackButton({ label = "Back", className, type = "button", href, ...props
1160
997
  {
1161
998
  ...shared,
1162
999
  href,
1163
- className: _chunk3ATAYP36cjs.cn.call(void 0, BACK_BUTTON_CLASS, className),
1000
+ className: _chunk65VVJSQZcjs.cn.call(void 0, BACK_BUTTON_CLASS, className),
1164
1001
  children: content
1165
1002
  }
1166
1003
  );
1167
1004
  }
1168
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type, className: _chunk3ATAYP36cjs.cn.call(void 0, BACK_BUTTON_CLASS, className), ...props, children: content });
1005
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { type, className: _chunk65VVJSQZcjs.cn.call(void 0, BACK_BUTTON_CLASS, className), ...props, children: content });
1169
1006
  }
1170
1007
 
1171
1008
  // src/components/ui/page-actions.tsx
@@ -1214,15 +1051,15 @@ function actionToMenuItems(action, idx) {
1214
1051
  function renderActionButton(action, opts = {}) {
1215
1052
  const button = renderRawActionButton(action, opts);
1216
1053
  if (!action.tooltip) return button;
1217
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEFTUFJS2cjs.Tooltip, { children: [
1218
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipTrigger, { asChild: true, children: button }),
1219
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipContent, { children: action.tooltip })
1054
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLELS4XMXcjs.TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLELS4XMXcjs.Tooltip, { children: [
1055
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLELS4XMXcjs.TooltipTrigger, { asChild: true, children: button }),
1056
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLELS4XMXcjs.TooltipContent, { children: action.tooltip })
1220
1057
  ] }) });
1221
1058
  }
1222
1059
  function renderRawActionButton(action, opts = {}) {
1223
1060
  if (action.iconAction) {
1224
1061
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1225
- SplitButton,
1062
+ _chunkTF5D5MNOcjs.SplitButton,
1226
1063
  {
1227
1064
  variant: _nullishCoalesce(action.variant, () => ( void 0)),
1228
1065
  href: action.href,
@@ -1240,11 +1077,11 @@ function renderRawActionButton(action, opts = {}) {
1240
1077
  }
1241
1078
  if (action.submenu && action.submenu.length > 0) {
1242
1079
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1243
- _chunkEFTUFJS2cjs.ActionsMenuDropdown,
1080
+ _chunkLELS4XMXcjs.ActionsMenuDropdown,
1244
1081
  {
1245
1082
  groups: [{ items: action.submenu }],
1246
1083
  customTrigger: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1247
- _chunk2QMBXGMQcjs.Button,
1084
+ _chunkTF5D5MNOcjs.Button,
1248
1085
  {
1249
1086
  variant: "outline",
1250
1087
  disabled: action.disabled,
@@ -1262,7 +1099,7 @@ function renderRawActionButton(action, opts = {}) {
1262
1099
  if (isIconOnly) {
1263
1100
  const iconNode = action.iconOnlyOnDesktop ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "inline-flex [&_svg]:!text-ods-text-primary", children: action.icon }) : action.icon;
1264
1101
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1265
- _chunk2QMBXGMQcjs.Button,
1102
+ _chunkTF5D5MNOcjs.Button,
1266
1103
  {
1267
1104
  variant: action.variant,
1268
1105
  size: "icon",
@@ -1278,7 +1115,7 @@ function renderRawActionButton(action, opts = {}) {
1278
1115
  );
1279
1116
  }
1280
1117
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1281
- _chunk2QMBXGMQcjs.Button,
1118
+ _chunkTF5D5MNOcjs.Button,
1282
1119
  {
1283
1120
  variant: action.variant,
1284
1121
  href: action.href,
@@ -1294,10 +1131,6 @@ function renderRawActionButton(action, opts = {}) {
1294
1131
  );
1295
1132
  }
1296
1133
  var ACTIONS_GAP = "gap-[var(--spacing-system-xs)]";
1297
- var SKELETON_HEIGHT = "h-11 md:h-12";
1298
- var SKELETON_ICON_WIDTH = "w-11 md:w-12";
1299
- var SKELETON_LABEL_WIDTH = "w-[120px] md:w-[140px]";
1300
- var SKELETON_RADIUS = "rounded-md";
1301
1134
  function ActionSkeletons({
1302
1135
  actions,
1303
1136
  fullWidth,
@@ -1306,20 +1139,20 @@ function ActionSkeletons({
1306
1139
  const items = actions.length > 0 ? actions : [null];
1307
1140
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: items.map((action, idx) => {
1308
1141
  const isIconOnly = action ? !action.label || !!action.iconOnlyOnDesktop : emptyFallback === "icon";
1309
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1310
- _chunkH3RYUTNDcjs.UnifiedSkeleton,
1311
- {
1312
- className: _chunk3ATAYP36cjs.cn.call(void 0,
1313
- SKELETON_HEIGHT,
1314
- SKELETON_RADIUS,
1315
- isIconOnly ? SKELETON_ICON_WIDTH : fullWidth ? "flex-1" : SKELETON_LABEL_WIDTH
1316
- )
1317
- },
1318
- `action-skeleton-${idx}`
1319
- );
1142
+ const key = `action-skeleton-${idx}`;
1143
+ if (isIconOnly) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.InteractiveSkeleton.Button, { size: "icon" }, key);
1144
+ if (action) {
1145
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { inert: true, "aria-hidden": true, className: _chunk65VVJSQZcjs.cn.call(void 0, "relative inline-flex", fullWidth && "flex-1"), children: [
1146
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _chunk65VVJSQZcjs.cn.call(void 0, "invisible inline-flex", fullWidth && "flex-1"), children: renderRawActionButton(action, { fullWidth }) }),
1147
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "absolute inset-0 h-full" })
1148
+ ] }, key);
1149
+ }
1150
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.InteractiveSkeleton.Button, { size: "default", className: fullWidth ? "flex-1" : void 0 }, key);
1320
1151
  }) });
1321
1152
  }
1322
- var MOBILE_TRIGGER_SKELETON_CLASS = _chunk3ATAYP36cjs.cn.call(void 0, SKELETON_HEIGHT, SKELETON_ICON_WIDTH, SKELETON_RADIUS);
1153
+ function MobileTriggerSkeleton() {
1154
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.InteractiveSkeleton.Button, { size: "icon" });
1155
+ }
1323
1156
  function PageActions({
1324
1157
  variant = "icon-buttons",
1325
1158
  actions,
@@ -1363,20 +1196,20 @@ function IconButtonsVariant({
1363
1196
  }) {
1364
1197
  const desktopActions = actions.filter((a) => !a.showOnlyMobile);
1365
1198
  const hasMenuActions = !!menuActions && menuActions.some((g) => g.items.length > 0);
1366
- const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access', _23 => _23[0], 'access', _24 => _24.submenu, 'optionalAccess', _25 => _25.length]);
1199
+ const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access', _24 => _24[0], 'access', _25 => _25.submenu, 'optionalAccess', _26 => _26.length]);
1367
1200
  const singleAction = isSingleAction ? actions[0] : null;
1368
1201
  const useSingleActionMobile = isSingleAction && !hasMenuActions;
1369
1202
  const mobileMenuGroups = [{ items: actions.flatMap(actionToMenuItems) }, ..._nullishCoalesce(menuActions, () => ( []))];
1370
1203
  const hasMobileMenuItems = mobileMenuGroups.some((g) => g.items.length > 0);
1371
1204
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
1372
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "hidden items-center content-md:flex", ACTIONS_GAP, className), children: [
1205
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, "hidden items-center content-md:flex", ACTIONS_GAP, className), children: [
1373
1206
  selector,
1374
1207
  loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionSkeletons, { actions: desktopActions }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
1375
1208
  desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton(action) }, actionKey(action, idx))),
1376
- hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.ActionsMenuDropdown, { groups: menuActions })
1209
+ hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLELS4XMXcjs.ActionsMenuDropdown, { groups: menuActions })
1377
1210
  ] })
1378
1211
  ] }),
1379
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex content-md:hidden", className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: MOBILE_TRIGGER_SKELETON_CLASS }) : useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true }) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.ActionsMenuDropdown, { groups: mobileMenuGroups }) : null })
1212
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, "flex content-md:hidden", className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MobileTriggerSkeleton, {}) : useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true }) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLELS4XMXcjs.ActionsMenuDropdown, { groups: mobileMenuGroups }) : null })
1380
1213
  ] });
1381
1214
  }
1382
1215
  function PrimaryButtonsVariant({
@@ -1391,12 +1224,12 @@ function PrimaryButtonsVariant({
1391
1224
  });
1392
1225
  const desktopActions = sortedActions.filter((a) => !a.showOnlyMobile);
1393
1226
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
1394
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "hidden items-center md:content-md:flex", ACTIONS_GAP, className), children: loading ? (
1227
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, "hidden items-center md:content-md:flex", ACTIONS_GAP, className), children: loading ? (
1395
1228
  // No overflow trigger in this variant — an unknown action set settles
1396
1229
  // into a labelled button, not a square one.
1397
1230
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionSkeletons, { actions: desktopActions, emptyFallback: "label" })
1398
1231
  ) : desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton(action) }, `desktop-${actionKey(action, idx)}`)) }),
1399
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "hidden items-center md:content-max-md:flex", ACTIONS_GAP, className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: MOBILE_TRIGGER_SKELETON_CLASS }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CompactPrimaryActions, { actions: desktopActions }) }),
1232
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, "hidden items-center md:content-max-md:flex", ACTIONS_GAP, className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MobileTriggerSkeleton, {}) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CompactPrimaryActions, { actions: desktopActions }) }),
1400
1233
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MobileBottomActions, { actions: sortedActions, loading })
1401
1234
  ] });
1402
1235
  }
@@ -1412,18 +1245,18 @@ function MenuPrimaryVariant({
1412
1245
  const mobileMenuGroups = [{ items: actions.flatMap(actionToMenuItems) }, ...menuActions];
1413
1246
  const hasMobileMenuItems = mobileMenuGroups.some((g) => g.items.length > 0);
1414
1247
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
1415
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "hidden items-center content-md:flex", ACTIONS_GAP, className), children: [
1248
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, "hidden items-center content-md:flex", ACTIONS_GAP, className), children: [
1416
1249
  selector,
1417
1250
  loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionSkeletons, { actions: desktopActions }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
1418
- hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.ActionsMenuDropdown, { groups: menuActions }),
1251
+ hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLELS4XMXcjs.ActionsMenuDropdown, { groups: menuActions }),
1419
1252
  desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton({ ...action, variant: action.variant || "accent" }) }, `desktop-${actionKey(action, idx)}`))
1420
1253
  ] })
1421
1254
  ] }),
1422
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex content-md:hidden", className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: MOBILE_TRIGGER_SKELETON_CLASS }) : hasMobileMenuItems || selector ? (
1255
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, "flex content-md:hidden", className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MobileTriggerSkeleton, {}) : hasMobileMenuItems || selector ? (
1423
1256
  // The selector rides into the menu as its header row: on mobile the
1424
1257
  // title row has no room for it, and hiding it entirely (what
1425
1258
  // `icon-buttons` does) would leave no way to switch views at all.
1426
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.ActionsMenuDropdown, { groups: mobileMenuGroups, header: selector })
1259
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLELS4XMXcjs.ActionsMenuDropdown, { groups: mobileMenuGroups, header: selector })
1427
1260
  ) : null })
1428
1261
  ] });
1429
1262
  }
@@ -1432,7 +1265,7 @@ function CompactPrimaryActions({ actions }) {
1432
1265
  const fold = foldable.length > 1;
1433
1266
  const inline = fold ? actions.filter((action) => !foldable.includes(action)) : actions;
1434
1267
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
1435
- fold && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.ActionsMenuDropdown, { groups: [{ items: foldable.flatMap(actionToMenuItems) }] }),
1268
+ fold && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLELS4XMXcjs.ActionsMenuDropdown, { groups: [{ items: foldable.flatMap(actionToMenuItems) }] }),
1436
1269
  inline.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton(action) }, `compact-${actionKey(action, idx)}`))
1437
1270
  ] });
1438
1271
  }
@@ -1440,7 +1273,7 @@ function MobileBottomActions({ actions, loading }) {
1440
1273
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1441
1274
  "div",
1442
1275
  {
1443
- className: _chunk3ATAYP36cjs.cn.call(void 0,
1276
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1444
1277
  "fixed bottom-0 left-0 right-0 z-50 md:hidden",
1445
1278
  "border-t border-ods-border bg-ods-card",
1446
1279
  // `lf` (24px at every breakpoint), NOT `l` — this bar is `md:hidden`, so the
@@ -1460,20 +1293,25 @@ function usePageActionsBottomPadding(variant) {
1460
1293
  // src/components/ui/entity-image.tsx
1461
1294
 
1462
1295
 
1463
- var ENTITY_IMAGE_SIZE = "size-[52px] content-md:size-[60px]";
1296
+ var ENTITY_IMAGE_SIZE = _chunkXFRBEXQNcjs.TILE_SIZE.entity;
1297
+ var ENTITY_IMAGE_RADIUS_CLASS = "rounded-md";
1464
1298
  function EntityImage({ src, alt, fallbackText, sizeClassName, className }) {
1465
- const resolvedSrc = _chunkR3TWQ3ZJcjs.useAuthedImageSrc.call(void 0, src);
1299
+ const held = _chunkXFRBEXQNcjs.useLoadingScope.call(void 0, );
1300
+ const authedSrc = _chunk5P4TDV7Vcjs.useAuthedImageSrc.call(void 0, held ? void 0 : src);
1301
+ const resolvedSrc = authedSrc;
1466
1302
  const [failedSrc, setFailedSrc] = _react2.default.useState(null);
1467
1303
  const imageFailed = resolvedSrc !== void 0 && failedSrc === resolvedSrc;
1304
+ if (held) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EntityImageSkeleton, { sizeClassName, className });
1468
1305
  const showFallback = imageFailed || !resolvedSrc;
1469
- const initials = _chunkEQZXJUYVcjs.personInitials.call(void 0, _nullishCoalesce(fallbackText, () => ( alt)));
1306
+ const initials = _chunkJTSUAHDLcjs.personInitials.call(void 0, _nullishCoalesce(fallbackText, () => ( alt)));
1470
1307
  if (showFallback) {
1471
1308
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1472
1309
  "div",
1473
1310
  {
1474
1311
  "aria-label": alt,
1475
- className: _chunk3ATAYP36cjs.cn.call(void 0,
1476
- "flex shrink-0 select-none items-center justify-center rounded-md border border-ods-border bg-ods-bg text-ods-text-secondary text-h4",
1312
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1313
+ "flex shrink-0 select-none items-center justify-center border border-ods-border bg-ods-bg text-ods-text-secondary text-h4",
1314
+ ENTITY_IMAGE_RADIUS_CLASS,
1477
1315
  _nullishCoalesce(sizeClassName, () => ( ENTITY_IMAGE_SIZE)),
1478
1316
  className
1479
1317
  ),
@@ -1482,13 +1320,14 @@ function EntityImage({ src, alt, fallbackText, sizeClassName, className }) {
1482
1320
  );
1483
1321
  }
1484
1322
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1485
- _chunkHOTM4UM6cjs.next_image_default,
1323
+ _chunkE76ONBKFcjs.next_image_default,
1486
1324
  {
1487
1325
  src: resolvedSrc,
1488
1326
  alt: _nullishCoalesce(alt, () => ( "")),
1489
1327
  onError: () => setFailedSrc(resolvedSrc),
1490
- className: _chunk3ATAYP36cjs.cn.call(void 0,
1491
- "shrink-0 rounded-md border border-ods-border object-contain",
1328
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1329
+ "shrink-0 border border-ods-border object-contain",
1330
+ ENTITY_IMAGE_RADIUS_CLASS,
1492
1331
  _nullishCoalesce(sizeClassName, () => ( ENTITY_IMAGE_SIZE)),
1493
1332
  className
1494
1333
  ),
@@ -1498,6 +1337,31 @@ function EntityImage({ src, alt, fallbackText, sizeClassName, className }) {
1498
1337
  }
1499
1338
  );
1500
1339
  }
1340
+ function EntityImageSkeleton({
1341
+ sizeClassName,
1342
+ className
1343
+ }) {
1344
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1345
+ _chunkXFRBEXQNcjs.UnifiedSkeleton,
1346
+ {
1347
+ className: _chunk65VVJSQZcjs.cn.call(void 0, "shrink-0", ENTITY_IMAGE_RADIUS_CLASS, _nullishCoalesce(sizeClassName, () => ( ENTITY_IMAGE_SIZE)), className)
1348
+ }
1349
+ );
1350
+ }
1351
+
1352
+ // src/components/layout/page-picture.tsx
1353
+
1354
+
1355
+ var PagePictureContext = _react.createContext.call(void 0, false);
1356
+ function PagePicture({ children }) {
1357
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PagePictureContext.Provider, { value: true, children });
1358
+ }
1359
+ var PageTitle = _react.forwardRef.call(void 0,
1360
+ function PageTitleElement(props, ref) {
1361
+ const picture = _react.useContext.call(void 0, PagePictureContext);
1362
+ return picture ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ...props, ref }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { ...props, ref });
1363
+ }
1364
+ );
1501
1365
 
1502
1366
  // src/components/layout/title-block.tsx
1503
1367
 
@@ -1523,36 +1387,70 @@ function TitleBlock({
1523
1387
  loading,
1524
1388
  loadingActions,
1525
1389
  subtitleRow = "when-set",
1526
- titleWrap = false
1390
+ titleWrap = false,
1391
+ titleSkeletonLines
1527
1392
  }) {
1528
- const hasSubtitleRow = !!subtitle || subtitleRow === "always" || subtitleRow === "while-loading" && !!loading;
1393
+ const scoped = _chunkXFRBEXQNcjs.useLoadingScope.call(void 0, );
1394
+ const titleLoading = !!loading || scoped && title === "";
1395
+ const subtitleLoading = !!loading || scoped && subtitle === "";
1396
+ const hasSubtitleRow = !!subtitle || subtitleRow === "always" || subtitleRow === "while-loading" && !!loading || scoped && subtitle === "";
1529
1397
  const hasActions = actions && actions.length > 0;
1530
1398
  const hasMenuActions = !!menuActions && menuActions.some((g) => g.items.length > 0);
1531
1399
  const titleClass = titleSize === "h1" ? "text-h1" : "text-h2";
1532
1400
  const titleOverflowClass = titleWrap ? "break-words" : "truncate";
1533
1401
  const skeletonSize = TITLE_SKELETON_SIZE[titleSize];
1534
- const { ref: titleRef, isTruncated: titleTruncated } = _chunkR3TWQ3ZJcjs.useIsTruncated.call(void 0, loading ? null : title);
1535
- const { ref: subtitleRef, isTruncated: subtitleTruncated } = _chunkR3TWQ3ZJcjs.useIsTruncated.call(void 0,
1536
- loading ? null : subtitle
1402
+ const { ref: titleRef, isTruncated: titleTruncated } = _chunk5P4TDV7Vcjs.useIsTruncated.call(void 0,
1403
+ titleLoading ? null : title
1404
+ );
1405
+ const { ref: subtitleRef, isTruncated: subtitleTruncated } = _chunk5P4TDV7Vcjs.useIsTruncated.call(void 0,
1406
+ subtitleLoading ? null : subtitle
1537
1407
  );
1538
- const titleNode = loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1539
- _chunkH3RYUTNDcjs.UnifiedSkeleton,
1408
+ const titleNode = titleLoading && titleWrap && titleSkeletonLines ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
1409
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1410
+ _chunkXFRBEXQNcjs.TextLineSkeleton,
1411
+ {
1412
+ type: "inherit",
1413
+ as: "span",
1414
+ lines: titleSkeletonLines.phone,
1415
+ className: "w-full content-md:hidden"
1416
+ }
1417
+ ),
1418
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1419
+ _chunkXFRBEXQNcjs.TextLineSkeleton,
1420
+ {
1421
+ type: "inherit",
1422
+ as: "span",
1423
+ lines: titleSkeletonLines.md,
1424
+ className: "hidden w-full content-md:flex content-lg:hidden"
1425
+ }
1426
+ ),
1427
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1428
+ _chunkXFRBEXQNcjs.TextLineSkeleton,
1429
+ {
1430
+ type: "inherit",
1431
+ as: "span",
1432
+ lines: titleSkeletonLines.lg,
1433
+ className: "hidden w-full content-lg:flex"
1434
+ }
1435
+ )
1436
+ ] }) : titleLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1437
+ _chunkXFRBEXQNcjs.UnifiedSkeleton,
1540
1438
  {
1541
1439
  as: "span",
1542
1440
  "aria-hidden": true,
1543
- className: _chunk3ATAYP36cjs.cn.call(void 0, TITLE_TEXT_SKELETON_CLASS, skeletonSize.width, skeletonSize.height)
1441
+ className: _chunk65VVJSQZcjs.cn.call(void 0, TITLE_TEXT_SKELETON_CLASS, skeletonSize.width, skeletonSize.height)
1544
1442
  }
1545
1443
  ) : title;
1546
1444
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1547
1445
  "div",
1548
1446
  {
1549
- className: _chunk3ATAYP36cjs.cn.call(void 0,
1447
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1550
1448
  "flex items-end justify-between gap-[var(--spacing-system-m)]",
1551
1449
  // md+: one wrapping row — actions stay inline with a short title and
1552
1450
  // wrap to a second row only when the title overflows (ClickUp 86ahd6uy5).
1553
1451
  "content-md:flex-wrap content-md:content-end",
1554
1452
  "pt-[var(--spacing-system-l)]",
1555
- variant === "card" ? _chunk3ATAYP36cjs.cn.call(void 0,
1453
+ variant === "card" ? _chunk65VVJSQZcjs.cn.call(void 0,
1556
1454
  "border-b border-ods-border bg-ods-card",
1557
1455
  "px-[var(--spacing-system-l)] pb-[var(--spacing-system-l)]",
1558
1456
  "content-md:border-b-0 content-md:bg-transparent",
@@ -1565,62 +1463,65 @@ function TitleBlock({
1565
1463
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1566
1464
  "div",
1567
1465
  {
1568
- className: _chunk3ATAYP36cjs.cn.call(void 0,
1466
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1569
1467
  "flex min-w-0 flex-1 flex-col justify-center gap-[var(--spacing-system-xs)] content-md:max-w-full content-md:flex-none",
1570
- TITLE_BLOCK_MIN_HEIGHT
1468
+ TITLE_BLOCK_MIN_HEIGHT,
1469
+ // A wrapping title's loading lines stand for a title that fills the row (its typical lines are full ones), so the
1470
+ // column takes the row's width: sized to content it would shrink to the bars' minimum.
1471
+ titleLoading && titleWrap && titleSkeletonLines && "content-md:w-full"
1571
1472
  ),
1572
1473
  children: [
1573
1474
  backButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, BackButton, { onClick: backButton.onClick, label: backButton.label, className: "hidden content-md:inline-flex" }),
1574
- image || hasSubtitleRow || loading ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-m)]", children: [
1475
+ image || hasSubtitleRow || titleLoading ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-m)]", children: [
1575
1476
  image && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EntityImage, { src: image.src, alt: image.alt, fallbackText: image.alt || title }),
1576
1477
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col justify-center", children: [
1577
- (loading || title) && (titleAdornment ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-m)]", children: [
1478
+ (titleLoading || title) && (titleAdornment ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-m)]", children: [
1578
1479
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1579
- _chunkEQZXJUYVcjs.FloatingTooltip,
1480
+ _chunkJTSUAHDLcjs.FloatingTooltip,
1580
1481
  {
1581
1482
  content: title,
1582
1483
  side: "bottom",
1583
1484
  disabled: !titleTruncated,
1584
1485
  triggerClassName: "min-w-0",
1585
1486
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1586
- _chunkOF336YWGcjs.PageTitle,
1487
+ PageTitle,
1587
1488
  {
1588
1489
  ref: titleRef,
1589
- className: _chunk3ATAYP36cjs.cn.call(void 0, titleClass, "min-w-0 text-ods-text-primary", titleOverflowClass),
1490
+ className: _chunk65VVJSQZcjs.cn.call(void 0, titleClass, "min-w-0 text-ods-text-primary", titleOverflowClass),
1590
1491
  children: titleNode
1591
1492
  }
1592
1493
  )
1593
1494
  }
1594
1495
  ),
1595
1496
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "shrink-0", children: titleAdornment })
1596
- ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.FloatingTooltip, { content: title, side: "bottom", disabled: !titleTruncated, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { ref: titleRef, className: _chunk3ATAYP36cjs.cn.call(void 0, titleClass, "text-ods-text-primary", titleOverflowClass), children: titleNode }) })),
1497
+ ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJTSUAHDLcjs.FloatingTooltip, { content: title, side: "bottom", disabled: !titleTruncated, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PageTitle, { ref: titleRef, className: _chunk65VVJSQZcjs.cn.call(void 0, titleClass, "text-ods-text-primary", titleOverflowClass), children: titleNode }) })),
1597
1498
  hasSubtitleRow && /* The NBSP is a pure spacer, reached only in `'always'` mode: an
1598
1499
  empty `p` collapses to zero height (its only content would be
1599
1500
  collapsible whitespace), which is exactly the shift that mode
1600
1501
  exists to prevent. Hidden from AT — it carries no meaning. */
1601
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.FloatingTooltip, { content: subtitle, side: "bottom", disabled: !subtitleTruncated, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1502
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJTSUAHDLcjs.FloatingTooltip, { content: subtitle, side: "bottom", disabled: !subtitleTruncated, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1602
1503
  "p",
1603
1504
  {
1604
1505
  ref: subtitleRef,
1605
1506
  className: "truncate text-ods-text-secondary text-h6",
1606
- "aria-hidden": !loading && !subtitle ? true : void 0,
1607
- children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1608
- _chunkH3RYUTNDcjs.UnifiedSkeleton,
1507
+ "aria-hidden": !subtitleLoading && !subtitle ? true : void 0,
1508
+ children: subtitleLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1509
+ _chunkXFRBEXQNcjs.UnifiedSkeleton,
1609
1510
  {
1610
1511
  as: "span",
1611
1512
  "aria-hidden": true,
1612
- className: _chunk3ATAYP36cjs.cn.call(void 0, TITLE_TEXT_SKELETON_CLASS, "h-2.5 w-28 content-md:h-3 content-md:w-36")
1513
+ className: _chunk65VVJSQZcjs.cn.call(void 0, TITLE_TEXT_SKELETON_CLASS, "h-2.5 w-28 content-md:h-3 content-md:w-36")
1613
1514
  }
1614
1515
  ) : subtitle || "\xA0"
1615
1516
  }
1616
1517
  ) })
1617
1518
  ] })
1618
1519
  ] }) : title && (titleAdornment ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 items-center gap-[var(--spacing-system-m)]", children: [
1619
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.FloatingTooltip, { content: title, side: "bottom", disabled: !titleTruncated, triggerClassName: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1620
- _chunkOF336YWGcjs.PageTitle,
1520
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJTSUAHDLcjs.FloatingTooltip, { content: title, side: "bottom", disabled: !titleTruncated, triggerClassName: "min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1521
+ PageTitle,
1621
1522
  {
1622
1523
  ref: titleRef,
1623
- className: _chunk3ATAYP36cjs.cn.call(void 0, titleClass, "min-w-0 text-ods-text-primary", titleOverflowClass),
1524
+ className: _chunk65VVJSQZcjs.cn.call(void 0, titleClass, "min-w-0 text-ods-text-primary", titleOverflowClass),
1624
1525
  children: title
1625
1526
  }
1626
1527
  ) }),
@@ -1630,7 +1531,7 @@ function TitleBlock({
1630
1531
  wraps; `titleWrap` only adds break-words for pathological
1631
1532
  unbroken tokens. No class change when the prop is unset —
1632
1533
  the frozen baseline stays byte-identical. */
1633
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOF336YWGcjs.PageTitle, { className: _chunk3ATAYP36cjs.cn.call(void 0, titleClass, "text-ods-text-primary", titleWrap && "break-words"), children: title })
1534
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PageTitle, { className: _chunk65VVJSQZcjs.cn.call(void 0, titleClass, "text-ods-text-primary", titleWrap && "break-words"), children: title })
1634
1535
  ))
1635
1536
  ]
1636
1537
  }
@@ -1671,12 +1572,13 @@ function PageLayout({
1671
1572
  loading,
1672
1573
  loadingActions,
1673
1574
  subtitleRow,
1674
- titleWrap
1575
+ titleWrap,
1576
+ titleSkeletonLines
1675
1577
  }) {
1676
1578
  const hasActions = actions && actions.length > 0;
1677
1579
  const needsBottomPadding = hasActions && actionsVariant === "primary-buttons";
1678
1580
  const hasHeader = showHeader && (title || subtitle || image || backButton || hasActions || selector || loading);
1679
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex w-full flex-col", className), children: [
1581
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, "flex w-full flex-col", className), children: [
1680
1582
  hasHeader && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1681
1583
  TitleBlock,
1682
1584
  {
@@ -1694,13 +1596,14 @@ function PageLayout({
1694
1596
  loading,
1695
1597
  loadingActions,
1696
1598
  subtitleRow,
1697
- titleWrap
1599
+ titleWrap,
1600
+ titleSkeletonLines
1698
1601
  }
1699
1602
  ),
1700
1603
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1701
1604
  "div",
1702
1605
  {
1703
- className: _chunk3ATAYP36cjs.cn.call(void 0,
1606
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1704
1607
  "flex flex-1 flex-col gap-[var(--spacing-system-l)]",
1705
1608
  needsBottomPadding && "pb-28 content-md:pb-0",
1706
1609
  contentClassName
@@ -1729,12 +1632,12 @@ function RemoteSessionViewers({ viewers, max = 4, className }) {
1729
1632
  const faces = ordered.slice(0, max);
1730
1633
  const overflow = ordered.length - faces.length;
1731
1634
  const Chevron = open ? _chunk3MRRIHC2cjs.Chevron02UpIcon : _chunkSKI6NKOEcjs.Chevron02DownIcon;
1732
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAKK3EO37cjs.DropdownMenu, { open, onOpenChange: setOpen, children: [
1635
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXIFEZ2JTcjs.DropdownMenu, { open, onOpenChange: setOpen, children: [
1733
1636
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1734
- _chunkAKK3EO37cjs.DropdownMenuTrigger,
1637
+ _chunkXIFEZ2JTcjs.DropdownMenuTrigger,
1735
1638
  {
1736
1639
  "aria-label": `In this session: ${ordered.map(viewerLabel).join(", ")}`,
1737
- className: _chunk3ATAYP36cjs.cn.call(void 0,
1640
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1738
1641
  "flex shrink-0 items-center gap-[var(--spacing-system-xxs)] rounded-md outline-none",
1739
1642
  "focus-visible:ring-2 focus-visible:ring-ods-focus",
1740
1643
  className
@@ -1742,14 +1645,14 @@ function RemoteSessionViewers({ viewers, max = 4, className }) {
1742
1645
  children: [
1743
1646
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center", children: [
1744
1647
  faces.map((viewer, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1745
- _chunkEQZXJUYVcjs.SquareAvatar,
1648
+ _chunkJTSUAHDLcjs.SquareAvatar,
1746
1649
  {
1747
1650
  variant: "round",
1748
1651
  sizePx: 32,
1749
1652
  src: _nullishCoalesce(viewer.avatarUrl, () => ( void 0)),
1750
1653
  alt: viewer.name,
1751
1654
  fallback: viewer.name,
1752
- className: _chunk3ATAYP36cjs.cn.call(void 0,
1655
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1753
1656
  "relative bg-ods-bg",
1754
1657
  viewer.isHost ? "ring-2 ring-ods-accent" : "ring-1 ring-ods-border",
1755
1658
  index > 0 && "-ml-2"
@@ -1767,16 +1670,16 @@ function RemoteSessionViewers({ viewers, max = 4, className }) {
1767
1670
  ]
1768
1671
  }
1769
1672
  ),
1770
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAKK3EO37cjs.DropdownMenuContent, { align: "end", className: "w-[280px] p-0", children: ordered.map((viewer) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1771
- _chunkAKK3EO37cjs.DropdownMenuItem,
1673
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIFEZ2JTcjs.DropdownMenuContent, { align: "end", className: "w-[280px] p-0", children: ordered.map((viewer) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1674
+ _chunkXIFEZ2JTcjs.DropdownMenuItem,
1772
1675
  {
1773
- className: _chunk3ATAYP36cjs.cn.call(void 0,
1676
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1774
1677
  "gap-[var(--spacing-system-xsf)] rounded-none border-b border-ods-border bg-ods-bg last:border-b-0",
1775
1678
  "py-[var(--spacing-system-s)] pl-[var(--spacing-system-mf)] pr-[var(--spacing-system-xs)] text-h4"
1776
1679
  ),
1777
1680
  children: [
1778
1681
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1779
- _chunkEQZXJUYVcjs.SquareAvatar,
1682
+ _chunkJTSUAHDLcjs.SquareAvatar,
1780
1683
  {
1781
1684
  variant: "round",
1782
1685
  sizePx: 24,
@@ -1822,7 +1725,7 @@ function RemoteSessionScope({ children, className }) {
1822
1725
  function RemoteSessionOrgLogo({ name, logoUrl, sizePx, className }) {
1823
1726
  if (logoUrl) {
1824
1727
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1825
- _chunkEQZXJUYVcjs.SquareAvatar,
1728
+ _chunkJTSUAHDLcjs.SquareAvatar,
1826
1729
  {
1827
1730
  variant: "square",
1828
1731
  fit: "contain",
@@ -1830,7 +1733,7 @@ function RemoteSessionOrgLogo({ name, logoUrl, sizePx, className }) {
1830
1733
  src: logoUrl,
1831
1734
  alt: name,
1832
1735
  fallback: name,
1833
- className: _chunk3ATAYP36cjs.cn.call(void 0, "shrink-0 rounded-md border border-ods-border bg-ods-card", className)
1736
+ className: _chunk65VVJSQZcjs.cn.call(void 0, "shrink-0 rounded-md border border-ods-border bg-ods-card", className)
1834
1737
  }
1835
1738
  );
1836
1739
  }
@@ -1840,7 +1743,7 @@ function RemoteSessionOrgLogo({ name, logoUrl, sizePx, className }) {
1840
1743
  role: "img",
1841
1744
  "aria-label": name,
1842
1745
  style: { width: sizePx, height: sizePx },
1843
- className: _chunk3ATAYP36cjs.cn.call(void 0,
1746
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1844
1747
  "flex shrink-0 items-center justify-center rounded-md border border-ods-border bg-ods-card",
1845
1748
  className
1846
1749
  ),
@@ -1859,7 +1762,7 @@ function RemoteSessionRecordingTag({ className }) {
1859
1762
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1860
1763
  "div",
1861
1764
  {
1862
- className: _chunk3ATAYP36cjs.cn.call(void 0,
1765
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1863
1766
  "flex h-8 items-center gap-[var(--spacing-system-xs)] self-start rounded-md bg-ods-success-secondary p-[var(--spacing-system-xsf)]",
1864
1767
  className
1865
1768
  ),
@@ -1888,7 +1791,7 @@ function RemoteSessionDragger({ dragHandlers }) {
1888
1791
  "span",
1889
1792
  {
1890
1793
  "aria-hidden": true,
1891
- className: _chunk3ATAYP36cjs.cn.call(void 0,
1794
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1892
1795
  "absolute right-[var(--spacing-system-xsf)] top-[var(--spacing-system-xsf)] text-ods-text-secondary",
1893
1796
  dragHandlers && REMOTE_SESSION_DRAG_HANDLE_CLASS
1894
1797
  ),
@@ -1925,16 +1828,16 @@ function RemoteAccessRequestCard({
1925
1828
  }) {
1926
1829
  const { organizationName } = party;
1927
1830
  const siteUrl = _nullishCoalesce(party.organizationSiteUrl, () => ( void 0));
1928
- const openableSite = _optionalChain([siteUrl, 'optionalAccess', _26 => _26.startsWith, 'call', _27 => _27("https://")]) ? siteUrl : void 0;
1831
+ const openableSite = _optionalChain([siteUrl, 'optionalAccess', _27 => _27.startsWith, 'call', _28 => _28("https://")]) ? siteUrl : void 0;
1929
1832
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)] rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-xl)]", children: [
1930
1833
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h1", { className: "w-full text-ods-text-primary text-h2", children: "Your IT support team is requesting remote access" }),
1931
1834
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-[var(--spacing-system-m)] rounded-md border border-ods-border bg-ods-bg p-[var(--spacing-system-m)]", children: [
1932
1835
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RemoteSessionOrgLogo, { name: organizationName, logoUrl: party.organizationLogoUrl, sizePx: 64 }),
1933
1836
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col", children: [
1934
1837
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full truncate text-ods-text-primary text-h3", children: organizationName }),
1935
- siteUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full truncate text-ods-text-secondary text-h4", children: _chunkEQZXJUYVcjs.formatUrlForDisplay.call(void 0, siteUrl, { keepWww: true }) })
1838
+ siteUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full truncate text-ods-text-secondary text-h4", children: _chunkJTSUAHDLcjs.formatUrlForDisplay.call(void 0, siteUrl, { keepWww: true }) })
1936
1839
  ] }),
1937
- openableSite && onOpenSite && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "outline", size: "icon", "aria-label": "Open website", onClick: () => onOpenSite(openableSite), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEDVT7OAScjs.ExternalLinkIcon, { size: 24, color: "currentColor" }) })
1840
+ openableSite && onOpenSite && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTF5D5MNOcjs.Button, { variant: "outline", size: "icon", "aria-label": "Open website", onClick: () => onOpenSite(openableSite), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEDVT7OAScjs.ExternalLinkIcon, { size: 24, color: "currentColor" }) })
1938
1841
  ] }),
1939
1842
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "w-full text-ods-text-primary text-h4", children: [
1940
1843
  "A technician from ",
@@ -1950,7 +1853,7 @@ function RemoteAccessRequestCard({
1950
1853
  ] }),
1951
1854
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-stretch gap-[var(--spacing-system-l)]", children: [
1952
1855
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1953
- _chunk2QMBXGMQcjs.Button,
1856
+ _chunkTF5D5MNOcjs.Button,
1954
1857
  {
1955
1858
  variant: "outline",
1956
1859
  fullWidth: true,
@@ -1961,7 +1864,7 @@ function RemoteAccessRequestCard({
1961
1864
  }
1962
1865
  ),
1963
1866
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1964
- _chunk2QMBXGMQcjs.Button,
1867
+ _chunkTF5D5MNOcjs.Button,
1965
1868
  {
1966
1869
  variant: "accent",
1967
1870
  fullWidth: true,
@@ -1984,7 +1887,7 @@ var RemoteSessionBlockFrame = _react.forwardRef.call(void 0,
1984
1887
  "div",
1985
1888
  {
1986
1889
  ref,
1987
- className: _chunk3ATAYP36cjs.cn.call(void 0,
1890
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
1988
1891
  "flex w-[440px] shrink-0 flex-col overflow-hidden rounded-md border border-ods-border bg-ods-bg",
1989
1892
  expanded && "h-[680px]",
1990
1893
  className
@@ -2019,7 +1922,7 @@ var RemoteSessionBlockFrame = _react.forwardRef.call(void 0,
2019
1922
  RemoteSessionBlockFrame.displayName = "RemoteSessionBlockFrame";
2020
1923
  function RemoteSessionEndButton({ onEndSession }) {
2021
1924
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2022
- _chunk2QMBXGMQcjs.Button,
1925
+ _chunkTF5D5MNOcjs.Button,
2023
1926
  {
2024
1927
  variant: "outline",
2025
1928
  fullWidth: true,
@@ -2044,14 +1947,14 @@ function RemoteSessionSummary({
2044
1947
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
2045
1948
  "div",
2046
1949
  {
2047
- className: _chunk3ATAYP36cjs.cn.call(void 0,
1950
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
2048
1951
  "flex w-full items-center gap-[var(--spacing-system-xs)] pr-[var(--spacing-system-mf)]",
2049
1952
  dragHandlers && REMOTE_SESSION_DRAG_HANDLE_CLASS
2050
1953
  ),
2051
1954
  ...dragHandlers,
2052
1955
  children: [
2053
1956
  technician ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2054
- _chunkEQZXJUYVcjs.SquareAvatar,
1957
+ _chunkJTSUAHDLcjs.SquareAvatar,
2055
1958
  {
2056
1959
  variant: "round",
2057
1960
  sizePx: 48,
@@ -2077,7 +1980,7 @@ function RemoteSessionSummary({
2077
1980
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RemoteSessionStatusRow, { showRecordingTag, viewers }),
2078
1981
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-stretch gap-[var(--spacing-system-m)]", children: [
2079
1982
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2080
- _chunk2QMBXGMQcjs.Button,
1983
+ _chunkTF5D5MNOcjs.Button,
2081
1984
  {
2082
1985
  variant: "outline",
2083
1986
  fullWidth: true,
@@ -2099,7 +2002,7 @@ var RemoteSessionMinimizedChip = _react.forwardRef.call(void 0,
2099
2002
  ref,
2100
2003
  type: "button",
2101
2004
  "aria-label": "Show session block",
2102
- className: _chunk3ATAYP36cjs.cn.call(void 0,
2005
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
2103
2006
  "flex shrink-0 flex-col overflow-hidden rounded-md border border-ods-border",
2104
2007
  dragHandlers && REMOTE_SESSION_DRAG_HANDLE_CLASS
2105
2008
  ),
@@ -2107,7 +2010,7 @@ var RemoteSessionMinimizedChip = _react.forwardRef.call(void 0,
2107
2010
  ...dragHandlers,
2108
2011
  children: [
2109
2012
  technician ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2110
- _chunkEQZXJUYVcjs.SquareAvatar,
2013
+ _chunkJTSUAHDLcjs.SquareAvatar,
2111
2014
  {
2112
2015
  sizePx: 48,
2113
2016
  src: _nullishCoalesce(party.technicianAvatarUrl, () => ( void 0)),
@@ -2169,7 +2072,7 @@ function RemoteSessionChatPanel({
2169
2072
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
2170
2073
  "div",
2171
2074
  {
2172
- className: _chunk3ATAYP36cjs.cn.call(void 0,
2075
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
2173
2076
  "flex w-full flex-col pr-[var(--spacing-system-mf)]",
2174
2077
  dragHandlers && REMOTE_SESSION_DRAG_HANDLE_CLASS
2175
2078
  ),
@@ -2190,7 +2093,7 @@ function RemoteSessionChatPanel({
2190
2093
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RemoteSessionStatusRow, { showRecordingTag, viewers }),
2191
2094
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-stretch gap-[var(--spacing-system-m)]", children: [
2192
2095
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2193
- _chunk2QMBXGMQcjs.Button,
2096
+ _chunkTF5D5MNOcjs.Button,
2194
2097
  {
2195
2098
  variant: "outline",
2196
2099
  fullWidth: true,
@@ -2228,7 +2131,7 @@ function RemoteSessionChatPanel({
2228
2131
  value: draft,
2229
2132
  onChange: (event) => onDraftChange(event.target.value),
2230
2133
  disabled: !ready,
2231
- placeholder: ready ? "Enter your Message..." : "Loading chat...",
2134
+ placeholder: ready ? "Enter your Message..." : "Connecting to the chat",
2232
2135
  "aria-label": "Message",
2233
2136
  className: "h-12 min-w-0 flex-1 rounded-md border border-ods-border bg-ods-bg px-[var(--spacing-system-s)] text-ods-text-primary outline-none text-h6 placeholder:text-ods-text-secondary"
2234
2137
  }
@@ -2257,7 +2160,7 @@ function RemoteSessionChatMessageRow({
2257
2160
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col", children: [
2258
2161
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-[var(--spacing-system-xs)]", children: [
2259
2162
  isTechnician && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2260
- _chunkEQZXJUYVcjs.SquareAvatar,
2163
+ _chunkJTSUAHDLcjs.SquareAvatar,
2261
2164
  {
2262
2165
  variant: "round",
2263
2166
  sizePx: 16,
@@ -2268,7 +2171,7 @@ function RemoteSessionChatMessageRow({
2268
2171
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2269
2172
  "span",
2270
2173
  {
2271
- className: _chunk3ATAYP36cjs.cn.call(void 0,
2174
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
2272
2175
  "min-w-0 flex-1 truncate text-code",
2273
2176
  isTechnician ? "text-ods-accent" : "text-ods-text-secondary"
2274
2177
  ),
@@ -2283,6 +2186,9 @@ function RemoteSessionChatMessageRow({
2283
2186
 
2284
2187
  // src/components/features/remote-session/remote-desktop-chat-message-row.tsx
2285
2188
 
2189
+ var MESSAGE_ROW_CLASS = "grid grid-cols-1 gap-[var(--spacing-system-xxs)]";
2190
+ var MESSAGE_HEAD_CLASS = "flex items-center gap-[var(--spacing-system-xxs)]";
2191
+ var MESSAGE_NAME_CLASS = "min-w-0 flex-1 truncate text-h4 [font-family:var(--font-family-heading)]";
2286
2192
  function RemoteDesktopChatMessageRow({
2287
2193
  authorName,
2288
2194
  isTechnician,
@@ -2290,28 +2196,38 @@ function RemoteDesktopChatMessageRow({
2290
2196
  sentAt,
2291
2197
  body
2292
2198
  }) {
2293
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-[var(--spacing-system-xxs)]", children: [
2294
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xxs)]", children: [
2295
- isTechnician && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQZXJUYVcjs.SquareAvatar, { variant: "round", sizePx: 24, src: avatarUrl, alt: authorName, className: "shrink-0" }),
2199
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: MESSAGE_ROW_CLASS, children: [
2200
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: MESSAGE_HEAD_CLASS, children: [
2201
+ isTechnician && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJTSUAHDLcjs.SquareAvatar, { variant: "round", sizePx: 24, src: avatarUrl, alt: authorName, className: "shrink-0" }),
2296
2202
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2297
2203
  "span",
2298
2204
  {
2299
- className: _chunk3ATAYP36cjs.cn.call(void 0,
2300
- "min-w-0 flex-1 truncate text-h4 [font-family:var(--font-family-heading)]",
2205
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
2206
+ MESSAGE_NAME_CLASS,
2301
2207
  isTechnician ? "text-ods-accent" : "text-ods-text-secondary"
2302
2208
  ),
2303
2209
  children: authorName
2304
2210
  }
2305
2211
  ),
2306
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { suppressHydrationWarning: true, className: "shrink-0 text-ods-text-secondary text-h6", children: _chunkGZKWF6NHcjs.formatTime.call(void 0, sentAt) })
2212
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { suppressHydrationWarning: true, className: "shrink-0 text-ods-text-secondary text-h6", children: _chunkXZ6DKGT4cjs.formatTime.call(void 0, sentAt) })
2307
2213
  ] }),
2308
2214
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "whitespace-pre-wrap text-ods-text-primary text-h4", children: body })
2309
2215
  ] });
2310
2216
  }
2217
+ function RemoteDesktopChatMessageRowSkeleton() {
2218
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: MESSAGE_ROW_CLASS, "aria-hidden": true, children: [
2219
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: MESSAGE_HEAD_CLASS, children: [
2220
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: MESSAGE_NAME_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-24" }) }),
2221
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "h6", as: "span", className: "w-12 shrink-0" })
2222
+ ] }),
2223
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "h4", className: "w-3/4" })
2224
+ ] });
2225
+ }
2311
2226
 
2312
2227
  // src/components/features/remote-session/remote-desktop-chat-panel.tsx
2313
2228
 
2314
2229
 
2230
+ var CHAT_PANEL_FOLD = 10;
2315
2231
  var REMOTE_DESKTOP_CHAT_END_USER_NAME = "User";
2316
2232
  function RemoteDesktopChatPanel({
2317
2233
  messages,
@@ -2331,12 +2247,19 @@ function RemoteDesktopChatPanel({
2331
2247
  "aside",
2332
2248
  {
2333
2249
  "aria-label": "Session chat",
2334
- className: _chunk3ATAYP36cjs.cn.call(void 0,
2250
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
2335
2251
  "flex flex-col gap-[var(--spacing-system-mf)] rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-mf)]",
2336
2252
  variant === "side" ? "h-full w-[400px] flex-shrink-0" : "absolute bottom-[var(--spacing-system-mf)] right-[var(--spacing-system-mf)] top-[calc(var(--spacing-system-xlf)+var(--spacing-system-mf))] z-10 w-[360px] shadow-lg"
2337
2253
  ),
2338
2254
  children: [
2339
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: scrollRef, className: "min-h-0 flex-1 overflow-y-auto", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-full flex-col justify-end gap-[var(--spacing-system-xsf)]", children: rows.length === 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-center text-ods-text-muted text-h6", children: loading ? "Loading the chat..." : "No messages yet - say hello to the user." }) : rows.map((message) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2255
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: scrollRef, className: "min-h-0 flex-1 overflow-y-auto", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-full flex-col justify-end gap-[var(--spacing-system-xsf)]", children: rows.length === 0 && loading ? (
2256
+ // The chat while it is read: a screen of the panel's own message rows, stacked by a one-column grid
2257
+ // (the thread above is already the column flexbox: WEBVIEW-001).
2258
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWEANWBJHcjs.LoadingRegion, { label: "Loading the chat", className: "grid grid-cols-1 gap-[var(--spacing-system-xsf)]", children: Array.from({ length: CHAT_PANEL_FOLD }, (_, i) => (
2259
+ // biome-ignore lint/suspicious/noArrayIndexKey: skeleton rows never reorder
2260
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RemoteDesktopChatMessageRowSkeleton, {}, i)
2261
+ )) })
2262
+ ) : rows.length === 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-center text-ods-text-muted text-h6", children: "No messages yet - say hello to the user." }) : rows.map((message) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2340
2263
  RemoteDesktopChatMessageRow,
2341
2264
  {
2342
2265
  authorName: message.name || (message.author === "technician" ? technician.name : REMOTE_DESKTOP_CHAT_END_USER_NAME),
@@ -2348,7 +2271,7 @@ function RemoteDesktopChatPanel({
2348
2271
  message.id
2349
2272
  )) }) }),
2350
2273
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2351
- _chunkGZKWF6NHcjs.ChatInput,
2274
+ _chunkXZ6DKGT4cjs.ChatInput,
2352
2275
  {
2353
2276
  placeholder: "Enter your Message...",
2354
2277
  onSend,
@@ -2392,7 +2315,7 @@ function RemoteDesktopFullscreenToolbar({
2392
2315
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-[var(--spacing-system-xsf)]", children: [
2393
2316
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h6", children: deviceName }),
2394
2317
  displayMenuGroups.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2395
- _chunkEFTUFJS2cjs.ActionsMenuDropdown,
2318
+ _chunkLELS4XMXcjs.ActionsMenuDropdown,
2396
2319
  {
2397
2320
  groups: displayMenuGroups,
2398
2321
  customTrigger: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -2413,7 +2336,7 @@ function RemoteDesktopFullscreenToolbar({
2413
2336
  ] }),
2414
2337
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-shrink-0 items-center gap-[var(--spacing-system-xs)]", children: [
2415
2338
  onToggleChat && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2416
- _chunk2QMBXGMQcjs.Button,
2339
+ _chunkTF5D5MNOcjs.Button,
2417
2340
  {
2418
2341
  variant: "outline",
2419
2342
  size: "small",
@@ -2423,11 +2346,11 @@ function RemoteDesktopFullscreenToolbar({
2423
2346
  }
2424
2347
  ),
2425
2348
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2426
- _chunkEFTUFJS2cjs.ActionsMenuDropdown,
2349
+ _chunkLELS4XMXcjs.ActionsMenuDropdown,
2427
2350
  {
2428
2351
  groups: actionsMenuGroups,
2429
2352
  customTrigger: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2430
- _chunk2QMBXGMQcjs.Button,
2353
+ _chunkTF5D5MNOcjs.Button,
2431
2354
  {
2432
2355
  variant: "outline",
2433
2356
  size: "icon-sm",
@@ -2438,7 +2361,7 @@ function RemoteDesktopFullscreenToolbar({
2438
2361
  }
2439
2362
  ),
2440
2363
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2441
- _chunk2QMBXGMQcjs.Button,
2364
+ _chunkTF5D5MNOcjs.Button,
2442
2365
  {
2443
2366
  variant: "outline",
2444
2367
  size: "icon-sm",
@@ -2448,7 +2371,7 @@ function RemoteDesktopFullscreenToolbar({
2448
2371
  }
2449
2372
  ),
2450
2373
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2451
- _chunk2QMBXGMQcjs.Button,
2374
+ _chunkTF5D5MNOcjs.Button,
2452
2375
  {
2453
2376
  variant: "outline",
2454
2377
  size: "icon-sm",
@@ -2484,9 +2407,25 @@ function RemoteDesktopView({
2484
2407
  onToggleChat,
2485
2408
  screen,
2486
2409
  chat,
2487
- children
2410
+ children,
2411
+ loading: loadingProp = false
2488
2412
  }) {
2489
- const controlsBar = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: CONTROLS_BAR_CLASS, children: [
2413
+ const inScope = _chunkXFRBEXQNcjs.useLoadingScope.call(void 0, );
2414
+ const loading = inScope || loadingProp;
2415
+ const controlsBar = loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: CONTROLS_BAR_CLASS, "aria-hidden": true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: CONTROLS_ROW_CLASS, children: [
2416
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-mf)]", children: [
2417
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-shrink-0 rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-xsf)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPTK7GOIIcjs.MonitorIcon, { className: "h-4 w-4 text-ods-text-primary" }) }),
2418
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col", children: [
2419
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "h4", className: "w-48 max-w-full" }),
2420
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "h6", className: "w-36 max-w-full" })
2421
+ ] })
2422
+ ] }),
2423
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-shrink-0 items-center gap-[var(--spacing-system-xs)]", children: [
2424
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.InteractiveSkeleton.Button, { size: "icon" }),
2425
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.InteractiveSkeleton.Button, { size: "icon" }),
2426
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.InteractiveSkeleton.Button, { size: "icon" })
2427
+ ] })
2428
+ ] }) }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: CONTROLS_BAR_CLASS, children: [
2490
2429
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: CONTROLS_ROW_CLASS, children: [
2491
2430
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-mf)]", children: [
2492
2431
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-shrink-0 rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-xsf)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPTK7GOIIcjs.MonitorIcon, { className: "h-4 w-4 text-ods-text-primary" }) }),
@@ -2504,7 +2443,7 @@ function RemoteDesktopView({
2504
2443
  ] }),
2505
2444
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-shrink-0 items-center gap-[var(--spacing-system-xs)]", children: [
2506
2445
  onToggleChat && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2507
- _chunk2QMBXGMQcjs.Button,
2446
+ _chunkTF5D5MNOcjs.Button,
2508
2447
  {
2509
2448
  variant: "outline",
2510
2449
  onClick: onToggleChat,
@@ -2512,9 +2451,9 @@ function RemoteDesktopView({
2512
2451
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "sr-only content-md:not-sr-only", children: chatOpen ? "Close Chat" : "Open Chat" })
2513
2452
  }
2514
2453
  ),
2515
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.ActionsMenuDropdown, { groups: actionsMenuGroups, triggerAriaLabel: "Actions" }),
2454
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLELS4XMXcjs.ActionsMenuDropdown, { groups: actionsMenuGroups, triggerAriaLabel: "Actions" }),
2516
2455
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2517
- _chunk2QMBXGMQcjs.Button,
2456
+ _chunkTF5D5MNOcjs.Button,
2518
2457
  {
2519
2458
  variant: "outline",
2520
2459
  size: "icon",
@@ -2524,7 +2463,7 @@ function RemoteDesktopView({
2524
2463
  }
2525
2464
  ),
2526
2465
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2527
- _chunk2QMBXGMQcjs.Button,
2466
+ _chunkTF5D5MNOcjs.Button,
2528
2467
  {
2529
2468
  variant: "outline",
2530
2469
  size: "icon",
@@ -2536,7 +2475,7 @@ function RemoteDesktopView({
2536
2475
  ] })
2537
2476
  ] }),
2538
2477
  displayMenuGroups.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2539
- _chunkEFTUFJS2cjs.ActionsMenuDropdown,
2478
+ _chunkLELS4XMXcjs.ActionsMenuDropdown,
2540
2479
  {
2541
2480
  groups: displayMenuGroups,
2542
2481
  align: "start",
@@ -2556,6 +2495,12 @@ function RemoteDesktopView({
2556
2495
  }
2557
2496
  )
2558
2497
  ] });
2498
+ if (loading) {
2499
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PageLayout, { className: PAGE_CLASS, backButton: onBack ? { label: "Back", onClick: onBack } : void 0, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkWEANWBJHcjs.LoadingRegion, { label: "Loading the remote session", announce: !inScope, className: "contents", children: [
2500
+ controlsBar,
2501
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-0 min-w-0 flex-1 rounded-lg bg-black" })
2502
+ ] }) });
2503
+ }
2559
2504
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
2560
2505
  PageLayout,
2561
2506
  {
@@ -2587,28 +2532,6 @@ function RemoteDesktopView({
2587
2532
  }
2588
2533
  );
2589
2534
  }
2590
- function RemoteDesktopViewSkeleton({
2591
- onBack,
2592
- region = true
2593
- }) {
2594
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PageLayout, { className: PAGE_CLASS, backButton: onBack ? { label: "Back", onClick: onBack } : void 0, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkNO5UJLLQcjs.LoadingRegion, { label: "Loading the remote session", announce: region, className: "contents", children: [
2595
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: CONTROLS_BAR_CLASS, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: CONTROLS_ROW_CLASS, children: [
2596
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-[var(--spacing-system-mf)]", children: [
2597
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-9 w-9 flex-shrink-0 rounded-md" }),
2598
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
2599
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-5 w-48" }),
2600
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-4 w-36" })
2601
- ] })
2602
- ] }),
2603
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-shrink-0 items-center gap-[var(--spacing-system-xs)]", children: [
2604
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-11 w-11 rounded-lg md:h-12 md:w-12" }),
2605
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-11 w-11 rounded-lg md:h-12 md:w-12" }),
2606
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-11 w-11 rounded-lg md:h-12 md:w-12" })
2607
- ] })
2608
- ] }) }),
2609
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-0 min-w-0 flex-1 rounded-lg bg-black" })
2610
- ] }) });
2611
- }
2612
2535
 
2613
2536
  // src/components/features/remote-session/remote-session-dialog.tsx
2614
2537
 
@@ -2630,8 +2553,8 @@ function RemoteSessionDialog({
2630
2553
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full text-ods-text-primary text-h4", children: "The technician will lose access to your device immediately." })
2631
2554
  ] }),
2632
2555
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-stretch gap-[var(--spacing-system-l)]", children: [
2633
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "outline", fullWidth: true, disabled: ending, onClick: onClose, children: "Cancel" }),
2634
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "destructive", fullWidth: true, loading: ending, onClick: onEndSession, children: "End Session" })
2556
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTF5D5MNOcjs.Button, { variant: "outline", fullWidth: true, disabled: ending, onClick: onClose, children: "Cancel" }),
2557
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTF5D5MNOcjs.Button, { variant: "destructive", fullWidth: true, loading: ending, onClick: onEndSession, children: "End Session" })
2635
2558
  ] })
2636
2559
  ] });
2637
2560
  }
@@ -2645,7 +2568,7 @@ function RemoteSessionDialog({
2645
2568
  copy.suffix
2646
2569
  ] })
2647
2570
  ] }),
2648
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { variant: "outline", className: "w-1/2", onClick: onClose, children: "Close" }) })
2571
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full justify-end", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTF5D5MNOcjs.Button, { variant: "outline", className: "w-1/2", onClick: onClose, children: "Close" }) })
2649
2572
  ] });
2650
2573
  }
2651
2574
  function DialogCard({ children }) {
@@ -2655,7 +2578,7 @@ function DialogCard({ children }) {
2655
2578
  // src/components/features/remote-session/remote-session-overlay.tsx
2656
2579
 
2657
2580
  function RemoteSessionBorder({ className }) {
2658
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "pointer-events-none size-full border-4 border-ods-warning", className) });
2581
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, "pointer-events-none size-full border-4 border-ods-warning", className) });
2659
2582
  }
2660
2583
  function RemoteSessionPill({ onEndSession }) {
2661
2584
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -2715,9 +2638,9 @@ function KeepRecordingModal({
2715
2638
  if (!canKeep || isPending) return;
2716
2639
  onConfirm({ reason, description: reason === "OTHER" ? trimmed : null });
2717
2640
  };
2718
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.Modal, { isOpen, onClose: isPending ? () => {
2641
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXZ6DKGT4cjs.Modal, { isOpen, onClose: isPending ? () => {
2719
2642
  } : onClose, className: "text-left md:max-w-[600px]", children: [
2720
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalTitle, { children: "Keep this recording" }) }),
2643
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXZ6DKGT4cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXZ6DKGT4cjs.ModalTitle, { children: "Keep this recording" }) }),
2721
2644
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
2722
2645
  KeepNotice,
2723
2646
  {
@@ -2744,7 +2667,7 @@ function KeepRecordingModal({
2744
2667
  }
2745
2668
  ),
2746
2669
  reason === "OTHER" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2747
- _chunkHTRILBJDcjs.Input,
2670
+ _chunkYXDHVHB2cjs.Input,
2748
2671
  {
2749
2672
  "aria-label": "Reason description",
2750
2673
  value: description,
@@ -2755,11 +2678,11 @@ function KeepRecordingModal({
2755
2678
  }
2756
2679
  )
2757
2680
  ] }),
2758
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.ModalFooter, { children: [
2759
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2681
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXZ6DKGT4cjs.ModalFooter, { children: [
2682
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTF5D5MNOcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2760
2683
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
2761
2684
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2762
- _chunk2QMBXGMQcjs.Button,
2685
+ _chunkTF5D5MNOcjs.Button,
2763
2686
  {
2764
2687
  type: "button",
2765
2688
  variant: "accent",
@@ -2785,9 +2708,9 @@ function ReleaseKeepingModal({
2785
2708
  isPending = false,
2786
2709
  onConfirm
2787
2710
  }) {
2788
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.Modal, { isOpen, onClose: isPending ? () => {
2711
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXZ6DKGT4cjs.Modal, { isOpen, onClose: isPending ? () => {
2789
2712
  } : onClose, className: "text-left md:max-w-[600px]", children: [
2790
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalTitle, { children: "Release Keeping" }) }),
2713
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXZ6DKGT4cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXZ6DKGT4cjs.ModalTitle, { children: "Release Keeping" }) }),
2791
2714
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-xsf)] text-ods-text-primary text-h4", children: [
2792
2715
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { children: [
2793
2716
  "Kept by ",
@@ -2804,10 +2727,10 @@ function ReleaseKeepingModal({
2804
2727
  ] })
2805
2728
  ] }),
2806
2729
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, KeepNotice, { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkILWSAV64cjs.HourglassIcon, { size: 24, color: "currentColor" }), title: `It will expire on ${expiresOn}`, children: dueOn ? `It was due to expire on ${dueOn}. Releasing gives it 3 days' grace, and it shows amber until then. Whoever placed the Keep is reminded the day before it goes. Nothing is deleted now.` : "Nothing is deleted now." }),
2807
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.ModalFooter, { children: [
2808
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2730
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXZ6DKGT4cjs.ModalFooter, { children: [
2731
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTF5D5MNOcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2809
2732
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
2810
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "accent", onClick: onConfirm, loading: isPending, className: "flex-1", children: "Release Keeping" })
2733
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTF5D5MNOcjs.Button, { type: "button", variant: "accent", onClick: onConfirm, loading: isPending, className: "flex-1", children: "Release Keeping" })
2811
2734
  ] })
2812
2735
  ] });
2813
2736
  }
@@ -2838,7 +2761,7 @@ function AssignTicketModal({
2838
2761
  setTicketIds(ids);
2839
2762
  setTitles((prev) => {
2840
2763
  const next = {};
2841
- for (const id of ids) next[id] = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'access', _28 => _28.find, 'call', _29 => _29((option) => option.value === id), 'optionalAccess', _30 => _30.label]), () => ( prev[id])), () => ( id));
2764
+ for (const id of ids) next[id] = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'access', _29 => _29.find, 'call', _30 => _30((option) => option.value === id), 'optionalAccess', _31 => _31.label]), () => ( prev[id])), () => ( id));
2842
2765
  return next;
2843
2766
  });
2844
2767
  };
@@ -2846,9 +2769,9 @@ function AssignTicketModal({
2846
2769
  if (ticketIds.length === 0 || isPending) return;
2847
2770
  onConfirm(ticketIds);
2848
2771
  };
2849
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.Modal, { isOpen, onClose: isPending ? () => {
2772
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXZ6DKGT4cjs.Modal, { isOpen, onClose: isPending ? () => {
2850
2773
  } : onClose, className: "text-left md:max-w-[600px]", children: [
2851
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalTitle, { children: "Assign Ticket" }) }),
2774
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXZ6DKGT4cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXZ6DKGT4cjs.ModalTitle, { children: "Assign Ticket" }) }),
2852
2775
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2853
2776
  Autocomplete,
2854
2777
  {
@@ -2867,11 +2790,11 @@ function AssignTicketModal({
2867
2790
  disabled: isPending
2868
2791
  }
2869
2792
  ),
2870
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.ModalFooter, { children: [
2871
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2793
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXZ6DKGT4cjs.ModalFooter, { children: [
2794
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTF5D5MNOcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2872
2795
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
2873
2796
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2874
- _chunk2QMBXGMQcjs.Button,
2797
+ _chunkTF5D5MNOcjs.Button,
2875
2798
  {
2876
2799
  type: "button",
2877
2800
  variant: "accent",
@@ -2886,14 +2809,14 @@ function AssignTicketModal({
2886
2809
  ] });
2887
2810
  }
2888
2811
  function UnassignTicketModal({ isOpen, onClose, isPending = false, onConfirm }) {
2889
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.Modal, { isOpen, onClose: isPending ? () => {
2812
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXZ6DKGT4cjs.Modal, { isOpen, onClose: isPending ? () => {
2890
2813
  } : onClose, className: "text-left md:max-w-[600px]", children: [
2891
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGZKWF6NHcjs.ModalTitle, { children: "Unassign Ticket" }) }),
2814
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXZ6DKGT4cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXZ6DKGT4cjs.ModalTitle, { children: "Unassign Ticket" }) }),
2892
2815
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full text-ods-text-primary text-h4", children: "This Ticket will no longer be linked to this remote session. The ticket itself stays as it is, and you can assign it again anytime." }),
2893
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkGZKWF6NHcjs.ModalFooter, { children: [
2894
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2816
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXZ6DKGT4cjs.ModalFooter, { children: [
2817
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTF5D5MNOcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2895
2818
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
2896
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "destructive", onClick: onConfirm, loading: isPending, className: "flex-1", children: "Unassign" })
2819
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTF5D5MNOcjs.Button, { type: "button", variant: "destructive", onClick: onConfirm, loading: isPending, className: "flex-1", children: "Unassign" })
2897
2820
  ] })
2898
2821
  ] });
2899
2822
  }
@@ -2908,15 +2831,15 @@ function formatRemoteSessionOffset(offsetMs) {
2908
2831
  return hours > 0 ? `${hours}:${minutes}:${seconds}` : `${minutes}:${seconds}`;
2909
2832
  }
2910
2833
  function RemoteSessionEventList({ events, activeEventId, onSelect, className }) {
2911
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "section", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex w-full flex-col gap-[var(--spacing-system-xxs)]", className), children: [
2834
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "section", { className: _chunk65VVJSQZcjs.cn.call(void 0, "flex w-full flex-col gap-[var(--spacing-system-xxs)]", className), children: [
2912
2835
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "text-ods-text-secondary text-h5", children: "Session Events" }),
2913
2836
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ol", { className: "flex w-full flex-col gap-[var(--spacing-system-xxs)] rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-m)]", children: events.map((event) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "li", { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
2914
2837
  "button",
2915
2838
  {
2916
2839
  type: "button",
2917
2840
  "aria-current": event.id === activeEventId || void 0,
2918
- onClick: () => _optionalChain([onSelect, 'optionalCall', _31 => _31(event)]),
2919
- className: _chunk3ATAYP36cjs.cn.call(void 0,
2841
+ onClick: () => _optionalChain([onSelect, 'optionalCall', _32 => _32(event)]),
2842
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
2920
2843
  "flex w-full items-start gap-[var(--spacing-system-xxs)] rounded-md p-[var(--spacing-system-xxs)] text-left outline-none transition-colors",
2921
2844
  "hover:bg-ods-bg-hover focus-visible:ring-2 focus-visible:ring-ods-focus",
2922
2845
  event.id === activeEventId && "bg-ods-border hover:bg-ods-border"
@@ -2939,7 +2862,7 @@ function RemoteSessionTimelineMarkers({
2939
2862
  className
2940
2863
  }) {
2941
2864
  if (durationMs <= 0) return null;
2942
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "relative h-4 w-full", className), children: events.map((event) => {
2865
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, "relative h-4 w-full", className), children: events.map((event) => {
2943
2866
  const share = Math.min(1, Math.max(0, event.offsetMs / durationMs));
2944
2867
  const label = `${event.title} at ${formatRemoteSessionOffset(event.offsetMs)}`;
2945
2868
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -2948,7 +2871,7 @@ function RemoteSessionTimelineMarkers({
2948
2871
  type: "button",
2949
2872
  "aria-label": label,
2950
2873
  title: label,
2951
- onClick: () => _optionalChain([onSelect, 'optionalCall', _32 => _32(event)]),
2874
+ onClick: () => _optionalChain([onSelect, 'optionalCall', _33 => _33(event)]),
2952
2875
  style: { left: `${share * 100}%` },
2953
2876
  className: "absolute top-0 h-4 w-1 -translate-x-1/2 rounded-md bg-ods-text-secondary outline-none transition-colors hover:bg-ods-text-primary focus-visible:ring-2 focus-visible:ring-ods-focus"
2954
2877
  },
@@ -2970,25 +2893,25 @@ var STATUS_TAG = {
2970
2893
  function RemoteSessionStatusTag({ status, className }) {
2971
2894
  const { label, variant } = STATUS_TAG[status];
2972
2895
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2973
- _chunkEQZXJUYVcjs.Tag,
2896
+ _chunkJTSUAHDLcjs.Tag,
2974
2897
  {
2975
2898
  label,
2976
2899
  variant,
2977
2900
  icon: status === "live" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, LiveDot, {}) : void 0,
2978
- className: _chunk3ATAYP36cjs.cn.call(void 0, "pointer-events-none shrink-0", className)
2901
+ className: _chunk65VVJSQZcjs.cn.call(void 0, "pointer-events-none shrink-0", className)
2979
2902
  }
2980
2903
  );
2981
2904
  }
2982
2905
  function RemoteSessionExpiry(props) {
2983
2906
  const { className } = props;
2984
2907
  if (props.state === "none") {
2985
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunk3ATAYP36cjs.cn.call(void 0, "text-ods-text-primary text-h4", className), children: "-" });
2908
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunk65VVJSQZcjs.cn.call(void 0, "text-ods-text-primary text-h4", className), children: "-" });
2986
2909
  }
2987
2910
  if (props.state === "expired") {
2988
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunk3ATAYP36cjs.cn.call(void 0, "text-ods-text-secondary text-h4", className), children: "Expired" });
2911
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: _chunk65VVJSQZcjs.cn.call(void 0, "text-ods-text-secondary text-h4", className), children: "Expired" });
2989
2912
  }
2990
2913
  if (props.state === "kept") {
2991
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex min-w-0 flex-col", className), children: [
2914
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, "flex min-w-0 flex-col", className), children: [
2992
2915
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "flex items-center gap-[var(--spacing-system-xxs)] text-ods-text-primary text-h4", children: [
2993
2916
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMT45XX7Icjs.LockIcon, { size: 24, color: "currentColor", className: "shrink-0" }),
2994
2917
  "Kept"
@@ -3001,7 +2924,7 @@ function RemoteSessionExpiry(props) {
3001
2924
  ] })
3002
2925
  ] });
3003
2926
  }
3004
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex min-w-0 flex-col", className), children: [
2927
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, "flex min-w-0 flex-col", className), children: [
3005
2928
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: props.date }),
3006
2929
  props.remaining && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate text-ods-text-secondary text-h6", children: props.remaining })
3007
2930
  ] });
@@ -3012,7 +2935,7 @@ function RemoteSessionStorageAlert({ scope, capacity, className }) {
3012
2935
  "div",
3013
2936
  {
3014
2937
  role: "alert",
3015
- className: _chunk3ATAYP36cjs.cn.call(void 0,
2938
+ className: _chunk65VVJSQZcjs.cn.call(void 0,
3016
2939
  "flex w-full items-start gap-[var(--spacing-system-m)] rounded-md bg-ods-warning-secondary p-[var(--spacing-system-s)] text-ods-warning",
3017
2940
  className
3018
2941
  ),
@@ -3085,4 +3008,8 @@ var DEVICE_WALLPAPER_CLASS = "bg-gradient-to-br from-ods-flamingo-cyan-secondary
3085
3008
 
3086
3009
 
3087
3010
 
3088
- exports.SplitButton = SplitButton; exports.HiddenTagsPopup = HiddenTagsPopup; exports.TruncateText = TruncateText; exports.Autocomplete = Autocomplete; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.BACK_BUTTON_SKELETON_CLASS = BACK_BUTTON_SKELETON_CLASS; exports.BackButton = BackButton; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.EntityImage = EntityImage; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.RemoteSessionViewers = RemoteSessionViewers; exports.RemoteSessionScope = RemoteSessionScope; exports.RemoteSessionOrgLogo = RemoteSessionOrgLogo; exports.RemoteSessionRecordingTag = RemoteSessionRecordingTag; exports.REMOTE_SESSION_DRAG_HANDLE_CLASS = REMOTE_SESSION_DRAG_HANDLE_CLASS; exports.RemoteSessionDragger = RemoteSessionDragger; exports.formatRemoteSessionElapsed = formatRemoteSessionElapsed; exports.useRemoteSessionTimer = useRemoteSessionTimer; exports.RemoteAccessRequestCard = RemoteAccessRequestCard; exports.RemoteSessionBlockFrame = RemoteSessionBlockFrame; exports.RemoteSessionEndButton = RemoteSessionEndButton; exports.RemoteSessionSummary = RemoteSessionSummary; exports.RemoteSessionMinimizedChip = RemoteSessionMinimizedChip; exports.RemoteSessionChatPanel = RemoteSessionChatPanel; exports.RemoteDesktopChatMessageRow = RemoteDesktopChatMessageRow; exports.REMOTE_DESKTOP_CHAT_END_USER_NAME = REMOTE_DESKTOP_CHAT_END_USER_NAME; exports.RemoteDesktopChatPanel = RemoteDesktopChatPanel; exports.RemoteDesktopFullscreenToolbar = RemoteDesktopFullscreenToolbar; exports.RemoteDesktopView = RemoteDesktopView; exports.RemoteDesktopViewSkeleton = RemoteDesktopViewSkeleton; exports.RemoteSessionDialog = RemoteSessionDialog; exports.RemoteSessionBorder = RemoteSessionBorder; exports.RemoteSessionPill = RemoteSessionPill; exports.REMOTE_SESSION_KEEP_REASON_LABELS = REMOTE_SESSION_KEEP_REASON_LABELS; exports.KeepRecordingModal = KeepRecordingModal; exports.ReleaseKeepingModal = ReleaseKeepingModal; exports.AssignTicketModal = AssignTicketModal; exports.UnassignTicketModal = UnassignTicketModal; exports.formatRemoteSessionOffset = formatRemoteSessionOffset; exports.RemoteSessionEventList = RemoteSessionEventList; exports.RemoteSessionTimelineMarkers = RemoteSessionTimelineMarkers; exports.RemoteSessionStatusTag = RemoteSessionStatusTag; exports.RemoteSessionExpiry = RemoteSessionExpiry; exports.RemoteSessionStorageAlert = RemoteSessionStorageAlert; exports.DEVICE_WALLPAPER_CLASS = DEVICE_WALLPAPER_CLASS;
3011
+
3012
+
3013
+
3014
+
3015
+ exports.HiddenTagsPopup = HiddenTagsPopup; exports.TruncateText = TruncateText; exports.AutocompleteSkeleton = AutocompleteSkeleton; exports.Autocomplete = Autocomplete; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.BACK_BUTTON_SKELETON_CLASS = BACK_BUTTON_SKELETON_CLASS; exports.BackButton = BackButton; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PagePicture = PagePicture; exports.PageTitle = PageTitle; exports.ENTITY_IMAGE_SIZE = ENTITY_IMAGE_SIZE; exports.EntityImage = EntityImage; exports.EntityImageSkeleton = EntityImageSkeleton; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.RemoteSessionViewers = RemoteSessionViewers; exports.RemoteSessionScope = RemoteSessionScope; exports.RemoteSessionOrgLogo = RemoteSessionOrgLogo; exports.RemoteSessionRecordingTag = RemoteSessionRecordingTag; exports.REMOTE_SESSION_DRAG_HANDLE_CLASS = REMOTE_SESSION_DRAG_HANDLE_CLASS; exports.RemoteSessionDragger = RemoteSessionDragger; exports.formatRemoteSessionElapsed = formatRemoteSessionElapsed; exports.useRemoteSessionTimer = useRemoteSessionTimer; exports.RemoteAccessRequestCard = RemoteAccessRequestCard; exports.RemoteSessionBlockFrame = RemoteSessionBlockFrame; exports.RemoteSessionEndButton = RemoteSessionEndButton; exports.RemoteSessionSummary = RemoteSessionSummary; exports.RemoteSessionMinimizedChip = RemoteSessionMinimizedChip; exports.RemoteSessionChatPanel = RemoteSessionChatPanel; exports.RemoteDesktopChatMessageRow = RemoteDesktopChatMessageRow; exports.RemoteDesktopChatMessageRowSkeleton = RemoteDesktopChatMessageRowSkeleton; exports.REMOTE_DESKTOP_CHAT_END_USER_NAME = REMOTE_DESKTOP_CHAT_END_USER_NAME; exports.RemoteDesktopChatPanel = RemoteDesktopChatPanel; exports.RemoteDesktopFullscreenToolbar = RemoteDesktopFullscreenToolbar; exports.RemoteDesktopView = RemoteDesktopView; exports.RemoteSessionDialog = RemoteSessionDialog; exports.RemoteSessionBorder = RemoteSessionBorder; exports.RemoteSessionPill = RemoteSessionPill; exports.REMOTE_SESSION_KEEP_REASON_LABELS = REMOTE_SESSION_KEEP_REASON_LABELS; exports.KeepRecordingModal = KeepRecordingModal; exports.ReleaseKeepingModal = ReleaseKeepingModal; exports.AssignTicketModal = AssignTicketModal; exports.UnassignTicketModal = UnassignTicketModal; exports.formatRemoteSessionOffset = formatRemoteSessionOffset; exports.RemoteSessionEventList = RemoteSessionEventList; exports.RemoteSessionTimelineMarkers = RemoteSessionTimelineMarkers; exports.RemoteSessionStatusTag = RemoteSessionStatusTag; exports.RemoteSessionExpiry = RemoteSessionExpiry; exports.RemoteSessionStorageAlert = RemoteSessionStorageAlert; exports.DEVICE_WALLPAPER_CLASS = DEVICE_WALLPAPER_CLASS;