@flamingo-stack/openframe-frontend-core 0.0.703 → 0.0.704-snapshot.20261006133653

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 (336) hide show
  1. package/dist/{chunk-3L7KCOGO.cjs → chunk-2QEUFXNS.cjs} +30 -30
  2. package/dist/{chunk-BMJUKS6S.cjs → chunk-3256UJXS.cjs} +47 -47
  3. package/dist/{chunk-GZYLZ4MB.js → chunk-4S7TJYRQ.js} +3 -3
  4. package/dist/{chunk-ENGBNKUJ.js → chunk-5EFZO5EB.js} +675 -569
  5. package/dist/{chunk-TCZCMD5Q.js → chunk-5HBHO5TB.js} +1 -1
  6. package/dist/{chunk-BOUPNYUV.js → chunk-64HOMVYC.js} +5 -5
  7. package/dist/{chunk-YR6JPJF4.js → chunk-6XIF2Z7I.js} +4 -4
  8. package/dist/{chunk-NU724ZVN.cjs → chunk-7GHB2IK6.cjs} +121 -121
  9. package/dist/{chunk-GX3OUTFO.cjs → chunk-7ZYIC7NA.cjs} +69 -55
  10. package/dist/{chunk-53AC23ZN.js → chunk-A6WVQKOZ.js} +24 -24
  11. package/dist/{chunk-4OGAXAEG.cjs → chunk-ABU3TGXA.cjs} +3 -3
  12. package/dist/{chunk-RTXTGLGB.cjs → chunk-ACV4DFQ3.cjs} +4 -4
  13. package/dist/{chunk-RLDAYA2A.cjs → chunk-BH6PJP66.cjs} +29 -29
  14. package/dist/{chunk-BRXOGCH3.cjs → chunk-BIZNSF3U.cjs} +3 -3
  15. package/dist/{chunk-2A4XES7R.cjs → chunk-BM5MVGH3.cjs} +3 -3
  16. package/dist/{chunk-6YCXA7CN.js → chunk-CH5232HV.js} +20 -19
  17. package/dist/{chunk-UIBSSVON.cjs → chunk-D7BTSVMS.cjs} +2 -2
  18. package/dist/{chunk-YBGEPKC2.cjs → chunk-F7Y2ZS5U.cjs} +6 -6
  19. package/dist/{chunk-5V6O73EH.js → chunk-FLKJYMVB.js} +3 -3
  20. package/dist/{chunk-NMGX2ZTU.js → chunk-IFUQVZF4.js} +17 -17
  21. package/dist/{chunk-2NE3DNXY.js → chunk-IKCQK67U.js} +2 -2
  22. package/dist/{chunk-KFDP3DUL.cjs → chunk-IXPUM3AW.cjs} +98 -98
  23. package/dist/{chunk-QGTDWFT6.js → chunk-IZHZMBIX.js} +2469 -1928
  24. package/dist/{chunk-67CXGPTW.cjs → chunk-JKEEFQOX.cjs} +505 -72
  25. package/dist/{chunk-NYSYSKSH.cjs → chunk-M6HTJTFH.cjs} +15 -15
  26. package/dist/{chunk-OGLCD3UL.js → chunk-MFFCUVWG.js} +6 -6
  27. package/dist/{chunk-KJ5LWATV.js → chunk-MKXO4Q5P.js} +7 -7
  28. package/dist/{chunk-EMCQGFXD.cjs → chunk-MMOODW57.cjs} +28 -27
  29. package/dist/{chunk-Q76ZTHNV.js → chunk-MP2C3LJ4.js} +1 -1
  30. package/dist/{chunk-J4K5JOLI.js → chunk-MV4HYG3B.js} +25 -11
  31. package/dist/{chunk-2T6QWNXU.js → chunk-NDESEPW5.js} +99 -11
  32. package/dist/{chunk-HHFPQNP3.js → chunk-NJDHFC55.js} +15 -15
  33. package/dist/{chunk-HUOLB7ZN.cjs → chunk-OHFS7VOU.cjs} +9 -9
  34. package/dist/{chunk-7632TNE7.js → chunk-OSNIZNVH.js} +7 -7
  35. package/dist/{chunk-UTW4SQDI.js → chunk-OUHMD6EU.js} +10 -10
  36. package/dist/{chunk-MXHJROXJ.cjs → chunk-P23CRLU4.cjs} +1245 -1139
  37. package/dist/{chunk-64O4L7WN.js → chunk-PDWVPI3S.js} +11 -55
  38. package/dist/{chunk-DAW6TDZB.js → chunk-PFC2HWQA.js} +30 -16
  39. package/dist/{chunk-G55W76S6.js → chunk-POZ7F77D.js} +12 -13
  40. package/dist/{chunk-PJP5SMOU.js → chunk-PPEZGUL7.js} +500 -67
  41. package/dist/{chunk-SFGXIFYO.cjs → chunk-QC7Q3XCE.cjs} +24 -24
  42. package/dist/{chunk-MDBHZBW7.cjs → chunk-RKV5B7EU.cjs} +92 -4
  43. package/dist/{chunk-5VPIC5MD.cjs → chunk-SAAZEWUR.cjs} +12 -12
  44. package/dist/{chunk-IIMICN7L.cjs → chunk-TYWLNCNH.cjs} +4 -48
  45. package/dist/{chunk-HYLIQMZH.cjs → chunk-UBP5RNGK.cjs} +33 -33
  46. package/dist/{chunk-HUMWQMCU.js → chunk-UT4YHQZW.js} +3 -3
  47. package/dist/{chunk-BSEIEWM5.cjs → chunk-V3H26CNS.cjs} +28 -14
  48. package/dist/{chunk-NGJCWEYX.cjs → chunk-VHCACDKP.cjs} +46 -46
  49. package/dist/{chunk-SL2FOFT2.js → chunk-VMAZCLX4.js} +7 -7
  50. package/dist/{chunk-5FFNNJM7.js → chunk-VR2ZLFCP.js} +1 -1
  51. package/dist/{chunk-NCTYD7HL.js → chunk-VYWMEL5F.js} +14 -14
  52. package/dist/{chunk-HY5YL3U5.cjs → chunk-XBWE423R.cjs} +1994 -1453
  53. package/dist/{chunk-XCIFHW4E.cjs → chunk-XOYH2YQE.cjs} +2 -2
  54. package/dist/{chunk-S6V7A5FS.cjs → chunk-ZQZFIE2K.cjs} +32 -33
  55. package/dist/components/case-studies/index.cjs +24 -24
  56. package/dist/components/case-studies/index.js +10 -10
  57. package/dist/components/chat/chat-archive-page.d.ts +3 -3
  58. package/dist/components/chat/chat-archive-page.d.ts.map +1 -1
  59. package/dist/components/chat/chat-input.d.ts.map +1 -1
  60. package/dist/components/chat/chat-nav-sidebar.d.ts +4 -0
  61. package/dist/components/chat/chat-nav-sidebar.d.ts.map +1 -1
  62. package/dist/components/chat/chat-panel-header.d.ts +3 -2
  63. package/dist/components/chat/chat-panel-header.d.ts.map +1 -1
  64. package/dist/components/chat/embeddable-chat.d.ts +36 -2
  65. package/dist/components/chat/embeddable-chat.d.ts.map +1 -1
  66. package/dist/components/chat/index.cjs +14 -6
  67. package/dist/components/chat/index.d.ts +4 -1
  68. package/dist/components/chat/index.d.ts.map +1 -1
  69. package/dist/components/chat/index.js +13 -5
  70. package/dist/components/chat/mingo-archive-list.d.ts +17 -0
  71. package/dist/components/chat/mingo-archive-list.d.ts.map +1 -0
  72. package/dist/components/chat/mingo-chat-header.d.ts +31 -0
  73. package/dist/components/chat/mingo-chat-header.d.ts.map +1 -0
  74. package/dist/components/chat/mingo-chat-rail.d.ts +54 -0
  75. package/dist/components/chat/mingo-chat-rail.d.ts.map +1 -0
  76. package/dist/components/chat/model-display.d.ts.map +1 -1
  77. package/dist/components/contact/contact-form.d.ts.map +1 -1
  78. package/dist/components/contact/index.cjs +11 -11
  79. package/dist/components/contact/index.js +10 -10
  80. package/dist/components/content-loading-container.d.ts +1 -1
  81. package/dist/components/content-loading-container.d.ts.map +1 -1
  82. package/dist/components/docs/index.cjs +14 -14
  83. package/dist/components/docs/index.js +13 -13
  84. package/dist/components/docs/skeletons.d.ts.map +1 -1
  85. package/dist/components/embeds/index.cjs +11 -11
  86. package/dist/components/embeds/index.js +10 -10
  87. package/dist/components/faq/index.cjs +12 -12
  88. package/dist/components/faq/index.js +11 -11
  89. package/dist/components/features/figma-prototype-viewer.d.ts.map +1 -1
  90. package/dist/components/features/index.cjs +10 -10
  91. package/dist/components/features/index.js +9 -9
  92. package/dist/components/features/media-gallery-manager.d.ts.map +1 -1
  93. package/dist/components/features/parallax-image-showcase.d.ts.map +1 -1
  94. package/dist/components/features/policy-configuration-panel.d.ts.map +1 -1
  95. package/dist/components/features/section-selector.d.ts.map +1 -1
  96. package/dist/components/help-center-pages/index.cjs +119 -119
  97. package/dist/components/help-center-pages/index.js +39 -39
  98. package/dist/components/help-center-pages/trust-center-sections.d.ts +2 -2
  99. package/dist/components/help-center-pages/trust-center-sections.d.ts.map +1 -1
  100. package/dist/components/index.cjs +94 -86
  101. package/dist/components/index.js +32 -24
  102. package/dist/components/layout/article-detail-layout.d.ts +1 -1
  103. package/dist/components/layout/article-detail-layout.d.ts.map +1 -1
  104. package/dist/components/layout/page-container.d.ts.map +1 -1
  105. package/dist/components/layout/title-block.d.ts +2 -2
  106. package/dist/components/layout/title-block.d.ts.map +1 -1
  107. package/dist/components/loading/page-layout-skeleton.d.ts.map +1 -1
  108. package/dist/components/loading/unified-skeleton.d.ts.map +1 -1
  109. package/dist/components/meeting-scheduler/booking-form.d.ts +4 -4
  110. package/dist/components/meeting-scheduler/booking-form.d.ts.map +1 -1
  111. package/dist/components/meeting-scheduler/context-panel.d.ts.map +1 -1
  112. package/dist/components/meeting-scheduler/index.cjs +127 -127
  113. package/dist/components/meeting-scheduler/index.d.ts +2 -2
  114. package/dist/components/meeting-scheduler/index.d.ts.map +1 -1
  115. package/dist/components/meeting-scheduler/index.js +50 -50
  116. package/dist/components/navigation/app-header.d.ts +4 -0
  117. package/dist/components/navigation/app-header.d.ts.map +1 -1
  118. package/dist/components/navigation/app-layout-side-panel.d.ts +142 -0
  119. package/dist/components/navigation/app-layout-side-panel.d.ts.map +1 -0
  120. package/dist/components/navigation/app-layout.d.ts +11 -1
  121. package/dist/components/navigation/app-layout.d.ts.map +1 -1
  122. package/dist/components/navigation/header-mingo-button.d.ts +4 -1
  123. package/dist/components/navigation/header-mingo-button.d.ts.map +1 -1
  124. package/dist/components/navigation/index.cjs +13 -13
  125. package/dist/components/navigation/index.d.ts +1 -0
  126. package/dist/components/navigation/index.d.ts.map +1 -1
  127. package/dist/components/navigation/index.js +12 -12
  128. package/dist/components/navigation/navigation-sidebar.d.ts +8 -1
  129. package/dist/components/navigation/navigation-sidebar.d.ts.map +1 -1
  130. package/dist/components/navigation/sliding-sidebar.d.ts.map +1 -1
  131. package/dist/components/onboarding-guides/index.cjs +14 -14
  132. package/dist/components/onboarding-guides/index.js +13 -13
  133. package/dist/components/persistent-filter-controls.d.ts.map +1 -1
  134. package/dist/components/related-content/index.cjs +7 -7
  135. package/dist/components/related-content/index.js +6 -6
  136. package/dist/components/shared/detail-page-skeleton.d.ts.map +1 -1
  137. package/dist/components/tickets/help-center-create-form.d.ts +4 -4
  138. package/dist/components/tickets/index.cjs +15 -15
  139. package/dist/components/tickets/index.js +14 -14
  140. package/dist/components/ui/announcement-bar-view.d.ts.map +1 -1
  141. package/dist/components/ui/breadcrumb.d.ts.map +1 -1
  142. package/dist/components/ui/checkbox-block.d.ts.map +1 -1
  143. package/dist/components/ui/dashboard-info-card.d.ts +1 -1
  144. package/dist/components/ui/dashboard-info-card.d.ts.map +1 -1
  145. package/dist/components/ui/data-table/data-table-body.d.ts +2 -2
  146. package/dist/components/ui/data-table/data-table-skeleton.d.ts +2 -2
  147. package/dist/components/ui/data-table/data-table-skeleton.d.ts.map +1 -1
  148. package/dist/components/ui/data-table/utils.d.ts +2 -2
  149. package/dist/components/ui/dialog.d.ts.map +1 -1
  150. package/dist/components/ui/drawer.d.ts.map +1 -1
  151. package/dist/components/ui/entity-image.d.ts +2 -2
  152. package/dist/components/ui/file-manager/index.cjs +36 -36
  153. package/dist/components/ui/file-manager/index.js +3 -3
  154. package/dist/components/ui/filter-modal.d.ts.map +1 -1
  155. package/dist/components/ui/index.cjs +18 -10
  156. package/dist/components/ui/index.js +17 -9
  157. package/dist/components/ui/info-card-row.d.ts.map +1 -1
  158. package/dist/components/ui/menubar.d.ts +1 -1
  159. package/dist/components/ui/menubar.d.ts.map +1 -1
  160. package/dist/components/ui/modal-v2.d.ts.map +1 -1
  161. package/dist/components/ui/modal.d.ts.map +1 -1
  162. package/dist/components/ui/no-data/no-data-actions.d.ts.map +1 -1
  163. package/dist/components/ui/no-data/no-data-styles.d.ts +1 -1
  164. package/dist/components/ui/no-data/no-data-styles.d.ts.map +1 -1
  165. package/dist/components/ui/page-actions.d.ts.map +1 -1
  166. package/dist/components/ui/sheet.d.ts.map +1 -1
  167. package/dist/components/ui/table/table-skeleton.d.ts +1 -1
  168. package/dist/components/ui/table/table-skeleton.d.ts.map +1 -1
  169. package/dist/hooks/index.cjs +23 -9
  170. package/dist/hooks/index.js +24 -10
  171. package/dist/hooks/ui/index.d.ts +1 -0
  172. package/dist/hooks/ui/index.d.ts.map +1 -1
  173. package/dist/hooks/ui/use-content-breakpoint.d.ts +32 -0
  174. package/dist/hooks/ui/use-content-breakpoint.d.ts.map +1 -0
  175. package/dist/hooks/ui/use-isomorphic-layout-effect.d.ts +2 -2
  176. package/dist/hooks/ui/use-isomorphic-layout-effect.d.ts.map +1 -1
  177. package/dist/hooks/ui/use-media-query.d.ts.map +1 -1
  178. package/dist/index.cjs +39 -17
  179. package/dist/index.js +41 -19
  180. package/dist/styles/layout-steps.d.ts +30 -0
  181. package/dist/styles/layout-steps.d.ts.map +1 -0
  182. package/dist/tailwind.config.cjs +36 -11
  183. package/dist/tailwind.config.js +36 -11
  184. package/eslint-config/README.md +9 -0
  185. package/eslint-config/base.js +17 -1
  186. package/eslint-config/layout-variants.js +57 -0
  187. package/package.json +3 -1
  188. package/src/ODS_TOKEN_RULES.md +40 -0
  189. package/src/components/chat/chat-archive-page.tsx +9 -7
  190. package/src/components/chat/chat-input.tsx +5 -1
  191. package/src/components/chat/chat-nav-sidebar.tsx +10 -4
  192. package/src/components/chat/chat-panel-header.tsx +8 -5
  193. package/src/components/chat/embeddable-chat.tsx +675 -485
  194. package/src/components/chat/index.ts +4 -0
  195. package/src/components/chat/mingo-archive-list.tsx +108 -0
  196. package/src/components/chat/mingo-chat-header.tsx +104 -0
  197. package/src/components/chat/mingo-chat-rail.tsx +361 -0
  198. package/src/components/chat/model-display.tsx +8 -1
  199. package/src/components/contact/contact-form.tsx +11 -9
  200. package/src/components/content-loading-container.tsx +4 -2
  201. package/src/components/docs/doc-viewer.tsx +7 -7
  202. package/src/components/docs/skeletons.tsx +7 -4
  203. package/src/components/dynamic-skeleton.tsx +1 -1
  204. package/src/components/embeds/claude-embed.tsx +1 -1
  205. package/src/components/embeds/embed-viewer-frame.tsx +4 -4
  206. package/src/components/embeds/figma-embed.tsx +2 -2
  207. package/src/components/embeds/google-sheets-viewer.tsx +1 -1
  208. package/src/components/embeds/pdf-viewer.tsx +3 -3
  209. package/src/components/empty-state.tsx +6 -6
  210. package/src/components/faq/faq-section.tsx +2 -2
  211. package/src/components/faq-accordion.tsx +1 -1
  212. package/src/components/features/board/board-column-header.tsx +1 -1
  213. package/src/components/features/command-box.tsx +3 -3
  214. package/src/components/features/entity-video-section.tsx +2 -2
  215. package/src/components/features/figma-prototype-viewer.tsx +4 -1
  216. package/src/components/features/media-gallery-manager.tsx +3 -1
  217. package/src/components/features/parallax-image-showcase.tsx +9 -6
  218. package/src/components/features/policy-configuration-panel.tsx +9 -7
  219. package/src/components/features/provider-button.tsx +1 -1
  220. package/src/components/features/section-selector.tsx +11 -6
  221. package/src/components/features/select-button.tsx +4 -4
  222. package/src/components/features/seo-editor-preview.tsx +2 -2
  223. package/src/components/features/video-ratio-tabs.tsx +3 -3
  224. package/src/components/features/waitlist-form.tsx +1 -1
  225. package/src/components/help-center-pages/trust-center-page.tsx +1 -1
  226. package/src/components/help-center-pages/trust-center-sections.tsx +14 -14
  227. package/src/components/icon-display.tsx +1 -1
  228. package/src/components/layout/article-detail-layout.tsx +4 -2
  229. package/src/components/layout/list-page-layout.tsx +2 -2
  230. package/src/components/layout/page-container.tsx +26 -14
  231. package/src/components/layout/page-heading.tsx +1 -1
  232. package/src/components/layout/page-layout.tsx +1 -1
  233. package/src/components/layout/title-block.tsx +13 -13
  234. package/src/components/loading/card-skeleton.tsx +11 -11
  235. package/src/components/loading/category-vendor-selector-skeleton.tsx +1 -1
  236. package/src/components/loading/content-skeleton.tsx +6 -6
  237. package/src/components/loading/device-card-skeleton.tsx +1 -1
  238. package/src/components/loading/margin-report-skeleton.tsx +7 -7
  239. package/src/components/loading/msp-profile-form-skeleton.tsx +3 -3
  240. package/src/components/loading/organization-card-skeleton.tsx +2 -2
  241. package/src/components/loading/page-layout-skeleton.tsx +80 -68
  242. package/src/components/loading/unified-skeleton.tsx +16 -6
  243. package/src/components/media-carousel.tsx +3 -3
  244. package/src/components/meeting-scheduler/booking-form.tsx +9 -8
  245. package/src/components/meeting-scheduler/context-panel.tsx +8 -6
  246. package/src/components/meeting-scheduler/directory.tsx +4 -4
  247. package/src/components/meeting-scheduler/index.tsx +15 -15
  248. package/src/components/meeting-scheduler/slot-picker.tsx +12 -12
  249. package/src/components/navigation/app-header.tsx +6 -0
  250. package/src/components/navigation/app-layout-side-panel.tsx +594 -0
  251. package/src/components/navigation/app-layout.tsx +69 -4
  252. package/src/components/navigation/header-mingo-button.tsx +13 -3
  253. package/src/components/navigation/index.ts +5 -0
  254. package/src/components/navigation/navigation-sidebar.tsx +17 -3
  255. package/src/components/navigation/sliding-sidebar.tsx +2 -1
  256. package/src/components/pagination.tsx +3 -3
  257. package/src/components/persistent-filter-controls.tsx +6 -2
  258. package/src/components/platform/ScriptArguments.tsx +1 -1
  259. package/src/components/platform/ScriptInfoSection.tsx +4 -4
  260. package/src/components/platform/SoftwareSourceBadge.tsx +1 -1
  261. package/src/components/shared/article-author-byline.tsx +1 -1
  262. package/src/components/shared/delivery/delivery-lists.tsx +2 -2
  263. package/src/components/shared/delivery/delivery-row.tsx +7 -7
  264. package/src/components/shared/delivery/delivery-table.tsx +3 -3
  265. package/src/components/shared/detail-page-skeleton.tsx +11 -5
  266. package/src/components/shared/dev-section/dev-card-row.tsx +6 -6
  267. package/src/components/shared/dev-section/dev-section-view.tsx +1 -1
  268. package/src/components/shared/product-release/product-release-card-skeleton.tsx +8 -8
  269. package/src/components/shared/product-release/product-release-card.tsx +9 -9
  270. package/src/components/shared/product-release/product-releases-view.tsx +1 -1
  271. package/src/components/shared/product-release/release-detail-page.tsx +5 -5
  272. package/src/components/shared/roadmap/roadmap-grid-skeleton.tsx +1 -1
  273. package/src/components/shared/roadmap/roadmap-grid.tsx +3 -3
  274. package/src/components/tickets/help-center-card.tsx +1 -1
  275. package/src/components/tickets/help-center-create-form.tsx +12 -12
  276. package/src/components/ui/announcement-bar-view.tsx +2 -10
  277. package/src/components/ui/benefit-card.tsx +18 -18
  278. package/src/components/ui/brand-association-grid.tsx +4 -4
  279. package/src/components/ui/breadcrumb.tsx +4 -1
  280. package/src/components/ui/card.tsx +1 -1
  281. package/src/components/ui/checkbox-block.tsx +9 -7
  282. package/src/components/ui/content-loader.tsx +3 -3
  283. package/src/components/ui/cursor-pagination.tsx +3 -3
  284. package/src/components/ui/dashboard-info-card.tsx +13 -9
  285. package/src/components/ui/data-attribution.tsx +2 -2
  286. package/src/components/ui/data-table/data-table-body.tsx +2 -2
  287. package/src/components/ui/data-table/data-table-header.tsx +15 -15
  288. package/src/components/ui/data-table/data-table-skeleton.tsx +6 -6
  289. package/src/components/ui/data-table/utils.ts +5 -5
  290. package/src/components/ui/dialog.tsx +4 -1
  291. package/src/components/ui/drawer.tsx +2 -1
  292. package/src/components/ui/duration-input.tsx +1 -1
  293. package/src/components/ui/entity-image.tsx +3 -3
  294. package/src/components/ui/feature-card.tsx +10 -10
  295. package/src/components/ui/file-manager/file-manager-action-bar.tsx +1 -1
  296. package/src/components/ui/file-manager/file-manager.tsx +1 -1
  297. package/src/components/ui/filter-modal.tsx +8 -1
  298. package/src/components/ui/highlight-card.tsx +7 -7
  299. package/src/components/ui/info-card-row.tsx +10 -6
  300. package/src/components/ui/modal-v2.tsx +7 -2
  301. package/src/components/ui/modal.tsx +3 -2
  302. package/src/components/ui/no-data/no-data-actions.tsx +10 -4
  303. package/src/components/ui/no-data/no-data-styles.ts +1 -1
  304. package/src/components/ui/no-data/no-data.tsx +1 -1
  305. package/src/components/ui/organization-card.tsx +1 -1
  306. package/src/components/ui/page-actions.tsx +34 -5
  307. package/src/components/ui/progress-bar.tsx +2 -2
  308. package/src/components/ui/query-report-table/query-report-table.tsx +1 -1
  309. package/src/components/ui/search-input.tsx +2 -2
  310. package/src/components/ui/service-card.tsx +2 -2
  311. package/src/components/ui/sheet.tsx +2 -1
  312. package/src/components/ui/skeleton.tsx +3 -3
  313. package/src/components/ui/stacked-rows-panel.tsx +4 -4
  314. package/src/components/ui/tab-navigation.tsx +2 -2
  315. package/src/components/ui/tab-selector.tsx +2 -2
  316. package/src/components/ui/table/table-header.tsx +3 -3
  317. package/src/components/ui/table/table-skeleton.tsx +3 -3
  318. package/src/components/ui/table/utils.ts +5 -5
  319. package/src/components/ui/tag-search-input.tsx +3 -3
  320. package/src/components/ui/tags-manager.tsx +5 -5
  321. package/src/components/ui/test-run.tsx +2 -2
  322. package/src/components/ui/ticket-info-section.tsx +1 -1
  323. package/src/components/ui/ticket-notes-section.tsx +1 -1
  324. package/src/components/ui/ticket-status-config-row.tsx +15 -15
  325. package/src/hooks/ui/index.ts +1 -0
  326. package/src/hooks/ui/use-content-breakpoint.ts +58 -0
  327. package/src/hooks/ui/use-media-query.ts +3 -2
  328. package/src/styles/app-globals.css +13 -0
  329. package/src/styles/index.css +2 -0
  330. package/src/styles/layout-steps.ts +14 -0
  331. package/src/styles/ods-colors.css +15 -0
  332. package/src/styles/ods-content-area-tokens.css +27 -0
  333. package/src/styles/ods-content-area.css +31 -0
  334. package/src/styles/ods-effects.css +4 -2
  335. package/src/styles/ods-responsive-tokens.css +14 -4
  336. package/tailwind.config.ts +42 -7
