@flamingo-stack/openframe-frontend-core 0.0.769 → 0.0.771

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 (167) hide show
  1. package/dist/build/export-map.json +1 -1
  2. package/dist/{chunk-MZLWB5AH.cjs → chunk-2LTJ4457.cjs} +5 -4
  3. package/dist/{chunk-D45Q3WEP.cjs → chunk-4AF5E6E5.cjs} +3 -3
  4. package/dist/{chunk-UIXWG2IW.cjs → chunk-4DMYDHCD.cjs} +24 -24
  5. package/dist/{chunk-2MND64QJ.cjs → chunk-5HBGBLJT.cjs} +50 -63
  6. package/dist/{chunk-4EJU462O.cjs → chunk-5V7BIUGA.cjs} +2 -2
  7. package/dist/{chunk-QC47HVA4.cjs → chunk-62P4Q4Q3.cjs} +72 -80
  8. package/dist/{chunk-L5WSNX4H.cjs → chunk-ALNP25TX.cjs} +713 -695
  9. package/dist/{chunk-MYA6NR2C.cjs → chunk-CTRJNTYU.cjs} +2 -2
  10. package/dist/{chunk-HQF62LAU.cjs → chunk-FPCGKH5K.cjs} +28 -28
  11. package/dist/{chunk-VVBRYOSI.cjs → chunk-FT5NPAZY.cjs} +17 -17
  12. package/dist/{chunk-BIHMMGRP.cjs → chunk-GX3JUXYX.cjs} +96 -91
  13. package/dist/{chunk-2TS3FEPQ.cjs → chunk-HFNWBNLE.cjs} +4 -4
  14. package/dist/{chunk-ZXFOMNI5.cjs → chunk-ILZEXCJH.cjs} +99 -99
  15. package/dist/{chunk-BLTNKLAX.cjs → chunk-JJNOAYD4.cjs} +4 -4
  16. package/dist/{chunk-3AZZFTT6.cjs → chunk-JPOIEEFO.cjs} +6 -6
  17. package/dist/{chunk-QS4G7CHU.cjs → chunk-KSCEAIBS.cjs} +2 -2
  18. package/dist/{chunk-IEPWXEA6.cjs → chunk-L5QJZBZK.cjs} +33 -33
  19. package/dist/{chunk-5HWBW7WU.cjs → chunk-NQ4WRB3Y.cjs} +12 -12
  20. package/dist/{chunk-GGORS7G6.cjs → chunk-REFL3YNE.cjs} +13 -13
  21. package/dist/{chunk-SV6K7ZLA.cjs → chunk-SETDVBMW.cjs} +41 -41
  22. package/dist/{chunk-YTPEJIAO.cjs → chunk-TGPHB7PC.cjs} +3 -3
  23. package/dist/{chunk-EZTHTSWZ.cjs → chunk-UG263H4A.cjs} +37 -37
  24. package/dist/{chunk-DEJB5WHZ.cjs → chunk-WT5XF66W.cjs} +24 -24
  25. package/dist/{chunk-ZVNL5OK6.cjs → chunk-X5Z4HRH7.cjs} +2 -2
  26. package/dist/{chunk-UBPSA3RM.cjs → chunk-YI3CDGKM.cjs} +70 -70
  27. package/dist/{chunk-5O6PHVKO.cjs → chunk-ZYGC2A7G.cjs} +4 -4
  28. package/dist/{cloud-tenants-3BEIT4LX.cjs → cloud-tenants-XRXWTUGP.cjs} +8 -8
  29. package/dist/components/case-studies/index.cjs +32 -30
  30. package/dist/components/case-studies/quote-cards-strip.d.ts +7 -2
  31. package/dist/components/case-studies/quote-cards-strip.d.ts.map +1 -1
  32. package/dist/components/case-studies/quote-cards-strip.js +7 -5
  33. package/dist/components/categories-cart.d.ts +9 -2
  34. package/dist/components/categories-cart.d.ts.map +1 -1
  35. package/dist/components/categories-cart.js +9 -4
  36. package/dist/components/chat/entity-cards/admin-content-card-grid.d.ts +5 -1
  37. package/dist/components/chat/entity-cards/admin-content-card-grid.d.ts.map +1 -1
  38. package/dist/components/chat/entity-cards/program-card.d.ts.map +1 -1
  39. package/dist/components/chat/entity-cards/program-card.js +2 -2
  40. package/dist/components/chat/index.cjs +5 -5
  41. package/dist/components/contact/index.cjs +9 -9
  42. package/dist/components/docs/index.cjs +12 -12
  43. package/dist/components/embeds/index.cjs +9 -9
  44. package/dist/components/faq/faq-section.d.ts +7 -4
  45. package/dist/components/faq/faq-section.d.ts.map +1 -1
  46. package/dist/components/faq/index.cjs +10 -10
  47. package/dist/components/faq-accordion.d.ts +2 -4
  48. package/dist/components/faq-accordion.d.ts.map +1 -1
  49. package/dist/components/features/capability-explorer.d.ts +8 -2
  50. package/dist/components/features/capability-explorer.d.ts.map +1 -1
  51. package/dist/components/features/capability-explorer.js +7 -3
  52. package/dist/components/features/cards-strip.d.ts +2 -2
  53. package/dist/components/features/index.cjs +8 -8
  54. package/dist/components/features/model-token-rates.js +2 -2
  55. package/dist/components/features/remote-session/remote-desktop-chat-panel.js +2 -2
  56. package/dist/components/help-center-pages/index.cjs +94 -103
  57. package/dist/components/help-center-pages/trust-center-page.d.ts +1 -1
  58. package/dist/components/help-center-pages/trust-center-sections.d.ts +7 -4
  59. package/dist/components/help-center-pages/trust-center-sections.d.ts.map +1 -1
  60. package/dist/components/help-center-pages/trust-center-sections.js +5 -14
  61. package/dist/components/index.cjs +66 -61
  62. package/dist/components/logs-list.d.ts.map +1 -1
  63. package/dist/components/logs-list.js +3 -2
  64. package/dist/components/meeting-scheduler/index.cjs +47 -47
  65. package/dist/components/navigation/index.cjs +11 -11
  66. package/dist/components/navigation/multi-level-navigation.d.ts +6 -7
  67. package/dist/components/navigation/multi-level-navigation.d.ts.map +1 -1
  68. package/dist/components/onboarding-guides/index.cjs +11 -11
  69. package/dist/components/onboarding-guides/onboarding-guides-catalog-skeleton.d.ts +5 -5
  70. package/dist/components/onboarding-guides/onboarding-guides-catalog-skeleton.d.ts.map +1 -1
  71. package/dist/components/onboarding-guides/onboarding-guides-catalog-skeleton.js +3 -3
  72. package/dist/components/product-demo/index.cjs +18 -18
  73. package/dist/components/related-content/index.cjs +5 -5
  74. package/dist/components/related-content/related-content-section.d.ts.map +1 -1
  75. package/dist/components/related-content/related-content-section.js +4 -17
  76. package/dist/components/shared/dev-section/dev-card-row.d.ts +3 -3
  77. package/dist/components/shared/dev-section/dev-card-row.d.ts.map +1 -1
  78. package/dist/components/shared/product-release/release-detail-page.js +2 -2
  79. package/dist/components/shared/roadmap/roadmap-grid-skeleton.d.ts +6 -1
  80. package/dist/components/shared/roadmap/roadmap-grid-skeleton.d.ts.map +1 -1
  81. package/dist/components/shared/roadmap/roadmap-grid-skeleton.js +4 -2
  82. package/dist/components/shared/roadmap/roadmap-grid.d.ts +10 -3
  83. package/dist/components/shared/roadmap/roadmap-grid.d.ts.map +1 -1
  84. package/dist/components/shared/roadmap/roadmap-grid.js +12 -8
  85. package/dist/components/tickets/help-center-list.js +4 -4
  86. package/dist/components/tickets/hooks/use-tickets-list.d.ts +2 -0
  87. package/dist/components/tickets/hooks/use-tickets-list.d.ts.map +1 -1
  88. package/dist/components/tickets/hooks/use-tickets-list.js +3 -2
  89. package/dist/components/tickets/index.cjs +14 -14
  90. package/dist/components/tickets/ticket-center.d.ts.map +1 -1
  91. package/dist/components/tickets/ticket-center.js +3 -9
  92. package/dist/components/ui/autocomplete.d.ts +5 -0
  93. package/dist/components/ui/autocomplete.d.ts.map +1 -1
  94. package/dist/components/ui/autocomplete.js +3 -2
  95. package/dist/components/ui/data-table/data-table-body.d.ts +5 -2
  96. package/dist/components/ui/data-table/data-table-body.d.ts.map +1 -1
  97. package/dist/components/ui/data-table/data-table-body.js +3 -1
  98. package/dist/components/ui/data-table/data-table-infinite-footer.d.ts +5 -2
  99. package/dist/components/ui/data-table/data-table-infinite-footer.d.ts.map +1 -1
  100. package/dist/components/ui/data-table/data-table-infinite-footer.js +5 -2
  101. package/dist/components/ui/data-table/utils.d.ts +21 -0
  102. package/dist/components/ui/data-table/utils.d.ts.map +1 -1
  103. package/dist/components/ui/data-table/utils.js +7 -0
  104. package/dist/components/ui/index.cjs +8 -8
  105. package/dist/components/ui/markdown/engine.d.ts.map +1 -1
  106. package/dist/components/ui/markdown/engine.js +1 -1
  107. package/dist/components/ui/search-input.d.ts +3 -1
  108. package/dist/components/ui/search-input.d.ts.map +1 -1
  109. package/dist/components/ui/search-input.js +3 -2
  110. package/dist/components/ui/searchable-select.d.ts +2 -0
  111. package/dist/components/ui/searchable-select.d.ts.map +1 -1
  112. package/dist/components/ui/searchable-select.js +10 -6
  113. package/dist/components/ui/table/table-skeleton.d.ts +2 -2
  114. package/dist/components/ui/table/table.d.ts +1 -1
  115. package/dist/components/ui/table/table.d.ts.map +1 -1
  116. package/dist/components/ui/table/table.js +2 -1
  117. package/dist/components/ui/table/types.d.ts +1 -0
  118. package/dist/components/ui/table/types.d.ts.map +1 -1
  119. package/dist/{devices-ZCOK24D4.cjs → devices-L4ER34X7.cjs} +9 -9
  120. package/dist/{embeddable-chat-BXEK3SPJ.cjs → embeddable-chat-CEAP424I.cjs} +73 -73
  121. package/dist/index.cjs +15 -14
  122. package/dist/{knowledge-W47QGTEK.cjs → knowledge-PZYA65GL.cjs} +9 -9
  123. package/dist/{logs-3DMPE2TM.cjs → logs-GYTZWHDP.cjs} +16 -16
  124. package/dist/{policies-UWHW765K.cjs → policies-OIK7NWJ7.cjs} +12 -12
  125. package/dist/{remote-session-WVORQV7V.cjs → remote-session-3HFVODOT.cjs} +4 -4
  126. package/dist/{scripts-BH7V2ZC4.cjs → scripts-K4L3STNZ.cjs} +15 -15
  127. package/dist/{software-update-W6AAGJ2H.cjs → software-update-RWV2RI5C.cjs} +12 -12
  128. package/dist/types/category.d.ts +5 -0
  129. package/dist/types/category.d.ts.map +1 -1
  130. package/dist/types/logs.types.d.ts +2 -0
  131. package/dist/types/logs.types.d.ts.map +1 -1
  132. package/package.json +1 -1
  133. package/src/components/case-studies/quote-cards-strip.tsx +16 -7
  134. package/src/components/categories-cart.tsx +16 -5
  135. package/src/components/chat/entity-cards/admin-content-card-grid.tsx +5 -1
  136. package/src/components/chat/entity-cards/program-card.tsx +6 -3
  137. package/src/components/faq/faq-section.tsx +7 -4
  138. package/src/components/faq-accordion.tsx +2 -4
  139. package/src/components/features/capability-explorer.tsx +16 -4
  140. package/src/components/features/cards-strip.tsx +3 -3
  141. package/src/components/features/model-token-rates.tsx +4 -4
  142. package/src/components/features/remote-session/remote-desktop-chat-panel.tsx +4 -4
  143. package/src/components/help-center-pages/trust-center-page.tsx +1 -1
  144. package/src/components/help-center-pages/trust-center-sections.tsx +15 -22
  145. package/src/components/logs-list.tsx +6 -5
  146. package/src/components/navigation/multi-level-navigation.tsx +6 -7
  147. package/src/components/onboarding-guides/onboarding-guides-catalog-skeleton.tsx +6 -6
  148. package/src/components/related-content/related-content-section.tsx +6 -27
  149. package/src/components/shared/dev-section/dev-card-row.tsx +3 -3
  150. package/src/components/shared/product-release/release-detail-page.tsx +2 -2
  151. package/src/components/shared/roadmap/roadmap-grid-skeleton.tsx +11 -3
  152. package/src/components/shared/roadmap/roadmap-grid.tsx +27 -13
  153. package/src/components/tickets/help-center-list.tsx +4 -4
  154. package/src/components/tickets/hooks/use-tickets-list.ts +3 -2
  155. package/src/components/tickets/ticket-center.tsx +4 -13
  156. package/src/components/ui/autocomplete.tsx +12 -3
  157. package/src/components/ui/data-table/data-table-body.tsx +8 -2
  158. package/src/components/ui/data-table/data-table-infinite-footer.tsx +10 -3
  159. package/src/components/ui/data-table/utils.ts +18 -0
  160. package/src/components/ui/markdown/engine.tsx +6 -1
  161. package/src/components/ui/search-input.tsx +9 -3
  162. package/src/components/ui/searchable-select.tsx +18 -9
  163. package/src/components/ui/table/table-skeleton.tsx +2 -2
  164. package/src/components/ui/table/table.tsx +4 -1
  165. package/src/components/ui/table/types.ts +2 -1
  166. package/src/types/category.ts +5 -0
  167. package/src/types/logs.types.ts +2 -0
