@flamingo-stack/openframe-frontend-core 0.0.735 → 0.0.737

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 (118) hide show
  1. package/dist/build/export-map.json +1 -1
  2. package/dist/{chunk-F7STMHT7.cjs → chunk-4FJZ7RJD.cjs} +66 -66
  3. package/dist/{chunk-SZRZBCWC.cjs → chunk-4ISP3XP4.cjs} +75 -69
  4. package/dist/{chunk-EQ7OOK4B.cjs → chunk-4RMLAHU2.cjs} +24 -16
  5. package/dist/{chunk-XKB7YGQM.cjs → chunk-77SD7RXY.cjs} +18 -6
  6. package/dist/{chunk-NVCSVGNI.cjs → chunk-CM35DLKS.cjs} +33 -33
  7. package/dist/{chunk-T323E2Y6.cjs → chunk-DA4VS6TS.cjs} +4 -4
  8. package/dist/{chunk-36CCUJOE.cjs → chunk-E2JCZU36.cjs} +313 -313
  9. package/dist/{chunk-RH3AKULV.cjs → chunk-EJOXXJJB.cjs} +56 -4
  10. package/dist/{chunk-SHQZN5LF.cjs → chunk-EX2GYIGW.cjs} +6 -6
  11. package/dist/{chunk-EQH7BUNS.cjs → chunk-FA2LATDM.cjs} +4 -4
  12. package/dist/{chunk-3JP2OVH3.cjs → chunk-KVGBDWYV.cjs} +30 -30
  13. package/dist/{chunk-HBUUCLQM.cjs → chunk-L535OD7V.cjs} +2 -2
  14. package/dist/{chunk-3X4N3IT7.cjs → chunk-LW3QSP47.cjs} +16 -16
  15. package/dist/{chunk-OXJ57643.cjs → chunk-MGW5DO6P.cjs} +76 -17
  16. package/dist/{chunk-4F7V2MAC.cjs → chunk-N6YOOGCD.cjs} +14 -14
  17. package/dist/chunk-O4MG7FXW.cjs +57 -0
  18. package/dist/{chunk-TUMUT7CV.cjs → chunk-SGVQO5J6.cjs} +11 -11
  19. package/dist/{chunk-MRVZ56GT.cjs → chunk-TJQYX3QC.cjs} +81 -81
  20. package/dist/{chunk-7HT3VHLJ.cjs → chunk-URIJ6YUG.cjs} +43 -69
  21. package/dist/{chunk-JDXQ6T5P.cjs → chunk-VL4JKXU2.cjs} +253 -290
  22. package/dist/{chunk-HLBFTDUL.cjs → chunk-VRNNIV5Y.cjs} +2 -2
  23. package/dist/{chunk-W6E7XCBI.cjs → chunk-VYODTHMR.cjs} +31 -31
  24. package/dist/{chunk-3FZZPR76.cjs → chunk-XLSVQJBA.cjs} +44 -44
  25. package/dist/{chunk-6TTAILSV.cjs → chunk-XPP7VCNY.cjs} +3 -3
  26. package/dist/{cloud-tenants-H5D57P4U.cjs → cloud-tenants-IWQ5FFLY.cjs} +7 -7
  27. package/dist/components/case-studies/index.cjs +19 -19
  28. package/dist/components/chat/entity-cards/index.d.ts +1 -0
  29. package/dist/components/chat/entity-cards/index.d.ts.map +1 -1
  30. package/dist/components/chat/entity-cards/index.js +2 -0
  31. package/dist/components/chat/hooks/use-ask-prompts.d.ts +1 -1
  32. package/dist/components/chat/hooks/use-ask-prompts.js +1 -1
  33. package/dist/components/chat/index.cjs +10 -8
  34. package/dist/components/chat/mingo-info-card.d.ts +17 -1
  35. package/dist/components/chat/mingo-info-card.d.ts.map +1 -1
  36. package/dist/components/chat/mingo-info-card.js +15 -3
  37. package/dist/components/contact/index.cjs +8 -8
  38. package/dist/components/docs/index.cjs +11 -11
  39. package/dist/components/embeds/index.cjs +8 -8
  40. package/dist/components/faq/faq-ask-card.d.ts +5 -4
  41. package/dist/components/faq/faq-ask-card.d.ts.map +1 -1
  42. package/dist/components/faq/faq-document-page.d.ts +3 -1
  43. package/dist/components/faq/faq-document-page.d.ts.map +1 -1
  44. package/dist/components/faq/faq-document-page.js +2 -0
  45. package/dist/components/faq/faq-section.d.ts +37 -5
  46. package/dist/components/faq/faq-section.d.ts.map +1 -1
  47. package/dist/components/faq/faq-section.js +31 -9
  48. package/dist/components/faq/index.cjs +14 -8
  49. package/dist/components/faq/index.d.ts +1 -1
  50. package/dist/components/faq/index.d.ts.map +1 -1
  51. package/dist/components/faq/index.js +4 -2
  52. package/dist/components/features/index.cjs +7 -7
  53. package/dist/components/help-center-pages/delivery-page.d.ts +8 -1
  54. package/dist/components/help-center-pages/delivery-page.d.ts.map +1 -1
  55. package/dist/components/help-center-pages/delivery-page.js +16 -4
  56. package/dist/components/help-center-pages/download-apps-page.d.ts +8 -1
  57. package/dist/components/help-center-pages/download-apps-page.d.ts.map +1 -1
  58. package/dist/components/help-center-pages/download-apps-page.js +11 -6
  59. package/dist/components/help-center-pages/index.cjs +195 -140
  60. package/dist/components/help-center-pages/onboarding-guides-catalog-page.d.ts +8 -1
  61. package/dist/components/help-center-pages/onboarding-guides-catalog-page.d.ts.map +1 -1
  62. package/dist/components/help-center-pages/onboarding-guides-catalog-page.js +26 -14
  63. package/dist/components/help-center-pages/product-releases-list-page.d.ts +8 -1
  64. package/dist/components/help-center-pages/product-releases-list-page.d.ts.map +1 -1
  65. package/dist/components/help-center-pages/product-releases-list-page.js +24 -12
  66. package/dist/components/help-center-pages/roadmap-page.d.ts +8 -1
  67. package/dist/components/help-center-pages/roadmap-page.d.ts.map +1 -1
  68. package/dist/components/help-center-pages/roadmap-page.js +25 -13
  69. package/dist/components/index.cjs +67 -59
  70. package/dist/components/meeting-scheduler/index.cjs +29 -29
  71. package/dist/components/navigation/index.cjs +10 -10
  72. package/dist/components/onboarding-guides/index.cjs +10 -10
  73. package/dist/components/pagination.d.ts +9 -1
  74. package/dist/components/pagination.d.ts.map +1 -1
  75. package/dist/components/pagination.js +72 -17
  76. package/dist/components/product-demo/index.cjs +6 -6
  77. package/dist/components/related-content/index.cjs +5 -5
  78. package/dist/components/shared/dev-section/dev-section-page.d.ts +8 -1
  79. package/dist/components/shared/dev-section/dev-section-page.d.ts.map +1 -1
  80. package/dist/components/shared/dev-section/dev-section-page.js +8 -3
  81. package/dist/components/shared/legal-document/legal-document-page.d.ts +8 -1
  82. package/dist/components/shared/legal-document/legal-document-page.d.ts.map +1 -1
  83. package/dist/components/shared/legal-document/legal-document-page.js +4 -1
  84. package/dist/components/tickets/index.cjs +13 -12
  85. package/dist/components/ui/index.cjs +12 -10
  86. package/dist/components/unified-pagination.d.ts.map +1 -1
  87. package/dist/components/unified-pagination.js +16 -4
  88. package/dist/contexts/assistant-runtime-context.d.ts +5 -5
  89. package/dist/{devices-SQTEXY2H.cjs → devices-OUHGWA6Y.cjs} +8 -8
  90. package/dist/{embeddable-chat-S5ODWE3L.cjs → embeddable-chat-U3C4WWB7.cjs} +72 -72
  91. package/dist/index.cjs +20 -14
  92. package/dist/{knowledge-FO3TPLFO.cjs → knowledge-3ZASPWMF.cjs} +8 -8
  93. package/dist/{logs-Y4WQB2YR.cjs → logs-E6Y54P6K.cjs} +15 -15
  94. package/dist/{policies-D6VY2ODF.cjs → policies-LAV75B5B.cjs} +11 -11
  95. package/dist/{software-update-7XN6U7HC.cjs → software-update-2CAL3AMJ.cjs} +10 -10
  96. package/dist/types/faq.d.ts +17 -0
  97. package/dist/types/faq.d.ts.map +1 -1
  98. package/dist/types/faq.js +4 -0
  99. package/dist/types/index.cjs +4 -0
  100. package/package.json +1 -1
  101. package/src/components/chat/entity-cards/index.ts +1 -0
  102. package/src/components/chat/hooks/use-ask-prompts.ts +2 -2
  103. package/src/components/chat/mingo-info-card.tsx +39 -4
  104. package/src/components/faq/faq-ask-card.tsx +5 -4
  105. package/src/components/faq/faq-document-page.tsx +4 -0
  106. package/src/components/faq/faq-section.tsx +83 -14
  107. package/src/components/faq/index.ts +1 -1
  108. package/src/components/help-center-pages/delivery-page.tsx +16 -1
  109. package/src/components/help-center-pages/download-apps-page.tsx +9 -0
  110. package/src/components/help-center-pages/onboarding-guides-catalog-page.tsx +16 -1
  111. package/src/components/help-center-pages/product-releases-list-page.tsx +16 -1
  112. package/src/components/help-center-pages/roadmap-page.tsx +16 -1
  113. package/src/components/pagination.tsx +117 -21
  114. package/src/components/shared/dev-section/dev-section-page.tsx +9 -0
  115. package/src/components/shared/legal-document/legal-document-page.tsx +9 -0
  116. package/src/components/unified-pagination.tsx +23 -7
  117. package/src/contexts/assistant-runtime-context.tsx +5 -5
  118. package/src/types/faq.ts +18 -0