@@ -1,27 +1,27 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }"use client";
2
2
 
3
3
 
4
- var _chunkXCIFHW4Ecjs = require('./chunk-XCIFHW4E.cjs');
4
+ var _chunkXOYH2YQEcjs = require('./chunk-XOYH2YQE.cjs');
5
5
 
6
6
 
7
7
 
8
- var _chunkMXHJROXJcjs = require('./chunk-MXHJROXJ.cjs');
8
+ var _chunkP23CRLU4cjs = require('./chunk-P23CRLU4.cjs');
9
9
 
10
10
 
11
- var _chunk3L7KCOGOcjs = require('./chunk-3L7KCOGO.cjs');
11
+ var _chunk2QEUFXNScjs = require('./chunk-2QEUFXNS.cjs');
12
12
 
13
13
 
14
- var _chunkBRXOGCH3cjs = require('./chunk-BRXOGCH3.cjs');
14
+ var _chunkBIZNSF3Ucjs = require('./chunk-BIZNSF3U.cjs');
15
15
 
16
16
 
17
17
 
18
18
 
19
- var _chunkHY5YL3U5cjs = require('./chunk-HY5YL3U5.cjs');
19
+ var _chunkXBWE423Rcjs = require('./chunk-XBWE423R.cjs');
20
20
 