@@ -285,7 +285,7 @@ var innerInputStyles = _chunk65VVJSQZcjs.cn.call(void 0,
285
285
  );
286
286
  var AUTOCOMPLETE_ANCHOR_HEIGHT_CLASS = "min-h-11 md:min-h-12";
287
287
  var AUTOCOMPLETE_OPTION_ROW_CLASS = "flex min-h-11 items-center border-b border-ods-border px-[var(--spacing-system-mf)] py-[var(--spacing-system-xsf)] last:border-b-0 md:min-h-12 text-h4";
288
- var AUTOCOMPLETE_OPTIONS_FOLD = 5;
288
+ var AUTOCOMPLETE_LOADING_ROWS = 5;
289
289
  var AUTOCOMPLETE_ANCHOR_SHAPE_CLASS = "rounded-[6px]";
290
290
  function AutocompleteSkeleton({ label, labelVariant, className }) {
291
291
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXDHVHB2cjs.FieldWrapper, { label, labelVariant, className, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: _chunk65VVJSQZcjs.cn.call(void 0, "w-full", AUTOCOMPLETE_ANCHOR_SHAPE_CLASS, AUTOCOMPLETE_ANCHOR_HEIGHT_CLASS) }) });
@@ -311,6 +311,7 @@ function AutocompleteInner(props, ref) {
311
311
  onInputChange,
312
312
  loading = false,
313
313
  loadingText = "Loading options",
314
+ loadingRows = AUTOCOMPLETE_LOADING_ROWS,
314
315
  fieldLoading = false,
315
316
  creatable = false,
316
317
  onCreateOption,
@@ -687,7 +688,7 @@ function AutocompleteInner(props, ref) {
687
688
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ScrollAreaPrimitive.Viewport, { className: "max-h-[240px] min-h-0 w-full [&>div]:!block", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { role: loading ? void 0 : "listbox", children: loading ? (
688
689
  // The options while they are read: the list's own rows, a label bar each (`loadingText` is what a
689
690
  // screen reader hears).
690
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWEANWBJHcjs.LoadingRegion, { label: loadingText, children: Array.from({ length: AUTOCOMPLETE_OPTIONS_FOLD }, (_, i) => (
691
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWEANWBJHcjs.LoadingRegion, { label: loadingText, children: Array.from({ length: loadingRows }, (_, i) => (
691
692
  // biome-ignore lint/suspicious/noArrayIndexKey: skeleton rows never reorder
692
693
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: AUTOCOMPLETE_OPTION_ROW_CLASS, "aria-hidden": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "inherit", className: "w-2/3" }) }, i)
693
694
  )) })
@@ -2218,7 +2219,7 @@ function RemoteDesktopChatMessageRowSkeleton() {
2218
2219
  // src/components/features/remote-session/remote-desktop-chat-panel.tsx
2219
2220
 
2220
2221
 
2221
- var CHAT_PANEL_FOLD = 10;
2222
+ var CHAT_PANEL_SKELETON_ROWS = 10;
2222
2223
  var REMOTE_DESKTOP_CHAT_END_USER_NAME = "User";
2223
2224
  function RemoteDesktopChatPanel({
2224
2225
  messages,
@@ -2246,7 +2247,7 @@ function RemoteDesktopChatPanel({
2246
2247
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: scrollRef, className: "min-h-0 flex-1 overflow-y-auto", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-full flex-col justify-end gap-[var(--spacing-system-xsf)]", children: rows.length === 0 && loading ? (
2247
2248
  // The chat while it is read: a screen of the panel's own message rows, stacked by a one-column grid
2248
2249
  // (the thread above is already the column flexbox: WEBVIEW-001).
2249
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWEANWBJHcjs.LoadingRegion, { label: "Loading the chat", className: "grid grid-cols-1 gap-[var(--spacing-system-xsf)]", children: Array.from({ length: CHAT_PANEL_FOLD }, (_, i) => (
2250
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWEANWBJHcjs.LoadingRegion, { label: "Loading the chat", className: "grid grid-cols-1 gap-[var(--spacing-system-xsf)]", children: Array.from({ length: CHAT_PANEL_SKELETON_ROWS }, (_, i) => (
2250
2251
  // biome-ignore lint/suspicious/noArrayIndexKey: skeleton rows never reorder
2251
2252
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RemoteDesktopChatMessageRowSkeleton, {}, i)
2252
2253
  )) })
@@ -2,12 +2,12 @@
2
2
 
3
3
 
4
4
 
5
- var _chunkL5WSNX4Hcjs = require('./chunk-L5WSNX4H.cjs');
5
+ var _chunkALNP25TXcjs = require('./chunk-ALNP25TX.cjs');
6
6
 
7
7
  // src/components/product-demo/screens/devices-view.tsx
8
8
  var _jsxruntime = require('react/jsx-runtime');
9
9
  var DEVICES_SEARCH_QUERY = "Windows";
10
- var TOOLBAR = { ..._chunkL5WSNX4Hcjs.IDLE_DEVICES_TOOLBAR, searchValue: DEVICES_SEARCH_QUERY };
10
+ var TOOLBAR = { ..._chunkALNP25TXcjs.IDLE_DEVICES_TOOLBAR, searchValue: DEVICES_SEARCH_QUERY };
11
11
  var NO_HEADER = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, {});
12
12
  var HIDDEN_WHEN_COMPACT = ["organization"];
13
13
  var NO_DEVICES = [];
@@ -19,7 +19,7 @@ function DevicesScreenView({
19
19
  loading = false
20
20
  }) {
21
21
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-full bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
22
- _chunkL5WSNX4Hcjs.DevicesPanelView,
22
+ _chunkALNP25TXcjs.DevicesPanelView,
23
23
  {
24
24
  className: "p-[var(--spacing-system-l)]",
25
25
  headerSlot: NO_HEADER,
@@ -2,14 +2,14 @@
2
2
 
3
3
 
4
4
 
5
- var _chunkL5WSNX4Hcjs = require('./chunk-L5WSNX4H.cjs');
5
+ var _chunkALNP25TXcjs = require('./chunk-ALNP25TX.cjs');
6
6
 
7
7
 
8
8
 
9
9
 
10
10
 
11
11
 
12
- var _chunkMZLWB5AHcjs = require('./chunk-MZLWB5AH.cjs');
12
+ var _chunk2LTJ4457cjs = require('./chunk-2LTJ4457.cjs');
13
13
 
14
14
 
15
15
 
@@ -17,16 +17,16 @@ var _chunkMZLWB5AHcjs = require('./chunk-MZLWB5AH.cjs');
17
17
  var _chunkXVFM6SJAcjs = require('./chunk-XVFM6SJA.cjs');
18
18
 
19
19
 
20
- var _chunkUBPSA3RMcjs = require('./chunk-UBPSA3RM.cjs');
20
+ var _chunkYI3CDGKMcjs = require('./chunk-YI3CDGKM.cjs');
21
21
 
22
22
 
23
23
 
24
24
 
25
- var _chunkZXFOMNI5cjs = require('./chunk-ZXFOMNI5.cjs');
25
+ var _chunkILZEXCJHcjs = require('./chunk-ILZEXCJH.cjs');
26
26
 
27
27
 
28
28
 
29
- var _chunk4EJU462Ocjs = require('./chunk-4EJU462O.cjs');
29
+ var _chunk5V7BIUGAcjs = require('./chunk-5V7BIUGA.cjs');
30
30
 
31
31
 
32
32
 
@@ -119,7 +119,7 @@ function ContactForm({
119
119
  successToastMessage = "Redirecting you to join our community...",
120
120
  rescue: rescueForm = null
121
121
  } = {}) {
122
- const attachments = _chunkZXFOMNI5cjs.useChatAttachments.call(void 0, );
122
+ const attachments = _chunkILZEXCJHcjs.useChatAttachments.call(void 0, );
123
123
  const builtInSubmission = _chunkXVFM6SJAcjs.useContactSubmission.call(void 0, {
124
124
  userId,
125
125
  successRedirectUrl,
@@ -190,7 +190,7 @@ function ContactForm({
190
190
  className: `flex h-full flex-col ${!noBorder ? "rounded-2xl border border-ods-border content-md:rounded-3xl" : ""} ${!noPadding ? "p-6 content-md:p-8 content-lg:p-10" : ""}`,
191
191
  children: [
192
192
  (title || subtitle) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-6 content-md:mb-8", children: [
193
- title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${_chunk4EJU462Ocjs.SECTION_HEADING_CLASS} mb-3 content-md:mb-4`, children: _chunk4EJU462Ocjs.accentSentenceMarks.call(void 0, title) }),
193
+ title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${_chunk5V7BIUGAcjs.SECTION_HEADING_CLASS} mb-3 content-md:mb-4`, children: _chunk5V7BIUGAcjs.accentSentenceMarks.call(void 0, title) }),
194
194
  subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: subtitle })
195
195
  ] }),
196
196
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -203,13 +203,13 @@ function ContactForm({
203
203
  );
204
204
  }),
205
205
  className: "flex flex-grow flex-col space-y-4 content-md:space-y-6",
206
- ..._chunkUBPSA3RMcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
206
+ ..._chunkYI3CDGKMcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
207
207
  children: [
208
208
  !showName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "input", { type: "hidden", ...register("name") }),
209
209
  !showEmail && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "input", { type: "hidden", ...register("email") }),
210
210
  !showHelpCategory && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "input", { type: "hidden", ...register("helpCategory") }),
211
211
  !showMessage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "input", { type: "hidden", ...register("message") }),
212
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkL5WSNX4Hcjs.HoneypotField, { ...honeypotInputProps }),
212
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkALNP25TXcjs.HoneypotField, { ...honeypotInputProps }),
213
213
  extraTopField,
214
214
  showNameEmailRow && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 content-md:grid-cols-2 content-md:gap-6", children: [
215
215
  showName && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
@@ -261,17 +261,17 @@ function ContactForm({
261
261
  {
262
262
  control,
263
263
  name: "companySize",
264
- render: ({ field }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkMZLWB5AHcjs.Select, { onValueChange: field.onChange, value: _nullishCoalesce(field.value, () => ( "")), children: [
264
+ render: ({ field }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2LTJ4457cjs.Select, { onValueChange: field.onChange, value: _nullishCoalesce(field.value, () => ( "")), children: [
265
265
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
266
- _chunkMZLWB5AHcjs.SelectTrigger,
266
+ _chunk2LTJ4457cjs.SelectTrigger,
267
267
  {
268
268
  id: "companySize",
269
269
  "aria-label": "Company Size",
270
270
  className: "h-12 border-ods-border bg-ods-card px-3 text-ods-text-primary",
271
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMZLWB5AHcjs.SelectValue, { placeholder: "Select company size" })
271
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2LTJ4457cjs.SelectValue, { placeholder: "Select company size" })
272
272
  }
273
273
  ),
274
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMZLWB5AHcjs.SelectContent, { children: companySizeOptions.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMZLWB5AHcjs.SelectItem, { value: opt, children: opt }, opt)) })
274
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2LTJ4457cjs.SelectContent, { children: companySizeOptions.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2LTJ4457cjs.SelectItem, { value: opt, children: opt }, opt)) })
275
275
  ] })