@@ -1,20 +1,21 @@
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 _chunkHBUUCLQMcjs = require('./chunk-HBUUCLQM.cjs');
4
+ var _chunkL535OD7Vcjs = require('./chunk-L535OD7V.cjs');
5
5
 
6
6
 
7
7
 
8
- var _chunkEQ7OOK4Bcjs = require('./chunk-EQ7OOK4B.cjs');
8
+ var _chunk4RMLAHU2cjs = require('./chunk-4RMLAHU2.cjs');
9
9
 
10
10
 
11
- var _chunkXKB7YGQMcjs = require('./chunk-XKB7YGQM.cjs');
11
+ var _chunk77SD7RXYcjs = require('./chunk-77SD7RXY.cjs');
12
12
 
13
13
 
14
- var _chunkHLBFTDULcjs = require('./chunk-HLBFTDUL.cjs');
15
14
 
15
+ var _chunkURIJ6YUGcjs = require('./chunk-URIJ6YUG.cjs');
16
16
 
17
17
 
18
+ var _chunkVRNNIV5Ycjs = require('./chunk-VRNNIV5Y.cjs');
18
19
 
19
20
 
20
21
 
@@ -23,7 +24,10 @@ var _chunkHLBFTDULcjs = require('./chunk-HLBFTDUL.cjs');
23
24
 
24
25
 
25
26
 
26
- var _chunk36CCUJOEcjs = require('./chunk-36CCUJOE.cjs');
27
+
28
+
29
+
30
+ var _chunkE2JCZU36cjs = require('./chunk-E2JCZU36.cjs');
27
31
 
28
32
 
29
33
  var _chunkL4ZNR5V7cjs = require('./chunk-L4ZNR5V7.cjs');
@@ -35,13 +39,12 @@ var _chunkVA7OMDZOcjs = require('./chunk-VA7OMDZO.cjs');
35
39
 
36
40
 
37
41
 
38
- var _chunkF7STMHT7cjs = require('./chunk-F7STMHT7.cjs');
42
+ var _chunk4FJZ7RJDcjs = require('./chunk-4FJZ7RJD.cjs');
39
43
 
40
44
 
41
45
 
42
46
 
43
-
44
- var _chunkJDXQ6T5Pcjs = require('./chunk-JDXQ6T5P.cjs');
47
+ var _chunkVL4JKXU2cjs = require('./chunk-VL4JKXU2.cjs');
45
48
 
46
49
 
47
50
  var _chunkEWCFJLNUcjs = require('./chunk-EWCFJLNU.cjs');
@@ -55,7 +58,8 @@ var _chunkSA7LDEVJcjs = require('./chunk-SA7LDEVJ.cjs');
55
58
  var _chunk7DNL734Scjs = require('./chunk-7DNL734S.cjs');
56
59
 
57
60
 
