@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,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }"use client";
2
2
 
3
3
 
4
- var _chunkHUOLB7ZNcjs = require('./chunk-HUOLB7ZN.cjs');
4
+ var _chunkOHFS7VOUcjs = require('./chunk-OHFS7VOU.cjs');
5
5
 
6
6
 
7
7
 
@@ -10,7 +10,7 @@ var _chunkHUOLB7ZNcjs = require('./chunk-HUOLB7ZN.cjs');
10
10
 
11
11
 
12
12
 
13
- var _chunkMXHJROXJcjs = require('./chunk-MXHJROXJ.cjs');
13
+ var _chunkP23CRLU4cjs = require('./chunk-P23CRLU4.cjs');
14
14
 
15
15
 
16
16
 
@@ -20,7 +20,7 @@ var _chunk7DNL734Scjs = require('./chunk-7DNL734S.cjs');
20
20
 
21
21
 
22
22
 
23
- var _chunkEMCQGFXDcjs = require('./chunk-EMCQGFXD.cjs');
23
+ var _chunkMMOODW57cjs = require('./chunk-MMOODW57.cjs');
24
24
 
25
25
 
26
26
  var _chunkLLRGR4I5cjs = require('./chunk-LLRGR4I5.cjs');
@@ -33,7 +33,7 @@ var _jsxruntime = require('react/jsx-runtime');
33
33
  function ListEmptyState({ isFiltered, filtered, onClearFilters, empty }) {
34
34
  if (isFiltered) {
35
35
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36
- _chunkHUOLB7ZNcjs.EmptyState,
36
+ _chunkOHFS7VOUcjs.EmptyState,
37
37
  {
38
38
  type: "search",
39
39
  title: filtered.title,
@@ -46,7 +46,7 @@ function ListEmptyState({ isFiltered, filtered, onClearFilters, empty }) {
46
46
  }
47
47
  const hasCta = Boolean(empty.ctaText && (empty.onCtaClick || empty.ctaHref));
48
48
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
49
- _chunkHUOLB7ZNcjs.EmptyState,
49
+ _chunkOHFS7VOUcjs.EmptyState,
50
50
  {
51
51
  type: "generic",
52
52
  title: empty.title,
@@ -63,7 +63,7 @@ function ListEmptyState({ isFiltered, filtered, onClearFilters, empty }) {
63
63
  var _react = require('react');
64
64
 
65
65
  function DevSectionView({ sectionKey, hero, preControls, children, showHeading = true }) {
66
- const section = _chunkMXHJROXJcjs.OPENFRAME_DEV_SECTIONS[sectionKey];
66
+ const section = _chunkP23CRLU4cjs.OPENFRAME_DEV_SECTIONS[sectionKey];
67
67
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
68
68
  const pathname = _chunk7DNL734Scjs.usePathname.call(void 0, );
69
69
  const searchParams = _chunk7DNL734Scjs.useSearchParams.call(void 0, );
@@ -107,14 +107,14 @@ function DevSectionView({ sectionKey, hero, preControls, children, showHeading =
107
107
  _nullishCoalesce(hero.title, () => ( section.hero.title))
108
108
  ] }),
109
109
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "max-w-3xl text-ods-text-secondary text-h4", children: hero.description })
110
- ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full items-center justify-between", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "h2", { className: "font-['Azeret_Mono'] text-[32px] font-semibold leading-[40px] tracking-[-0.64px] text-ods-text-primary md:text-[40px] md:leading-[48px] md:tracking-[-0.8px] lg:text-[48px] lg:leading-[56px] lg:tracking-[-0.96px]", children: [
110
+ ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full items-center justify-between", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "h2", { className: "font-['Azeret_Mono'] text-[32px] font-semibold leading-[40px] tracking-[-0.64px] text-ods-text-primary content-md:text-[40px] content-md:leading-[48px] content-md:tracking-[-0.8px] content-lg:text-[48px] content-lg:leading-[56px] content-lg:tracking-[-0.96px]", children: [
111
111
  section.hero.title,
112
112
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-accent", children: ":" })
113
113
  ] }) })),
114
114
  preControls,
115
115
  (search || filter) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
116
116
  search && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