21
21
 
22
22
 
23
23
 
24
- var _chunkIIMICN7Lcjs = require('./chunk-IIMICN7L.cjs');
24
+ var _chunkTYWLNCNHcjs = require('./chunk-TYWLNCNH.cjs');
25
25
 
26
26
 
27
27
  var _chunk7DNL734Scjs = require('./chunk-7DNL734S.cjs');
@@ -30,7 +30,7 @@ var _chunk7DNL734Scjs = require('./chunk-7DNL734S.cjs');
30
30
  var _chunkN3COXDBHcjs = require('./chunk-N3COXDBH.cjs');
31
31
 
32
32
 
33
- var _chunkEMCQGFXDcjs = require('./chunk-EMCQGFXD.cjs');
33
+ var _chunkMMOODW57cjs = require('./chunk-MMOODW57.cjs');
34
34
 
35
35
 
36
36
  var _chunk3ATAYP36cjs = require('./chunk-3ATAYP36.cjs');
@@ -56,7 +56,7 @@ function FaqAccordion({ items, defaultOpenIds = [] }) {
56
56
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
57
57
  "div",
58
58
  {
59
- id: _chunkHY5YL3U5cjs.faqItemAnchor.call(void 0, item.id),
59
+ id: _chunkXBWE423Rcjs.faqItemAnchor.call(void 0, item.id),
60
60
  className: "scroll-mt-24 transition-colors hover:bg-ods-bg-hover",
61
61
  children: [
62
62
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -72,7 +72,7 @@ function FaqAccordion({ items, defaultOpenIds = [] }) {
72
72
  }
73
73
  },
74
74
  "aria-expanded": isOpen,
75
- className: "flex w-full cursor-pointer items-center gap-6 px-6 py-4 text-left transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ods-focus md:gap-10",
75
+ className: "flex w-full cursor-pointer items-center gap-6 px-6 py-4 text-left transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ods-focus content-md:gap-10",
76
76
  children: [
77
77
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "min-w-0 flex-1 break-words", children: item.question }),
78
78
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -134,7 +134,7 @@ function buildFaqJsonLdFromFaqs(faqs, opts = {}) {
134
134
 
135
135
  var DEFAULT_HEADING_TEXT = "Frequently Asked Questions";
136
136
  function buildFaqsUrl(entityType, entityId, minResults, apiBaseUrl = "") {
137
- return _chunkBRXOGCH3cjs.buildSuggestionUrl.call(void 0, "/api/faqs", { apiBaseUrl, entityType, entityId, count: minResults });
137
+ return _chunkBIZNSF3Ucjs.buildSuggestionUrl.call(void 0, "/api/faqs", { apiBaseUrl, entityType, entityId, count: minResults });
138
138
  }
139
139
  function groupFaqsBySection(faqs) {
140
140
  const byName = /* @__PURE__ */ new Map();
@@ -149,7 +149,7 @@ function groupFaqsBySection(faqs) {
149
149
  }
150
150
  let group = byName.get(name);
151
151
  if (!group) {
152
- group = { section: name, slug: _chunkHY5YL3U5cjs.faqSectionSlug.call(void 0, name), items: [] };
152
+ group = { section: name, slug: _chunkXBWE423Rcjs.faqSectionSlug.call(void 0, name), items: [] };
153
153
  byName.set(name, group);
154
154
  }
155
155
  group.items.push(item);
@@ -192,7 +192,7 @@ function GroupedFaqList({
192
192
  }
193
193
  if (bestId) setActiveSlug(bestId);
194
194
  },
195
- { rootMargin: `-${_chunkIIMICN7Lcjs.STICKY_HEADER_OFFSET_PX}px 0px -55% 0px`, threshold: 0 }
195
+ { rootMargin: `-${_chunkTYWLNCNHcjs.STICKY_HEADER_OFFSET_PX}px 0px -55% 0px`, threshold: 0 }
196
196
  );
197
197
  for (const group of navGroupsRef.current) {
198
198
  const el = group.slug ? document.getElementById(group.slug) : null;
@@ -202,7 +202,7 @@ function GroupedFaqList({
202
202
  }, [slugKey]);
203
203
  const [hashTarget, setHashTarget] = _react.useState.call(void 0, null);
204
204
  _react.useEffect.call(void 0, () => {
205
- const refresh = () => setHashTarget(_chunkHY5YL3U5cjs.parseFaqHash.call(void 0, window.location.hash));
205
+ const refresh = () => setHashTarget(_chunkXBWE423Rcjs.parseFaqHash.call(void 0, window.location.hash));
206
206
  refresh();
207
207
  window.addEventListener("hashchange", refresh);
208
208
  return () => window.removeEventListener("hashchange", refresh);
@@ -219,7 +219,7 @@ function GroupedFaqList({
219
219
  }, [groups, hashTarget]);
220
220
  const accordionKeySuffix = _optionalChain([hashTarget, 'optionalAccess', _8 => _8.kind]) === "item" ? `item:${hashTarget.rawId}` : "default";
221
221
  const scrollDep = `${groups.length}|` + (_optionalChain([hashTarget, 'optionalAccess', _9 => _9.kind]) === "item" ? `item:${hashTarget.rawId}` : _optionalChain([hashTarget, 'optionalAccess', _10 => _10.kind]) === "section" ? `section:${hashTarget.slug}` : "none");
222
- _chunk3L7KCOGOcjs.useScrollToHash.call(void 0, scrollDep, { headerOffset: _chunkIIMICN7Lcjs.STICKY_HEADER_OFFSET_PX });
222
+ _chunk2QEUFXNScjs.useScrollToHash.call(void 0, scrollDep, { headerOffset: _chunkTYWLNCNHcjs.STICKY_HEADER_OFFSET_PX });
223
223
  const [pillSyncedHash, setPillSyncedHash] = _react.useState.call(void 0, hashTarget);
224
224
  if (pillSyncedHash !== hashTarget) {
225
225
  setPillSyncedHash(hashTarget);
@@ -227,8 +227,8 @@ function GroupedFaqList({
227
227
  }
228
228
  const handleJump = _react.useCallback.call(void 0, (e, slug) => {
229
229
  e.preventDefault();
230
- _chunkIIMICN7Lcjs.navigateSamePageHash.call(void 0, "#" + slug, {
231
- headerOffset: _chunkIIMICN7Lcjs.STICKY_HEADER_OFFSET_PX,
230
+ _chunkTYWLNCNHcjs.navigateSamePageHash.call(void 0, "#" + slug, {
231
+ headerOffset: _chunkTYWLNCNHcjs.STICKY_HEADER_OFFSET_PX,
232
232
  history: "replace"
233
233
  });
234
234
  }, []);
@@ -253,7 +253,7 @@ function GroupedFaqList({
253
253
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-10", children: groups.map((group) => {
254
254
  const key = groupKey(group);
255
255
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "section", { id: _nullishCoalesce(group.slug, () => ( void 0)), className: "scroll-mt-24 space-y-4", children: [
256
- group.section && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CategoryHeading, { className: _chunkEMCQGFXDcjs.SECTION_HEADING_CLASS, children: group.section }),
256
+ group.section && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CategoryHeading, { className: _chunkMMOODW57cjs.SECTION_HEADING_CLASS, children: group.section }),
257
257
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
258
258
  FaqAccordion,
259
259
  {
@@ -268,8 +268,8 @@ function GroupedFaqList({
268
268
  }
269
269
  function FaqSkeleton() {
270
270
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "animate-pulse space-y-8", children: [
271
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-12 w-2/3 rounded bg-ods-border md:h-14" }),
272
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full divide-y divide-ods-border overflow-hidden rounded-md border border-ods-border bg-transparent", children: Array.from({ length: 8 }).map((_, idx) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-6 px-6 py-4 md:gap-10", children: [
271
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-12 w-2/3 rounded bg-ods-border content-md:h-14" }),
272
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full divide-y divide-ods-border overflow-hidden rounded-md border border-ods-border bg-transparent", children: Array.from({ length: 8 }).map((_, idx) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between gap-6 px-6 py-4 content-md:gap-10", children: [
273
273
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-6 w-5/6 rounded bg-ods-border" }),
274
274
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "size-6 rounded bg-ods-border" })
275
275
  ] }, idx)) })
@@ -291,10 +291,10 @@ function FaqSection({
291
291
  () => initialFaqs ? { faqs: initialFaqs } : void 0,
292
292
  [initialFaqs]
293
293
  );
294
- const { data, isLoading, error } = _chunkXCIFHW4Ecjs.useSelfFetch.call(void 0, url, { initialData });
294
+ const { data, isLoading, error } = _chunkXOYH2YQEcjs.useSelfFetch.call(void 0, url, { initialData });
295
295
  const faqs = _react.useMemo.call(void 0, () => _nullishCoalesce(_optionalChain([data, 'optionalAccess', _14 => _14.faqs]), () => ( [])), [_optionalChain([data, 'optionalAccess', _15 => _15.faqs])]);
296
296
  const groups = _react.useMemo.call(void 0, () => faqs.length > 0 ? groupFaqsBySection(faqs) : [], [faqs]);
297
- const headingNode = heading === void 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: _chunkEMCQGFXDcjs.SECTION_HEADING_CLASS, children: DEFAULT_HEADING_TEXT }) : heading;
297
+ const headingNode = heading === void 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: _chunkMMOODW57cjs.SECTION_HEADING_CLASS, children: DEFAULT_HEADING_TEXT }) : heading;
298
298
  if (error) return null;
299
299
  if (!isLoading && faqs.length === 0) return null;
300
300
  if (isLoading && faqs.length === 0) {
@@ -310,7 +310,7 @@ function FaqSection({
310
310
  "script",
311
311
  {
312
312
  type: "application/ld+json",
313
- dangerouslySetInnerHTML: { __html: _chunkIIMICN7Lcjs.serializeJsonLd.call(void 0, schema) }
313
+ dangerouslySetInnerHTML: { __html: _chunkTYWLNCNHcjs.serializeJsonLd.call(void 0, schema) }
314
314
  }
315
315
  )
316
316
  ] });
@@ -336,7 +336,7 @@ function FaqDocumentPage({
336
336
  label: _nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _16 => _16.label]), () => ( "Back to home")),
337
337
  onClick: () => router.push(_nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _17 => _17.href]), () => ( "/")))
338
338
  };