58
- var _chunkSHQZN5LFcjs = require('./chunk-SHQZN5LF.cjs');
61
+ var _chunkEX2GYIGWcjs = require('./chunk-EX2GYIGW.cjs');
62
+
59
63
 
60
64
 
61
65
 
@@ -71,7 +75,7 @@ var _chunkSHQZN5LFcjs = require('./chunk-SHQZN5LF.cjs');
71
75
 
72
76
 
73
77
 
74
- var _chunkRH3AKULVcjs = require('./chunk-RH3AKULV.cjs');
78
+ var _chunkEJOXXJJBcjs = require('./chunk-EJOXXJJB.cjs');
75
79
 
76
80
 
77
81
  var _chunkFTTLBMHUcjs = require('./chunk-FTTLBMHU.cjs');
@@ -98,8 +102,8 @@ var _chunk3ATAYP36cjs = require('./chunk-3ATAYP36.cjs');
98
102
  // src/components/shared/product-release/product-releases-view.tsx
99
103
  var _jsxruntime = require('react/jsx-runtime');
100
104
  var DEFAULT_ENDPOINT = "/api/releases";
101
- var DEFAULT_SEARCH_PARAM_KEY = _chunkF7STMHT7cjs.DEV_SECTION_PARAM_KEYS.search;
102
- var DEFAULT_STATUS_PARAM_KEY = _chunkF7STMHT7cjs.DEV_SECTION_PARAM_KEYS.releaseStatus;
105
+ var DEFAULT_SEARCH_PARAM_KEY = _chunk4FJZ7RJDcjs.DEV_SECTION_PARAM_KEYS.search;
106
+ var DEFAULT_STATUS_PARAM_KEY = _chunk4FJZ7RJDcjs.DEV_SECTION_PARAM_KEYS.releaseStatus;
103
107
  var DEFAULT_PAGE_PARAM_KEY = "page";
104
108
  function ReleaseRow({
105
109
  release,
@@ -108,17 +112,17 @@ function ReleaseRow({
108
112
  }) {
109
113
  const runtime = _chunkUJ7AXHRZcjs.useChatRuntime.call(void 0, );
110
114
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
111
- const cta = _chunkF7STMHT7cjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _2 => _2.composeContentUrl]), {
115
+ const cta = _chunk4FJZ7RJDcjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _2 => _2.composeContentUrl]), {
112
116
  type: "product_release",
113
117
  slug: release.slug,
114
118
  basePath,
115
119
  platforms: release.product_release_platforms
116
120
  });
117
- const { target, rel } = _chunkRH3AKULVcjs.useEntityCardLink.call(void 0, { href: cta.href, targetPlatform: cta.targetPlatform });
121
+ const { target, rel } = _chunkEJOXXJJBcjs.useEntityCardLink.call(void 0, { href: cta.href, targetPlatform: cta.targetPlatform });
118
122
  const onClick = (e) => {
119
- if (e.defaultPrevented || _chunkJDXQ6T5Pcjs.isModifierClick.call(void 0, e) || target === "_blank") return;
123
+ if (e.defaultPrevented || _chunkEJOXXJJBcjs.isModifierClick.call(void 0, e) || target === "_blank") return;
120
124
  e.preventDefault();
121
- _chunkJDXQ6T5Pcjs.executeNavigationImperative.call(void 0, {
125
+ _chunkVL4JKXU2cjs.executeNavigationImperative.call(void 0, {
122
126
  runtime,
123
127
  href: cta.href,
124
128
  targetPlatform: cta.targetPlatform,
@@ -126,7 +130,7 @@ function ReleaseRow({
126
130
  });
127
131
  };
128
132
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
129
- _chunkRH3AKULVcjs.ProductReleaseCard,
133
+ _chunkEJOXXJJBcjs.ProductReleaseCard,
130
134
  {
131
135
  size: "lg",
132
136
  title: release.title,
@@ -142,7 +146,7 @@ function ProductReleasesView({
142
146
  initialData,
143
147
  itemsPerPage = 5,
144
148
  basePath = "/releases",
145
- buildCardProps = _chunkRH3AKULVcjs.buildProductReleaseCardProps,
149
+ buildCardProps = _chunkEJOXXJJBcjs.buildProductReleaseCardProps,
146
150
  searchParamKey = DEFAULT_SEARCH_PARAM_KEY,
147
151
  statusParamKey = DEFAULT_STATUS_PARAM_KEY,
148
152
  pageParamKey = DEFAULT_PAGE_PARAM_KEY,
@@ -158,7 +162,7 @@ function ProductReleasesView({
158
162
  const listParams = new URLSearchParams({ limit: String(itemsPerPage), offset: String(offset) });
159
163
  if (search) listParams.set(searchParamKey, search);
160
164
  if (status && status !== "all") listParams.set(statusParamKey, status);
161
- const { data, isLoading, error, reload } = _chunkSHQZN5LFcjs.useSelfFetch.call(void 0,
165
+ const { data, isLoading, error, reload } = _chunkEX2GYIGWcjs.useSelfFetch.call(void 0,
162
166
  `${endpoint}?${listParams.toString()}`,
163
167
  { initialData }
164
168
  );
@@ -180,10 +184,10 @@ function ProductReleasesView({
180
184
  router.replace(`${pathname}?${params.toString()}`, { scroll: false });
181
185
  };
182
186
  if (error) {
183
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "w-full", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk36CCUJOEcjs.LoadError, { message: "Failed to load releases.", onRetry: reload }) });
187
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "w-full", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE2JCZU36cjs.LoadError, { message: "Failed to load releases.", onRetry: reload }) });
184
188
  }
185
189
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex w-full flex-col gap-[40px]", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[600px]", children: showEmpty ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[600px] items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
186
- _chunkEQ7OOK4Bcjs.ListEmptyState,
190
+ _chunk4RMLAHU2cjs.ListEmptyState,
187
191
  {
188
192
  isFiltered: hasActiveFilters,
189
193
  filtered: {
@@ -202,13 +206,13 @@ function ProductReleasesView({
202
206
  "div",
203
207
  {
204
208
  style: { visibility: isLoading || hasData ? "visible" : "hidden" },
205
- children: isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRH3AKULVcjs.ProductReleaseCardSkeleton, { size: "lg" }) : release ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ReleaseRow, { release, basePath, buildCardProps }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRH3AKULVcjs.ProductReleaseCardSkeleton, { size: "lg" })
209
+ children: isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEJOXXJJBcjs.ProductReleaseCardSkeleton, { size: "lg" }) : release ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ReleaseRow, { release, basePath, buildCardProps }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEJOXXJJBcjs.ProductReleaseCardSkeleton, { size: "lg" })
206
210
  },
207
211
  _nullishCoalesce(_optionalChain([release, 'optionalAccess', _5 => _5.id]), () => ( `slot-${i}`))
208
212
  );
209
213
  }) }),