276
276
  }
277
277
  ),
@@ -284,17 +284,17 @@ function ContactForm({
284
284
  {
285
285
  control,
286
286
  name: "referralSource",
287
- render: ({ field }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkMZLWB5AHcjs.Select, { onValueChange: field.onChange, value: _nullishCoalesce(field.value, () => ( "")), children: [
287
+ render: ({ field }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2LTJ4457cjs.Select, { onValueChange: field.onChange, value: _nullishCoalesce(field.value, () => ( "")), children: [
288
288
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
289
- _chunkMZLWB5AHcjs.SelectTrigger,
289
+ _chunk2LTJ4457cjs.SelectTrigger,
290
290
  {
291
291
  id: "referralSource",
292
292
  "aria-label": "Referral Source",
293
293
  className: "h-12 border-ods-border bg-ods-card px-3 text-ods-text-primary",
294
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMZLWB5AHcjs.SelectValue, { placeholder: "Select an option" })
294
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2LTJ4457cjs.SelectValue, { placeholder: "Select an option" })
295
295
  }
296
296
  ),
297
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMZLWB5AHcjs.SelectContent, { children: referralSourceOptions.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMZLWB5AHcjs.SelectItem, { value: opt, children: opt }, opt)) })
297
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2LTJ4457cjs.SelectContent, { children: referralSourceOptions.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2LTJ4457cjs.SelectItem, { value: opt, children: opt }, opt)) })
298
298
  ] })