339
- const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMXHJROXJcjs.PageLayout, { title, subtitle, backButton: backCfg, titleSize: "h1", titleWrap: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
339
+ const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP23CRLU4cjs.PageLayout, { title, subtitle, backButton: backCfg, titleSize: "h1", titleWrap: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
340
340
  FaqSection,
341
341
  {
342
342
  initialFaqs,
@@ -349,7 +349,7 @@ function FaqDocumentPage({
349
349
  minResults
350
350
  }
351
351
  ) });
352
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMXHJROXJcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
352
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP23CRLU4cjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
353
353
  }
354
354
 
355
355
 
@@ -3,8 +3,58 @@
3
3
 
4
4
  var _chunkUJ7AXHRZcjs = require('./chunk-UJ7AXHRZ.cjs');
5
5
 
6
- // src/hooks/ui/use-is-truncated.ts
6
+ // src/hooks/ui/use-isomorphic-layout-effect.ts
7
7
  var _react = require('react');
8
+ var useIsomorphicLayoutEffect = typeof window !== "undefined" ? _react.useLayoutEffect : _react.useEffect;
9
+
10
+ // src/hooks/ui/use-media-query.ts
11
+
12
+
13
+ // src/styles/layout-steps.ts
14
+ var LAYOUT_STEPS = {
15
+ sm: { viewport: 640, content: 640 },
16
+ md: { viewport: 800, content: 720 },
17
+ lg: { viewport: 1280, content: 1024 },
18
+ xl: { viewport: 1440, content: 1216 },
19
+ "2xl": { viewport: 1536, content: 1312 }
20
+ };
21
+
22
+ // src/hooks/ui/use-media-query.ts
23
+ function useMediaQuery(query) {
24
+ const [matches, setMatches] = _react.useState.call(void 0, void 0);
25
+ useIsomorphicLayoutEffect(() => {
26
+ const matchMedia = window.matchMedia(query);
27
+ const handleChange = () => {
28
+ setMatches(matchMedia.matches);
29
+ };
30
+ handleChange();
31
+ matchMedia.addEventListener("change", handleChange);
32
+ return () => {
33
+ matchMedia.removeEventListener("change", handleChange);
34
+ };
35
+ }, [query]);
36
+ return matches;
37
+ }
38
+ var breakpoints = {
39
+ md: `(min-width: ${LAYOUT_STEPS.md.viewport}px)`,
40
+ // Tablet
41
+ lg: `(min-width: ${LAYOUT_STEPS.lg.viewport}px)`
42
+ // Desktop
43
+ };
44
+ function useSmUp() {
45
+ return useMdUp();
46
+ }
47
+ function useMdUp() {
48
+ const matches = useMediaQuery(breakpoints.md);
49
+ return matches === void 0 ? void 0 : matches;
50
+ }
51
+ function useLgUp() {
52
+ const matches = useMediaQuery(breakpoints.lg);
53
+ return matches === void 0 ? void 0 : matches;
54
+ }
55
+
56
+ // src/hooks/ui/use-is-truncated.ts
57
+
8
58
  function useIsTruncated(value, options) {
9
59
  const multiline = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _ => _.multiline]), () => ( false));