210
214
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mt-6 flex justify-center content-md:mt-8", children: isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "m-3 h-12 w-64" }) : releases.length > 0 && totalPages > 1 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
211
- _chunkHBUUCLQMcjs.PersistentPaginationWrapper,
215
+ _chunkL535OD7Vcjs.PersistentPaginationWrapper,
212
216
  {
213
217
  isLoading: false,
214
218
  currentPage,
@@ -260,10 +264,10 @@ function MediaGalleryStrip({ items, className }) {
260
264
  mediaItem.id || index
261
265
  );
262
266
  }
263
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: tileClass, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRH3AKULVcjs.Video, { url: mediaItem.media_url, layout: "native" }) }, mediaItem.id || index);
267
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: tileClass, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEJOXXJJBcjs.Video, { url: mediaItem.media_url, layout: "native" }) }, mediaItem.id || index);
264
268
  }) }),
265
269
  galleryImages.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
266
- _chunkRH3AKULVcjs.ImageGalleryModal,
270
+ _chunkEJOXXJJBcjs.ImageGalleryModal,
267
271
  {
268
272
  images: galleryImages,
269
273
  isOpen: galleryOpen,
@@ -278,7 +282,7 @@ function MediaGalleryStrip({ items, className }) {
278
282
  var _lucidereact = require('lucide-react');
279
283
 
280
284
 
281
- var DefaultMarkdownRenderer = _chunk36CCUJOEcjs.RichMarkdownRenderer;
285
+ var DefaultMarkdownRenderer = _chunkE2JCZU36cjs.RichMarkdownRenderer;
282
286
  var DEFAULT_ENDPOINT2 = "/api/releases";
283
287
  function ReleaseDetailPage({
284
288
  authorHref,
@@ -296,14 +300,14 @@ function ReleaseDetailPage({
296
300
  shell = true
297
301
  }) {
298
302
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
299
- const captions = _chunkJDXQ6T5Pcjs.useCaptions.call(void 0, );
300
- const renderShell = (node) => shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk36CCUJOEcjs.PageShell, { children: node }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: node });
303
+ const captions = _chunkVL4JKXU2cjs.useCaptions.call(void 0, );
304
+ const renderShell = (node) => shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE2JCZU36cjs.PageShell, { children: node }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: node });
301
305
  const seed = initialData == null ? void 0 : initialData;
302
306
  const {
303
307
  data: release,
304
308
  isLoading,
305
309
  error
306
- } = _chunkSHQZN5LFcjs.useSelfFetch.call(void 0, slug ? `${endpoint}/${encodeURIComponent(slug)}` : null, {
310
+ } = _chunkEX2GYIGWcjs.useSelfFetch.call(void 0, slug ? `${endpoint}/${encodeURIComponent(slug)}` : null, {
307
311
  initialData: seed
308
312
  });
309
313
  const showBackButton = backButton !== false;
@@ -356,7 +360,7 @@ function ReleaseDetailPage({
356
360
  return renderShell(
357
361
  // Match the loaded page's top offset (TitleBlock's
358
362
  // `pt-[var(--spacing-system-l)]`) so content doesn't jump on load.
359
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-[var(--spacing-system-l)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHLBFTDULcjs.DetailPageSkeleton, { bare: true, metadataColumns: 4, showImageGallery: true }) })
363
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-[var(--spacing-system-l)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVRNNIV5Ycjs.DetailPageSkeleton, { bare: true, metadataColumns: 4, showImageGallery: true }) })
360
364
  );
361
365
  }
362
366
  if (error || !release) {
@@ -404,7 +408,7 @@ function ReleaseDetailPage({
404
408
  backButton: showBackButton ? { label: backLabel, onClick: () => router.push(backHref) } : void 0,
405
409
  children: [
406
410
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-6 content-md:space-y-8", children: [
407
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk36CCUJOEcjs.EntityTagBadges, { tags: release.product_release_tags }),
411
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE2JCZU36cjs.EntityTagBadges, { tags: release.product_release_tags }),
408
412
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid w-full grid-cols-1 overflow-hidden rounded-md border border-ods-border content-md:grid-cols-4", children: [
409
413
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-col gap-3 border-b border-ods-border bg-ods-card p-4 content-md:border-b-0 content-md:border-r", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-0", children: [
410
414
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: releaseType.toLocaleUpperCase() }),
@@ -415,11 +419,11 @@ function ReleaseDetailPage({
415
419
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: "Release Status" })
416
420
  ] }) }),
417
421
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-col gap-3 border-b border-ods-border bg-ods-card p-4 content-md:border-b-0 content-md:border-r", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-0", children: [
418
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: _chunkRH3AKULVcjs.formatReleaseDate.call(void 0, releaseDate) }),
422
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: _chunkEJOXXJJBcjs.formatReleaseDate.call(void 0, releaseDate) }),
419
423
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: "Release Date" })
420
424
  ] }) }),
421
425
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
422
- _chunkRH3AKULVcjs.EntityMetadataAuthorCell,
426
+ _chunkEJOXXJJBcjs.EntityMetadataAuthorCell,
423
427
  {
424
428
  author: _nullishCoalesce(author, () => ( { full_name: null, avatar_url: null })),
425
429
  authorHref: _optionalChain([author, 'optionalAccess', _7 => _7.full_name]) ? authorHref : void 0
@@ -437,18 +441,18 @@ function ReleaseDetailPage({
437
441
  highlightVideoThumbnail,
438
442
  title: releaseTitle,
439
443
  videoBites,
440
- bitesTitle: _chunkRH3AKULVcjs.DEFAULT_VIDEO_BITES_TITLE,
444
+ bitesTitle: _chunkEJOXXJJBcjs.DEFAULT_VIDEO_BITES_TITLE,
441
445
  filterPublishedBites: true,
442
- bitesProfile: _chunkRH3AKULVcjs.toStripProfile.call(void 0, author),
446
+ bitesProfile: _chunkEJOXXJJBcjs.toStripProfile.call(void 0, author),
443
447
  bitesHref: typeof release.slug === "string" ? `/releases/${release.slug}` : void 0,
444
448
  captionsUrl,
445
449
  highlightCaptionsUrl
446
450
  }
447
451
  ) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
448
- youtubeUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRH3AKULVcjs.Video, { kind: "youtube", url: youtubeUrl, title: `${releaseTitle} - Video`, layout: "native" }),
449
- !youtubeUrl && mainVideoUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRH3AKULVcjs.Video, { url: mainVideoUrl, captionsUrl, layout: "centered" }),
452
+ youtubeUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEJOXXJJBcjs.Video, { kind: "youtube", url: youtubeUrl, title: `${releaseTitle} - Video`, layout: "native" }),
453
+ !youtubeUrl && mainVideoUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEJOXXJJBcjs.Video, { url: mainVideoUrl, captionsUrl, layout: "centered" }),
450
454
  highlightVideoUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