117
- _chunkMXHJROXJcjs.SearchInput,
117
+ _chunkP23CRLU4cjs.SearchInput,
118
118
  {
119
119
  showDropdown: false,
120
120
  placeholder: search.placeholder,
@@ -124,7 +124,7 @@ function DevSectionView({ sectionKey, hero, preControls, children, showHeading =
124
124
  }
125
125
  ),
126
126
  filter && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
127
- _chunkMXHJROXJcjs.StatusFilterComponent,
127
+ _chunkP23CRLU4cjs.StatusFilterComponent,
128
128
  {
129
129
  selectedStatus: currentFilterValue,
130
130
  onStatusChange: handleFilterChange,
@@ -148,7 +148,7 @@ function DevSectionPage({
148
148
  shell = true
149
149
  }) {
150
150
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
151
- const section = _chunkMXHJROXJcjs.OPENFRAME_DEV_SECTIONS[sectionKey];
151
+ const section = _chunkP23CRLU4cjs.OPENFRAME_DEV_SECTIONS[sectionKey];
152
152
  const backCfg = backButton === false ? void 0 : {
153
153
  label: _nullishCoalesce((backButton ? backButton.label : void 0), () => ( "Back to home")),
154
154
  onClick: () => router.push(_nullishCoalesce((backButton ? backButton.href : void 0), () => ( "/")))
@@ -161,7 +161,7 @@ function DevSectionPage({
161
161
  // duplicate title. (The hero icon is intentionally dropped: TitleBlock is
162
162
  // frozen and renders title-only.)
163
163
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
164
- _chunkMXHJROXJcjs.PageLayout,
164
+ _chunkP23CRLU4cjs.PageLayout,
165
165
  {
166
166
  title: _nullishCoalesce(title, () => ( section.hero.title)),
167
167
  subtitle: _nullishCoalesce(subtitle, () => ( section.hero.description)),
@@ -172,7 +172,7 @@ function DevSectionPage({
172
172
  }
173
173
  )
174
174
  );
175
- 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 });
175
+ 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 });
176
176
  }
177
177
 
178
178
  // src/components/shared/dev-section/dev-card-row.tsx
@@ -184,9 +184,9 @@ function DevCardRowContent({
184
184
  emptyDescription = "No description provided",
185
185
  rightBadges
186
186
  }) {
187
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col items-start justify-between gap-[12px] md:flex-row md:gap-[16px]", children: [
188
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 flex-1 flex-col gap-[12px] md:w-auto md:gap-[16px]", children: [
189
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-[24px] items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "line-clamp-2 flex-1 break-words tracking-[-0.36px] text-ods-text-primary text-h3 md:truncate", children: title }) }),
187
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col items-start justify-between gap-[12px] content-md:flex-row content-md:gap-[16px]", children: [
188
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 flex-1 flex-col gap-[12px] content-md:w-auto content-md:gap-[16px]", children: [
189
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-[24px] items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "line-clamp-2 flex-1 break-words tracking-[-0.36px] text-ods-text-primary text-h3 content-md:truncate", children: title }) }),
190
190
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-[20px] items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate uppercase tracking-[-0.28px] text-ods-text-secondary text-h5", children: subtitle }) }),
191
191
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-[72px] items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "line-clamp-3 break-words text-ods-text-secondary text-h4", children: description || emptyDescription }) })
192
192
  ] }),
@@ -194,8 +194,8 @@ function DevCardRowContent({
194
194
  ] });
195
195
  }
196
196
  function DevCardRowSkeleton() {
197
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border p-[12px] last:border-b-0 md:p-[16px]", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col items-start justify-between gap-[12px] md:flex-row md:gap-[16px]", children: [
198
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 flex-1 flex-col gap-[12px] md:w-auto md:gap-[16px]", children: [
197
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border p-[12px] last:border-b-0 content-md:p-[16px]", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col items-start justify-between gap-[12px] content-md:flex-row content-md:gap-[16px]", children: [
198
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 flex-1 flex-col gap-[12px] content-md:w-auto content-md:gap-[16px]", children: [
199
199
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-[24px] items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-[20px] w-full animate-pulse rounded bg-ods-border" }) }),
200
200
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-[20px] items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-[20px] w-1/2 animate-pulse rounded bg-ods-border" }) }),
201
201
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-[72px] items-center", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 space-y-1", children: [
@@ -230,21 +230,21 @@ function getRelativeTime(timestamp) {
230
230
  }
231
231
  function DeliveryRow({ item, href, target, caption, id, className }) {
232
232
  const taskType = item.taskType;
233
- const typeBadgeLabel = _chunkMXHJROXJcjs.TASK_TYPE_LABELS[taskType] || "TASK";
234
- const typeBadgeTextColor = _chunkMXHJROXJcjs.TASK_TYPE_TEXT_COLORS[taskType] || "";
235
- const statusBadgeScheme = _chunkEMCQGFXDcjs.getStatusColorScheme.call(void 0, item.status);
233
+ const typeBadgeLabel = _chunkP23CRLU4cjs.TASK_TYPE_LABELS[taskType] || "TASK";
234
+ const typeBadgeTextColor = _chunkP23CRLU4cjs.TASK_TYPE_TEXT_COLORS[taskType] || "";
235
+ const statusBadgeScheme = _chunkMMOODW57cjs.getStatusColorScheme.call(void 0, item.status);
236
236
  const relativeTime = getRelativeTime(item.dateUpdated);
237
237
  const subtitle = `ACTIVE ${relativeTime}${item.listNames.length > 0 ? `, ${item.listNames.join(", ")}` : ""}, ${item.id}`;
238
- const inner = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col items-start justify-between gap-[12px] md:flex-row md:gap-[16px]", children: [
239
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 flex-1 flex-col gap-[12px] md:w-auto md:gap-[16px]", children: [
238
+ const inner = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col items-start justify-between gap-[12px] content-md:flex-row content-md:gap-[16px]", children: [
239
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full min-w-0 flex-1 flex-col gap-[12px] content-md:w-auto content-md:gap-[16px]", children: [
240
240
  caption && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h5", children: caption }),
241
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-[24px] items-center md:min-h-[24px]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "line-clamp-2 flex-1 break-words tracking-[-0.36px] text-ods-text-primary text-h3 md:truncate", children: item.title }) }),
241
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-[24px] items-center content-md:min-h-[24px]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "line-clamp-2 flex-1 break-words tracking-[-0.36px] text-ods-text-primary text-h3 content-md:truncate", children: item.title }) }),
242
242
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-[20px] items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "truncate uppercase tracking-[-0.28px] text-ods-text-secondary text-h5", suppressHydrationWarning: true, children: subtitle }) }),
243
243
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-[72px] items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "line-clamp-3 break-words text-ods-text-secondary text-h4", children: item.description || "No description provided" }) })
244
244
  ] }),