299
299
  }
300
300
  ),
@@ -311,18 +311,18 @@ function ContactForm({
311
311
  {
312
312
  control,
313
313
  name: "helpCategory",
314
- render: ({ field }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkMZLWB5AHcjs.Select, { onValueChange: field.onChange, value: _nullishCoalesce(field.value, () => ( "")), children: [
314
+ render: ({ field }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2LTJ4457cjs.Select, { onValueChange: field.onChange, value: _nullishCoalesce(field.value, () => ( "")), children: [
315
315
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
316
- _chunkMZLWB5AHcjs.SelectTrigger,
316
+ _chunk2LTJ4457cjs.SelectTrigger,
317
317
  {
318
318
  id: "helpCategory",
319
319
  "aria-label": "Help Category",
320
320
  "aria-required": true,
321
321
  className: "h-12 border-ods-border bg-ods-card px-3 text-ods-text-primary",
322
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMZLWB5AHcjs.SelectValue, { placeholder: "Choose your main interest" })
322
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2LTJ4457cjs.SelectValue, { placeholder: "Choose your main interest" })
323
323
  }
324
324
  ),
325
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMZLWB5AHcjs.SelectContent, { children: helpCategoryOptions.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMZLWB5AHcjs.SelectItem, { value: opt, children: opt }, opt)) })
325
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2LTJ4457cjs.SelectContent, { children: helpCategoryOptions.map((opt) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2LTJ4457cjs.SelectItem, { value: opt, children: opt }, opt)) })
326
326
  ] })
327
327
  }
328
328
  ),