451
- _chunkRH3AKULVcjs.Video,
455
+ _chunkEJOXXJJBcjs.Video,
452
456
  {
453
457
  url: highlightVideoUrl,
454
458
  poster: highlightVideoThumbnail,
@@ -458,7 +462,7 @@ function ReleaseDetailPage({
458
462
  )
459
463
  ] }),
460
464
  releaseContent && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "text-ods-text-primary text-h4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MarkdownRenderer, { content: releaseContent }) }),
461
- hasBreakingChanges && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRH3AKULVcjs.Card, { className: "border-ods-error bg-ods-error/10", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRH3AKULVcjs.CardContent, { className: "p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
465
+ hasBreakingChanges && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEJOXXJJBcjs.Card, { className: "border-ods-error bg-ods-error/10", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEJOXXJJBcjs.CardContent, { className: "p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
462
466
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.AlertTriangle, { className: "h-6 w-6 text-ods-error" }),
463
467
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { children: [
464
468
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-ods-error text-h3", children: "Breaking Changes" }),
@@ -466,7 +470,7 @@ function ReleaseDetailPage({
466
470
  ] })
467
471
  ] }) }) }),
468
472
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
469
- _chunk36CCUJOEcjs.ReleaseChangelogSection,
473
+ _chunkE2JCZU36cjs.ReleaseChangelogSection,
470
474
  {
471
475
  title: "Breaking Changes",
472
476
  entries: breakingChanges || [],
@@ -477,7 +481,7 @@ function ReleaseDetailPage({
477
481
  }
478
482
  ),
479
483
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
480
- _chunk36CCUJOEcjs.ReleaseChangelogSection,
484
+ _chunkE2JCZU36cjs.ReleaseChangelogSection,
481
485
  {
482
486
  title: "Features Added",
483
487
  entries: featuresAdded || [],
@@ -487,7 +491,7 @@ function ReleaseDetailPage({
487
491
  }
488
492
  ),
489
493
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
490
- _chunk36CCUJOEcjs.ReleaseChangelogSection,
494
+ _chunkE2JCZU36cjs.ReleaseChangelogSection,
491
495
  {
492
496
  title: "Bugs Fixed",
493
497
  entries: bugFixed || [],
@@ -497,7 +501,7 @@ function ReleaseDetailPage({
497
501
  }
498
502
  ),
499
503
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
500
- _chunk36CCUJOEcjs.ReleaseChangelogSection,
504
+ _chunkE2JCZU36cjs.ReleaseChangelogSection,
501
505
  {
502
506
  title: "Improvements",
503
507
  entries: improvements || [],
@@ -523,12 +527,12 @@ function ReleaseDetailPage({
523
527
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "tracking-[-0.28px] text-ods-text-secondary text-h5", children: "Related Enhancements and Bug-fixes" }),
524
528
  (() => {
525
529
  const deliveryCount = deliveryData ? deliveryData.completed.length + deliveryData.inProgress.length : 0;
526
- return deliveryLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeliverySection, { data: deliveryData, isLoading: deliveryLoading }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk36CCUJOEcjs.FadePreview, { hiddenCount: deliveryCount - 1, collapsedHeight: 300, resetKey: deliveryCount, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeliverySection, { data: deliveryData, isLoading: false }) }) });
530
+ return deliveryLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeliverySection, { data: deliveryData, isLoading: deliveryLoading }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE2JCZU36cjs.FadePreview, { hiddenCount: deliveryCount - 1, collapsedHeight: 300, resetKey: deliveryCount, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "space-y-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeliverySection, { data: deliveryData, isLoading: false }) }) });
527
531
  })()
528
532
  ] }),