10
60
  const [element, setElement] = _react.useState.call(void 0, null);
@@ -25,9 +75,35 @@ function useIsTruncated(value, options) {
25
75
  return { ref, isTruncated: element ? isTruncated : false };
26
76
  }
27
77
 
28
- // src/hooks/ui/use-isomorphic-layout-effect.ts
78
+ // src/hooks/ui/use-content-breakpoint.ts
29
79
 
30
- var useIsomorphicLayoutEffect = typeof window !== "undefined" ? _react.useLayoutEffect : _react.useEffect;
80
+ var CONTENT_BREAKPOINTS = { md: LAYOUT_STEPS.md.content, lg: LAYOUT_STEPS.lg.content };
81
+ var ContentAreaWidthContext = _react.createContext.call(void 0, null);
82
+ function ViewportBreakpoints({ children }) {
83
+ return _react.createElement.call(void 0, ContentAreaWidthContext.Provider, { value: null }, children);
84
+ }
85
+ function contentBreakpointFor(width) {
86
+ if (width >= CONTENT_BREAKPOINTS.lg) return "desktop";
87
+ if (width >= CONTENT_BREAKPOINTS.md) return "tablet";
88
+ return "mobile";
89
+ }
90
+ function useContentBreakpoint() {
91
+ const width = _react.useContext.call(void 0, ContentAreaWidthContext);
92
+ const mdUp = useMdUp();
93
+ const lgUp = useLgUp();
94
+ if (width !== null) return contentBreakpointFor(width);
95
+ if (mdUp === void 0) return void 0;
96
+ if (lgUp) return "desktop";
97
+ return mdUp ? "tablet" : "mobile";
98
+ }
99
+ function useContentMdUp() {
100
+ const breakpoint = useContentBreakpoint();
101
+ return breakpoint === void 0 ? void 0 : breakpoint !== "mobile";
102
+ }
103
+ function useContentLgUp() {
104
+ const breakpoint = useContentBreakpoint();
105
+ return breakpoint === void 0 ? void 0 : breakpoint === "desktop";
106
+ }
31
107
 