@@ -334,7 +334,7 @@ function ContactForm({
334
334
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYXDHVHB2cjs.RequiredMark, {})
335
335
  ] }),
336
336
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
337
- _chunkL5WSNX4Hcjs.Textarea,
337
+ _chunkALNP25TXcjs.Textarea,
338
338
  {
339
339
  id: "message",
340
340
  ...register("message"),
@@ -349,7 +349,7 @@ function ContactForm({
349
349
  ] }),
350
350
  attachmentsEnabled && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-2", children: [
351
351
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
352
- _chunkZXFOMNI5cjs.ChatAttachmentChipStrip,
352
+ _chunkILZEXCJHcjs.ChatAttachmentChipStrip,
353
353
  {
354
354
  attachments: attachments.attachments,
355
355
  onRemove: attachments.removeAttachment,
@@ -358,7 +358,7 @@ function ContactForm({
358
358
  ),
359
359
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
360
360
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
361
- _chunkZXFOMNI5cjs.ChatAttachmentAddButton,
361
+ _chunkILZEXCJHcjs.ChatAttachmentAddButton,
362
362
  {
363
363
  attachmentsEnabled: true,
364
364
  attachmentsCount: attachments.attachments.length,
@@ -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(); } } 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 _chunkQS4G7CHUcjs = require('./chunk-QS4G7CHU.cjs');
4
+ var _chunkKSCEAIBScjs = require('./chunk-KSCEAIBS.cjs');
5
5
 
6
6
 
7
7
 
@@ -15,7 +15,7 @@ var _chunkQS4G7CHUcjs = require('./chunk-QS4G7CHU.cjs');
15
15
 
16
16
 
17
17
 
18
- var _chunkHQF62LAUcjs = require('./chunk-HQF62LAU.cjs');
18
+ var _chunkFPCGKH5Kcjs = require('./chunk-FPCGKH5K.cjs');
19
19
 
20
20
 
21
21
 
@@ -39,7 +39,7 @@ var _chunkHQF62LAUcjs = require('./chunk-HQF62LAU.cjs');
39
39
 
40
40
 
41
41
 
42
- var _chunk4EJU462Ocjs = require('./chunk-4EJU462O.cjs');
42
+ var _chunk5V7BIUGAcjs = require('./chunk-5V7BIUGA.cjs');
43
43
 
44
44
 
45
45
  var _chunkBLH2SFOOcjs = require('./chunk-BLH2SFOO.cjs');
@@ -452,7 +452,7 @@ function programEntry(configKey) {
452
452
  // Hosts are drawn only for a type whose cards show them (its config's `cardShowsHosts`): elsewhere a record may
453
453
  // have none.
454
454
  skeleton: (size, extras) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
455
- _chunk4EJU462Ocjs.ProgramCardSkeleton,
455
+ _chunk5V7BIUGAcjs.ProgramCardSkeleton,
456
456
  {
457
457
  size: size === "sm" ? "sm" : "default",
458
458
  media: configKey === "event" ? EVENT_CARD_SKELETON_MEDIA : 0,
@@ -464,7 +464,7 @@ function programEntry(configKey) {
464
464
  const config = _optionalChain([ctx, 'access', _5 => _5.extras, 'optionalAccess', _6 => _6.programConfigs, 'optionalAccess', _7 => _7[configKey]]);
465
465
  if (!config) return null;
466
466
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
467
- _chunk4EJU462Ocjs.ProgramCard,
467
+ _chunk5V7BIUGAcjs.ProgramCard,
468
468
  {
469
469
  config,
470
470
  item,
@@ -481,10 +481,10 @@ function programEntry(configKey) {
481
481
  }
482
482
  function roadmapEntry(cardType) {
483
483
  return cardEntry({
484
- skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EJU462Ocjs.RoadmapCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
484
+ skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5V7BIUGAcjs.RoadmapCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
485
485
  decode: decodeRoadmapRow,
486
486
  render: (item, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
487
- _chunk4EJU462Ocjs.RoadmapCard,
487
+ _chunk5V7BIUGAcjs.RoadmapCard,
488
488
  {
489
489
  item,
490
490
  href: ctx.href,
@@ -501,10 +501,10 @@ function roadmapEntry(cardType) {
501
501
  }
502
502
  var RELATED_CARD_REGISTRY = {
503
503
  blog_post_existing: cardEntry({
504
- skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EJU462Ocjs.BlogCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
504
+ skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5V7BIUGAcjs.BlogCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
505
505
  decode: decodeBlogRow,
506
506
  render: (post, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
507
- _chunk4EJU462Ocjs.BlogCard,
507
+ _chunk5V7BIUGAcjs.BlogCard,
508
508
  {
509
509
  post,
510
510
  size: ctx.legacySize,
@@ -516,10 +516,10 @@ var RELATED_CARD_REGISTRY = {
516
516
  )
517
517
  }),
518
518
  case_study: cardEntry({
519
- skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EJU462Ocjs.CaseStudyCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
519
+ skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5V7BIUGAcjs.CaseStudyCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
520
520
  decode: decodeCaseStudyRow,
521
521
  render: (study, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
522
- _chunk4EJU462Ocjs.CaseStudyCard,
522
+ _chunk5V7BIUGAcjs.CaseStudyCard,
523
523
  {
524
524
  study,
525
525
  size: ctx.legacySize,
@@ -531,10 +531,10 @@ var RELATED_CARD_REGISTRY = {
531
531
  )
532
532
  }),
533
533
  customer_interview: cardEntry({
534
- skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EJU462Ocjs.CustomerInterviewCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
534
+ skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5V7BIUGAcjs.CustomerInterviewCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
535
535
  decode: decodeCustomerInterviewRow,
536
536
  render: (interview, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
537
- _chunk4EJU462Ocjs.CustomerInterviewCard,
537
+ _chunk5V7BIUGAcjs.CustomerInterviewCard,
538
538
  {
539
539
  interview,
540
540
  size: ctx.legacySize,
@@ -552,13 +552,13 @@ var RELATED_CARD_REGISTRY = {
552
552
  * record, and the three props the rail sets itself are read off it.
553
553
  */
554
554
  product_release: cardEntry({
555
- skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EJU462Ocjs.ProductReleaseCardSkeleton, { size: size === "sm" ? "sm" : "lg" }),
555
+ skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5V7BIUGAcjs.ProductReleaseCardSkeleton, { size: size === "sm" ? "sm" : "lg" }),
556
556
  decode: asRecord,
557
557
  render: (release, ctx) => {
558
- const buildReleaseProps = _nullishCoalesce(_optionalChain([ctx, 'access', _8 => _8.extras, 'optionalAccess', _9 => _9.buildProductReleaseCardProps]), () => ( _chunk4EJU462Ocjs.buildProductReleaseCardProps));
558
+ const buildReleaseProps = _nullishCoalesce(_optionalChain([ctx, 'access', _8 => _8.extras, 'optionalAccess', _9 => _9.buildProductReleaseCardProps]), () => ( _chunk5V7BIUGAcjs.buildProductReleaseCardProps));
559
559
  const releaseProps = buildReleaseProps(release);
560
560
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
561
- _chunkHQF62LAUcjs.ProductReleaseCard,
561
+ _chunkFPCGKH5Kcjs.ProductReleaseCard,
562
562
  {
563
563
  size: ctx.size === "sm" ? "sm" : "lg",
564
564
  title: str(release, "title"),
@@ -574,10 +574,10 @@ var RELATED_CARD_REGISTRY = {
574
574
  webinar: programEntry("webinar"),
575
575
  event: programEntry("event"),
576
576
  investor_update: cardEntry({
577
- skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EJU462Ocjs.InvestorUpdateCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
577
+ skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5V7BIUGAcjs.InvestorUpdateCardSkeleton, { size: size === "sm" ? "sm" : "default" }),
578
578
  decode: decodeInvestorUpdateRow,
579
579
  render: (update, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
580
- _chunk4EJU462Ocjs.InvestorUpdateCard,
580
+ _chunk5V7BIUGAcjs.InvestorUpdateCard,
581
581
  {
582
582
  update,
583
583
  size: ctx.legacySize,
@@ -592,10 +592,10 @@ var RELATED_CARD_REGISTRY = {
592
592
  * step-numbered 'default' variant is for the guide detail page's "More in
593
593
  * section" rail, not this full-width row. */
594
594
  onboarding_guide: cardEntry({
595
- skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EJU462Ocjs.OnboardingGuideCardSkeleton, { size: size === "sm" ? "sm" : "catalog", published: false }),
595
+ skeleton: (size) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5V7BIUGAcjs.OnboardingGuideCardSkeleton, { size: size === "sm" ? "sm" : "catalog", published: false }),
596
596
  decode: decodeOnboardingGuideRow,
597
597
  render: (guide, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
598
- _chunk4EJU462Ocjs.OnboardingGuideCard,
598
+ _chunk5V7BIUGAcjs.OnboardingGuideCard,
599
599
  {
600
600
  guide,
601
601
  size: ctx.size === "sm" ? "sm" : "catalog",
@@ -612,10 +612,10 @@ var RELATED_CARD_REGISTRY = {
612
612
  * href: an object with `href: undefined` is still truthy and would wrap the
613
613
  * card in a dead <a>. */
614
614
  what_i_shipped: cardEntry({
615
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHQF62LAUcjs.WhatIShippedCardSkeleton, {}),
615
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFPCGKH5Kcjs.WhatIShippedCardSkeleton, {}),
616
616
  decode: decodeEmployeeEntryRow,
617
617
  render: (entry, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
618
- _chunkHQF62LAUcjs.WhatIShippedCard,
618
+ _chunkFPCGKH5Kcjs.WhatIShippedCard,
619
619
  {
620
620
  entry,
621
621
  placeholderUrl: ctx.placeholderUrl,
@@ -625,10 +625,10 @@ var RELATED_CARD_REGISTRY = {
625
625
  }),
626
626
  /** Same shared employee-entry shape + anchor contract as What I Shipped. */
627
627
  how_i_work: cardEntry({
628
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHQF62LAUcjs.HowIWorkCardSkeleton, {}),
628
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFPCGKH5Kcjs.HowIWorkCardSkeleton, {}),
629
629
  decode: decodeEmployeeEntryRow,
630
630
  render: (entry, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
631
- _chunkHQF62LAUcjs.HowIWorkCard,
631
+ _chunkFPCGKH5Kcjs.HowIWorkCard,
632
632
  {
633
633
  entry,
634
634
  placeholderUrl: ctx.placeholderUrl,
@@ -638,10 +638,10 @@ var RELATED_CARD_REGISTRY = {
638
638
  }),
639
639
  /** Same shared employee-entry shape + anchor contract as What I Shipped. */
640
640
  ai_prompt: cardEntry({
641
- skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHQF62LAUcjs.AiPromptCardSkeleton, {}),
641
+ skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFPCGKH5Kcjs.AiPromptCardSkeleton, {}),
642
642
  decode: decodeEmployeeEntryRow,
643
643
  render: (entry, ctx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
644
- _chunkHQF62LAUcjs.AiPromptCard,
644
+ _chunkFPCGKH5Kcjs.AiPromptCard,
645
645
  {
646
646
  entry,
647
647
  placeholderUrl: ctx.placeholderUrl,
@@ -662,7 +662,7 @@ function DefaultLinkPropsProvider({
662
662
  children
663
663
  }) {
664
664
  if (!href) return children(null);
665
- const newTab = _chunk4EJU462Ocjs.decideNewTab.call(void 0, { href, targetPlatform, currentSource: "" });
665
+ const newTab = _chunk5V7BIUGAcjs.decideNewTab.call(void 0, { href, targetPlatform, currentSource: "" });
666
666
  return children(newTab ? { href, target: "_blank", rel: "noopener noreferrer" } : { href });
667
667
  }
668
668
  function defaultResolveHref(ref) {
@@ -720,9 +720,9 @@ function useGroupItems(type, refs, buildUrl) {
720
720
  const url = ids.length > 0 ? buildUrl(type, ids) : null;
721
721
  const [pages, setPages] = _react.useState.call(void 0, () => /* @__PURE__ */ new Map());
722
722
  const cached = url !== null ? pages.get(url) : void 0;
723
- const { data, dataUrl, error } = _chunkHQF62LAUcjs.useSelfFetch.call(void 0, cached ? null : url);
723
+ const { data, dataUrl, error } = _chunkFPCGKH5Kcjs.useSelfFetch.call(void 0, cached ? null : url);
724
724
  if (data != null && dataUrl !== null && !pages.has(dataUrl)) {
725
- setPages(new Map(pages).set(dataUrl, _chunk4EJU462Ocjs.extractItems.call(void 0, data)));
725
+ setPages(new Map(pages).set(dataUrl, _chunk5V7BIUGAcjs.extractItems.call(void 0, data)));
726
726
  }
727
727
  if (url === null) return { items: null, isLoading: false };
728
728
  return { items: _nullishCoalesce(cached, () => ( (error ? [] : null))), isLoading: !cached && !error };
@@ -731,7 +731,7 @@ function gridClassFor(columns) {
731
731
  return columns === 3 ? "grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6" : "grid grid-cols-1 sm:grid-cols-2 gap-6";
732
732
  }
733
733
  function resolveGroupConfig(type) {
734
- return _nullishCoalesce(_chunkHQF62LAUcjs.CONTENT_REF_GROUPS[type], () => ( {
734
+ return _nullishCoalesce(_chunkFPCGKH5Kcjs.CONTENT_REF_GROUPS[type], () => ( {
735
735
  label: type,
736
736
  order: 999,
737
737
  layout: "grid",
@@ -743,28 +743,17 @@ var GROUP_CLASS = "space-y-4";
743
743
  var GROUP_LIST_CLASS = "space-y-4";
744
744
  var GROUP_HEADING_CLASS = "font-semibold text-ods-text-secondary text-h5";
745
745
  var RAIL_CLASS = "flex flex-col gap-8";
746
- var RAIL_SKELETON_CARDS = 3;
747
- var RAIL_LIST_FOLD = 2;
748
- var RAIL_GRID_FOLD_ROWS = 2;
749
746
  var UNKNOWN_TYPE_CARD = "blog_post_existing";
750
- var GRID_COLUMNS_BY_STEP = { 2: [1, 2, 2], 3: [1, 2, 3] };
751
- function gridFoldClass(index, columns) {
752
- const [phone, sm, lg] = GRID_COLUMNS_BY_STEP[columns].map((c) => c * RAIL_GRID_FOLD_ROWS);
753
- if (index < phone) return void 0;
754
- if (index < sm) return "hidden sm:block";
755
- if (index < lg) return "hidden lg:block";
756
- return "hidden";
757
- }
758
747
  function GroupHeading({ type }) {
759
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: GROUP_HEADING_CLASS, children: _chunkHQF62LAUcjs.getContentRefLabelOrTitleCase.call(void 0, type) });
748
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: GROUP_HEADING_CLASS, children: _chunkFPCGKH5Kcjs.getContentRefLabelOrTitleCase.call(void 0, type) });
760
749
  }
761
750
  function orderRailTypes(types, entityType) {
762
- let ordered = _chunkHQF62LAUcjs.orderContentRefTypes.call(void 0, types);
751
+ let ordered = _chunkFPCGKH5Kcjs.orderContentRefTypes.call(void 0, types);
763
752
  if (entityType) {
764
- const canonicalEntityType = _chunk4EJU462Ocjs.canonicalContentRefType.call(void 0, entityType);
765
- const sameType = ordered.filter((t) => _chunk4EJU462Ocjs.canonicalContentRefType.call(void 0, t) === canonicalEntityType);
753
+ const canonicalEntityType = _chunk5V7BIUGAcjs.canonicalContentRefType.call(void 0, entityType);
754
+ const sameType = ordered.filter((t) => _chunk5V7BIUGAcjs.canonicalContentRefType.call(void 0, t) === canonicalEntityType);
766
755
  if (sameType.length > 0) {
767
- ordered = [...sameType, ...ordered.filter((t) => _chunk4EJU462Ocjs.canonicalContentRefType.call(void 0, t) !== canonicalEntityType)];
756
+ ordered = [...sameType, ...ordered.filter((t) => _chunk5V7BIUGAcjs.canonicalContentRefType.call(void 0, t) !== canonicalEntityType)];
768
757
  }
769
758
  }
770
759
  return ordered;
@@ -794,7 +783,7 @@ function ContentGroup({
794
783
  const totalGroupPages = _chunkBLH2SFOOcjs.pageCount.call(void 0, refs.length, GROUP_PAGE_SIZE);
795
784
  const pageRefs = refs.slice((page - 1) * GROUP_PAGE_SIZE, page * GROUP_PAGE_SIZE);
796
785
  const { items, isLoading } = useGroupItems(type, pageRefs, buildUrl);
797
- const groupPagination = totalGroupPages > 1 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQS4G7CHUcjs.Pagination, { currentPage: page, totalPages: totalGroupPages, onPageChange: setPage }) : null;
786
+ const groupPagination = totalGroupPages > 1 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkKSCEAIBScjs.Pagination, { currentPage: page, totalPages: totalGroupPages, onPageChange: setPage }) : null;
798
787
  _react.useEffect.call(void 0, () => {
799
788
  onLoadingChange(type, isLoading);
800
789
  return () => onLoadingChange(type, false);
@@ -812,7 +801,7 @@ function ContentGroup({
812
801
  }
813
802
  if (!items) return null;
814
803
  const rowKey = (it) => {
815
- const extracted = _chunk4EJU462Ocjs.extractItemId.call(void 0, type, it);
804
+ const extracted = _chunk5V7BIUGAcjs.extractItemId.call(void 0, type, it);
816
805
  if (extracted !== null) return extracted;
817
806
  return String(typeof it === "object" && it !== null ? it.id : void 0);
818
807
  };
@@ -881,11 +870,11 @@ function RelatedContentSection({
881
870
  types: includeTypes !== void 0 ? includeTypes.join(",") : void 0,
882
871
  excludeTypes: excludeTypes && excludeTypes.length > 0 ? excludeTypes.join(",") : void 0
883
872
  };
884
- const authorUrl = contentRefs === void 0 && authorId && !suggestionsDisabled ? _chunkHQF62LAUcjs.buildSuggestionUrl.call(void 0, "/api/related-content", {
873
+ const authorUrl = contentRefs === void 0 && authorId && !suggestionsDisabled ? _chunkFPCGKH5Kcjs.buildSuggestionUrl.call(void 0, "/api/related-content", {
885
874
  apiBaseUrl,
886
875
  extraParams: { authorId, ...typeFilterParams }
887
876
  }) : null;
888
- const suggestUrl = _nullishCoalesce(authorUrl, () => ( (contentRefs === void 0 && entityType && entityId !== void 0 && entityId !== null && entityId !== "" && !suggestionsDisabled ? _chunkHQF62LAUcjs.buildSuggestionUrl.call(void 0, "/api/related-content", {
877
+ const suggestUrl = _nullishCoalesce(authorUrl, () => ( (contentRefs === void 0 && entityType && entityId !== void 0 && entityId !== null && entityId !== "" && !suggestionsDisabled ? _chunkFPCGKH5Kcjs.buildSuggestionUrl.call(void 0, "/api/related-content", {
889
878
  apiBaseUrl,
890
879
  entityType,
891
880
  entityId,
@@ -902,7 +891,7 @@ function RelatedContentSection({
902
891
  () => !suggestionsDisabled && initialItems ? { refs: initialItems } : void 0,
903
892
  [initialItems, suggestionsDisabled]
904
893
  );
905
- const { data, isLoading } = _chunkHQF62LAUcjs.useSelfFetch.call(void 0, suggestUrl, { initialData });
894
+ const { data, isLoading } = _chunkFPCGKH5Kcjs.useSelfFetch.call(void 0, suggestUrl, { initialData });
906
895
  const inScope = _chunkXFRBEXQNcjs.useLoadingScope.call(void 0, );
907
896
  const [loadingTypes, setLoadingTypes] = _react.useState.call(void 0, () => /* @__PURE__ */ new Set());
908
897
  const onGroupLoadingChange = _react.useCallback.call(void 0, (type, loading) => {
@@ -915,7 +904,7 @@ function RelatedContentSection({
915
904
  });
916
905
  }, []);
917
906
  const effectiveBuildListUrl = _react.useMemo.call(void 0,
918
- () => _nullishCoalesce(buildListUrl2, () => ( ((type, ids) => _chunk4EJU462Ocjs.buildListUrl.call(void 0, type, ids, apiBaseUrl)))),
907
+ () => _nullishCoalesce(buildListUrl2, () => ( ((type, ids) => _chunk5V7BIUGAcjs.buildListUrl.call(void 0, type, ids, apiBaseUrl)))),
919
908
  [buildListUrl2, apiBaseUrl]
920
909
  );
921
910
  const refs = _nullishCoalesce(_nullishCoalesce(contentRefs, () => ( _optionalChain([data, 'optionalAccess', _13 => _13.refs]))), () => ( []));
@@ -939,7 +928,7 @@ function RelatedContentSection({
939
928
  }
940
929
  if (!showWhenEmpty) return null;
941
930
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-8", children: [
942
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "text-2xl font-bold text-ods-text-primary", children: _chunk4EJU462Ocjs.accentSentenceMarks.call(void 0, title) }),
931
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: "text-2xl font-bold text-ods-text-primary", children: _chunk5V7BIUGAcjs.accentSentenceMarks.call(void 0, title) }),
943
932
  _nullishCoalesce(emptyState, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary", children: emptyStateText })))
944
933
  ] });
945
934
  }
@@ -965,7 +954,7 @@ function RelatedContentSection({
965
954
  );
966
955
  }
967
956
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkWEANWBJHcjs.LoadingRegion, { as: "section", label: "Loading related content", announce: loadingTypes.size > 0, className: RAIL_CLASS, children: [
968
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: RAIL_TITLE_CLASS, children: _chunk4EJU462Ocjs.accentSentenceMarks.call(void 0, title) }),
957
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: RAIL_TITLE_CLASS, children: _chunk5V7BIUGAcjs.accentSentenceMarks.call(void 0, title) }),
969
958
  orderedTypes.map((type) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
970
959
  ContentGroup,
971
960
  {
@@ -994,30 +983,28 @@ function RelatedContentSectionSkeleton({
994
983
  adminCampaignCard,
995
984
  extras
996
985
  }) {
997
- const canonicalEntityType = entityType ? _chunk4EJU462Ocjs.canonicalContentRefType.call(void 0, entityType) : null;
986
+ const canonicalEntityType = entityType ? _chunk5V7BIUGAcjs.canonicalContentRefType.call(void 0, entityType) : null;
998
987
  const unknownGroup = types.length === 0 ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: GROUP_CLASS, "aria-hidden": true, "data-loading-item": true, children: [
999
988
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: GROUP_HEADING_CLASS, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-24" }) }),
1000
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: gridClassFor(columns), children: Array.from({ length: Math.max(...GRID_COLUMNS_BY_STEP[columns]) * RAIL_GRID_FOLD_ROWS }, (_, i) => (
989
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: gridClassFor(columns), children: Array.from({ length: GROUP_PAGE_SIZE }, (_, i) => (
1001
990
  // biome-ignore lint/suspicious/noArrayIndexKey: skeleton cards never reorder
1002
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: gridFoldClass(i, columns), "data-loading-item": true, children: renderSkeletonForType(UNKNOWN_TYPE_CARD, "default", adminCampaignCard, extras) }, i)
991
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-loading-item": true, children: renderSkeletonForType(UNKNOWN_TYPE_CARD, "default", adminCampaignCard, extras) }, i)
1003
992
  )) })
1004
993
  ] }) : null;
1005
994
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkWEANWBJHcjs.LoadingRegion, { as: "section", label: "Loading related content", className: RAIL_CLASS, children: [
1006
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: RAIL_TITLE_CLASS, children: title ? _chunk4EJU462Ocjs.accentSentenceMarks.call(void 0, title) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-1/2" }) }),
995
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: RAIL_TITLE_CLASS, children: title ? _chunk5V7BIUGAcjs.accentSentenceMarks.call(void 0, title) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-1/2" }) }),
1007
996
  unknownGroup,
1008
997
  orderRailTypes(new Set(types), entityType).map((type) => {
1009
998
  const config = resolveGroupConfig(type);
1010
- const sameType = canonicalEntityType !== null && _chunk4EJU462Ocjs.canonicalContentRefType.call(void 0, type) === canonicalEntityType;
999
+ const sameType = canonicalEntityType !== null && _chunk5V7BIUGAcjs.canonicalContentRefType.call(void 0, type) === canonicalEntityType;
1011
1000
  const isList = config.layout === "list";
1012
- const fold = isList ? RAIL_LIST_FOLD : Math.max(...GRID_COLUMNS_BY_STEP[columns]) * RAIL_GRID_FOLD_ROWS;
1013
1001
  const count = Math.min(
1014
1002
  GROUP_PAGE_SIZE,
1015
- fold,
1016
- _nullishCoalesce((sameType ? _nullishCoalesce(sameTypeMinResults, () => ( minResults)) : minResults), () => ( RAIL_SKELETON_CARDS))
1003
+ _nullishCoalesce((sameType ? _nullishCoalesce(sameTypeMinResults, () => ( minResults)) : minResults), () => ( GROUP_PAGE_SIZE))
1017
1004
  );
1018
1005
  const cards = Array.from({ length: count }, (_, i) => (
1019
1006
  // biome-ignore lint/suspicious/noArrayIndexKey: skeleton cards never reorder
1020
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: isList ? void 0 : gridFoldClass(i, columns), "data-loading-item": true, children: renderSkeletonForType(type, config.gridSize, adminCampaignCard, extras) }, i)
1007
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-loading-item": true, children: renderSkeletonForType(type, config.gridSize, adminCampaignCard, extras) }, i)
1021
1008
  ));
1022
1009
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: GROUP_CLASS, "aria-hidden": true, "data-loading-item": true, children: [
1023
1010
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, GroupHeading, { type }),
@@ -3895,7 +3895,7 @@ var DEFAULT_GALLERY_ROW = "flex gap-[var(--spacing-system-mf)]";
3895
3895
  var DEFAULT_GALLERY_THUMB = "relative h-24 w-24 flex-shrink-0 overflow-hidden rounded-lg md:h-40 md:w-40 xl:h-[200px] xl:w-[200px]";
3896
3896
  var DEFAULT_FOOTER = "flex justify-end border-t border-ods-border pt-[var(--spacing-system-lf)]";
3897
3897
  var DEFAULT_HOSTS_ROW = "flex flex-wrap gap-2 md:justify-end";
3898
- var DEFAULT_TAGS_FOLD = 2;
3898
+ var DEFAULT_SKELETON_TAGS = 2;
3899
3899
  var EDITORIAL_PERSON_AVATAR = { variant: "round", size: "sm" };
3900
3900
  var programActionLabel = (singular) => `View ${singular.toLowerCase()}`;
3901
3901
  function ProgramActionButton({ label, href, newTab }) {
@@ -3950,7 +3950,7 @@ function ProgramCardSkeleton({
3950
3950
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { as: "span", type: "inherit", className: "w-40" })
3951
3951
  ] }),
3952
3952
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DEFAULT_DESCRIPTION, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { as: "span", type: "inherit", lines: 3, className: "w-full" }) }),
3953
- tags && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DEFAULT_TAG_ROW, children: Array.from({ length: DEFAULT_TAGS_FOLD }, (_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY6BCZH7cjs.TagSkeleton, {}, i)) })
3953
+ tags && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DEFAULT_TAG_ROW, children: Array.from({ length: DEFAULT_SKELETON_TAGS }, (_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY6BCZH7cjs.TagSkeleton, {}, i)) })
3954
3954
  ] }),
3955
3955
  hosts > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: DEFAULT_HOSTS_ROW, children: Array.from({ length: hosts }, (_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHY6BCZH7cjs.SquareAvatarSkeleton, { variant: "round", size: "sm" }, i)) })
3956
3956
  ] }),