529
533
  (_optionalChain([githubReleases, 'optionalAccess', _8 => _8.length]) || _optionalChain([knowledgeBaseLinks, 'optionalAccess', _9 => _9.length]) || migrationGuideUrl || documentationUrl) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "w-full space-y-1", children: [
530
534
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "tracking-[-0.28px] text-ods-text-secondary text-h5", children: "Related Links" }),
531
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRH3AKULVcjs.Card, { className: "border-ods-border bg-ods-card p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
535
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEJOXXJJBcjs.Card, { className: "border-ods-border bg-ods-card p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
532
536
  githubReleases && githubReleases.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: githubReleases.map((ghRelease) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-start gap-1", children: [
533
537
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEWCFJLNUcjs.GithubClassicIcon, { className: "shrink-0", size: 24, color: "var(--color-text-secondary)" }),
534
538
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary text-h4", children: "Github Release" }),
@@ -602,7 +606,7 @@ function ReleaseDetailPage({
602
606
  // src/components/shared/product-release/release-detail-skeleton.tsx
603
607
 
604
608
  function ReleaseDetailSkeleton() {
605
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHLBFTDULcjs.DetailPageSkeleton, { metadataColumns: 4, showImageGallery: true });
609
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVRNNIV5Ycjs.DetailPageSkeleton, { metadataColumns: 4, showImageGallery: true });
606
610
  }
607
611
 
608
612
  // src/components/shared/roadmap/use-roadmap-voting.ts
@@ -625,7 +629,7 @@ function useRoadmapVoting(options = {}) {
625
629
  const { getSignals } = _chunkVA7OMDZOcjs.useHumanitySignals.call(void 0, );
626
630
  const [votes, setVotes] = _react.useState.call(void 0, NO_VOTES);
627
631
  const [loadedKey, setLoadedKey] = _react.useState.call(void 0, null);
628
- const hydrated = _chunkJDXQ6T5Pcjs.useIsHydrated.call(void 0, );
632
+ const hydrated = _chunkVL4JKXU2cjs.useIsHydrated.call(void 0, );
629
633
  if (hydrated && loadedKey !== storageKey) {
630
634
  setLoadedKey(storageKey);
631
635
  setVotes(readStoredVotes(storageKey));
@@ -774,10 +778,10 @@ function RoadmapGridSingle({
774
778
  // `useScrollToHash` in `roadmap-view.tsx` finds the card by id
775
779
  // and scrolls.
776
780
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
777
- _chunkRH3AKULVcjs.RoadmapCard,
781
+ _chunkEJOXXJJBcjs.RoadmapCard,
778
782
  {
779
783
  item,
780
- id: _chunkF7STMHT7cjs.devSectionAnchorId.call(void 0, "roadmap", item.id),
784
+ id: _chunk4FJZ7RJDcjs.devSectionAnchorId.call(void 0, "roadmap", item.id),
781
785
  userVote: getVote(item.id),
782
786
  onVote: (voteType) => onVote(item.id, voteType),
783
787
  isVoting: votingTasks.has(item.id)
@@ -871,7 +875,7 @@ function RoadmapGrid({
871
875
  }, [hasActiveFilters, sortedQuartersKey, isInitialized, quartersToKeepClosed]);
872
876
  if (items.length === 0) {
873
877
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
874
- _chunkXKB7YGQMcjs.EmptyState,
878
+ _chunk77SD7RXYcjs.EmptyState,
875
879
  {
876
880
  type: "generic",
877
881
  title: "No roadmap items",
@@ -893,7 +897,7 @@ function RoadmapGrid({
893
897
  );
894
898
  }
895
899
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
896
- _chunk36CCUJOEcjs.Accordion,
900
+ _chunkE2JCZU36cjs.Accordion,
897
901
  {
898
902
  type: "multiple",
899
903
  value: expandedQuarters,
@@ -903,13 +907,13 @@ function RoadmapGrid({
903
907
  const itemCount = _optionalChain([itemsByQuarter, 'access', _18 => _18[quarter], 'optionalAccess', _19 => _19.length]) || 0;
904
908
  const isExpanded = expandedQuarters.includes(quarter);
905
909
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
906
- _chunk36CCUJOEcjs.AccordionItem,
910
+ _chunkE2JCZU36cjs.AccordionItem,
907
911
  {
908
912
  value: quarter,
909
913
  id: `quarter-${quarter.replace(/\s+/g, "-").toLowerCase()}`,
910
914
  className: "border-0",
911
915
  children: [
912
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk36CCUJOEcjs.AccordionTrigger, { className: "w-full p-0 hover:no-underline [&>svg]:ml-auto [&>svg]:h-5 [&>svg]:w-5 [&>svg]:shrink-0 [&>svg]:text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
916
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE2JCZU36cjs.AccordionTrigger, { className: "w-full p-0 hover:no-underline [&>svg]:ml-auto [&>svg]:h-5 [&>svg]:w-5 [&>svg]:shrink-0 [&>svg]:text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
913
917
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
914
918
  "h3",
915
919
  {
@@ -939,7 +943,7 @@ function RoadmapGrid({
939
943
  }
940
944
  )
941
945
  ] }) }),
942
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk36CCUJOEcjs.AccordionContent, { className: "overflow-hidden pb-0 pt-4 data-[state=closed]:animate-none data-[state=open]:animate-none", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
946
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE2JCZU36cjs.AccordionContent, { className: "overflow-hidden pb-0 pt-4 data-[state=closed]:animate-none data-[state=open]:animate-none", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
943
947
  RoadmapGridSingle,
944
948
  {
945
949
  items: itemsByQuarter[quarter],
@@ -991,8 +995,8 @@ function RoadmapGridSkeleton({ count = 4, showLeftMargin = true }) {
991
995
 
992
996
 
993
997
  var DEFAULT_ENDPOINT3 = "/api/roadmap";
994
- var DEFAULT_SEARCH_PARAM_KEY2 = _chunkF7STMHT7cjs.DEV_SECTION_PARAM_KEYS.search;
995
- var DEFAULT_STATUS_PARAM_KEY2 = _chunkF7STMHT7cjs.DEV_SECTION_PARAM_KEYS.status;
998
+ var DEFAULT_SEARCH_PARAM_KEY2 = _chunk4FJZ7RJDcjs.DEV_SECTION_PARAM_KEYS.search;
999
+ var DEFAULT_STATUS_PARAM_KEY2 = _chunk4FJZ7RJDcjs.DEV_SECTION_PARAM_KEYS.status;
996
1000
  function RoadmapView({
997
1001
  endpoint = DEFAULT_ENDPOINT3,
998
1002
  initialItems,
@@ -1011,11 +1015,11 @@ function RoadmapView({
1011
1015
  const qs = listParams.toString();
1012
1016
  const url = qs ? `${endpoint}?${qs}` : endpoint;
1013
1017
  const initialData = _react.useMemo.call(void 0, () => initialItems ? { items: initialItems } : void 0, [initialItems]);
1014
- const { data, setData, isLoading, error, reload } = _chunkSHQZN5LFcjs.useSelfFetch.call(void 0, url, { initialData });
1018
+ const { data, setData, isLoading, error, reload } = _chunkEX2GYIGWcjs.useSelfFetch.call(void 0, url, { initialData });
1015
1019
  const items = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _20 => _20.items]), () => ( []));
1016
1020
  _chunkVA7OMDZOcjs.useScrollToHash.call(void 0, data, { headerOffset: _chunkSA7LDEVJcjs.STICKY_HEADER_OFFSET_PX });
1017
1021
  if (error) {
1018
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk36CCUJOEcjs.LoadError, { message: "Failed to load roadmap.", onRetry: reload });
1022
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE2JCZU36cjs.LoadError, { message: "Failed to load roadmap.", onRetry: reload });
1019
1023
  }
1020
1024
  if (isLoading && !data) {
1021
1025
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RoadmapGridSkeleton, { showLeftMargin });
@@ -1057,18 +1061,18 @@ function SkeletonRow() {
1057
1061
  }
1058
1062
  function DeliveryTable({ items, isLoading = false }) {
1059
1063
  if (isLoading) {
1060
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `w-full ${_chunkRH3AKULVcjs.CONTENT_CARD_SKELETON_FRAME_CLASS}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: [1, 2, 3, 4, 5].map((i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SkeletonRow, {}, i)) }) });
1064
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `w-full ${_chunkEJOXXJJBcjs.CONTENT_CARD_SKELETON_FRAME_CLASS}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: [1, 2, 3, 4, 5].map((i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SkeletonRow, {}, i)) }) });
1061
1065
  }
1062
1066
  if (items.length === 0) {
1063
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `w-full ${_chunkRH3AKULVcjs.CONTENT_CARD_SKELETON_FRAME_CLASS} p-[var(--spacing-system-xlf)] text-center`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: "No tasks available" }) });
1067
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `w-full ${_chunkEJOXXJJBcjs.CONTENT_CARD_SKELETON_FRAME_CLASS} p-[var(--spacing-system-xlf)] text-center`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: "No tasks available" }) });
1064
1068
  }
1065
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `w-full ${_chunkRH3AKULVcjs.CONTENT_CARD_SKELETON_FRAME_CLASS}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: items.map((item) => (
1069
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `w-full ${_chunkEJOXXJJBcjs.CONTENT_CARD_SKELETON_FRAME_CLASS}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: items.map((item) => (
1066
1070
  // DOM id lives on DeliveryRow's own outer element (no wrapper
1067
1071
  // div). Anchor mirrors `buildDevSectionUrl('delivery', <id>)`
1068
1072
  // → `#delivery-<external_id>`; `useScrollToHash` in
1069
1073
  // `delivery-lists.tsx` finds the row by id and scrolls. The
1070
1074
  // outer wrapper here ONLY exists for the row separators.
1071
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border last:border-b-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEQ7OOK4Bcjs.DeliveryRow, { item, id: _chunkF7STMHT7cjs.devSectionAnchorId.call(void 0, "delivery", item.id) }) }, item.id)
1075
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border last:border-b-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4RMLAHU2cjs.DeliveryRow, { item, id: _chunk4FJZ7RJDcjs.devSectionAnchorId.call(void 0, "delivery", item.id) }) }, item.id)
1072
1076
  )) }) });