32
108
  // src/hooks/ui/use-image-edge-color.ts
33
109
 
@@ -782,4 +858,16 @@ function useOgPlaceholderUrl({
782
858
 
783
859
 
784
860
 
785
- exports.useIsTruncated = useIsTruncated; exports.useIsomorphicLayoutEffect = useIsomorphicLayoutEffect; exports.useImageEdgeColor = useImageEdgeColor; exports.createLocalStorageAdapter = createLocalStorageAdapter; exports.platformDisplayNames = platformDisplayNames; exports.platformShortNames = platformShortNames; exports.platformDescriptions = platformDescriptions; exports.platformSlogans = platformSlogans; exports.platformIconNames = platformIconNames; exports.getPlatformDisplayName = getPlatformDisplayName; exports.getPlatformShortName = getPlatformShortName; exports.getPlatformDescription = getPlatformDescription; exports.getPlatformSlogan = getPlatformSlogan; exports.getDefaultIconForPlatform = getDefaultIconForPlatform; exports.ODS_STEM_TOKENS = ODS_STEM_TOKENS; exports.ODS_STEM_CLASSES = ODS_STEM_CLASSES; exports.PLATFORM_THEME = PLATFORM_THEME; exports.PLATFORM_SURFACE = PLATFORM_SURFACE; exports.getPlatformBackgroundVarName = getPlatformBackgroundVarName; exports.getPlatformTextVarName = getPlatformTextVarName; exports.PLATFORM_BRAND = PLATFORM_BRAND; exports.getPlatformBrand = getPlatformBrand; exports.platformAccentToken = platformAccentToken; exports.platformSecondaryToken = platformSecondaryToken; exports.platformAccentVarName = platformAccentVarName; exports.platformSecondaryVarName = platformSecondaryVarName; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getPlatformSecondaryColor = getPlatformSecondaryColor; exports.getPlatformBrandClasses = getPlatformBrandClasses; exports.platformColors = platformColors; exports.getPlatformColor = getPlatformColor; exports.platformHexColors = platformHexColors; exports.getDefaultColorForPlatform = getDefaultColorForPlatform; exports.getAppType = getAppType; exports.EMBED_PROXY_OPTIONAL_HEADERS = EMBED_PROXY_OPTIONAL_HEADERS; exports.getEmbedProxyAuth = getEmbedProxyAuth; exports.getPersistedProxyEmail = getPersistedProxyEmail; exports.setEmbedProxyAuth = setEmbedProxyAuth; exports.clearEmbedProxyAuth = clearEmbedProxyAuth; exports.applyProxyAuth = applyProxyAuth; exports.setEmbedAuthAdapter = setEmbedAuthAdapter; exports.hasEmbedAuthAdapter = hasEmbedAuthAdapter; exports.subscribeEmbedCredentialChange = subscribeEmbedCredentialChange; exports.embedAuthedFetch = embedAuthedFetch; exports.clearAuthedAssetCache = clearAuthedAssetCache; exports.useAuthedAssetSrc = useAuthedAssetSrc; exports.useAuthedImageSrc = useAuthedImageSrc; exports.clearAuthedImageCache = clearAuthedImageCache; exports.buildOgPlaceholderUrl = buildOgPlaceholderUrl; exports.useOgPlaceholderUrl = useOgPlaceholderUrl;
861
+
862
+
863
+
864
+
865
+
866
+
867
+
868
+
869
+
870
+
871
+
872
+
873
+ exports.useIsomorphicLayoutEffect = useIsomorphicLayoutEffect; exports.useMediaQuery = useMediaQuery; exports.breakpoints = breakpoints; exports.useSmUp = useSmUp; exports.useMdUp = useMdUp; exports.useLgUp = useLgUp; exports.useIsTruncated = useIsTruncated; exports.CONTENT_BREAKPOINTS = CONTENT_BREAKPOINTS; exports.ContentAreaWidthContext = ContentAreaWidthContext; exports.ViewportBreakpoints = ViewportBreakpoints; exports.contentBreakpointFor = contentBreakpointFor; exports.useContentBreakpoint = useContentBreakpoint; exports.useContentMdUp = useContentMdUp; exports.useContentLgUp = useContentLgUp; exports.useImageEdgeColor = useImageEdgeColor; exports.createLocalStorageAdapter = createLocalStorageAdapter; exports.platformDisplayNames = platformDisplayNames; exports.platformShortNames = platformShortNames; exports.platformDescriptions = platformDescriptions; exports.platformSlogans = platformSlogans; exports.platformIconNames = platformIconNames; exports.getPlatformDisplayName = getPlatformDisplayName; exports.getPlatformShortName = getPlatformShortName; exports.getPlatformDescription = getPlatformDescription; exports.getPlatformSlogan = getPlatformSlogan; exports.getDefaultIconForPlatform = getDefaultIconForPlatform; exports.ODS_STEM_TOKENS = ODS_STEM_TOKENS; exports.ODS_STEM_CLASSES = ODS_STEM_CLASSES; exports.PLATFORM_THEME = PLATFORM_THEME; exports.PLATFORM_SURFACE = PLATFORM_SURFACE; exports.getPlatformBackgroundVarName = getPlatformBackgroundVarName; exports.getPlatformTextVarName = getPlatformTextVarName; exports.PLATFORM_BRAND = PLATFORM_BRAND; exports.getPlatformBrand = getPlatformBrand; exports.platformAccentToken = platformAccentToken; exports.platformSecondaryToken = platformSecondaryToken; exports.platformAccentVarName = platformAccentVarName; exports.platformSecondaryVarName = platformSecondaryVarName; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getPlatformSecondaryColor = getPlatformSecondaryColor; exports.getPlatformBrandClasses = getPlatformBrandClasses; exports.platformColors = platformColors; exports.getPlatformColor = getPlatformColor; exports.platformHexColors = platformHexColors; exports.getDefaultColorForPlatform = getDefaultColorForPlatform; exports.getAppType = getAppType; exports.EMBED_PROXY_OPTIONAL_HEADERS = EMBED_PROXY_OPTIONAL_HEADERS; exports.getEmbedProxyAuth = getEmbedProxyAuth; exports.getPersistedProxyEmail = getPersistedProxyEmail; exports.setEmbedProxyAuth = setEmbedProxyAuth; exports.clearEmbedProxyAuth = clearEmbedProxyAuth; exports.applyProxyAuth = applyProxyAuth; exports.setEmbedAuthAdapter = setEmbedAuthAdapter; exports.hasEmbedAuthAdapter = hasEmbedAuthAdapter; exports.subscribeEmbedCredentialChange = subscribeEmbedCredentialChange; exports.embedAuthedFetch = embedAuthedFetch; exports.clearAuthedAssetCache = clearAuthedAssetCache; exports.useAuthedAssetSrc = useAuthedAssetSrc; exports.useAuthedImageSrc = useAuthedImageSrc; exports.clearAuthedImageCache = clearAuthedImageCache; exports.buildOgPlaceholderUrl = buildOgPlaceholderUrl; exports.useOgPlaceholderUrl = useOgPlaceholderUrl;
@@ -1,18 +1,18 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
 
3
3
 
4
- var _chunkMXHJROXJcjs = require('./chunk-MXHJROXJ.cjs');
4
+ var _chunkP23CRLU4cjs = require('./chunk-P23CRLU4.cjs');
5
5
 
6
6
 
7
7
 
8
- var _chunk3L7KCOGOcjs = require('./chunk-3L7KCOGO.cjs');
8
+ var _chunk2QEUFXNScjs = require('./chunk-2QEUFXNS.cjs');
9
9
 
10
10
 
11
11
 
12
12
  var _chunkN3COXDBHcjs = require('./chunk-N3COXDBH.cjs');
13
13
 
14
14
 
15
- var _chunkEMCQGFXDcjs = require('./chunk-EMCQGFXD.cjs');
15
+ var _chunkMMOODW57cjs = require('./chunk-MMOODW57.cjs');
16
16
 
17
17
 
18
18
  var _chunkDFQYAYBHcjs = require('./chunk-DFQYAYBH.cjs');
@@ -27,7 +27,7 @@ function FileDownloadCard({ fileName, mimeType, fileSize, fileUrl }) {
27
27
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-ods-text-primary text-h3", children: fileName || "File" }),
28
28
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mt-2 flex items-center justify-center gap-3 text-ods-text-secondary text-h6", children: [
29
29
  mimeType && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: mimeType }),
30
- typeof fileSize === "number" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: _chunkEMCQGFXDcjs.formatFileSize.call(void 0, fileSize) })
30
+ typeof fileSize === "number" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: _chunkMMOODW57cjs.formatFileSize.call(void 0, fileSize) })
31
31
  ] })