245
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-shrink-0 flex-row items-center gap-2 self-stretch md:w-auto md:flex-col md:items-end md:self-start", children: [
245
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-shrink-0 flex-row items-center gap-2 self-stretch content-md:w-auto content-md:flex-col content-md:items-end content-md:self-start", children: [
246
246
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
247
- _chunkEMCQGFXDcjs.StatusBadge,
247
+ _chunkMMOODW57cjs.StatusBadge,
248
248
  {
249
249
  text: item.status.toUpperCase(),
250
250
  colorScheme: statusBadgeScheme,
@@ -253,7 +253,7 @@ function DeliveryRow({ item, href, target, caption, id, className }) {
253
253
  }
254
254
  ),
255
255
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
256
- _chunkEMCQGFXDcjs.StatusBadge,
256
+ _chunkMMOODW57cjs.StatusBadge,
257
257
  {
258
258
  text: typeBadgeLabel,
259
259
  variant: "card",
@@ -261,10 +261,10 @@ function DeliveryRow({ item, href, target, caption, id, className }) {
261
261
  }
262
262
  ),
263
263
  item.assignees && item.assignees.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
264
- _chunkEMCQGFXDcjs.AvatarStack,
264
+ _chunkMMOODW57cjs.AvatarStack,
265
265
  {
266
266
  size: "xs",
267
- className: "ml-auto md:ml-0",
267
+ className: "ml-auto content-md:ml-0",
268
268
  people: item.assignees.map((a) => ({
269
269
  key: a.id,
270
270
  name: _nullishCoalesce(a.name, () => ( "Unknown")),
@@ -275,7 +275,7 @@ function DeliveryRow({ item, href, target, caption, id, className }) {
275
275
  ] })
276
276
  ] });
277
277
  const baseClass = _chunk3ATAYP36cjs.cn.call(void 0,
278
- "block p-[12px] text-inherit no-underline transition-colors duration-150 md:p-[16px]",
278
+ "block p-[12px] text-inherit no-underline transition-colors duration-150 content-md:p-[16px]",
279
279
  // `scroll-mt-24` is paid for whether `id` is set or not (it's a
280
280
  // single Tailwind utility, no runtime cost). Keeping it
281
281
  // unconditional means a future caller adding `id` doesn't also
@@ -96,7 +96,7 @@ var Pagination = ({ currentPage, totalPages, onPageChange, className }) => {
96
96
  onClick: () => onPageChange(currentPage - 1),
97
97
  disabled: currentPage === 1,
98
98
  "aria-label": "Go to previous page",
99
- className: "!h-10 !w-10 md:!h-10 md:!w-10",
99
+ className: "!h-10 !w-10 content-md:!h-10 content-md:!w-10",
100
100
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" })
101
101
  }
102
102
  ) }),