1073
1077
  }
1074
1078
 
@@ -1077,8 +1081,8 @@ function DeliveryTable({ items, isLoading = false }) {
1077
1081
 
1078
1082
  var DEFAULT_COMPLETED_ENDPOINT = "/api/delivery/completed";
1079
1083
  var DEFAULT_IN_PROGRESS_ENDPOINT = "/api/delivery/in-progress";
1080
- var DEFAULT_SEARCH_PARAM_KEY3 = _chunkF7STMHT7cjs.DEV_SECTION_PARAM_KEYS.search;
1081
- var DEFAULT_TASK_TYPE_PARAM_KEY = _chunkF7STMHT7cjs.DEV_SECTION_PARAM_KEYS.deliveryTaskType;
1084
+ var DEFAULT_SEARCH_PARAM_KEY3 = _chunk4FJZ7RJDcjs.DEV_SECTION_PARAM_KEYS.search;
1085
+ var DEFAULT_TASK_TYPE_PARAM_KEY = _chunk4FJZ7RJDcjs.DEV_SECTION_PARAM_KEYS.deliveryTaskType;
1082
1086
  function DeliveryLists({
1083
1087
  completedApiEndpoint = DEFAULT_COMPLETED_ENDPOINT,
1084
1088
  inProgressApiEndpoint = DEFAULT_IN_PROGRESS_ENDPOINT,
@@ -1145,11 +1149,11 @@ function DeliveryLists({
1145
1149
  const hasActiveFilters = searchQuery !== "" || taskTypeFilter !== "all";
1146
1150
  const hasResults = showCompleted && filteredCompleted.length > 0 || showInProgress && filteredInProgress.length > 0;
1147
1151
  if (error) {
1148
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk36CCUJOEcjs.LoadError, { message: error, onRetry: () => window.location.reload() }) });
1152
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE2JCZU36cjs.LoadError, { message: error, onRetry: () => window.location.reload() }) });
1149
1153
  }
1150
1154
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[40px]", children: [
1151
1155
  !isLoading && !hasResults && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1152
- _chunkEQ7OOK4Bcjs.ListEmptyState,
1156
+ _chunk4RMLAHU2cjs.ListEmptyState,
1153
1157
  {
1154
1158
  isFiltered: hasActiveFilters,
1155
1159
  filtered: {
@@ -1303,8 +1307,9 @@ function LegalDocumentPage({
1303
1307
  initialData = null,
1304
1308
  initialLastUpdatedLabel = null,
1305
1309
  apiEndpoint,
1306
- MarkdownRenderer = _chunk36CCUJOEcjs.RichMarkdownRenderer,
1310
+ MarkdownRenderer = _chunkE2JCZU36cjs.RichMarkdownRenderer,
1307
1311
  backButton,
1312
+ faq,
1308
1313
  shell = true
1309
1314
  }) {
1310
1315
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
@@ -1354,9 +1359,10 @@ function LegalDocumentPage({
1354
1359
  " ",
1355
1360
  "for more information."
1356
1361
  ] })
1357
- ] }) }) }) }) })
1362
+ ] }) }) }) }) }),
1363
+ faq && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkURIJ6YUGcjs.FaqSection, { ..._chunkURIJ6YUGcjs.pageFaqProps.call(void 0, faq) })
1358
1364
  ] });
1359
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk36CCUJOEcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
1365
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE2JCZU36cjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
1360
1366
  }
1361
1367
 
1362
1368
 
@@ -1,7 +1,11 @@
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 _chunkXKB7YGQMcjs = require('./chunk-XKB7YGQM.cjs');
4
+ var _chunk77SD7RXYcjs = require('./chunk-77SD7RXY.cjs');
5
+
6
+
7
+
8
+ var _chunkURIJ6YUGcjs = require('./chunk-URIJ6YUG.cjs');
5
9
 
6
10
 
7
11
 
@@ -10,13 +14,13 @@ var _chunkHEVW75L3cjs = require('./chunk-HEVW75L3.cjs');
10
14
 
11
15
 
12
16
 
13
- var _chunk36CCUJOEcjs = require('./chunk-36CCUJOE.cjs');
17
+ var _chunkE2JCZU36cjs = require('./chunk-E2JCZU36.cjs');
14
18
 
15
19
 
16
20
  var _chunkL4ZNR5V7cjs = require('./chunk-L4ZNR5V7.cjs');
17
21
 
18
22
 
19
- var _chunkF7STMHT7cjs = require('./chunk-F7STMHT7.cjs');
23
+ var _chunk4FJZ7RJDcjs = require('./chunk-4FJZ7RJD.cjs');
20
24
 
21
25
 
22
26
 
@@ -25,7 +29,7 @@ var _chunk7DNL734Scjs = require('./chunk-7DNL734S.cjs');
25
29
 
26
30
 
27
31
 
28
- var _chunkRH3AKULVcjs = require('./chunk-RH3AKULV.cjs');
32
+ var _chunkEJOXXJJBcjs = require('./chunk-EJOXXJJB.cjs');
29
33
 