32
32
  ] }),
33
33
  fileUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDFQYAYBHcjs.Button, { variant: "accent", href: fileUrl, openInNewTab: true, leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Download, { className: "h-4 w-4" }), children: "Download File" })
@@ -46,7 +46,7 @@ function GoogleSheetsViewer({ externalUrl, fileName, height }) {
46
46
  ] });
47
47
  }
48
48
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
49
- _chunkMXHJROXJcjs.EmbedViewerFrame,
49
+ _chunkP23CRLU4cjs.EmbedViewerFrame,
50
50
  {
51
51
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN3COXDBHcjs.GoogleSheetsIcon, { className: "h-5 w-5 shrink-0" }),
52
52
  title: displayName,
@@ -55,15 +55,15 @@ function GoogleSheetsViewer({ externalUrl, fileName, height }) {
55
55
  {
56
56
  variant: "outline",
57
57
  size: "small-legacy",
58
- href: _chunk3L7KCOGOcjs.toGoogleSheetsOriginalUrl.call(void 0, externalUrl),
58
+ href: _chunk2QEUFXNScjs.toGoogleSheetsOriginalUrl.call(void 0, externalUrl),
59
59
  openInNewTab: true,
60
60
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN3COXDBHcjs.GoogleSheetsIcon, { className: "h-4 w-4" }),
61
61
  rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "h-4 w-4" }),
62
- className: "w-full sm:w-auto",
62
+ className: "w-full content-sm:w-auto",
63
63
  children: "Open in Google Sheets"
64
64
  }
65
65
  ),
66
- src: _chunk3L7KCOGOcjs.toGoogleSheetsEmbedUrl.call(void 0, externalUrl),
66
+ src: _chunk2QEUFXNScjs.toGoogleSheetsEmbedUrl.call(void 0, externalUrl),
67
67
  height
68
68
  }
69
69
  );
@@ -81,11 +81,11 @@ function PdfViewer({ src, fileName, onPreview, onDownload, height }) {
81
81
  ] });
82
82
  }
83
83
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
84
- _chunkMXHJROXJcjs.EmbedViewerFrame,
84
+ _chunkP23CRLU4cjs.EmbedViewerFrame,
85
85
  {
86
86
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkN3COXDBHcjs.AdobePdfIcon, { className: "h-5 w-5 shrink-0" }),
87
87
  title: displayName,
88
- actions: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-2 sm:w-auto", children: [
88
+ actions: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-2 content-sm:w-auto", children: [
89
89
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
90
90
  _chunkDFQYAYBHcjs.Button,
91
91
  {
@@ -95,7 +95,7 @@ function PdfViewer({ src, fileName, onPreview, onDownload, height }) {
95
95
  openInNewTab: !onPreview,
96
96
  onClick: onPreview,
97
97
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Eye, { className: "h-4 w-4" }),
98
- className: "flex-1 sm:flex-initial",
98
+ className: "flex-1 content-sm:flex-initial",
99
99
  children: "Preview"
100
100
  }
101
101
  ),
@@ -108,7 +108,7 @@ function PdfViewer({ src, fileName, onPreview, onDownload, height }) {
108
108
  openInNewTab: !onDownload,
109
109
  onClick: onDownload,
110
110
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Download, { className: "h-4 w-4" }),
111
- className: "flex-1 sm:flex-initial",
111
+ className: "flex-1 content-sm:flex-initial",
112
112
  children: "Download"
113
113
  }
114
114
  )
@@ -10,7 +10,7 @@
10
10
  var _chunkN3COXDBHcjs = require('./chunk-N3COXDBH.cjs');
11
11
 
12
12
 
13
- var _chunkMDBHZBW7cjs = require('./chunk-MDBHZBW7.cjs');
13
+ var _chunkRKV5B7EUcjs = require('./chunk-RKV5B7EU.cjs');
14
14
 
15
15
  // src/hooks/ui/use-debounce.ts
16
16
  var _react = require('react');