@@ -113,7 +113,7 @@ var Pagination = ({ currentPage, totalPages, onPageChange, className }) => {
113
113
  variant: currentPage === page ? "accent" : "outline",
114
114
  size: "icon",
115
115
  onClick: () => onPageChange(page),
116
- className: "!h-9 !w-9 md:!h-9 md:!w-9",
116
+ className: "!h-9 !w-9 content-md:!h-9 content-md:!w-9",
117
117
  "aria-label": `Page ${page}`,
118
118
  "aria-current": currentPage === page ? "page" : void 0,
119
119
  children: page
@@ -128,7 +128,7 @@ var Pagination = ({ currentPage, totalPages, onPageChange, className }) => {
128
128
  onClick: () => onPageChange(currentPage + 1),
129
129
  disabled: currentPage === totalPages,
130
130
  "aria-label": "Go to next page",
131
- className: "!h-10 !w-10 md:!h-10 md:!w-10",
131
+ className: "!h-10 !w-10 content-md:!h-10 content-md:!w-10",
132
132
  children: [
133
133
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
134
134
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "sr-only", children: "Next page" })
@@ -411,9 +411,9 @@ var SkeletonGrid = _react.forwardRef.call(void 0,
411
411
  ref,
412
412
  className: _chunk3ATAYP36cjs.cn.call(void 0,
413
413
  `grid grid-cols-1 gap-6`,
414
- columns === 2 && "md:grid-cols-2",
415
- columns === 3 && "md:grid-cols-3",
416
- columns === 4 && "md:grid-cols-4",
414
+ columns === 2 && "content-md:grid-cols-2",
415
+ columns === 3 && "content-md:grid-cols-3",
416
+ columns === 4 && "content-md:grid-cols-4",
417
417
  className
418
418
  ),
419
419
  ...props,
@@ -3,12 +3,13 @@ import {
3
3
  next_image_default
4
4
  } from "./chunk-FBZMAPWO.js";
5
5
  import {
6
+ ViewportBreakpoints,
6
7
  getPlatformBrandClasses,
7
8
  useAuthedImageSrc,
8
9
  useImageEdgeColor,
9
10
  useIsTruncated,
10
11
  useOgPlaceholderUrl
11
- } from "./chunk-2T6QWNXU.js";
12
+ } from "./chunk-NDESEPW5.js";
12
13
  import {
13
14
  FigmaIcon,
14
15
  ImageIcon,
@@ -359,7 +360,7 @@ function CardHorizontal({ icon, title, description, className = "", borderLeft =
359
360
  "div",
360
361
  {
361
362
  className: cn(
362
- "flex min-h-[80px] w-full flex-row items-center gap-3 bg-ods-card p-4 md:gap-4 md:p-6",
363
+ "flex min-h-[80px] w-full flex-row items-center gap-3 bg-ods-card p-4 content-md:gap-4 content-md:p-6",
363
364
  borderLeft ? "border-l border-ods-border" : "",
364
365
  className
365
366
  ),
@@ -1034,7 +1035,7 @@ var Modal = forwardRef3(({ isOpen, onClose, children, className }, ref) => {
1034
1035
  return () => document.removeEventListener("keydown", handleKeyDown);
1035
1036
  }, [isOpen, onClose]);
1036
1037
  if (!isOpen) return null;
1037
- return /* @__PURE__ */ jsxs5("div", { className: "fixed inset-0 z-[1300] flex items-center justify-center", children: [
1038
+ return /* @__PURE__ */ jsxs5("div", { className: "ods-viewport-layer fixed inset-0 z-[1300] flex items-center justify-center", children: [
1038
1039
  /* @__PURE__ */ jsx6("div", { className: "absolute inset-0 bg-ods-overlay", onClick: onClose, "aria-hidden": "true" }),
1039
1040
  /* @__PURE__ */ jsx6(
1040
1041
  "div",
@@ -1046,7 +1047,7 @@ var Modal = forwardRef3(({ isOpen, onClose, children, className }, ref) => {
1046
1047
  ),
1047
1048
  role: "dialog",
1048
1049
  "aria-modal": "true",
1049
- children
1050
+ children: /* @__PURE__ */ jsx6(ViewportBreakpoints, { children })
1050
1051
  }
1051
1052
  )
1052
1053
  ] });
@@ -2228,7 +2229,7 @@ import { Children, Fragment as Fragment6, cloneElement, isValidElement } from "r
2228
2229
  import { Fragment as Fragment7, jsx as jsx26, jsxs as jsxs16 } from "react/jsx-runtime";
2229
2230
  var PAGE_HEADING_CLASS = "text-h1 text-ods-text-primary";
2230
2231
  var SECTION_HEADING_CLASS = "text-h2 text-ods-text-primary";
2231
- var DESCRIPTION_CLASS = "mt-6 max-w-[640px] font-body text-[16px] md:text-[18px] leading-[24px] md:leading-[28px] text-ods-text-secondary";
2232
+ var DESCRIPTION_CLASS = "mt-6 max-w-[640px] font-body text-[16px] content-md:text-[18px] leading-[24px] content-md:leading-[28px] text-ods-text-secondary";
2232
2233
  function PageHeading({
2233
2234
  children,
2234
2235
  as: Tag2 = "h1",
@@ -2391,8 +2392,8 @@ function ProductReleaseCard({
2391
2392
  } : { value: "\u2014", label: "Released", uppercase: false }
2392
2393
  ];
2393
2394
  const effectiveAuthor = author?.full_name ? author : { full_name: "\u2014", avatar_url: null, job_title: "Unknown" };
2394
- const gridColsClass = "md:grid-cols-4";
2395
- const dividerClass = "border-b md:border-b-0 md:border-r border-ods-border";
2395
+ const gridColsClass = "content-md:grid-cols-4";
2396
+ const dividerClass = "border-b content-md:border-b-0 content-md:border-r border-ods-border";
2396
2397
  const interactive = !!anchorProps || !!onClick;
2397
2398
  const frameClass = cn(
2398
2399
  interactive ? CONTENT_CARD_FRAME_CLASS : CONTENT_CARD_SKELETON_FRAME_CLASS,
@@ -2402,8 +2403,8 @@ function ProductReleaseCard({
2402
2403
  className
2403
2404
  );
2404
2405
  const innerLayout = /* @__PURE__ */ jsxs17(Fragment8, { children: [
2405
- /* @__PURE__ */ jsxs17("div", { className: "flex flex-col gap-4 md:flex-row md:gap-6", children: [
2406
- /* @__PURE__ */ jsx27("div", { className: "w-full flex-shrink-0 md:w-[256px]", children: /* @__PURE__ */ jsxs17("div", { className: "relative aspect-[1200/630] w-full overflow-hidden rounded-lg bg-ods-bg", children: [
2406
+ /* @__PURE__ */ jsxs17("div", { className: "flex flex-col gap-4 content-md:flex-row content-md:gap-6", children: [
2407
+ /* @__PURE__ */ jsx27("div", { className: "w-full flex-shrink-0 content-md:w-[256px]", children: /* @__PURE__ */ jsxs17("div", { className: "relative aspect-[1200/630] w-full overflow-hidden rounded-lg bg-ods-bg", children: [
2407
2408
  coverImage ? /* @__PURE__ */ jsx27(
2408
2409
  next_image_default,
2409
2410
  {
@@ -2422,8 +2423,8 @@ function ProductReleaseCard({
2422
2423
  "v",
2423
2424
  version
2424
2425
  ] }) }),
2425
- /* @__PURE__ */ jsx27("div", { className: "mb-3 flex min-h-[60px] items-start md:min-h-[72px]", children: /* @__PURE__ */ jsx27("h3", { className: "line-clamp-2 font-['Azeret_Mono'] text-xl font-semibold leading-tight text-ods-text-primary md:text-2xl", children: title }) }),
2426
- /* @__PURE__ */ jsx27("div", { className: "min-h-[68px] md:min-h-[78px]", children: /* @__PURE__ */ jsx27("p", { className: "line-clamp-3 font-['DM_Sans'] text-sm leading-relaxed text-ods-text-secondary md:text-base", children: summary ?? "" }) })
2426
+ /* @__PURE__ */ jsx27("div", { className: "mb-3 flex min-h-[60px] items-start content-md:min-h-[72px]", children: /* @__PURE__ */ jsx27("h3", { className: "line-clamp-2 font-['Azeret_Mono'] text-xl font-semibold leading-tight text-ods-text-primary content-md:text-2xl", children: title }) }),
2427
+ /* @__PURE__ */ jsx27("div", { className: "min-h-[68px] content-md:min-h-[78px]", children: /* @__PURE__ */ jsx27("p", { className: "line-clamp-3 font-['DM_Sans'] text-sm leading-relaxed text-ods-text-secondary content-md:text-base", children: summary ?? "" }) })
2427
2428
  ] })
2428
2429
  ] }),
2429
2430
  /* @__PURE__ */ jsx27("div", { className: "flex flex-wrap items-center gap-x-4 gap-y-1.5 border-t border-ods-border pt-3 text-ods-text-secondary text-h6", children: totalChangelog > 0 && changelogCounts ? /* @__PURE__ */ jsxs17(Fragment8, { children: [
@@ -2581,15 +2582,15 @@ import { jsx as jsx28, jsxs as jsxs18 } from "react/jsx-runtime";
2581
2582
  function ProductReleaseCardSkeleton({ className, size: size2 = "lg" }) {
2582
2583
  if (size2 === "lg") {
2583
2584
  return /* @__PURE__ */ jsxs18("div", { className: cn(CONTENT_CARD_SKELETON_FRAME_CLASS, "flex flex-col gap-4 p-6", "animate-pulse", className), children: [
2584
- /* @__PURE__ */ jsxs18("div", { className: "flex flex-col gap-4 md:flex-row md:gap-6", children: [
2585
- /* @__PURE__ */ jsx28("div", { className: "aspect-[1200/630] w-full flex-shrink-0 rounded-lg bg-ods-border md:w-[256px]" }),
2585
+ /* @__PURE__ */ jsxs18("div", { className: "flex flex-col gap-4 content-md:flex-row content-md:gap-6", children: [
2586
+ /* @__PURE__ */ jsx28("div", { className: "aspect-[1200/630] w-full flex-shrink-0 rounded-lg bg-ods-border content-md:w-[256px]" }),
2586
2587
  /* @__PURE__ */ jsxs18("div", { className: "flex min-w-0 flex-1 flex-col", children: [
2587
2588
  /* @__PURE__ */ jsx28("div", { className: "mb-3 flex items-center gap-3", children: /* @__PURE__ */ jsx28("div", { className: "h-7 w-20 rounded bg-ods-border" }) }),
2588
- /* @__PURE__ */ jsxs18("div", { className: "mb-3 flex min-h-[60px] flex-col justify-start gap-1.5 md:min-h-[72px]", children: [
2589
- /* @__PURE__ */ jsx28("div", { className: "h-[25px] w-3/4 rounded bg-ods-border md:h-[30px]" }),
2590
- /* @__PURE__ */ jsx28("div", { className: "h-[25px] w-1/2 rounded bg-ods-border md:h-[30px]" })
2589
+ /* @__PURE__ */ jsxs18("div", { className: "mb-3 flex min-h-[60px] flex-col justify-start gap-1.5 content-md:min-h-[72px]", children: [
2590
+ /* @__PURE__ */ jsx28("div", { className: "h-[25px] w-3/4 rounded bg-ods-border content-md:h-[30px]" }),
2591
+ /* @__PURE__ */ jsx28("div", { className: "h-[25px] w-1/2 rounded bg-ods-border content-md:h-[30px]" })
2591
2592
  ] }),
2592
- /* @__PURE__ */ jsxs18("div", { className: "flex min-h-[68px] flex-col justify-start gap-2 md:min-h-[78px]", children: [
2593
+ /* @__PURE__ */ jsxs18("div", { className: "flex min-h-[68px] flex-col justify-start gap-2 content-md:min-h-[78px]", children: [
2593
2594
  /* @__PURE__ */ jsx28("div", { className: "h-3 w-full rounded bg-ods-border/70" }),
2594
2595
  /* @__PURE__ */ jsx28("div", { className: "h-3 w-11/12 rounded bg-ods-border/70" }),
2595
2596
  /* @__PURE__ */ jsx28("div", { className: "h-3 w-5/6 rounded bg-ods-border/70" })
@@ -2597,11 +2598,11 @@ function ProductReleaseCardSkeleton({ className, size: size2 = "lg" }) {
2597
2598
  ] })
2598
2599
  ] }),
2599
2600
  /* @__PURE__ */ jsx28("div", { className: "border-t border-ods-border pt-3", children: /* @__PURE__ */ jsx28("div", { className: "h-5 w-2/3 rounded bg-ods-border/70" }) }),
2600
- /* @__PURE__ */ jsxs18("div", { className: "grid w-full grid-cols-1 overflow-hidden rounded-md border border-ods-border md:grid-cols-4", children: [
2601
+ /* @__PURE__ */ jsxs18("div", { className: "grid w-full grid-cols-1 overflow-hidden rounded-md border border-ods-border content-md:grid-cols-4", children: [
2601
2602
  [0, 1, 2].map((i) => /* @__PURE__ */ jsx28(
2602
2603
  "div",
2603
2604
  {
2604
- className: "flex flex-col gap-3 border-b border-ods-border p-4 md:border-b-0 md:border-r",
2605
+ className: "flex flex-col gap-3 border-b border-ods-border p-4 content-md:border-b-0 content-md:border-r",
2605
2606
  children: /* @__PURE__ */ jsxs18("div", { className: "flex flex-col gap-2", children: [
2606
2607
  /* @__PURE__ */ jsx28("div", { className: "h-7 w-24 rounded bg-ods-border" }),
2607
2608
  /* @__PURE__ */ jsx28("div", { className: "h-4 w-16 rounded bg-ods-border" })
@@ -1,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
 
3
3
 
4
- var _chunkHUOLB7ZNcjs = require('./chunk-HUOLB7ZN.cjs');
4
+ var _chunkOHFS7VOUcjs = require('./chunk-OHFS7VOU.cjs');
5
5
 
6
6
 
7
7
  var _chunk3ATAYP36cjs = require('./chunk-3ATAYP36.cjs');
@@ -116,7 +116,7 @@ function PersistentPaginationWrapper({
116
116
  },
117
117
  "aria-hidden": isPaginationDisabled,
118
118
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
119
- _chunkHUOLB7ZNcjs.UnifiedPagination,
119
+ _chunkOHFS7VOUcjs.UnifiedPagination,
120
120
  {
121
121
  currentPage: displayCurrentPage,
122
122
  totalPages: displayTotalPages,
@@ -1,13 +1,13 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 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 _chunkMXHJROXJcjs = require('./chunk-MXHJROXJ.cjs');
4
+ var _chunkP23CRLU4cjs = require('./chunk-P23CRLU4.cjs');
5
5
 
6
6
 
7
- var _chunkHY5YL3U5cjs = require('./chunk-HY5YL3U5.cjs');
7
+ var _chunkXBWE423Rcjs = require('./chunk-XBWE423R.cjs');
8
8
 
9
9
 
10
- var _chunkMDBHZBW7cjs = require('./chunk-MDBHZBW7.cjs');
10
+ var _chunkRKV5B7EUcjs = require('./chunk-RKV5B7EU.cjs');
11
11
 
12
12
 
13
13
  var _chunkUJ7AXHRZcjs = require('./chunk-UJ7AXHRZ.cjs');
@@ -44,7 +44,7 @@ function isSummaryData(value) {
44
44
  }
45
45
  function TicketLiveProvider({ children, enabled = true }) {
46
46
  const runtime = _chunkUJ7AXHRZcjs.useChatRuntime.call(void 0, );
47
- const identity = _chunkHY5YL3U5cjs.useChatIdentity.call(void 0, enabled);
47
+ const identity = _chunkXBWE423Rcjs.useChatIdentity.call(void 0, enabled);
48
48
  const queryClient = _reactquery.useQueryClient.call(void 0, );
49
49
  const streamUrl = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _ => _.endpoints, 'access', _2 => _2.ticketStreamUrl]), () => ( TICKET_STREAM_ENDPOINT));
50
50
  const readUrl = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _3 => _3.endpoints, 'access', _4 => _4.ticketReadUrl]), () => ( TICKET_READ_ENDPOINT));
@@ -160,7 +160,7 @@ function TicketLiveProvider({ children, enabled = true }) {
160
160
  _react2.default.useEffect(() => {
161
161
  if (!streamEnabled) return void 0;
162
162
  if (typeof window === "undefined") return void 0;
163
- subscriptionRef.current = _chunkMXHJROXJcjs.createSseSubscription.call(void 0, {
163
+ subscriptionRef.current = _chunkP23CRLU4cjs.createSseSubscription.call(void 0, {
164
164
  url: streamUrl,
165
165
  onEvent: (name, data) => handlersRef.current.onEvent(name, data),
166
166
  onStatusChange: (status) => handlersRef.current.onStatus(status),
@@ -191,7 +191,7 @@ function TicketLiveProvider({ children, enabled = true }) {
191
191
  const markRead = _react2.default.useCallback(
192
192
  async (ticketExternalId) => {
193
193
  try {
194
- const response = await _chunkMDBHZBW7cjs.embedAuthedFetch.call(void 0, readUrl, {
194
+ const response = await _chunkRKV5B7EUcjs.embedAuthedFetch.call(void 0, readUrl, {
195
195
  method: "POST",
196
196
  body: JSON.stringify({ ticket_id: ticketExternalId })
197
197
  });
@@ -411,9 +411,9 @@ var SkeletonGrid = forwardRef5(
411
411
  ref,
412
412
  className: cn(
413
413
  `grid grid-cols-1 gap-6`,
414
- columns === 2 && "md:grid-cols-2",
415
- columns === 3 && "md:grid-cols-3",
416
- columns === 4 && "md:grid-cols-4",
414
+ columns === 2 && "content-md:grid-cols-2",
415
+ columns === 3 && "content-md:grid-cols-3",
416
+ columns === 4 && "content-md:grid-cols-4",
417
417
  className
418
418
  ),
419
419
  ...props,
@@ -1,25 +1,25 @@
1
1
  "use client";
2
2
  import {
3
3
  ContactForm
4
- } from "./chunk-NCTYD7HL.js";
4
+ } from "./chunk-VYWMEL5F.js";
5
5
  import {
6
6
  DeliveryRow,
7
7
  DevCardRowContent,
8
8
  DevCardRowSkeletonList,
9
9
  DevSectionPage,
10
10
  ListEmptyState
11
- } from "./chunk-HHFPQNP3.js";
11
+ } from "./chunk-NJDHFC55.js";
12
12
  import {
13
13
  EmptyState,
14
14
  UnifiedPagination
15
- } from "./chunk-OGLCD3UL.js";
15
+ } from "./chunk-MFFCUVWG.js";
16
16
  import {
17
17
  TICKET_MARK_READ_DEBOUNCE_MS,
18
18
  TICKET_TEXT_MAX_CHARS,
19
19
  TOAST_COPY,
20
20
  isOptimistic,
21
21
  useOptionalTicketLive
22
- } from "./chunk-GZYLZ4MB.js";
22
+ } from "./chunk-4S7TJYRQ.js";
23
23
  import {
24
24
  AlertDialog,
25
25
  AlertDialogAction,
@@ -35,16 +35,16 @@ import {
35
35
  Textarea,
36
36
  TicketAttachmentsList,
37
37
  devSectionAnchorId
38
- } from "./chunk-ENGBNKUJ.js";
38
+ } from "./chunk-5EFZO5EB.js";
39
39
  import {
40
40
  toast,
41
41
  useScrollToHash
42
- } from "./chunk-KJ5LWATV.js";
42
+ } from "./chunk-MKXO4Q5P.js";
43
43
  import {
44
44
  PAGE_PARAM_LIMITS,
45
45
  pageCount,
46
46
  positiveInt
47
- } from "./chunk-Q76ZTHNV.js";
47
+ } from "./chunk-MP2C3LJ4.js";
48
48
  import {
49
49
  ChatAttachmentAddButton,
50
50
  ChatAttachmentChipStrip,
@@ -55,11 +55,11 @@ import {
55
55
  formatRelativeTime,
56
56
  useChatAttachments,
57
57
  useChatIdentity
58
- } from "./chunk-QGTDWFT6.js";
58
+ } from "./chunk-IZHZMBIX.js";
59
59
  import {
60
60
  STICKY_HEADER_OFFSET_PX,
61
61
  scrollElementIntoView
62
- } from "./chunk-64O4L7WN.js";
62
+ } from "./chunk-PDWVPI3S.js";
63
63
  import {
64
64
  usePathname,
65
65
  useRouter,
@@ -71,10 +71,10 @@ import {
71
71
  SquareAvatar,
72
72
  StatusBadge,
73
73
  getStatusColorScheme
74
- } from "./chunk-6YCXA7CN.js";
74
+ } from "./chunk-CH5232HV.js";
75
75
  import {
76
76
  embedAuthedFetch
77
- } from "./chunk-2T6QWNXU.js";
77
+ } from "./chunk-NDESEPW5.js";
78
78
  import {
79
79
  useRequiredChatRuntime
80
80
  } from "./chunk-E4ABZWTJ.js";
@@ -83,7 +83,7 @@ import {
83
83
  Label,
84
84
  RequiredMark,
85
85
  Skeleton
86
- } from "./chunk-5V6O73EH.js";
86
+ } from "./chunk-FLKJYMVB.js";
87
87
  import {
88
88
  Button
89
89
  } from "./chunk-YDPKUAP4.js";
@@ -1463,7 +1463,7 @@ function HelpCenterCard({
1463
1463
  disabled: !isExpandable,
1464
1464
  "aria-expanded": isExpandable ? isExpanded : void 0,
1465
1465
  "aria-controls": isExpanded ? `help-center-drawer-${ticket.id}` : void 0,
1466
- className: "w-full p-[12px] text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ods-accent disabled:cursor-default md:p-[16px]",
1466
+ className: "w-full p-[12px] text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ods-accent disabled:cursor-default content-md:p-[16px]",
1467
1467
  children: /* @__PURE__ */ jsx7(
1468
1468
  DevCardRowContent,
1469
1469
  {
@@ -1505,9 +1505,9 @@ import { useState as useState5 } from "react";
1505
1505
  import { jsx as jsx8, jsxs as jsxs7 } from "react/jsx-runtime";
1506
1506
  var SUBJECT_MAX_CHARS = 200;
1507
1507
  function HelpCenterCreateFormSkeleton() {
1508
- return /* @__PURE__ */ jsxs7("div", { className: "flex h-full flex-col rounded-2xl border border-ods-border p-6 md:rounded-3xl md:p-8 lg:p-10", children: [
1509
- /* @__PURE__ */ jsx8("div", { className: "mb-6 md:mb-8", children: /* @__PURE__ */ jsx8("div", { className: "mb-3 h-10 w-72 animate-pulse rounded bg-ods-border md:mb-4" }) }),
1510
- /* @__PURE__ */ jsxs7("div", { className: "flex flex-grow flex-col space-y-4 md:space-y-6", children: [
1508
+ return /* @__PURE__ */ jsxs7("div", { className: "flex h-full flex-col rounded-2xl border border-ods-border p-6 content-md:rounded-3xl content-md:p-8 content-lg:p-10", children: [
1509
+ /* @__PURE__ */ jsx8("div", { className: "mb-6 content-md:mb-8", children: /* @__PURE__ */ jsx8("div", { className: "mb-3 h-10 w-72 animate-pulse rounded bg-ods-border content-md:mb-4" }) }),
1510
+ /* @__PURE__ */ jsxs7("div", { className: "flex flex-grow flex-col space-y-4 content-md:space-y-6", children: [
1511
1511
  /* @__PURE__ */ jsx8("input", { type: "hidden", "aria-hidden": true }),
1512
1512
  /* @__PURE__ */ jsx8("input", { type: "hidden", "aria-hidden": true }),
1513
1513
  /* @__PURE__ */ jsx8("input", { type: "hidden", "aria-hidden": true }),
@@ -1524,7 +1524,7 @@ function HelpCenterCreateFormSkeleton() {
1524
1524
  /* @__PURE__ */ jsx8("div", { className: "h-7 w-7 shrink-0 animate-pulse rounded bg-ods-border" }),
1525
1525
  /* @__PURE__ */ jsx8("div", { className: "h-4 w-40 animate-pulse rounded bg-ods-border" })
1526
1526
  ] }) }),
1527
- /* @__PURE__ */ jsxs7("div", { className: "mt-auto flex w-full flex-col items-center justify-end gap-4 pt-2 md:flex-row md:gap-6", children: [
1527
+ /* @__PURE__ */ jsxs7("div", { className: "mt-auto flex w-full flex-col items-center justify-end gap-4 pt-2 content-md:flex-row content-md:gap-6", children: [
1528
1528
  /* @__PURE__ */ jsx8("div", { className: "h-4 w-72 animate-pulse rounded bg-ods-border" }),
1529
1529
  /* @__PURE__ */ jsx8("div", { className: "h-12 w-32 animate-pulse rounded bg-ods-border" })
1530
1530
  ] })
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  import {
3
3
  DEFAULT_FOLDER_INDEX_FILE
4
- } from "./chunk-ENGBNKUJ.js";
4
+ } from "./chunk-5EFZO5EB.js";
5
5
  import {
6
6
  scrollElementIntoView
7
- } from "./chunk-64O4L7WN.js";
7
+ } from "./chunk-PDWVPI3S.js";
8
8
  import {
9
9
  cn
10
10
  } from "./chunk-7RXWKTAP.js";