@flamingo-stack/openframe-frontend-core 0.0.711 → 0.0.713

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 (528) hide show
  1. package/dist/chunk-2NASBO7O.js +1137 -0
  2. package/dist/{chunk-RQRX4YC3.cjs → chunk-2RKFMUNW.cjs} +46 -46
  3. package/dist/chunk-2Y7QZAB2.cjs +158 -0
  4. package/dist/chunk-34I6XI3N.js +136 -0
  5. package/dist/{chunk-VWFZRMQR.js → chunk-3BB3IEJI.js} +13 -7
  6. package/dist/chunk-3K5ZLZE7.js +292 -0
  7. package/dist/chunk-3LU4UFPS.cjs +14 -0
  8. package/dist/{chunk-G47AP6LX.cjs → chunk-3QGUDPIH.cjs} +35 -33
  9. package/dist/{chunk-3UNL26CD.cjs → chunk-3RKBJT6K.cjs} +8 -6
  10. package/dist/chunk-4HJRHEXD.cjs +1612 -0
  11. package/dist/{chunk-JPG7OHEG.js → chunk-4QFWGLZO.js} +1 -1
  12. package/dist/chunk-4R2L3DSA.js +14 -0
  13. package/dist/{chunk-VMMHJFHG.js → chunk-6F4QOCGB.js} +10 -8
  14. package/dist/{chunk-Q6B35Y7O.js → chunk-6MNAIQNR.js} +22 -113
  15. package/dist/{chunk-KUC673HM.js → chunk-6T3BTD6Q.js} +204 -982
  16. package/dist/{chunk-F57ECE2I.js → chunk-6YPTUHM7.js} +4 -4
  17. package/dist/chunk-AAYNCJMW.cjs +48 -0
  18. package/dist/{chunk-FXJ3WWUB.js → chunk-ADBE7QF3.js} +5 -252
  19. package/dist/chunk-AECTRMGQ.cjs +334 -0
  20. package/dist/chunk-AGVXKD4K.js +334 -0
  21. package/dist/chunk-AL2GUHAJ.cjs +18 -0
  22. package/dist/{chunk-WMX26HB5.js → chunk-APJZBDQN.js} +12 -12
  23. package/dist/chunk-AUMKE74M.cjs +16 -0
  24. package/dist/chunk-B4NCVYEQ.cjs +292 -0
  25. package/dist/{chunk-WJUIXU6Y.js → chunk-CGHOH3GN.js} +28 -22
  26. package/dist/chunk-CMGFZHCN.js +233 -0
  27. package/dist/chunk-CMZ3QTFQ.js +1207 -0
  28. package/dist/chunk-CPA2CKRZ.cjs +125 -0
  29. package/dist/chunk-CYUUHFXL.js +41 -0
  30. package/dist/chunk-DC4RTYWK.cjs +1122 -0
  31. package/dist/{chunk-NF7GNGYG.js → chunk-DDWFCWOE.js} +5 -7
  32. package/dist/{chunk-QA6TROME.cjs → chunk-EOKSKJSS.cjs} +25 -83
  33. package/dist/{chunk-6NTPY5QA.cjs → chunk-ETYLOZOB.cjs} +978 -2413
  34. package/dist/{chunk-6AMIRXKM.cjs → chunk-F2EACDOR.cjs} +93 -87
  35. package/dist/chunk-F5BPGWGT.cjs +931 -0
  36. package/dist/chunk-FFT56TYB.cjs +401 -0
  37. package/dist/chunk-FYEJTF5Y.js +125 -0
  38. package/dist/chunk-G3GRYDMS.js +16 -0
  39. package/dist/chunk-G6OHIX5C.cjs +100 -0
  40. package/dist/{chunk-UDFRUKLC.cjs → chunk-GEDY7HQI.cjs} +2 -2
  41. package/dist/chunk-GQ7JJUIT.cjs +1207 -0
  42. package/dist/chunk-H3PKYE4N.js +18 -0
  43. package/dist/{chunk-EQWD4IJE.js → chunk-H4J72PRA.js} +74 -46
  44. package/dist/{chunk-AGDVEUVL.js → chunk-H5R7U2D2.js} +206 -5
  45. package/dist/{chunk-7AM6C6XH.cjs → chunk-HETQETPV.cjs} +9641 -9678
  46. package/dist/{chunk-Y2GSOUCS.cjs → chunk-HWVUR735.cjs} +2 -2
  47. package/dist/chunk-II4QMH26.cjs +35 -0
  48. package/dist/{chunk-XWEBHS7O.cjs → chunk-IJKMILMG.cjs} +82 -54
  49. package/dist/chunk-ILNN6QRW.js +1612 -0
  50. package/dist/{chunk-6GLQLTJI.js → chunk-IU4IO3CG.js} +35 -27
  51. package/dist/chunk-IYVFSLWJ.js +931 -0
  52. package/dist/{chunk-EX6GGCAC.cjs → chunk-J7YIQJPS.cjs} +15 -15
  53. package/dist/chunk-JHQ334WS.js +655 -0
  54. package/dist/{chunk-WCVZCGK5.cjs → chunk-JO5TLJPM.cjs} +129 -907
  55. package/dist/{chunk-PRX7HVLE.cjs → chunk-JVCAK4W3.cjs} +210 -9
  56. package/dist/chunk-KBJJQFYU.js +1122 -0
  57. package/dist/chunk-KEKCQENI.js +48 -0
  58. package/dist/{chunk-P6G3JZNC.cjs → chunk-KGAFUXGZ.cjs} +57 -148
  59. package/dist/chunk-KHXZFLIN.cjs +41 -0
  60. package/dist/{chunk-C4HRRB3V.cjs → chunk-KMB7JHGG.cjs} +23 -17
  61. package/dist/{chunk-K4PTDK34.js → chunk-KPUHSVJU.js} +322 -428
  62. package/dist/chunk-KT3U3ZRP.cjs +1137 -0
  63. package/dist/chunk-L2VUINHN.js +35 -0
  64. package/dist/{chunk-PLYEKV3N.cjs → chunk-MA4Q5RBP.cjs} +6 -6
  65. package/dist/chunk-NPAQSMRY.js +2087 -0
  66. package/dist/{chunk-IFWLJ66M.js → chunk-NQWJAOHO.js} +6 -4
  67. package/dist/{chunk-FYOKS5RI.cjs → chunk-OQKRXLTZ.cjs} +4719 -6351
  68. package/dist/chunk-P3JMAMHP.js +401 -0
  69. package/dist/{chunk-62KNLDXK.js → chunk-P6QCJXLD.js} +3 -3
  70. package/dist/chunk-PPXR22YC.cjs +2087 -0
  71. package/dist/chunk-PSVSEN4J.cjs +655 -0
  72. package/dist/{chunk-CDM7OSFB.cjs → chunk-QQQ46DFT.cjs} +125 -117
  73. package/dist/{chunk-FEMAJES4.cjs → chunk-QU4AHNRL.cjs} +41 -39
  74. package/dist/{chunk-2JTGK64G.js → chunk-RBVUIOIM.js} +12 -10
  75. package/dist/{chunk-SMAAV3HL.js → chunk-ROBQ5TR7.js} +10541 -10578
  76. package/dist/{chunk-TKZXHVBG.js → chunk-RRYNHAEL.js} +5 -5
  77. package/dist/{chunk-5HB7FLCV.js → chunk-STPC2AQU.js} +8338 -9970
  78. package/dist/{chunk-6K7QZDA6.cjs → chunk-TC4W7QDC.cjs} +8 -8
  79. package/dist/{chunk-FI6GMDO7.js → chunk-TTVOLEUS.js} +3605 -5040
  80. package/dist/{chunk-LM7TXMLU.cjs → chunk-ULWVKHSI.cjs} +8 -255
  81. package/dist/chunk-WANCBTUE.js +71 -0
  82. package/dist/{chunk-BIZNSF3U.cjs → chunk-WBNAEYTQ.cjs} +2 -51
  83. package/dist/chunk-WFPCCBOM.cjs +71 -0
  84. package/dist/chunk-WI6FHKD7.js +158 -0
  85. package/dist/chunk-WMNCVLES.js +100 -0
  86. package/dist/{chunk-UT4YHQZW.js → chunk-WSDT7LYL.js} +0 -49
  87. package/dist/chunk-WVOTC7HW.cjs +136 -0
  88. package/dist/chunk-XXBLN4BP.cjs +233 -0
  89. package/dist/{chunk-4IBPRIQH.js → chunk-YBQQNDC7.js} +1 -1
  90. package/dist/{chunk-QGZPZ3RL.js → chunk-YBS5QGON.js} +70 -128
  91. package/dist/{chunk-K6Y5NX6L.cjs → chunk-YIUSW4DB.cjs} +114 -220
  92. package/dist/{chunk-YD4LJZV4.cjs → chunk-ZX7SCPLO.cjs} +6 -8
  93. package/dist/cloud-tenants-HRJYNUJM.cjs +117 -0
  94. package/dist/cloud-tenants-SM7WLEGG.js +117 -0
  95. package/dist/components/case-studies/index.cjs +45 -29
  96. package/dist/components/case-studies/index.js +32 -16
  97. package/dist/components/chat/ask-prompts.d.ts +64 -0
  98. package/dist/components/chat/ask-prompts.d.ts.map +1 -0
  99. package/dist/components/chat/entity-cards/case-study-card.d.ts +6 -3
  100. package/dist/components/chat/entity-cards/case-study-card.d.ts.map +1 -1
  101. package/dist/components/chat/index.cjs +27 -8
  102. package/dist/components/chat/index.d.ts +1 -0
  103. package/dist/components/chat/index.d.ts.map +1 -1
  104. package/dist/components/chat/index.js +57 -38
  105. package/dist/components/chat/quick-action-chip.d.ts +7 -3
  106. package/dist/components/chat/quick-action-chip.d.ts.map +1 -1
  107. package/dist/components/contact/index.cjs +29 -13
  108. package/dist/components/contact/index.js +28 -12
  109. package/dist/components/docs/index.cjs +33 -16
  110. package/dist/components/docs/index.js +33 -16
  111. package/dist/components/docs/use-scroll-spy.d.ts +23 -1
  112. package/dist/components/docs/use-scroll-spy.d.ts.map +1 -1
  113. package/dist/components/embeds/index.cjs +29 -13
  114. package/dist/components/embeds/index.js +28 -12
  115. package/dist/components/faq/faq-section.d.ts +8 -1
  116. package/dist/components/faq/faq-section.d.ts.map +1 -1
  117. package/dist/components/faq/index.cjs +30 -14
  118. package/dist/components/faq/index.js +29 -13
  119. package/dist/components/features/approval-level.d.ts +49 -0
  120. package/dist/components/features/approval-level.d.ts.map +1 -0
  121. package/dist/components/features/array-entry-manager.d.ts +5 -1
  122. package/dist/components/features/array-entry-manager.d.ts.map +1 -1
  123. package/dist/components/features/board/board.d.ts +2 -0
  124. package/dist/components/features/board/board.d.ts.map +1 -1
  125. package/dist/components/features/board/ticket-card.d.ts.map +1 -1
  126. package/dist/components/features/board/touch-board.d.ts +1 -1
  127. package/dist/components/features/board/touch-board.d.ts.map +1 -1
  128. package/dist/components/features/board/types.d.ts +3 -0
  129. package/dist/components/features/board/types.d.ts.map +1 -1
  130. package/dist/components/features/board/use-board-collapse.d.ts +6 -1
  131. package/dist/components/features/board/use-board-collapse.d.ts.map +1 -1
  132. package/dist/components/features/capability-explorer.d.ts +94 -0
  133. package/dist/components/features/capability-explorer.d.ts.map +1 -0
  134. package/dist/components/features/cloud-tenants/index.d.ts +14 -0
  135. package/dist/components/features/cloud-tenants/index.d.ts.map +1 -0
  136. package/dist/components/features/cloud-tenants/tenant-access-cell.d.ts +9 -0
  137. package/dist/components/features/cloud-tenants/tenant-access-cell.d.ts.map +1 -0
  138. package/dist/components/features/cloud-tenants/tenant-cell.d.ts +8 -0
  139. package/dist/components/features/cloud-tenants/tenant-cell.d.ts.map +1 -0
  140. package/dist/components/features/cloud-tenants/tenant-customer-cell.d.ts +9 -0
  141. package/dist/components/features/cloud-tenants/tenant-customer-cell.d.ts.map +1 -0
  142. package/dist/components/features/cloud-tenants/tenant-presentation.d.ts +42 -0
  143. package/dist/components/features/cloud-tenants/tenant-presentation.d.ts.map +1 -0
  144. package/dist/components/features/cloud-tenants/tenant-row.d.ts +22 -0
  145. package/dist/components/features/cloud-tenants/tenant-row.d.ts.map +1 -0
  146. package/dist/components/features/cloud-tenants/tenants-table-columns.d.ts +42 -0
  147. package/dist/components/features/cloud-tenants/tenants-table-columns.d.ts.map +1 -0
  148. package/dist/components/features/cloud-tenants/tenants-table-view.d.ts +26 -0
  149. package/dist/components/features/cloud-tenants/tenants-table-view.d.ts.map +1 -0
  150. package/dist/components/features/devices/device-last-online.d.ts +3 -0
  151. package/dist/components/features/devices/device-last-online.d.ts.map +1 -0
  152. package/dist/components/features/devices/device-name.d.ts +42 -0
  153. package/dist/components/features/devices/device-name.d.ts.map +1 -0
  154. package/dist/components/features/devices/device-selector/device-selection-mode-radio.d.ts +26 -0
  155. package/dist/components/features/devices/device-selector/device-selection-mode-radio.d.ts.map +1 -0
  156. package/dist/components/features/devices/device-selector/device-selector-skeleton.d.ts +25 -0
  157. package/dist/components/features/devices/device-selector/device-selector-skeleton.d.ts.map +1 -0
  158. package/dist/components/features/devices/device-selector/device-selector.d.ts +38 -0
  159. package/dist/components/features/devices/device-selector/device-selector.d.ts.map +1 -0
  160. package/dist/components/features/devices/device-selector/device-selector.types.d.ts +133 -0
  161. package/dist/components/features/devices/device-selector/device-selector.types.d.ts.map +1 -0
  162. package/dist/components/features/devices/device-selector/narrowing.d.ts +13 -0
  163. package/dist/components/features/devices/device-selector/narrowing.d.ts.map +1 -0
  164. package/dist/components/features/devices/device-selector/use-device-selector.d.ts +17 -0
  165. package/dist/components/features/devices/device-selector/use-device-selector.d.ts.map +1 -0
  166. package/dist/components/features/devices/device-status.d.ts +23 -0
  167. package/dist/components/features/devices/device-status.d.ts.map +1 -0
  168. package/dist/components/features/devices/device-statuses.d.ts +40 -0
  169. package/dist/components/features/devices/device-statuses.d.ts.map +1 -0
  170. package/dist/components/features/devices/device-tags-filter-button.d.ts +22 -0
  171. package/dist/components/features/devices/device-tags-filter-button.d.ts.map +1 -0
  172. package/dist/components/features/devices/device-type-icon.d.ts +11 -0
  173. package/dist/components/features/devices/device-type-icon.d.ts.map +1 -0
  174. package/dist/components/features/devices/device-type-tile.d.ts +9 -0
  175. package/dist/components/features/devices/device-type-tile.d.ts.map +1 -0
  176. package/dist/components/features/devices/devices-filter-toolbar.d.ts +46 -0
  177. package/dist/components/features/devices/devices-filter-toolbar.d.ts.map +1 -0
  178. package/dist/components/features/devices/devices-grid-filters.d.ts +25 -0
  179. package/dist/components/features/devices/devices-grid-filters.d.ts.map +1 -0
  180. package/dist/components/features/devices/devices-grid.d.ts +12 -0
  181. package/dist/components/features/devices/devices-grid.d.ts.map +1 -0
  182. package/dist/components/features/devices/devices-list.d.ts +131 -0
  183. package/dist/components/features/devices/devices-list.d.ts.map +1 -0
  184. package/dist/components/features/devices/devices-panel-header.d.ts +46 -0
  185. package/dist/components/features/devices/devices-panel-header.d.ts.map +1 -0
  186. package/dist/components/features/devices/devices-panel-view.d.ts +79 -0
  187. package/dist/components/features/devices/devices-panel-view.d.ts.map +1 -0
  188. package/dist/components/features/devices/devices-table-columns.d.ts +76 -0
  189. package/dist/components/features/devices/devices-table-columns.d.ts.map +1 -0
  190. package/dist/components/features/devices/devices-view-config.d.ts +25 -0
  191. package/dist/components/features/devices/devices-view-config.d.ts.map +1 -0
  192. package/dist/components/features/devices/index.d.ts +24 -0
  193. package/dist/components/features/devices/index.d.ts.map +1 -0
  194. package/dist/components/features/devices/types.d.ts +68 -0
  195. package/dist/components/features/devices/types.d.ts.map +1 -0
  196. package/dist/components/features/devices/use-tag-filter-modal.d.ts +50 -0
  197. package/dist/components/features/devices/use-tag-filter-modal.d.ts.map +1 -0
  198. package/dist/components/features/index.cjs +235 -12
  199. package/dist/components/features/index.d.ts +8 -0
  200. package/dist/components/features/index.d.ts.map +1 -1
  201. package/dist/components/features/index.js +274 -51
  202. package/dist/components/features/knowledge-base/index.d.ts +7 -0
  203. package/dist/components/features/knowledge-base/index.d.ts.map +1 -0
  204. package/dist/components/features/knowledge-base/knowledge-base-article-view.d.ts +44 -0
  205. package/dist/components/features/knowledge-base/knowledge-base-article-view.d.ts.map +1 -0
  206. package/dist/components/features/knowledge-base/knowledge-base-item-icon.d.ts +13 -0
  207. package/dist/components/features/knowledge-base/knowledge-base-item-icon.d.ts.map +1 -0
  208. package/dist/components/features/knowledge-base/knowledge-base-status.d.ts +8 -0
  209. package/dist/components/features/knowledge-base/knowledge-base-status.d.ts.map +1 -0
  210. package/dist/components/features/knowledge-base/knowledge-base-table.d.ts +52 -0
  211. package/dist/components/features/knowledge-base/knowledge-base-table.d.ts.map +1 -0
  212. package/dist/components/features/logs/index.d.ts +12 -0
  213. package/dist/components/features/logs/index.d.ts.map +1 -0
  214. package/dist/components/features/logs/log-drawer.d.ts +29 -0
  215. package/dist/components/features/logs/log-drawer.d.ts.map +1 -0
  216. package/dist/components/features/logs/log-source-labels.d.ts +11 -0
  217. package/dist/components/features/logs/log-source-labels.d.ts.map +1 -0
  218. package/dist/components/features/logs/logs-page-view.d.ts +32 -0
  219. package/dist/components/features/logs/logs-page-view.d.ts.map +1 -0
  220. package/dist/components/features/logs/logs-table-columns.d.ts +15 -0
  221. package/dist/components/features/logs/logs-table-columns.d.ts.map +1 -0
  222. package/dist/components/features/logs/logs-table-view.d.ts +64 -0
  223. package/dist/components/features/logs/logs-table-view.d.ts.map +1 -0
  224. package/dist/components/features/logs/types.d.ts +52 -0
  225. package/dist/components/features/logs/types.d.ts.map +1 -0
  226. package/dist/components/features/policies/compute-policy-summary.d.ts +37 -0
  227. package/dist/components/features/policies/compute-policy-summary.d.ts.map +1 -0
  228. package/dist/components/features/policies/index.d.ts +8 -0
  229. package/dist/components/features/policies/index.d.ts.map +1 -0
  230. package/dist/components/features/policies/policies-table.d.ts +34 -0
  231. package/dist/components/features/policies/policies-table.d.ts.map +1 -0
  232. package/dist/components/features/policies/policy-summary-cards.d.ts +17 -0
  233. package/dist/components/features/policies/policy-summary-cards.d.ts.map +1 -0
  234. package/dist/components/features/policies/policy-table-row.d.ts +37 -0
  235. package/dist/components/features/policies/policy-table-row.d.ts.map +1 -0
  236. package/dist/components/features/policy-configuration-panel.d.ts.map +1 -1
  237. package/dist/components/features/remote-session/index.d.ts +8 -0
  238. package/dist/components/features/remote-session/index.d.ts.map +1 -1
  239. package/dist/components/features/remote-session/remote-desktop-chat-message-row.d.ts +21 -0
  240. package/dist/components/features/remote-session/remote-desktop-chat-message-row.d.ts.map +1 -0
  241. package/dist/components/features/remote-session/remote-desktop-chat-panel.d.ts +31 -0
  242. package/dist/components/features/remote-session/remote-desktop-chat-panel.d.ts.map +1 -0
  243. package/dist/components/features/remote-session/remote-desktop-fullscreen-toolbar.d.ts +21 -0
  244. package/dist/components/features/remote-session/remote-desktop-fullscreen-toolbar.d.ts.map +1 -0
  245. package/dist/components/features/remote-session/remote-desktop-view.d.ts +50 -0
  246. package/dist/components/features/remote-session/remote-desktop-view.d.ts.map +1 -0
  247. package/dist/components/features/software/index.d.ts +8 -0
  248. package/dist/components/features/software/index.d.ts.map +1 -0
  249. package/dist/components/features/software/package-managers.d.ts +30 -0
  250. package/dist/components/features/software/package-managers.d.ts.map +1 -0
  251. package/dist/components/features/software/package-search-field-placeholder.d.ts +7 -0
  252. package/dist/components/features/software/package-search-field-placeholder.d.ts.map +1 -0
  253. package/dist/components/features/software/schedule-fields.d.ts +34 -0
  254. package/dist/components/features/software/schedule-fields.d.ts.map +1 -0
  255. package/dist/components/features/software/software-action-copy.d.ts +25 -0
  256. package/dist/components/features/software/software-action-copy.d.ts.map +1 -0
  257. package/dist/components/features/software/software-action-form.d.ts +71 -0
  258. package/dist/components/features/software/software-action-form.d.ts.map +1 -0
  259. package/dist/components/features/software/software-row-fields.d.ts +23 -0
  260. package/dist/components/features/software/software-row-fields.d.ts.map +1 -0
  261. package/dist/components/features/software/software-row.d.ts +18 -0
  262. package/dist/components/features/software/software-row.d.ts.map +1 -0
  263. package/dist/components/features/sortable-list/index.d.ts +1 -0
  264. package/dist/components/features/sortable-list/index.d.ts.map +1 -1
  265. package/dist/components/features/sortable-list/sortable-drag-handle.d.ts +21 -0
  266. package/dist/components/features/sortable-list/sortable-drag-handle.d.ts.map +1 -0
  267. package/dist/components/help-center-pages/index.cjs +133 -114
  268. package/dist/components/help-center-pages/index.js +58 -39
  269. package/dist/components/index.cjs +328 -82
  270. package/dist/components/index.js +459 -213
  271. package/dist/components/layout/page-heading.d.ts +12 -3
  272. package/dist/components/layout/page-heading.d.ts.map +1 -1
  273. package/dist/components/meeting-scheduler/index.cjs +120 -98
  274. package/dist/components/meeting-scheduler/index.js +50 -28
  275. package/dist/components/navigation/index.cjs +36 -17
  276. package/dist/components/navigation/index.d.ts +3 -0
  277. package/dist/components/navigation/index.d.ts.map +1 -1
  278. package/dist/components/navigation/index.js +36 -17
  279. package/dist/components/navigation/mingo-ai-button.d.ts +23 -10
  280. package/dist/components/navigation/mingo-ai-button.d.ts.map +1 -1
  281. package/dist/components/navigation/sticky-section-nav.d.ts +14 -1
  282. package/dist/components/navigation/sticky-section-nav.d.ts.map +1 -1
  283. package/dist/components/onboarding-guides/index.cjs +32 -16
  284. package/dist/components/onboarding-guides/index.js +31 -15
  285. package/dist/components/product-demo/cast.d.ts +58 -0
  286. package/dist/components/product-demo/cast.d.ts.map +1 -0
  287. package/dist/components/product-demo/fixtures/cloud-tenants.d.ts +10 -0
  288. package/dist/components/product-demo/fixtures/cloud-tenants.d.ts.map +1 -0
  289. package/dist/components/product-demo/fixtures/devices.d.ts +14 -0
  290. package/dist/components/product-demo/fixtures/devices.d.ts.map +1 -0
  291. package/dist/components/product-demo/fixtures/knowledge.d.ts +14 -0
  292. package/dist/components/product-demo/fixtures/knowledge.d.ts.map +1 -0
  293. package/dist/components/product-demo/fixtures/logs.d.ts +15 -0
  294. package/dist/components/product-demo/fixtures/logs.d.ts.map +1 -0
  295. package/dist/components/product-demo/fixtures/policies.d.ts +13 -0
  296. package/dist/components/product-demo/fixtures/policies.d.ts.map +1 -0
  297. package/dist/components/product-demo/fixtures/remote-session.d.ts +20 -0
  298. package/dist/components/product-demo/fixtures/remote-session.d.ts.map +1 -0
  299. package/dist/components/product-demo/fixtures/shared.d.ts +156 -0
  300. package/dist/components/product-demo/fixtures/shared.d.ts.map +1 -0
  301. package/dist/components/product-demo/fixtures/software-update.d.ts +19 -0
  302. package/dist/components/product-demo/fixtures/software-update.d.ts.map +1 -0
  303. package/dist/components/product-demo/fixtures/tickets-board.d.ts +8 -0
  304. package/dist/components/product-demo/fixtures/tickets-board.d.ts.map +1 -0
  305. package/dist/components/product-demo/index.cjs +112 -0
  306. package/dist/components/product-demo/index.d.ts +6 -0
  307. package/dist/components/product-demo/index.d.ts.map +1 -0
  308. package/dist/components/product-demo/index.js +112 -0
  309. package/dist/components/product-demo/product-screen.d.ts +22 -0
  310. package/dist/components/product-demo/product-screen.d.ts.map +1 -0
  311. package/dist/components/product-demo/registry.d.ts +13 -0
  312. package/dist/components/product-demo/registry.d.ts.map +1 -0
  313. package/dist/components/product-demo/screen-keys.cjs +25 -0
  314. package/dist/components/product-demo/screen-keys.d.ts +27 -0
  315. package/dist/components/product-demo/screen-keys.d.ts.map +1 -0
  316. package/dist/components/product-demo/screen-keys.js +20 -0
  317. package/dist/components/product-demo/screens/cloud-tenants.d.ts +8 -0
  318. package/dist/components/product-demo/screens/cloud-tenants.d.ts.map +1 -0
  319. package/dist/components/product-demo/screens/devices.d.ts +10 -0
  320. package/dist/components/product-demo/screens/devices.d.ts.map +1 -0
  321. package/dist/components/product-demo/screens/knowledge.d.ts +9 -0
  322. package/dist/components/product-demo/screens/knowledge.d.ts.map +1 -0
  323. package/dist/components/product-demo/screens/logs.d.ts +4 -0
  324. package/dist/components/product-demo/screens/logs.d.ts.map +1 -0
  325. package/dist/components/product-demo/screens/policies.d.ts +8 -0
  326. package/dist/components/product-demo/screens/policies.d.ts.map +1 -0
  327. package/dist/components/product-demo/screens/remote-desktop-picture.d.ts +11 -0
  328. package/dist/components/product-demo/screens/remote-desktop-picture.d.ts.map +1 -0
  329. package/dist/components/product-demo/screens/remote-session.d.ts +8 -0
  330. package/dist/components/product-demo/screens/remote-session.d.ts.map +1 -0
  331. package/dist/components/product-demo/screens/software-update.d.ts +12 -0
  332. package/dist/components/product-demo/screens/software-update.d.ts.map +1 -0
  333. package/dist/components/product-demo/screens/tickets-board.d.ts +4 -0
  334. package/dist/components/product-demo/screens/tickets-board.d.ts.map +1 -0
  335. package/dist/components/product-demo/types.d.ts +9 -0
  336. package/dist/components/product-demo/types.d.ts.map +1 -0
  337. package/dist/components/related-content/index.cjs +14 -8
  338. package/dist/components/related-content/index.js +13 -7
  339. package/dist/components/tickets/index.cjs +36 -20
  340. package/dist/components/tickets/index.js +35 -19
  341. package/dist/components/ui/file-manager/index.cjs +38 -34
  342. package/dist/components/ui/file-manager/index.js +8 -4
  343. package/dist/components/ui/index.cjs +57 -17
  344. package/dist/components/ui/index.d.ts +1 -0
  345. package/dist/components/ui/index.d.ts.map +1 -1
  346. package/dist/components/ui/index.js +141 -101
  347. package/dist/components/ui/product-screen-frame.d.ts +45 -0
  348. package/dist/components/ui/product-screen-frame.d.ts.map +1 -0
  349. package/dist/components/ui/radio-group.d.ts +5 -0
  350. package/dist/components/ui/radio-group.d.ts.map +1 -1
  351. package/dist/components/ui/snap-carousel.d.ts +11 -1
  352. package/dist/components/ui/snap-carousel.d.ts.map +1 -1
  353. package/dist/components/ui/tag.d.ts +1 -1
  354. package/dist/components/ui/tag.d.ts.map +1 -1
  355. package/dist/devices-6XKQTQM5.cjs +81 -0
  356. package/dist/devices-LXSFGGEZ.js +81 -0
  357. package/dist/hooks/index.cjs +17 -8
  358. package/dist/hooks/index.js +32 -23
  359. package/dist/hooks/ui/index.d.ts +1 -0
  360. package/dist/hooks/ui/index.d.ts.map +1 -1
  361. package/dist/hooks/ui/use-header-height.d.ts +12 -0
  362. package/dist/hooks/ui/use-header-height.d.ts.map +1 -1
  363. package/dist/hooks/ui/use-sticky-toolbar.d.ts +29 -0
  364. package/dist/hooks/ui/use-sticky-toolbar.d.ts.map +1 -0
  365. package/dist/hooks/use-location-hash.d.ts +2 -2
  366. package/dist/hooks/use-location-hash.d.ts.map +1 -1
  367. package/dist/hooks/use-scroll-to-hash.d.ts +7 -0
  368. package/dist/hooks/use-scroll-to-hash.d.ts.map +1 -1
  369. package/dist/index.cjs +284 -25
  370. package/dist/index.js +737 -478
  371. package/dist/knowledge-7PDZLXPO.cjs +108 -0
  372. package/dist/knowledge-Q4SPFOTN.js +108 -0
  373. package/dist/logs-SZ4VB4FE.js +216 -0
  374. package/dist/logs-TO3NELGJ.cjs +216 -0
  375. package/dist/policies-533GQVFM.cjs +121 -0
  376. package/dist/policies-LB7VW2UB.js +121 -0
  377. package/dist/remote-session-GSGZOFDX.js +196 -0
  378. package/dist/remote-session-R6VAFESR.cjs +196 -0
  379. package/dist/software-update-DT2XSG7M.cjs +179 -0
  380. package/dist/software-update-ENZNVGKP.js +179 -0
  381. package/dist/tickets-board-BHLPAVNJ.cjs +137 -0
  382. package/dist/tickets-board-PYDNELSK.js +137 -0
  383. package/dist/types/case-study.d.ts +15 -1
  384. package/dist/types/case-study.d.ts.map +1 -1
  385. package/dist/utils/date-utils.d.ts +5 -0
  386. package/dist/utils/date-utils.d.ts.map +1 -1
  387. package/dist/utils/index.cjs +45 -2
  388. package/dist/utils/index.d.ts +2 -1
  389. package/dist/utils/index.d.ts.map +1 -1
  390. package/dist/utils/index.js +41 -3
  391. package/dist/utils/open-in-new-tab.d.ts +7 -0
  392. package/dist/utils/open-in-new-tab.d.ts.map +1 -0
  393. package/dist/utils/same-page-hash-nav.d.ts +31 -0
  394. package/dist/utils/same-page-hash-nav.d.ts.map +1 -1
  395. package/dist/utils/scroll-into-view.d.ts +14 -1
  396. package/dist/utils/scroll-into-view.d.ts.map +1 -1
  397. package/package.json +13 -1
  398. package/src/components/chat/ask-prompts.tsx +226 -0
  399. package/src/components/chat/embeddable-chat.tsx +36 -2
  400. package/src/components/chat/entity-cards/case-study-card.tsx +122 -46
  401. package/src/components/chat/index.ts +1 -0
  402. package/src/components/chat/quick-action-chip.tsx +33 -9
  403. package/src/components/docs/use-scroll-spy.ts +93 -18
  404. package/src/components/faq/faq-section.tsx +82 -43
  405. package/src/components/features/approval-level.tsx +149 -0
  406. package/src/components/features/array-entry-manager.tsx +10 -1
  407. package/src/components/features/board/board.tsx +4 -1
  408. package/src/components/features/board/ticket-card.tsx +11 -1
  409. package/src/components/features/board/touch-board.tsx +2 -1
  410. package/src/components/features/board/types.ts +3 -0
  411. package/src/components/features/board/use-board-collapse.ts +7 -2
  412. package/src/components/features/capability-explorer.tsx +412 -0
  413. package/src/components/features/cloud-tenants/index.ts +28 -0
  414. package/src/components/features/cloud-tenants/tenant-access-cell.tsx +24 -0
  415. package/src/components/features/cloud-tenants/tenant-cell.tsx +26 -0
  416. package/src/components/features/cloud-tenants/tenant-customer-cell.tsx +27 -0
  417. package/src/components/features/cloud-tenants/tenant-presentation.ts +111 -0
  418. package/src/components/features/cloud-tenants/tenant-row.ts +21 -0
  419. package/src/components/features/cloud-tenants/tenants-table-columns.ts +30 -0
  420. package/src/components/features/cloud-tenants/tenants-table-view.tsx +142 -0
  421. package/src/components/features/devices/device-last-online.ts +6 -0
  422. package/src/components/features/devices/device-name.ts +51 -0
  423. package/src/components/features/devices/device-selector/device-selection-mode-radio.tsx +107 -0
  424. package/src/components/features/devices/device-selector/device-selector-skeleton.tsx +32 -0
  425. package/src/components/features/devices/device-selector/device-selector.tsx +799 -0
  426. package/src/components/features/devices/device-selector/device-selector.types.ts +138 -0
  427. package/src/components/features/devices/device-selector/narrowing.ts +33 -0
  428. package/src/components/features/devices/device-selector/use-device-selector.ts +51 -0
  429. package/src/components/features/devices/device-status.ts +102 -0
  430. package/src/components/features/devices/device-statuses.ts +88 -0
  431. package/src/components/features/devices/device-tags-filter-button.tsx +49 -0
  432. package/src/components/features/devices/device-type-icon.tsx +29 -0
  433. package/src/components/features/devices/device-type-tile.tsx +17 -0
  434. package/src/components/features/devices/devices-filter-toolbar.tsx +114 -0
  435. package/src/components/features/devices/devices-grid-filters.tsx +99 -0
  436. package/src/components/features/devices/devices-grid.tsx +86 -0
  437. package/src/components/features/devices/devices-list.tsx +357 -0
  438. package/src/components/features/devices/devices-panel-header.tsx +97 -0
  439. package/src/components/features/devices/devices-panel-view.tsx +261 -0
  440. package/src/components/features/devices/devices-table-columns.tsx +356 -0
  441. package/src/components/features/devices/devices-view-config.tsx +38 -0
  442. package/src/components/features/devices/index.ts +89 -0
  443. package/src/components/features/devices/types.ts +74 -0
  444. package/src/components/features/devices/use-tag-filter-modal.ts +109 -0
  445. package/src/components/features/index.ts +10 -0
  446. package/src/components/features/knowledge-base/index.ts +19 -0
  447. package/src/components/features/knowledge-base/knowledge-base-article-view.tsx +134 -0
  448. package/src/components/features/knowledge-base/knowledge-base-item-icon.ts +14 -0
  449. package/src/components/features/knowledge-base/knowledge-base-status.ts +12 -0
  450. package/src/components/features/knowledge-base/knowledge-base-table.tsx +180 -0
  451. package/src/components/features/logs/index.ts +20 -0
  452. package/src/components/features/logs/log-drawer.tsx +138 -0
  453. package/src/components/features/logs/log-source-labels.ts +25 -0
  454. package/src/components/features/logs/logs-page-view.tsx +100 -0
  455. package/src/components/features/logs/logs-table-columns.ts +16 -0
  456. package/src/components/features/logs/logs-table-view.tsx +509 -0
  457. package/src/components/features/logs/types.ts +71 -0
  458. package/src/components/features/policies/compute-policy-summary.ts +115 -0
  459. package/src/components/features/policies/index.ts +14 -0
  460. package/src/components/features/policies/policies-table.tsx +235 -0
  461. package/src/components/features/policies/policy-summary-cards.tsx +69 -0
  462. package/src/components/features/policies/policy-table-row.ts +37 -0
  463. package/src/components/features/policy-configuration-panel.tsx +3 -12
  464. package/src/components/features/remote-session/index.ts +8 -0
  465. package/src/components/features/remote-session/remote-desktop-chat-message-row.tsx +56 -0
  466. package/src/components/features/remote-session/remote-desktop-chat-panel.tsx +102 -0
  467. package/src/components/features/remote-session/remote-desktop-fullscreen-toolbar.tsx +119 -0
  468. package/src/components/features/remote-session/remote-desktop-view.tsx +209 -0
  469. package/src/components/features/software/index.ts +39 -0
  470. package/src/components/features/software/package-managers.ts +54 -0
  471. package/src/components/features/software/package-search-field-placeholder.tsx +23 -0
  472. package/src/components/features/software/schedule-fields.tsx +105 -0
  473. package/src/components/features/software/software-action-copy.ts +70 -0
  474. package/src/components/features/software/software-action-form.tsx +199 -0
  475. package/src/components/features/software/software-row-fields.tsx +105 -0
  476. package/src/components/features/software/software-row.ts +22 -0
  477. package/src/components/features/sortable-list/index.ts +1 -0
  478. package/src/components/features/sortable-list/sortable-drag-handle.tsx +41 -0
  479. package/src/components/layout/page-heading.tsx +23 -6
  480. package/src/components/navigation/index.ts +5 -0
  481. package/src/components/navigation/mingo-ai-button.tsx +37 -13
  482. package/src/components/navigation/sticky-section-nav.tsx +99 -1
  483. package/src/components/product-demo/cast.tsx +78 -0
  484. package/src/components/product-demo/fixtures/cloud-tenants.ts +63 -0
  485. package/src/components/product-demo/fixtures/devices.ts +87 -0
  486. package/src/components/product-demo/fixtures/knowledge.ts +48 -0
  487. package/src/components/product-demo/fixtures/logs.ts +103 -0
  488. package/src/components/product-demo/fixtures/policies.ts +77 -0
  489. package/src/components/product-demo/fixtures/remote-session.ts +65 -0
  490. package/src/components/product-demo/fixtures/shared.ts +53 -0
  491. package/src/components/product-demo/fixtures/software-update.ts +63 -0
  492. package/src/components/product-demo/fixtures/tickets-board.ts +100 -0
  493. package/src/components/product-demo/index.ts +7 -0
  494. package/src/components/product-demo/product-screen.tsx +94 -0
  495. package/src/components/product-demo/registry.ts +20 -0
  496. package/src/components/product-demo/screen-keys.ts +31 -0
  497. package/src/components/product-demo/screens/cloud-tenants.tsx +23 -0
  498. package/src/components/product-demo/screens/devices.tsx +41 -0
  499. package/src/components/product-demo/screens/knowledge.tsx +27 -0
  500. package/src/components/product-demo/screens/logs.tsx +113 -0
  501. package/src/components/product-demo/screens/policies.tsx +29 -0
  502. package/src/components/product-demo/screens/remote-desktop-picture.tsx +118 -0
  503. package/src/components/product-demo/screens/remote-session.tsx +46 -0
  504. package/src/components/product-demo/screens/software-update.tsx +97 -0
  505. package/src/components/product-demo/screens/tickets-board.tsx +28 -0
  506. package/src/components/product-demo/types.ts +10 -0
  507. package/src/components/ui/index.ts +1 -0
  508. package/src/components/ui/product-screen-frame.tsx +136 -0
  509. package/src/components/ui/radio-group.tsx +16 -4
  510. package/src/components/ui/snap-carousel.tsx +26 -1
  511. package/src/components/ui/tag.tsx +5 -0
  512. package/src/hooks/ui/index.ts +1 -0
  513. package/src/hooks/ui/use-header-height.ts +51 -2
  514. package/src/hooks/ui/use-sticky-toolbar.ts +60 -0
  515. package/src/hooks/use-location-hash.ts +9 -5
  516. package/src/hooks/use-scroll-to-hash.ts +9 -1
  517. package/src/types/case-study.ts +21 -1
  518. package/src/utils/date-utils.ts +8 -1
  519. package/src/utils/index.ts +5 -0
  520. package/src/utils/open-in-new-tab.ts +12 -0
  521. package/src/utils/same-page-hash-nav.ts +57 -0
  522. package/src/utils/scroll-into-view.ts +21 -5
  523. package/dist/chunk-BM5MVGH3.cjs +0 -499
  524. package/dist/chunk-CUME3VTQ.js +0 -144
  525. package/dist/chunk-CZ7Y7UG4.js +0 -732
  526. package/dist/chunk-FLKJYMVB.js +0 -499
  527. package/dist/chunk-OF6GEI5A.cjs +0 -144
  528. package/dist/chunk-UVTD52MD.cjs +0 -732