@@ -27,41 +27,6 @@ function useDebounce(value, delay2 = 500) {
27
27
  return debouncedValue;
28
28
  }
29
29
 
30
- // src/hooks/ui/use-media-query.ts
31
-
32
- function useMediaQuery(query) {
33
- const [matches, setMatches] = _react.useState.call(void 0, void 0);
34
- _chunkMDBHZBW7cjs.useIsomorphicLayoutEffect.call(void 0, () => {
35
- const matchMedia = window.matchMedia(query);
36
- const handleChange = () => {
37
- setMatches(matchMedia.matches);
38
- };
39
- handleChange();
40
- matchMedia.addEventListener("change", handleChange);
41
- return () => {
42
- matchMedia.removeEventListener("change", handleChange);
43
- };
44
- }, [query]);
45
- return matches;
46
- }
47
- var breakpoints = {
48
- md: "(min-width: 800px)",
49
- // Tablet: 50rem
50
- lg: "(min-width: 1280px)"
51
- // Desktop: 80rem
52
- };
53
- function useSmUp() {
54
- return useMdUp();
55
- }
56
- function useMdUp() {
57
- const matches = useMediaQuery(breakpoints.md);
58
- return matches === void 0 ? void 0 : matches;
59
- }
60
- function useLgUp() {
61
- const matches = useMediaQuery(breakpoints.lg);
62
- return matches === void 0 ? void 0 : matches;
63
- }
64
-
65
30
  // src/hooks/ui/use-header-height.ts
66
31
 
67
32
  function useHeaderHeight(defaultHeight = 72, options = {}) {
@@ -219,10 +184,10 @@ function useSuppressCloneFocus(active) {
219
184
  // src/hooks/ui/use-prefers-reduced-motion.ts
220
185
  var PREFERS_REDUCED_MOTION_QUERY = "(prefers-reduced-motion: reduce)";
221
186
  function usePrefersReducedMotion() {
222
- return useMediaQuery(PREFERS_REDUCED_MOTION_QUERY) === true;
187
+ return _chunkRKV5B7EUcjs.useMediaQuery.call(void 0, PREFERS_REDUCED_MOTION_QUERY) === true;
223
188
  }
224
189
  function usePrefersReducedMotionState() {
225
- return useMediaQuery(PREFERS_REDUCED_MOTION_QUERY);
190
+ return _chunkRKV5B7EUcjs.useMediaQuery.call(void 0, PREFERS_REDUCED_MOTION_QUERY);
226
191
  }
227
192
 
228
193
  // src/hooks/ui/use-in-view.ts
@@ -346,9 +311,6 @@ ToolIcon.displayName = "ToolIcon";
346
311
  // src/utils/common.ts
347
312
  var _clsx = require('clsx');
348
313
  var _tailwindmerge = require('tailwind-merge');
349
- function cn(...inputs) {
350
- return _tailwindmerge.twMerge.call(void 0, _clsx.clsx.call(void 0, inputs));
351
- }
352
314
  function errorMessage(error, fallback = "Something went wrong") {
353
315
  if (error instanceof Error && error.message) return error.message;
354
316
  if (typeof error === "string" && error) return error;
@@ -835,10 +797,4 @@ function navigateSamePageHash(target, options = {}) {
835
797
 
836
798
 
837
799
 
838
-
839
-
840
-
841
-
842
-
843
-
844
- exports.useDebounce = useDebounce; exports.useMediaQuery = useMediaQuery; exports.breakpoints = breakpoints; exports.useSmUp = useSmUp; exports.useMdUp = useMdUp; exports.useLgUp = useLgUp; exports.useHeaderHeight = useHeaderHeight; exports.useMarqueeEngine = useMarqueeEngine; exports.useResetOnPageHidden = useResetOnPageHidden; exports.useSuppressCloneFocus = useSuppressCloneFocus; exports.PREFERS_REDUCED_MOTION_QUERY = PREFERS_REDUCED_MOTION_QUERY; exports.usePrefersReducedMotion = usePrefersReducedMotion; exports.usePrefersReducedMotionState = usePrefersReducedMotionState; exports.useInView = useInView; exports.useAutoplay = useAutoplay; exports.ToolTypeValues = ToolTypeValues; exports.toolLabels = toolLabels; exports.ToolIcon = ToolIcon; exports.cn = cn; exports.errorMessage = errorMessage; exports.apiErrorMessage = apiErrorMessage; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.serializeJsonLd = serializeJsonLd; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.clamp = clamp; exports.pick = pick; exports.NO_CLIENT_CACHE = NO_CLIENT_CACHE; exports.NEAR_VIEWPORT_ROOT_MARGIN = NEAR_VIEWPORT_ROOT_MARGIN; exports.useNearViewport = useNearViewport; exports.isBlankLine = isBlankLine; exports.createFenceTracker = createFenceTracker; exports.HEADING_EMOJI_RE = HEADING_EMOJI_RE; exports.stripHeadingEmojis = stripHeadingEmojis; exports.slugifyHeadingBase = slugifyHeadingBase; exports.slugifyHeadingText = slugifyHeadingText; exports.scanHeadings = scanHeadings; exports.createHeadingIdDeduper = createHeadingIdDeduper; exports.normalizeAnchorId = normalizeAnchorId; exports.findAnchorElementByNormalizedId = findAnchorElementByNormalizedId; exports.getScrollableAncestor = getScrollableAncestor; exports.scrollElementIntoView = scrollElementIntoView; exports.STICKY_HEADER_OFFSET_PX = STICKY_HEADER_OFFSET_PX; exports.HUB_HEADER_OFFSET_PX = HUB_HEADER_OFFSET_PX; exports.normalizeHashFragment = normalizeHashFragment; exports.getHashTargetElement = getHashTargetElement; exports.navigateSamePageHash = navigateSamePageHash;
800
+ exports.useDebounce = useDebounce; exports.useHeaderHeight = useHeaderHeight; exports.useMarqueeEngine = useMarqueeEngine; exports.useResetOnPageHidden = useResetOnPageHidden; exports.useSuppressCloneFocus = useSuppressCloneFocus; exports.PREFERS_REDUCED_MOTION_QUERY = PREFERS_REDUCED_MOTION_QUERY; exports.usePrefersReducedMotion = usePrefersReducedMotion; exports.usePrefersReducedMotionState = usePrefersReducedMotionState; exports.useInView = useInView; exports.useAutoplay = useAutoplay; exports.ToolTypeValues = ToolTypeValues; exports.toolLabels = toolLabels; exports.ToolIcon = ToolIcon; exports.errorMessage = errorMessage; exports.apiErrorMessage = apiErrorMessage; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.serializeJsonLd = serializeJsonLd; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.clamp = clamp; exports.pick = pick; exports.NO_CLIENT_CACHE = NO_CLIENT_CACHE; exports.NEAR_VIEWPORT_ROOT_MARGIN = NEAR_VIEWPORT_ROOT_MARGIN; exports.useNearViewport = useNearViewport; exports.isBlankLine = isBlankLine; exports.createFenceTracker = createFenceTracker; exports.HEADING_EMOJI_RE = HEADING_EMOJI_RE; exports.stripHeadingEmojis = stripHeadingEmojis; exports.slugifyHeadingBase = slugifyHeadingBase; exports.slugifyHeadingText = slugifyHeadingText; exports.scanHeadings = scanHeadings; exports.createHeadingIdDeduper = createHeadingIdDeduper; exports.normalizeAnchorId = normalizeAnchorId; exports.findAnchorElementByNormalizedId = findAnchorElementByNormalizedId; exports.getScrollableAncestor = getScrollableAncestor; exports.scrollElementIntoView = scrollElementIntoView; exports.STICKY_HEADER_OFFSET_PX = STICKY_HEADER_OFFSET_PX; exports.HUB_HEADER_OFFSET_PX = HUB_HEADER_OFFSET_PX; exports.normalizeHashFragment = normalizeHashFragment; exports.getHashTargetElement = getHashTargetElement; exports.navigateSamePageHash = navigateSamePageHash;