30
34
 
31
35
  var _chunkMYBTNOS6cjs = require('./chunk-MYBTNOS6.cjs');
@@ -41,7 +45,7 @@ var _jsxruntime = require('react/jsx-runtime');
41
45
  function ListEmptyState({ isFiltered, filtered, onClearFilters, empty }) {
42
46
  if (isFiltered) {
43
47
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44
- _chunkXKB7YGQMcjs.EmptyState,
48
+ _chunk77SD7RXYcjs.EmptyState,
45
49
  {
46
50
  type: "search",
47
51
  title: filtered.title,
@@ -54,7 +58,7 @@ function ListEmptyState({ isFiltered, filtered, onClearFilters, empty }) {
54
58
  }
55
59
  const hasCta = Boolean(empty.ctaText && (empty.onCtaClick || empty.ctaHref));
56
60
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
57
- _chunkXKB7YGQMcjs.EmptyState,
61
+ _chunk77SD7RXYcjs.EmptyState,
58
62
  {
59
63
  type: "generic",
60
64
  title: empty.title,
@@ -71,7 +75,7 @@ function ListEmptyState({ isFiltered, filtered, onClearFilters, empty }) {
71
75
  var _react = require('react');
72
76
 
73
77
  function DevSectionView({ sectionKey, hero, preControls, children, showHeading = true }) {
74
- const section = _chunkF7STMHT7cjs.OPENFRAME_DEV_SECTIONS[sectionKey];
78
+ const section = _chunk4FJZ7RJDcjs.OPENFRAME_DEV_SECTIONS[sectionKey];
75
79
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
76
80
  const pathname = _chunk7DNL734Scjs.usePathname.call(void 0, );
77
81
  const searchParams = _chunk7DNL734Scjs.useSearchParams.call(void 0, );
@@ -122,7 +126,7 @@ function DevSectionView({ sectionKey, hero, preControls, children, showHeading =
122
126
  preControls,
123
127
  (search || filter) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
124
128
  search && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
125
- _chunk36CCUJOEcjs.SearchInput,
129
+ _chunkE2JCZU36cjs.SearchInput,
126
130
  {
127
131
  showDropdown: false,
128
132
  placeholder: search.placeholder,
@@ -132,7 +136,7 @@ function DevSectionView({ sectionKey, hero, preControls, children, showHeading =
132
136
  }
133
137
  ),
134
138
  filter && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
135
- _chunk36CCUJOEcjs.StatusFilterComponent,
139
+ _chunkE2JCZU36cjs.StatusFilterComponent,
136
140
  {
137
141
  selectedStatus: currentFilterValue,
138
142
  onStatusChange: handleFilterChange,
@@ -153,10 +157,11 @@ function DevSectionPage({
153
157
  backButton,
154
158
  title,
155
159
  subtitle,
160
+ faq,
156
161
  shell = true
157
162
  }) {
158
163
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
159
- const section = _chunkF7STMHT7cjs.OPENFRAME_DEV_SECTIONS[sectionKey];
164
+ const section = _chunk4FJZ7RJDcjs.OPENFRAME_DEV_SECTIONS[sectionKey];
160
165
  const backCfg = backButton === false ? void 0 : {
161
166
  label: _nullishCoalesce((backButton ? backButton.label : void 0), () => ( "Back to home")),
162
167
  onClick: () => router.push(_nullishCoalesce((backButton ? backButton.href : void 0), () => ( "/")))
@@ -168,7 +173,7 @@ function DevSectionPage({
168
173
  // renders ONLY its search + filter controls (`showHeading={false}`), no
169
174
  // duplicate title. (The hero icon is intentionally dropped: TitleBlock is
170
175
  // frozen and renders title-only.)
171
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
176
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
172
177
  _chunkL4ZNR5V7cjs.PageLayout,
173
178
  {
174
179
  title: _nullishCoalesce(title, () => ( section.hero.title)),
@@ -176,11 +181,14 @@ function DevSectionPage({
176
181
  titleSize: "h1",
177
182
  titleWrap: true,
178
183
  backButton: backCfg,
179
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DevSectionView, { sectionKey, showHeading: false, preControls, children })
184
+ children: [
185
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DevSectionView, { sectionKey, showHeading: false, preControls, children }),
186
+ faq && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkURIJ6YUGcjs.FaqSection, { ..._chunkURIJ6YUGcjs.pageFaqProps.call(void 0, faq) })
187
+ ]
180
188
  }
181
189
  )
182
190
  );
183
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk36CCUJOEcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
191
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkE2JCZU36cjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
184
192
  }
185
193
 
186
194
  // src/components/shared/dev-section/dev-card-row.tsx
@@ -240,7 +248,7 @@ function DeliveryRow({ item, href, target, caption, id, className }) {
240
248
  const taskType = item.taskType;
241
249
  const typeBadgeLabel = _chunkHEVW75L3cjs.TASK_TYPE_LABELS[taskType] || "TASK";
242
250
  const typeBadgeTextColor = _chunkHEVW75L3cjs.TASK_TYPE_TEXT_COLORS[taskType] || "";
243
- const statusBadgeScheme = _chunkRH3AKULVcjs.getStatusColorScheme.call(void 0, item.status);
251
+ const statusBadgeScheme = _chunkEJOXXJJBcjs.getStatusColorScheme.call(void 0, item.status);
244
252
  const relativeTime = getRelativeTime(item.dateUpdated);
245
253
  const subtitle = `ACTIVE ${relativeTime}${item.listNames.length > 0 ? `, ${item.listNames.join(", ")}` : ""}, ${item.id}`;
246
254
  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: [
@@ -252,7 +260,7 @@ function DeliveryRow({ item, href, target, caption, id, className }) {
252
260
  ] }),
253
261
  /* @__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: [
254
262
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
255
- _chunkRH3AKULVcjs.StatusBadge,
263
+ _chunkEJOXXJJBcjs.StatusBadge,
256
264
  {
257
265
  text: item.status.toUpperCase(),
258
266
  colorScheme: statusBadgeScheme,
@@ -261,7 +269,7 @@ function DeliveryRow({ item, href, target, caption, id, className }) {
261
269
  }
262
270
  ),
263
271
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
264
- _chunkRH3AKULVcjs.StatusBadge,
272
+ _chunkEJOXXJJBcjs.StatusBadge,
265
273
  {
266
274
  text: typeBadgeLabel,
267
275
  variant: "card",