@@ -1 +1 @@
1
- {"version":3,"file":"case-study.d.ts","sourceRoot":"","sources":["../../src/types/case-study.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAI9B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAGvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAGvB,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGrC,iBAAiB,EAAE,SAAS,GAAG,UAAU,GAAG,IAAI,CAAC;IACjD,YAAY,EAAE,QAAQ,GAAG,cAAc,GAAG,IAAI,CAAC;IAC/C,WAAW,EAAE,WAAW,EAAE,CAAC;IAC3B,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IAKrC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,uGAAuG;IACvG,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACxC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,yBAAyB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,sBAAsB,CAAC,EAAE,QAAQ,GAAG,cAAc,GAAG,IAAI,CAAC;IAC1D,2BAA2B,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAG5C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAG5B,MAAM,EAAE,OAAO,GAAG,YAAY,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,CAAC;IACxE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAGzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IAGnB,UAAU,EAAE,MAAM,CAAC;IAGnB,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;IAC7B,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,GAAG,CAAC,EAAE,GAAG,CAAC;IACV,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;IACvC,oBAAoB,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAE7C,eAAe,CAAC,EAAE,QAAQ,EAAE,CAAC;CAC9B;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,GAAG,OAAO,GAAG,SAAS,GAAG,gBAAgB,CAAC,GAC5F,OAAO,CACL,IAAI,CACF,SAAS,EACT,gBAAgB,GAAG,sBAAsB,GAAG,qBAAqB,GAAG,2BAA2B,GAAG,aAAa,CAChH,CACF,GAAG;IACF,IAAI,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,WAAW,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC;IAC/F,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC;CACtC,CAAC;AAEJ,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAErC,iBAAiB,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;IAC3C,YAAY,CAAC,EAAE,QAAQ,GAAG,cAAc,CAAC;IACzC,WAAW,CAAC,EAAE,WAAW,EAAE,CAAC;IAC5B,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACxC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,yBAAyB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,sBAAsB,CAAC,EAAE,QAAQ,GAAG,cAAc,GAAG,IAAI,CAAC;IAC1D,2BAA2B,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,OAAO,GAAG,YAAY,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,CAAC;IACxE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,MAAM,MAAM,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAE/D,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,SAAS,EAAE,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf"}
1
+ {"version":3,"file":"case-study.d.ts","sourceRoot":"","sources":["../../src/types/case-study.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,11 @@ export declare function formatTicketFullTimestamp(iso: string): string;
26
26
  * formatRelativeTime(new Date()) // 'Just now'
27
27
  */
28
28
  export declare function formatRelativeTime(timestamp: string | Date): string;
29
+ /**
30
+ * {@link formatRelativeTime} against a given "now": for a view that renders
31
+ * with a fixed clock (a product screen fed by a fixture, a test).
32
+ */
33
+ export declare function formatRelativeTimeFrom(timestamp: string | Date, now: Date): string;
29
34
  /**
30
35
  * Format absolute date for display
31
36
  *
@@ -1 +1 @@
1
- {"version":3,"file":"date-utils.d.ts","sourceRoot":"","sources":["../../src/utils/date-utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAaH;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAY5D;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAI7D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CA8CnE;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,GAAE,IAAI,CAAC,qBAA0B,GAAG,MAAM,CAe7G;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,GAAE,IAAI,CAAC,qBAA0B,GAAG,MAAM,CAYzG;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAwB1E;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAKzD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAOlF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C"}
1
+ {"version":3,"file":"date-utils.d.ts","sourceRoot":"","sources":["../../src/utils/date-utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAaH;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAY5D;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAI7D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAEnE;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,IAAI,GAAG,MAAM,CA6ClF;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,GAAE,IAAI,CAAC,qBAA0B,GAAG,MAAM,CAe7G;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,GAAE,IAAI,CAAC,qBAA0B,GAAG,MAAM,CAYzG;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAwB1E;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAKzD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAOlF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C"}
@@ -3371,7 +3371,9 @@ function formatTicketFullTimestamp(iso) {
3371
3371
  return formatDateWithTimezone(iso, null, "numericDateTime");
3372
3372
  }
3373
3373
  function formatRelativeTime(timestamp) {
3374
- const now = /* @__PURE__ */ new Date();
3374
+ return formatRelativeTimeFrom(timestamp, /* @__PURE__ */ new Date());
3375
+ }
3376
+ function formatRelativeTimeFrom(timestamp, now) {
3375
3377
  const targetTime = typeof timestamp === "string" ? new Date(timestamp) : timestamp;
3376
3378
  if (isNaN(targetTime.getTime())) {
3377
3379
  console.warn("\u26A0\uFE0F Invalid timestamp in formatRelativeTime:", timestamp);
@@ -4757,6 +4759,14 @@ var OPENFRAME_DEV_SECTIONS = {
4757
4759
  }
4758
4760
  };
4759
4761
 
4762
+ // src/utils/open-in-new-tab.ts
4763
+ function openInNewTab(href) {
4764
+ return (event) => {
4765
+ event.preventDefault();
4766
+ window.open(href, "_blank", "noopener,noreferrer");
4767
+ };
4768
+ }
4769
+
4760
4770
  // src/utils/scroll-into-view.ts
4761
4771
  var activeRaf = 0;
4762
4772
  var teardownActive = null;
@@ -4780,6 +4790,10 @@ function getScrollableAncestor(el) {
4780
4790
  }
4781
4791
  return null;
4782
4792
  }
4793
+ function declaredScrollMarginTop(target) {
4794
+ const margin = Number.parseFloat(getComputedStyle(target).scrollMarginTop);
4795
+ return Number.isFinite(margin) ? margin : 0;
4796
+ }
4783
4797
  function scrollElementIntoView(target, options = {}) {
4784
4798
  if (typeof window === "undefined" || !target) return;
4785
4799
  const { headerOffset = 0, behavior = "smooth", adjustTargetY, durationMs = 320 } = options;
@@ -4790,7 +4804,8 @@ function scrollElementIntoView(target, options = {}) {
4790
4804
  else window.scrollTo(0, y);
4791
4805
  };
4792
4806
  const computeTarget = () => {
4793
- const raw = container ? container.scrollTop + (target.getBoundingClientRect().top - container.getBoundingClientRect().top) - headerOffset : target.getBoundingClientRect().top + window.scrollY - headerOffset;
4807
+ const offset = Math.max(headerOffset, declaredScrollMarginTop(target));
4808
+ const raw = container ? container.scrollTop + (target.getBoundingClientRect().top - container.getBoundingClientRect().top) - offset : target.getBoundingClientRect().top + window.scrollY - offset;
4794
4809
  const adjusted = adjustTargetY ? adjustTargetY(raw) : raw;
4795
4810
  const maxScroll = container ? Math.max(0, container.scrollHeight - container.clientHeight) : Math.max(0, document.documentElement.scrollHeight - window.innerHeight);
4796
4811
  return Math.min(Math.max(0, adjusted), maxScroll);
@@ -5028,6 +5043,29 @@ function getHashTargetElement(id) {
5028
5043
  }
5029
5044
  return findAnchorElementByNormalizedId(decoded, document);
5030
5045
  }
5046
+ var LOCATION_HASH_SYNC_EVENT = "locationhashsync";
5047
+ var ACTIVE_ANCHOR_ATTRIBUTE = "data-active-anchor";
5048
+ var HASH_SYNC_STATE_KEY = "__hashSync";
5049
+ var isRecord = (value) => typeof value === "object" && value !== null;
5050
+ function replaceLocationHash(id) {
5051
+ if (typeof window === "undefined") return;
5052
+ const { pathname, search, hash } = window.location;
5053
+ const next = id ? `#${id}` : "";
5054
+ const state = window.history.state;
5055
+ const noted = isRecord(state) ? state[HASH_SYNC_STATE_KEY] : void 0;
5056
+ if (hash === next && (noted === next || !next)) return;
5057
+ window.history.replaceState(
5058
+ { ...isRecord(state) ? state : {}, [HASH_SYNC_STATE_KEY]: next },
5059
+ "",
5060
+ `${pathname}${search}${next}`
5061
+ );
5062
+ if (hash !== next) window.dispatchEvent(new Event(LOCATION_HASH_SYNC_EVENT));
5063
+ }
5064
+ function isScrollSyncedHash() {
5065
+ if (typeof window === "undefined" || !window.location.hash) return false;
5066
+ const state = window.history.state;
5067
+ return isRecord(state) && state[HASH_SYNC_STATE_KEY] === window.location.hash;
5068
+ }
5031
5069
  function navigateSamePageHash(target, options = {}) {
5032
5070
  if (typeof window === "undefined") return false;
5033
5071
  const { headerOffset = 0, history: historyMode = "push" } = options;
@@ -6398,6 +6436,7 @@ function pathMatchesAny(pathname, patterns) {
6398
6436
  return (patterns ?? []).some((pattern) => matchesPathPattern(pathname, pattern));
6399
6437
  }
6400
6438
 
6439
+ exports.ACTIVE_ANCHOR_ATTRIBUTE = ACTIVE_ANCHOR_ATTRIBUTE;
6401
6440
  exports.ANTHROPIC_SUPPORTED_IMAGE_MIME = ANTHROPIC_SUPPORTED_IMAGE_MIME;
6402
6441
  exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX;
6403
6442
  exports.BADGE_PALETTE = BADGE_PALETTE;
@@ -6446,6 +6485,7 @@ exports.HUB_HEADER_OFFSET_PX = HUB_HEADER_OFFSET_PX;
6446
6485
  exports.HUMANITY_SIGNAL_KEYS = HUMANITY_SIGNAL_KEYS;
6447
6486
  exports.ICON_REGISTRY = ICON_REGISTRY;
6448
6487
  exports.IMAGE_FILE_ACCEPT = IMAGE_FILE_ACCEPT;
6488
+ exports.LOCATION_HASH_SYNC_EVENT = LOCATION_HASH_SYNC_EVENT;
6449
6489
  exports.MAX_MONTH_OFFSET = MAX_MONTH_OFFSET;
6450
6490
  exports.MEDIA_FILE_ACCEPT = MEDIA_FILE_ACCEPT;
6451
6491
  exports.MEDIA_TYPE = MEDIA_TYPE;
@@ -6704,6 +6744,7 @@ exports.isOrderedRange = isOrderedRange;
6704
6744
  exports.isPublishableMediaType = isPublishableMediaType;
6705
6745
  exports.isRescueEmail = isRescueEmail;
6706
6746
  exports.isResumeToken = isResumeToken;
6747
+ exports.isScrollSyncedHash = isScrollSyncedHash;
6707
6748
  exports.isToday = isToday;
6708
6749
  exports.isValidEmailDomain = isValidEmailDomain;
6709
6750
  exports.isValidPathPattern = isValidPathPattern;
@@ -6731,6 +6772,7 @@ exports.normalizeSchedulingSlug = normalizeSchedulingSlug;
6731
6772
  exports.normalizeSocialPlatform = normalizeSocialPlatform;
6732
6773
  exports.normalizeToolType = normalizeToolType;
6733
6774
  exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback;
6775
+ exports.openInNewTab = openInNewTab;
6734
6776
  exports.orderContentRefTypes = orderContentRefTypes;
6735
6777
  exports.pageCount = pageCount;
6736
6778
  exports.parseAttributionFromUrl = parseAttributionFromUrl;
@@ -6770,6 +6812,7 @@ exports.readDismissCookie = readDismissCookie;
6770
6812
  exports.readLeadingDecisionFrame = readLeadingDecisionFrame;
6771
6813
  exports.recordCountLabel = recordCountLabel;
6772
6814
  exports.releaseTypeToBadgeColor = releaseTypeToBadgeColor;
6815
+ exports.replaceLocationHash = replaceLocationHash;
6773
6816
  exports.rescueCompletionPct = rescueCompletionPct;
6774
6817
  exports.resolveContentFetchPath = resolveContentFetchPath;
6775
6818
  exports.resolveRedirectTarget = resolveRedirectTarget;
@@ -55,8 +55,9 @@ export { clickupTaskUrl } from '../components/chat/utils/external-app-urls';
55
55
  export { isCrossOriginUrl } from '../components/chat/utils/is-cross-origin-url';
56
56
  export { fetchPriorityProp, type FetchPriorityValue } from './fetch-priority';
57
57
  export * from './dev-sections';
58
+ export { openInNewTab } from './open-in-new-tab';
58
59
  export { type ScrollElementIntoViewOptions, scrollElementIntoView } from './scroll-into-view';
59
- export { navigateSamePageHash, normalizeHashFragment, STICKY_HEADER_OFFSET_PX, HUB_HEADER_OFFSET_PX, type NavigateSamePageHashOptions, } from './same-page-hash-nav';
60
+ export { ACTIVE_ANCHOR_ATTRIBUTE, isScrollSyncedHash, LOCATION_HASH_SYNC_EVENT, navigateSamePageHash, normalizeHashFragment, replaceLocationHash, STICKY_HEADER_OFFSET_PX, HUB_HEADER_OFFSET_PX, type NavigateSamePageHashOptions, } from './same-page-hash-nav';
60
61
  export { findAnchorElementByNormalizedId, normalizeAnchorId } from './anchor-id';
61
62
  export { buildListUrl, canonicalContentRefType } from './list-url';
62
63
  export { faqSectionSlug, faqItemAnchor, parseFaqHash } from './faq-anchor';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAK1B,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,yBAAyB,EACzB,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC9E,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,sBAAsB,EACtB,yBAAyB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC5B,KAAK,2BAA2B,GACjC,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,cAAc,EAAE,MAAM,2DAA2D,CAAC;AAC3F,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,KAAK,aAAa,EAClB,WAAW,EAGX,oBAAoB,EACpB,QAAQ,EACR,QAAQ,EACR,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,YAAY,EACZ,KAAK,EACL,oBAAoB,EACpB,cAAc,EACd,SAAS,EACT,wBAAwB,EACxB,eAAe,EACf,KAAK,EACL,IAAI,EACJ,eAAe,GAChB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAI/D,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AAErC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,sBAAsB,CAAC;AAErC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAIhC,cAAc,kBAAkB,CAAC;AAIjC,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,KAAK,oBAAoB,EACzB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,uCAAuC,CAAC;AAK/C,OAAO,EACL,cAAc,EACd,KAAK,eAAe,EACpB,aAAa,EACb,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,wBAAwB,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEhF,cAAc,cAAc,CAAC;AAE7B,cAAc,eAAe,CAAC;AAG9B,cAAc,iBAAiB,CAAC;AAEhC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAE7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AAEvC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,wBAAwB,CAAC;AAEvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,yBAAyB,CAAC;AAGxC,OAAO,EACL,KAAK,yBAAyB,EAC9B,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,eAAe,CAAC;AAOvB,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,YAAY,EACZ,eAAe,EACf,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,EACtB,KAAK,cAAc,EACnB,uBAAuB,EACvB,cAAc,EACd,KAAK,oBAAoB,EACzB,aAAa,EACb,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,yBAAyB,EACzB,OAAO,EACP,eAAe,EACf,kBAAkB,EAClB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,cAAc,CAAC;AAKtB,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAG9G,OAAO,EACL,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,KAAK,gBAAgB,GACtB,MAAM,mBAAmB,CAAC;AAW3B,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAOpG,OAAO,EACL,qBAAqB,EACrB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,uBAAuB,EAC5B,4BAA4B,EAC5B,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,cAAc,GACf,MAAM,4BAA4B,CAAC;AAKpC,OAAO,EAAE,wBAAwB,EAAE,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAO5F,OAAO,EACL,oBAAoB,EACpB,KAAK,cAAc,EACnB,0BAA0B,EAC1B,qCAAqC,EACrC,+BAA+B,EAC/B,sCAAsC,EACtC,8BAA8B,EAC9B,6CAA6C,EAC7C,gCAAgC,EAChC,2BAA2B,GAC5B,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EACL,kCAAkC,EAClC,8BAA8B,EAC9B,KAAK,4BAA4B,GAClC,MAAM,sDAAsD,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,oDAAoD,CAAC;AAC7F,OAAO,EACL,aAAa,EACb,KAAK,YAAY,EACjB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,KAAK,mBAAmB,EACxB,wBAAwB,EACxB,oBAAoB,EACpB,8BAA8B,EAC9B,KAAK,eAAe,EACpB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,+CAA+C,CAAC;AAMvD,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAGpG,OAAO,EAAE,KAAK,WAAW,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AACvG,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAI5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAKhF,OAAO,EAAE,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAK9E,cAAc,gBAAgB,CAAC;AAS/B,OAAO,EAAE,KAAK,4BAA4B,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAM9F,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,EACpB,KAAK,2BAA2B,GACjC,MAAM,sBAAsB,CAAC;AAQ9B,OAAO,EAAE,+BAA+B,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAOjF,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAMnE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC3E,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAKlD,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,6BAA6B,EAC7B,oBAAoB,EACpB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAChF,OAAO,EAAE,0BAA0B,EAAE,KAAK,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC/F,OAAO,EAAE,kBAAkB,EAAE,KAAK,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAKjF,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,gBAAgB,EAChB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,GACxB,MAAM,gBAAgB,CAAC;AAMxB,cAAc,oBAAoB,CAAC;AAKnC,cAAc,eAAe,CAAC;AAK9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AAIvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAG1C,cAAc,cAAc,CAAC;AAK7B,cAAc,qBAAqB,CAAC;AAEpC,cAAc,iBAAiB,CAAC;AAEhC,cAAc,eAAe,CAAC;AAE9B,cAAc,OAAO,CAAC;AAEtB,cAAc,oBAAoB,CAAC;AAEnC,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAMhH,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,UAAU,EACV,aAAa,GACd,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAGjG,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"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"}
@@ -3365,7 +3365,9 @@ function formatTicketFullTimestamp(iso) {
3365
3365
  return formatDateWithTimezone(iso, null, "numericDateTime");
3366
3366
  }
3367
3367
  function formatRelativeTime(timestamp) {
3368
- const now = /* @__PURE__ */ new Date();
3368
+ return formatRelativeTimeFrom(timestamp, /* @__PURE__ */ new Date());
3369
+ }
3370
+ function formatRelativeTimeFrom(timestamp, now) {
3369
3371
  const targetTime = typeof timestamp === "string" ? new Date(timestamp) : timestamp;
3370
3372
  if (isNaN(targetTime.getTime())) {
3371
3373
  console.warn("\u26A0\uFE0F Invalid timestamp in formatRelativeTime:", timestamp);
@@ -4751,6 +4753,14 @@ var OPENFRAME_DEV_SECTIONS = {
4751
4753
  }
4752
4754
  };
4753
4755
 
4756
+ // src/utils/open-in-new-tab.ts
4757
+ function openInNewTab(href) {
4758
+ return (event) => {
4759
+ event.preventDefault();
4760
+ window.open(href, "_blank", "noopener,noreferrer");
4761
+ };
4762
+ }
4763
+
4754
4764
  // src/utils/scroll-into-view.ts
4755
4765
  var activeRaf = 0;
4756
4766
  var teardownActive = null;
@@ -4774,6 +4784,10 @@ function getScrollableAncestor(el) {
4774
4784
  }
4775
4785
  return null;
4776
4786
  }
4787
+ function declaredScrollMarginTop(target) {
4788
+ const margin = Number.parseFloat(getComputedStyle(target).scrollMarginTop);
4789
+ return Number.isFinite(margin) ? margin : 0;
4790
+ }
4777
4791
  function scrollElementIntoView(target, options = {}) {
4778
4792
  if (typeof window === "undefined" || !target) return;
4779
4793
  const { headerOffset = 0, behavior = "smooth", adjustTargetY, durationMs = 320 } = options;
@@ -4784,7 +4798,8 @@ function scrollElementIntoView(target, options = {}) {
4784
4798
  else window.scrollTo(0, y);
4785
4799
  };
4786
4800
  const computeTarget = () => {
4787
- const raw = container ? container.scrollTop + (target.getBoundingClientRect().top - container.getBoundingClientRect().top) - headerOffset : target.getBoundingClientRect().top + window.scrollY - headerOffset;
4801
+ const offset = Math.max(headerOffset, declaredScrollMarginTop(target));
4802
+ const raw = container ? container.scrollTop + (target.getBoundingClientRect().top - container.getBoundingClientRect().top) - offset : target.getBoundingClientRect().top + window.scrollY - offset;
4788
4803
  const adjusted = adjustTargetY ? adjustTargetY(raw) : raw;
4789
4804
  const maxScroll = container ? Math.max(0, container.scrollHeight - container.clientHeight) : Math.max(0, document.documentElement.scrollHeight - window.innerHeight);
4790
4805
  return Math.min(Math.max(0, adjusted), maxScroll);
@@ -5022,6 +5037,29 @@ function getHashTargetElement(id) {
5022
5037
  }
5023
5038
  return findAnchorElementByNormalizedId(decoded, document);
5024
5039
  }
5040
+ var LOCATION_HASH_SYNC_EVENT = "locationhashsync";
5041
+ var ACTIVE_ANCHOR_ATTRIBUTE = "data-active-anchor";
5042
+ var HASH_SYNC_STATE_KEY = "__hashSync";
5043
+ var isRecord = (value) => typeof value === "object" && value !== null;
5044
+ function replaceLocationHash(id) {
5045
+ if (typeof window === "undefined") return;
5046
+ const { pathname, search, hash } = window.location;
5047
+ const next = id ? `#${id}` : "";
5048
+ const state = window.history.state;
5049
+ const noted = isRecord(state) ? state[HASH_SYNC_STATE_KEY] : void 0;
5050
+ if (hash === next && (noted === next || !next)) return;
5051
+ window.history.replaceState(
5052
+ { ...isRecord(state) ? state : {}, [HASH_SYNC_STATE_KEY]: next },
5053
+ "",
5054
+ `${pathname}${search}${next}`
5055
+ );
5056
+ if (hash !== next) window.dispatchEvent(new Event(LOCATION_HASH_SYNC_EVENT));
5057
+ }
5058
+ function isScrollSyncedHash() {
5059
+ if (typeof window === "undefined" || !window.location.hash) return false;
5060
+ const state = window.history.state;
5061
+ return isRecord(state) && state[HASH_SYNC_STATE_KEY] === window.location.hash;
5062
+ }
5025
5063
  function navigateSamePageHash(target, options = {}) {
5026
5064
  if (typeof window === "undefined") return false;
5027
5065
  const { headerOffset = 0, history: historyMode = "push" } = options;
@@ -6392,4 +6430,4 @@ function pathMatchesAny(pathname, patterns) {
6392
6430
  return (patterns ?? []).some((pattern) => matchesPathPattern(pathname, pattern));
6393
6431
  }
6394
6432
 
6395
- export { ANTHROPIC_SUPPORTED_IMAGE_MIME, AUTO_CONTINUATION_DIRECTIVE_PREFIX, BADGE_PALETTE, BITE_ID_RE, BRAND_MARK_SVGS, CHAT_ATTACHMENT_MARKDOWN_PATTERN, CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM, CHAT_ATTACHMENT_VIEW_URL_PREFIX, CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED, COMPLIANCE_STANDARDS, CONTENT_REF_GROUPS, CSV_CONTENT_TYPE, CUSTOM_ITEM_ID, DEFAULT_CONTENT_SUFFIXES, DEFAULT_FOLDER_INDEX_FILE, DEFAULT_MIN_FILL_MS, DEFAULT_OS_PLATFORM, DELIVERY_TASK_TYPE_OPTIONS, DESIGN_DOC_READINESS, DESIGN_DOC_READINESS_DISPLAY, DESIGN_PALETTE, DESKTOP_OSES, DEV_SECTION_PARAM_KEYS, DOC_TABLE_TYPES, ELAPSED_MS_FIELD, EMBED_PROXY_OPTIONAL_HEADERS, FIRST_TOUCH_ATTRIBUTION_KEY, FORM_DRAFT_STATUSES, FORM_RESCUE_ATTEMPT_FIELD, FORM_RESCUE_DEBOUNCE_MS, FORM_RESCUE_EVENTS, FORM_RESCUE_MAX_FIELDS, FORM_RESCUE_MAX_VALUE_CHARS, FORM_RESCUE_RESUME_FIELD, FORM_RESCUE_RESUME_PARAM, FORM_RESCUE_SKIP_REASONS, FORM_RESCUE_SUBMIT_KEYS, FORM_RESCUE_VALUE_FIELDS, FullscreenSwitchController, GENERIC_EMAIL_DOMAINS, HEADING_EMOJI_RE, HEX_PATTERN, HONEYPOT_FIELD, HUBSPOT_DO_NOT_COLLECT_FORM_PROPS, HUB_HEADER_OFFSET_PX, HUMANITY_SIGNAL_KEYS, ICON_REGISTRY, IMAGE_FILE_ACCEPT, MAX_MONTH_OFFSET, MEDIA_FILE_ACCEPT, MEDIA_TYPE, NO_CLIENT_CACHE, ODS_SPACING_PROPS, ODS_SPACING_TOKENS, ODS_SPACING_TOKEN_PATTERN, ODS_STEM_CLASSES, ODS_STEM_TOKENS, OPENFRAME_CLASSIFICATIONS, OPENFRAME_DEV_SECTIONS, OS_PLATFORMS, PAGE_PARAM_LIMITS, PLATFORM_BRAND, PLATFORM_SURFACE, PLATFORM_THEME, PLAY_ICON_PATH, PROGRAM_META_RENDERERS, RESCUE_FORMS, ROADMAP_STATUS_OPTIONS, SCHEDULING_SLUG_SHAPE, SCROLL_ANCHOR, SCROLL_ANCHOR_WIRE_KEY, SECTION_HERO_ICON_CLASS, SEO_DESCRIPTION_MAX_LENGTH, SEO_TITLE_MAX_LENGTH, SOCIAL_PLATFORM_ALIASES, SOCIAL_PLATFORM_ALT_HOSTS, SOURCE_ICON_NAMES, SOURCE_LABELS_BY_TABLE, STICKY_HEADER_OFFSET_PX, TAILWIND_STEP_TO_ODS_TOKEN, TICKET_OPEN_PARAM, TICKET_STATUS_OPTIONS, VENDOR_CLASSIFICATIONS, VIEWER_TIMEZONE, WALKTHROUGH_OPEN_QUERY_PARAM, WALKTHROUGH_VIDEO_DISMISS_KEY, analyzeImageColor, announcementDismissCookieName, applyProxyAuth, brandMarkDataUri, buildAutoContinuationDirective, buildChatAttachmentViewUrl, buildDefaultHref, buildDiscussAddendum, buildDocumentTree, buildGroupedSource, buildListUrl, buildOgPlaceholderUrl, buildSuggestionUrl, buildTicketOpenHref, canonicalContentRefType, captureFirstTouchAttribution, captureFormRescueEvent, clamp, clampPageToTotal, classifySocialHost, cleanEmailDomain, clearAnnouncementDismissals, clearDismissCookie, clearEmbedProxyAuth, clearFirstTouchAttribution, clearLegacyAnnouncementCache, clearWalkthroughDismissal, clickupTaskUrl, cn, complianceStandardForName, consumeAccessCode, copyrightLine, createFenceTracker, createHeadingIdDeduper, createSearchParams, createSseSubscription, createUTCTimestamp, csvEscape, deepClone, defineParamSchema, defineRescueForm, delay, deriveActiveColor, deriveHoverColor, designDocReadiness, desktopOsOf, detectDesktopOs, detectVisitorOs, devSectionAnchorId, dismissAnnouncement, dismissWalkthrough, embedAuthedFetch, ensureBiteIds, errorMessage, escapeMarkdownInline, escapeRegExp, evaluateHumanitySignals, eventAudience, extractCardItems, extractDomainFromEmail, extractDominantColor, extractEntityIdFilter, extractHumanitySignals, extractImageEdgeColorAsync, extractItemId, extractItems, extractSections, faqItemAnchor, faqSectionSlug, fetchPriorityProp, fileContentKey, fileMediaType, filledRescueFields, findAnchorElementByNormalizedId, findDocNodeByPath, findHoneypotCopySource, firstParamValue, flattenAssistantContent, formatAbbreviatedNumber, formatAbsoluteDate, formatBioText, formatBytes, formatBytesShort, formatChatAttachmentMarkdownForBubble, formatCitationIndices, formatClassification, formatCompactMetric, formatCompletionLabel, formatCompletionLabelWithBlockers, formatCurrency, formatDate, formatDateRange, formatDateShort, formatDateSlashUTC, formatDateTime, formatDateTimeAt, formatDateTimeYmd, formatDateUTC, formatDateWithTimezone, formatDocName, formatDuration, formatDurationCompact, formatDurationFromMs, formatDurationFromRange, formatDurationMMSS, formatEntryMonthUTC, formatFileSize, formatLargeNumber, formatLegalDate, formatNumber, formatPercent, formatPhoneE164, formatPrice, formatPricingModel, formatProgramDate, formatProgramDateRange, formatProgramTimeRange, formatRelativeTime, formatReleaseDate, formatSingularLookupInvocation, formatTicketFullTimestamp, formatTicketRelativeTime, formatTimeWithTimezone, formatUnderscoreText, formatWebinarTimeMeta, formatWholeDollars, fromKeys, generateBiteId, generateImageSizes, generateRandomString, getAllPlatformBaseDomains, getBestContrastColor, getConfidenceBgClass, getConfidenceBorderClass, getConfidenceColorClass, getConfidenceLabel, getConfidenceLevel, getConfidenceTextClass, getContentRefLabel, getContentRefLabelOrTitleCase, getContrastRatio, getCountryByCode, getCountryByName, getCountryPhoneData, getCurrentPlatform, getDefaultColorForPlatform, getDefaultIconForPlatform, getDeploymentUrl, getDetailedTimeDifference, getDocAncestorNodeIds, getDocSourceDefaultPath, getDynamicIcon, getEmbedProxyAuth, getFirstTouchAttribution, getFlagFromCountryName, getIconComponent, getInitialExpandedNodeIds, getOSIcon, getOSLabel, getOSPlatformId, getOSTypeDefinition, getPersistedProxyEmail, getPlatformAccentColor, getPlatformBackgroundVarName, getPlatformBrand, getPlatformBrandClasses, getPlatformColor, getPlatformConfig, getPlatformDescription, getPlatformDisplayName, getPlatformIcon, getPlatformIconComponent, getPlatformIconComponent as getPlatformLogo, getPlatformProductionUrl, getPlatformSecondaryColor, getPlatformShortName, getPlatformSlogan, getPlatformTextVarName, getPlatformUrl, getProxiedImageUrl, getReadableTextColor, getRequestOrigin, getRescueForm, getSemanticColor, getShellIcon, getShellLabel, getSlackCommunityJoinUrl, getSmallPlatformIcon, getSourceIconName, getSourceLabel, getStatusColorScheme, getTaskTypeLabel, getToolLabel, getToolTypeAliases, getTrendColors, groupSourcesByTable, groupsByTable, hasGenericEmailDomain, hexToRgb2 as hexToRgb, hostMatches, isAnnouncementDismissed, isBadgePaletteKey, isBlankLine, isCrossOriginUrl, isDismissedCookieValue, isExcludedRescueField, isFigmaSlidesUrl, isFormAttemptId, isGenericDomain, isGenericWebsiteDomain, isHumanitySignalKey, isImageMedia, isListedSchedulingName, isLocalUrl, isOSPlatform, isOpenFrameClassification, isOrderedRange, isPublishableMediaType, isRescueEmail, isResumeToken, isToday, isValidEmailDomain, isValidPathPattern, isValidSchedulingSlug, isValidToolType, isVendorClassification, isVideoMedia, isWalkthroughDismissed, isWithinMinutes, listRescueForms, makeComposeContentUrl, markdownToPlainText, matchBiteElement, matchesPathPattern, mediaNameKey, nameInitials, navigateSamePageHash, normalizeAnchorId, normalizeDocPath, normalizeDomain, normalizeHashFragment, normalizeIconKey, normalizeOSType, normalizeSchedulingSlug, normalizeSocialPlatform, normalizeToolType, normalizeToolTypeWithFallback, orderContentRefTypes, pageCount, parseAttributionFromUrl, parseFaqHash, parseFormDraftSaveRequest, parseSchedulingLinkName, parseSchemaParams, parseScrollAnchor, parseWireCommandOverride, partitionMediaByType, pathMatchesAny, pathToNodeId, personFirstName, personInitials, pick, pickBadgePaletteColor, pickReadableTextColor, pickSocialLink, platformAccentToken, platformAccentVarName, platformColors, platformDescriptions, platformDisplayNames, platformHexColors, platformIconNames, platformIcons, platformSecondaryToken, platformSecondaryVarName, platformShortNames, platformSlogans, positiveInt, programDateInstant, programMetaFormatters, programMetaLine, programStr, readDismissCookie, readLeadingDecisionFrame, recordCountLabel, releaseTypeToBadgeColor, rescueCompletionPct, resolveContentFetchPath, resolveRedirectTarget, resolveReleaseCover, rgbToHex, sanitizeLandingUrl, sanitizeRescueFieldName, sanitizeRescueValues, sanitizeTitleForChat, scanHeadings, schedulingAudienceKey, scrollElementIntoView, serializeJsonLd, serializeSchemaParams, setEmbedAuthAdapter, setEmbedProxyAuth, shortcutLabel, shouldIncludeInUrl, shouldProxyImage, singleInitial, skipsImageOptimizer, slugifyHeadingBase, slugifyHeadingText, socialPlatformHosts, sortTreeChildren, splitCsvEnv, stripChatAttachmentMarkdown, stripFolderIndexFromPath, stripHeadingEmojis, stripHtml, stripInlineMarkdown, switchPlatformTheme, titleCaseFromSlug, toClaudeEmbedUrl, toClaudeMirrorPath, toCsv, toDocSlug, toFigmaEmbedUrl, toFigmaOriginalUrl, toGoogleSheetsEmbedUrl, toGoogleSheetsOriginalUrl, toToolLabel, transformPlatformConfigsToOptions, truncateString, urlPathLooksLikeSvg, usePlatformColors, usesCommandKey, validateAccessCode, validateAndConsumeAccessCode, validateEmailDomain, validateEmailDomainList, validatePhoneNumber, walkthroughDismissCookieName, webinarTiming, withFirstTouchAttribution, withQuery, withWalkthroughOpenParam, writeDismissCookie };
6433
+ export { ACTIVE_ANCHOR_ATTRIBUTE, ANTHROPIC_SUPPORTED_IMAGE_MIME, AUTO_CONTINUATION_DIRECTIVE_PREFIX, BADGE_PALETTE, BITE_ID_RE, BRAND_MARK_SVGS, CHAT_ATTACHMENT_MARKDOWN_PATTERN, CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM, CHAT_ATTACHMENT_VIEW_URL_PREFIX, CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED, COMPLIANCE_STANDARDS, CONTENT_REF_GROUPS, CSV_CONTENT_TYPE, CUSTOM_ITEM_ID, DEFAULT_CONTENT_SUFFIXES, DEFAULT_FOLDER_INDEX_FILE, DEFAULT_MIN_FILL_MS, DEFAULT_OS_PLATFORM, DELIVERY_TASK_TYPE_OPTIONS, DESIGN_DOC_READINESS, DESIGN_DOC_READINESS_DISPLAY, DESIGN_PALETTE, DESKTOP_OSES, DEV_SECTION_PARAM_KEYS, DOC_TABLE_TYPES, ELAPSED_MS_FIELD, EMBED_PROXY_OPTIONAL_HEADERS, FIRST_TOUCH_ATTRIBUTION_KEY, FORM_DRAFT_STATUSES, FORM_RESCUE_ATTEMPT_FIELD, FORM_RESCUE_DEBOUNCE_MS, FORM_RESCUE_EVENTS, FORM_RESCUE_MAX_FIELDS, FORM_RESCUE_MAX_VALUE_CHARS, FORM_RESCUE_RESUME_FIELD, FORM_RESCUE_RESUME_PARAM, FORM_RESCUE_SKIP_REASONS, FORM_RESCUE_SUBMIT_KEYS, FORM_RESCUE_VALUE_FIELDS, FullscreenSwitchController, GENERIC_EMAIL_DOMAINS, HEADING_EMOJI_RE, HEX_PATTERN, HONEYPOT_FIELD, HUBSPOT_DO_NOT_COLLECT_FORM_PROPS, HUB_HEADER_OFFSET_PX, HUMANITY_SIGNAL_KEYS, ICON_REGISTRY, IMAGE_FILE_ACCEPT, LOCATION_HASH_SYNC_EVENT, MAX_MONTH_OFFSET, MEDIA_FILE_ACCEPT, MEDIA_TYPE, NO_CLIENT_CACHE, ODS_SPACING_PROPS, ODS_SPACING_TOKENS, ODS_SPACING_TOKEN_PATTERN, ODS_STEM_CLASSES, ODS_STEM_TOKENS, OPENFRAME_CLASSIFICATIONS, OPENFRAME_DEV_SECTIONS, OS_PLATFORMS, PAGE_PARAM_LIMITS, PLATFORM_BRAND, PLATFORM_SURFACE, PLATFORM_THEME, PLAY_ICON_PATH, PROGRAM_META_RENDERERS, RESCUE_FORMS, ROADMAP_STATUS_OPTIONS, SCHEDULING_SLUG_SHAPE, SCROLL_ANCHOR, SCROLL_ANCHOR_WIRE_KEY, SECTION_HERO_ICON_CLASS, SEO_DESCRIPTION_MAX_LENGTH, SEO_TITLE_MAX_LENGTH, SOCIAL_PLATFORM_ALIASES, SOCIAL_PLATFORM_ALT_HOSTS, SOURCE_ICON_NAMES, SOURCE_LABELS_BY_TABLE, STICKY_HEADER_OFFSET_PX, TAILWIND_STEP_TO_ODS_TOKEN, TICKET_OPEN_PARAM, TICKET_STATUS_OPTIONS, VENDOR_CLASSIFICATIONS, VIEWER_TIMEZONE, WALKTHROUGH_OPEN_QUERY_PARAM, WALKTHROUGH_VIDEO_DISMISS_KEY, analyzeImageColor, announcementDismissCookieName, applyProxyAuth, brandMarkDataUri, buildAutoContinuationDirective, buildChatAttachmentViewUrl, buildDefaultHref, buildDiscussAddendum, buildDocumentTree, buildGroupedSource, buildListUrl, buildOgPlaceholderUrl, buildSuggestionUrl, buildTicketOpenHref, canonicalContentRefType, captureFirstTouchAttribution, captureFormRescueEvent, clamp, clampPageToTotal, classifySocialHost, cleanEmailDomain, clearAnnouncementDismissals, clearDismissCookie, clearEmbedProxyAuth, clearFirstTouchAttribution, clearLegacyAnnouncementCache, clearWalkthroughDismissal, clickupTaskUrl, cn, complianceStandardForName, consumeAccessCode, copyrightLine, createFenceTracker, createHeadingIdDeduper, createSearchParams, createSseSubscription, createUTCTimestamp, csvEscape, deepClone, defineParamSchema, defineRescueForm, delay, deriveActiveColor, deriveHoverColor, designDocReadiness, desktopOsOf, detectDesktopOs, detectVisitorOs, devSectionAnchorId, dismissAnnouncement, dismissWalkthrough, embedAuthedFetch, ensureBiteIds, errorMessage, escapeMarkdownInline, escapeRegExp, evaluateHumanitySignals, eventAudience, extractCardItems, extractDomainFromEmail, extractDominantColor, extractEntityIdFilter, extractHumanitySignals, extractImageEdgeColorAsync, extractItemId, extractItems, extractSections, faqItemAnchor, faqSectionSlug, fetchPriorityProp, fileContentKey, fileMediaType, filledRescueFields, findAnchorElementByNormalizedId, findDocNodeByPath, findHoneypotCopySource, firstParamValue, flattenAssistantContent, formatAbbreviatedNumber, formatAbsoluteDate, formatBioText, formatBytes, formatBytesShort, formatChatAttachmentMarkdownForBubble, formatCitationIndices, formatClassification, formatCompactMetric, formatCompletionLabel, formatCompletionLabelWithBlockers, formatCurrency, formatDate, formatDateRange, formatDateShort, formatDateSlashUTC, formatDateTime, formatDateTimeAt, formatDateTimeYmd, formatDateUTC, formatDateWithTimezone, formatDocName, formatDuration, formatDurationCompact, formatDurationFromMs, formatDurationFromRange, formatDurationMMSS, formatEntryMonthUTC, formatFileSize, formatLargeNumber, formatLegalDate, formatNumber, formatPercent, formatPhoneE164, formatPrice, formatPricingModel, formatProgramDate, formatProgramDateRange, formatProgramTimeRange, formatRelativeTime, formatReleaseDate, formatSingularLookupInvocation, formatTicketFullTimestamp, formatTicketRelativeTime, formatTimeWithTimezone, formatUnderscoreText, formatWebinarTimeMeta, formatWholeDollars, fromKeys, generateBiteId, generateImageSizes, generateRandomString, getAllPlatformBaseDomains, getBestContrastColor, getConfidenceBgClass, getConfidenceBorderClass, getConfidenceColorClass, getConfidenceLabel, getConfidenceLevel, getConfidenceTextClass, getContentRefLabel, getContentRefLabelOrTitleCase, getContrastRatio, getCountryByCode, getCountryByName, getCountryPhoneData, getCurrentPlatform, getDefaultColorForPlatform, getDefaultIconForPlatform, getDeploymentUrl, getDetailedTimeDifference, getDocAncestorNodeIds, getDocSourceDefaultPath, getDynamicIcon, getEmbedProxyAuth, getFirstTouchAttribution, getFlagFromCountryName, getIconComponent, getInitialExpandedNodeIds, getOSIcon, getOSLabel, getOSPlatformId, getOSTypeDefinition, getPersistedProxyEmail, getPlatformAccentColor, getPlatformBackgroundVarName, getPlatformBrand, getPlatformBrandClasses, getPlatformColor, getPlatformConfig, getPlatformDescription, getPlatformDisplayName, getPlatformIcon, getPlatformIconComponent, getPlatformIconComponent as getPlatformLogo, getPlatformProductionUrl, getPlatformSecondaryColor, getPlatformShortName, getPlatformSlogan, getPlatformTextVarName, getPlatformUrl, getProxiedImageUrl, getReadableTextColor, getRequestOrigin, getRescueForm, getSemanticColor, getShellIcon, getShellLabel, getSlackCommunityJoinUrl, getSmallPlatformIcon, getSourceIconName, getSourceLabel, getStatusColorScheme, getTaskTypeLabel, getToolLabel, getToolTypeAliases, getTrendColors, groupSourcesByTable, groupsByTable, hasGenericEmailDomain, hexToRgb2 as hexToRgb, hostMatches, isAnnouncementDismissed, isBadgePaletteKey, isBlankLine, isCrossOriginUrl, isDismissedCookieValue, isExcludedRescueField, isFigmaSlidesUrl, isFormAttemptId, isGenericDomain, isGenericWebsiteDomain, isHumanitySignalKey, isImageMedia, isListedSchedulingName, isLocalUrl, isOSPlatform, isOpenFrameClassification, isOrderedRange, isPublishableMediaType, isRescueEmail, isResumeToken, isScrollSyncedHash, isToday, isValidEmailDomain, isValidPathPattern, isValidSchedulingSlug, isValidToolType, isVendorClassification, isVideoMedia, isWalkthroughDismissed, isWithinMinutes, listRescueForms, makeComposeContentUrl, markdownToPlainText, matchBiteElement, matchesPathPattern, mediaNameKey, nameInitials, navigateSamePageHash, normalizeAnchorId, normalizeDocPath, normalizeDomain, normalizeHashFragment, normalizeIconKey, normalizeOSType, normalizeSchedulingSlug, normalizeSocialPlatform, normalizeToolType, normalizeToolTypeWithFallback, openInNewTab, orderContentRefTypes, pageCount, parseAttributionFromUrl, parseFaqHash, parseFormDraftSaveRequest, parseSchedulingLinkName, parseSchemaParams, parseScrollAnchor, parseWireCommandOverride, partitionMediaByType, pathMatchesAny, pathToNodeId, personFirstName, personInitials, pick, pickBadgePaletteColor, pickReadableTextColor, pickSocialLink, platformAccentToken, platformAccentVarName, platformColors, platformDescriptions, platformDisplayNames, platformHexColors, platformIconNames, platformIcons, platformSecondaryToken, platformSecondaryVarName, platformShortNames, platformSlogans, positiveInt, programDateInstant, programMetaFormatters, programMetaLine, programStr, readDismissCookie, readLeadingDecisionFrame, recordCountLabel, releaseTypeToBadgeColor, replaceLocationHash, rescueCompletionPct, resolveContentFetchPath, resolveRedirectTarget, resolveReleaseCover, rgbToHex, sanitizeLandingUrl, sanitizeRescueFieldName, sanitizeRescueValues, sanitizeTitleForChat, scanHeadings, schedulingAudienceKey, scrollElementIntoView, serializeJsonLd, serializeSchemaParams, setEmbedAuthAdapter, setEmbedProxyAuth, shortcutLabel, shouldIncludeInUrl, shouldProxyImage, singleInitial, skipsImageOptimizer, slugifyHeadingBase, slugifyHeadingText, socialPlatformHosts, sortTreeChildren, splitCsvEnv, stripChatAttachmentMarkdown, stripFolderIndexFromPath, stripHeadingEmojis, stripHtml, stripInlineMarkdown, switchPlatformTheme, titleCaseFromSlug, toClaudeEmbedUrl, toClaudeMirrorPath, toCsv, toDocSlug, toFigmaEmbedUrl, toFigmaOriginalUrl, toGoogleSheetsEmbedUrl, toGoogleSheetsOriginalUrl, toToolLabel, transformPlatformConfigsToOptions, truncateString, urlPathLooksLikeSvg, usePlatformColors, usesCommandKey, validateAccessCode, validateAndConsumeAccessCode, validateEmailDomain, validateEmailDomainList, validatePhoneNumber, walkthroughDismissCookieName, webinarTiming, withFirstTouchAttribution, withQuery, withWalkthroughOpenParam, writeDismissCookie };
@@ -0,0 +1,7 @@
1
+ import type { MouseEvent } from 'react';
2
+ /**
3
+ * A click handler that opens `href` in a new tab and does nothing else: the
4
+ * "open in new tab" cell of a table whose rows are links themselves.
5
+ */
6
+ export declare function openInNewTab(href: string): (event: MouseEvent) => void;
7
+ //# sourceMappingURL=open-in-new-tab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"open-in-new-tab.d.ts","sourceRoot":"","sources":["../../src/utils/open-in-new-tab.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAExC;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,IAC/B,OAAO,UAAU,UAI1B"}
@@ -34,6 +34,37 @@ export declare function normalizeHashFragment(hash: string): string;
34
34
  * See `utils/anchor-id`.
35
35
  */
36
36
  export declare function getHashTargetElement(id: string): HTMLElement | null;
37
+ /**
38
+ * Fired on `window` after {@link replaceLocationHash} changed the hash. NOT
39
+ * `hashchange`: a listener of this event follows the hash as STATE (which tab
40
+ * is open, `useLocationHash`); a listener of `hashchange` treats it as a
41
+ * NAVIGATION and scrolls (`useScrollToHash`). A scroll spy that keeps the URL
42
+ * on the section being read must reach the first and never the second.
43
+ */
44
+ export declare const LOCATION_HASH_SYNC_EVENT = "locationhashsync";
45
+ /** Marks, on an element inside a section, the child anchor a scroll spy writes for that section (see `useScrollSpy`). */
46
+ export declare const ACTIVE_ANCHOR_ATTRIBUTE = "data-active-anchor";
47
+ /**
48
+ * Point the URL's hash at `id` (or clear it) to say where the reader IS, as
49
+ * opposed to sending them somewhere: no history entry (`replaceState`), no
50
+ * `hashchange`, no scroll. THE writer for a scroll spy's hash and for a tab
51
+ * that names itself in the URL. State followers hear
52
+ * {@link LOCATION_HASH_SYNC_EVENT}.
53
+ *
54
+ * The hash is also noted in the history ENTRY's state (beside whatever the
55
+ * host router keeps there), which survives a reload and comes back on back
56
+ * and forward: {@link isScrollSyncedHash}. For such an entry the hash only
57
+ * mirrors a scroll position the browser restores by itself, so
58
+ * `useScrollToHash` does not scroll to it again. Any navigation writes its own
59
+ * state and drops the note.
60
+ */
61
+ export declare function replaceLocationHash(id: string | null): void;
62
+ /**
63
+ * Whether the hash in the URL was put there by {@link replaceLocationHash}
64
+ * (the reader scrolled or opened a tab) rather than by a navigation. False
65
+ * with no hash, on a fresh visit, and once any navigation rewrote the entry.
66
+ */
67
+ export declare function isScrollSyncedHash(): boolean;
37
68
  export interface NavigateSamePageHashOptions {
38
69
  /** Pixels to subtract for sticky chrome. */
39
70
  headerOffset?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"same-page-hash-nav.d.ts","sourceRoot":"","sources":["../../src/utils/same-page-hash-nav.ts"],"names":[],"mappings":"AAGA;;sCAEsC;AACtC,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C;yCACyC;AACzC,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAI1D;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAkBnE;AAED,MAAM,WAAW,2BAA2B;IAC1C,4CAA4C;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;gEAC4D;IAC5D,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,2BAAgC,GAAG,OAAO,CA6DvG"}
1
+ {"version":3,"file":"same-page-hash-nav.d.ts","sourceRoot":"","sources":["../../src/utils/same-page-hash-nav.ts"],"names":[],"mappings":"AAGA;;sCAEsC;AACtC,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C;yCACyC;AACzC,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAI1D;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAkBnE;AAED;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB,qBAAqB,CAAC;AAE3D,yHAAyH;AACzH,eAAO,MAAM,uBAAuB,uBAAuB,CAAC;AAO5D;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAa3D;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAI5C;AAED,MAAM,WAAW,2BAA2B;IAC1C,4CAA4C;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;gEAC4D;IAC5D,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,2BAAgC,GAAG,OAAO,CA6DvG"}
@@ -48,7 +48,9 @@
48
48
  */
49
49
  export interface ScrollElementIntoViewOptions {
50
50
  /** Pixels to subtract from the target element's `top` so it lands BELOW
51
- * sticky chrome. Defaults to 0. Pass `96` for the standard hub header. */
51
+ * sticky chrome. Defaults to 0. Pass `96` for the standard hub header.
52
+ * A target that declares a larger `scroll-margin-top` in CSS wins: see
53
+ * {@link declaredScrollMarginTop}. */
52
54
  headerOffset?: number;
53
55
  /** `'smooth'` (default) runs the self-driven tween; `'instant'` / `'auto'`
54
56
  * jump in one synchronous write (deep-link land, programmatic focus moves). */
@@ -71,6 +73,17 @@ export interface ScrollElementIntoViewOptions {
71
73
  * section this helper scrolls to — inside a `<main overflow-y-auto>` shell as
72
74
  * much as on a window-scrolled page. */
73
75
  export declare function getScrollableAncestor(el: HTMLElement): HTMLElement | null;
76
+ /**
77
+ * The offset the target ITSELF declares in CSS (`scroll-margin-top`), in px.
78
+ *
79
+ * A page with more sticky chrome than the standard header (a second bar under
80
+ * it) says so on its anchors with `scroll-margin-top`, which is what a native
81
+ * anchor jump (a URL that loads with the hash, the router's own hash scroll)
82
+ * honours. The tween honours the same declaration, so a link clicked on the
83
+ * page and a link that loads the page land on the same pixel: the caller's
84
+ * `headerOffset` is the floor, the anchor's own margin wins when it is larger.
85
+ */
86
+ export declare function declaredScrollMarginTop(target: HTMLElement): number;
74
87
  /**
75
88
  * Scroll the page so `target` lands at the top of the viewport (below sticky
76
89
  * chrome via `headerOffset`). SSR-safe; `null`/`undefined` target is a no-op so
@@ -1 +1 @@
1
- {"version":3,"file":"scroll-into-view.d.ts","sourceRoot":"","sources":["../../src/utils/scroll-into-view.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAEH,MAAM,WAAW,4BAA4B;IAC3C;+EAC2E;IAC3E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;oFACgF;IAChF,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B;;;6EAGyE;IACzE,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C,uDAAuD;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAqBD;;;;;;;;yCAQyC;AACzC,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,WAAW,GAAG,WAAW,GAAG,IAAI,CAWzE;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,EACtC,OAAO,GAAE,4BAAiC,GACzC,IAAI,CA+EN"}
1
+ {"version":3,"file":"scroll-into-view.d.ts","sourceRoot":"","sources":["../../src/utils/scroll-into-view.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAEH,MAAM,WAAW,4BAA4B;IAC3C;;;2CAGuC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;oFACgF;IAChF,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B;;;6EAGyE;IACzE,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C,uDAAuD;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAqBD;;;;;;;;yCAQyC;AACzC,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,WAAW,GAAG,WAAW,GAAG,IAAI,CAWzE;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAGnE;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,EACtC,OAAO,GAAE,4BAAiC,GACzC,IAAI,CA8EN"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flamingo-stack/openframe-frontend-core",
3
- "version": "0.0.711",
3
+ "version": "0.0.713",
4
4
  "description": "Shared design system and components for all Flamingo platforms",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -51,6 +51,18 @@
51
51
  "require": "./dist/components/chat/index.cjs",
52
52
  "default": "./dist/components/chat/index.js"
53
53
  },
54
+ "./components/product-demo": {
55
+ "types": "./dist/components/product-demo/index.d.ts",
56
+ "import": "./dist/components/product-demo/index.js",
57
+ "require": "./dist/components/product-demo/index.cjs",
58
+ "default": "./dist/components/product-demo/index.js"
59
+ },
60
+ "./components/product-demo/screen-keys": {
61
+ "types": "./dist/components/product-demo/screen-keys.d.ts",
62
+ "import": "./dist/components/product-demo/screen-keys.js",
63
+ "require": "./dist/components/product-demo/screen-keys.cjs",
64
+ "default": "./dist/components/product-demo/screen-keys.js"
65
+ },
54
66
  "./components/tickets": {
55
67
  "types": "./dist/components/tickets/index.d.ts",
56
68
  "import": "./dist/components/tickets/index.js",