@flamingo-stack/openframe-frontend-core 0.0.723 → 0.0.725

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/{chunk-2VOPQJNR.js → chunk-2MMZTACD.js} +2 -2
  2. package/dist/{chunk-OHC2MPUO.cjs → chunk-2SO3OJFY.cjs} +35 -35
  3. package/dist/{chunk-YQOJOW2Z.cjs → chunk-2VOZ37BL.cjs} +64 -64
  4. package/dist/{chunk-WSMOTZRJ.cjs → chunk-4ZZ4TNCY.cjs} +11 -11
  5. package/dist/{chunk-YUSA7IPD.js → chunk-5FVWDDX6.js} +3 -3
  6. package/dist/{chunk-PKS2QQJU.js → chunk-6EFNWQRY.js} +2 -1
  7. package/dist/{chunk-NESUUHPV.cjs → chunk-772242QR.cjs} +76 -76
  8. package/dist/{chunk-3RIKO2O2.cjs → chunk-7V5KFBY2.cjs} +31 -31
  9. package/dist/{chunk-MWLVYYRX.cjs → chunk-AI3CLDZO.cjs} +2580 -2120
  10. package/dist/{chunk-YGIUWQEN.js → chunk-ASHRHL4W.js} +7 -7
  11. package/dist/{chunk-A7JPMNHF.js → chunk-ASIXPRHV.js} +6 -6
  12. package/dist/{chunk-7JXCLUU7.js → chunk-AX4F35C2.js} +2 -2
  13. package/dist/{chunk-TDSLKKX7.cjs → chunk-B7234BE2.cjs} +16 -16
  14. package/dist/{chunk-SBCJFJ6Q.js → chunk-F56GNKX2.js} +4 -4
  15. package/dist/{chunk-VIFVSFYY.js → chunk-F77J34W2.js} +1 -1
  16. package/dist/{chunk-JENNI7XU.cjs → chunk-HEQ4GPYE.cjs} +5 -4
  17. package/dist/{chunk-LV6UJD2K.cjs → chunk-IITB5TJR.cjs} +10 -2
  18. package/dist/{chunk-WVA7SCLY.js → chunk-IOTAUWWF.js} +1 -1
  19. package/dist/{chunk-OVG6MV3X.js → chunk-JAKG6BY7.js} +6 -6
  20. package/dist/{chunk-F6JAGSKV.js → chunk-JVHP7Y4S.js} +5 -5
  21. package/dist/{chunk-WY4SLTMZ.js → chunk-JXJFUGJY.js} +1 -1
  22. package/dist/{chunk-GYUFKNOQ.cjs → chunk-KLCOSY7B.cjs} +4 -4
  23. package/dist/{chunk-P7MDECYI.cjs → chunk-KNLRL63O.cjs} +41 -41
  24. package/dist/{chunk-VGXAZEQP.cjs → chunk-LR6DJY4Z.cjs} +17 -17
  25. package/dist/{chunk-KSADTFNZ.cjs → chunk-LYQYLPPV.cjs} +32 -32
  26. package/dist/{chunk-QBXEF7D5.js → chunk-MGTZ2BKY.js} +4 -4
  27. package/dist/{chunk-IIBTYCEN.js → chunk-MLFS5G3V.js} +89 -14
  28. package/dist/{chunk-GRDJR2Q7.js → chunk-MSPXMSMY.js} +1 -1
  29. package/dist/{chunk-FDWYBJYD.cjs → chunk-NJV3LIDE.cjs} +3 -3
  30. package/dist/{chunk-JL7AHSFE.js → chunk-OBMWSUBK.js} +6 -6
  31. package/dist/{chunk-N4VCU6XP.js → chunk-PUADVXJD.js} +1 -1
  32. package/dist/{chunk-KY4WQYYG.cjs → chunk-QV4GO3GW.cjs} +19 -19
  33. package/dist/{chunk-OWRD2GZU.cjs → chunk-RU6BTELI.cjs} +687 -612
  34. package/dist/{chunk-Y5H3M7OM.cjs → chunk-SE4O4HCD.cjs} +23 -23
  35. package/dist/{chunk-2MC4DRSC.cjs → chunk-SEVKFMKR.cjs} +3 -3
  36. package/dist/{chunk-UYMTAFHG.js → chunk-TU5LEF6A.js} +1 -1
  37. package/dist/{chunk-NFABAOMD.cjs → chunk-U6LRRG2E.cjs} +15 -15
  38. package/dist/{chunk-G6YNPBWV.js → chunk-W2DXHR2R.js} +3045 -2585
  39. package/dist/{chunk-KSZRALRL.cjs → chunk-YPEILGVZ.cjs} +3 -3
  40. package/dist/{chunk-EWED6ISQ.js → chunk-YQDKVGKO.js} +9 -1
  41. package/dist/{chunk-6QTGLBJH.cjs → chunk-ZSXZE4FJ.cjs} +3 -3
  42. package/dist/{chunk-XTG7W75B.js → chunk-ZZRUKEN2.js} +4 -4
  43. package/dist/{cloud-tenants-3TVX7U23.cjs → cloud-tenants-SMULXU54.cjs} +7 -7
  44. package/dist/{cloud-tenants-N6KV2T7X.js → cloud-tenants-US63E2HV.js} +6 -6
  45. package/dist/components/case-studies/index.cjs +20 -20
  46. package/dist/components/case-studies/index.js +7 -7
  47. package/dist/components/chat/entity-cards/dispatch.d.ts.map +1 -1
  48. package/dist/components/chat/index.cjs +5 -5
  49. package/dist/components/chat/index.js +4 -4
  50. package/dist/components/chat/utils/icon-library.d.ts +2 -0
  51. package/dist/components/chat/utils/icon-library.d.ts.map +1 -1
  52. package/dist/components/contact/index.cjs +8 -8
  53. package/dist/components/contact/index.js +7 -7
  54. package/dist/components/docs/index.cjs +11 -11
  55. package/dist/components/docs/index.js +10 -10
  56. package/dist/components/embeds/index.cjs +8 -8
  57. package/dist/components/embeds/index.js +7 -7
  58. package/dist/components/faq/index.cjs +8 -8
  59. package/dist/components/faq/index.js +7 -7
  60. package/dist/components/features/index.cjs +23 -7
  61. package/dist/components/features/index.d.ts +1 -0
  62. package/dist/components/features/index.d.ts.map +1 -1
  63. package/dist/components/features/index.js +22 -6
  64. package/dist/components/features/model-token-rates.d.ts +179 -0
  65. package/dist/components/features/model-token-rates.d.ts.map +1 -0
  66. package/dist/components/help-center-pages/index.cjs +106 -106
  67. package/dist/components/help-center-pages/index.js +18 -18
  68. package/dist/components/index.cjs +71 -55
  69. package/dist/components/index.js +34 -18
  70. package/dist/components/meeting-scheduler/index.cjs +32 -32
  71. package/dist/components/meeting-scheduler/index.js +6 -6
  72. package/dist/components/navigation/index.cjs +10 -10
  73. package/dist/components/navigation/index.js +9 -9
  74. package/dist/components/onboarding-guides/index.cjs +10 -10
  75. package/dist/components/onboarding-guides/index.js +9 -9
  76. package/dist/components/product-demo/index.cjs +7 -7
  77. package/dist/components/product-demo/index.js +7 -7
  78. package/dist/components/related-content/index.cjs +4 -4
  79. package/dist/components/related-content/index.js +3 -3
  80. package/dist/components/tickets/index.cjs +11 -11
  81. package/dist/components/tickets/index.js +10 -10
  82. package/dist/components/ui/index.cjs +7 -7
  83. package/dist/components/ui/index.js +6 -6
  84. package/dist/{devices-MAALZ7DX.cjs → devices-6ZURNFRB.cjs} +8 -8
  85. package/dist/{devices-275UZZUS.js → devices-JWHGWKLK.js} +6 -6
  86. package/dist/index.cjs +45 -11
  87. package/dist/index.js +44 -10
  88. package/dist/{knowledge-YMMULPPK.cjs → knowledge-CY66JZ54.cjs} +8 -8
  89. package/dist/{knowledge-THXC2KC3.js → knowledge-TEDPLCFX.js} +6 -6
  90. package/dist/{logs-IBUKQOHS.cjs → logs-MO357RE7.cjs} +15 -15
  91. package/dist/{logs-GM2XBHYT.js → logs-S46THPPD.js} +6 -6
  92. package/dist/{policies-NKMRK6RR.js → policies-BUXT7DKF.js} +6 -6
  93. package/dist/{policies-J5GJXD6G.cjs → policies-GSH4K5YP.cjs} +11 -11
  94. package/dist/{remote-session-Z2YCUPHU.cjs → remote-session-CSX6ESSG.cjs} +5 -5
  95. package/dist/{remote-session-WCLR47RN.js → remote-session-ZBCWD5A5.js} +3 -3
  96. package/dist/{software-update-JHC4T4SE.cjs → software-update-2ETT35NM.cjs} +11 -11
  97. package/dist/{software-update-EKKMKDWI.js → software-update-YKS6KLX2.js} +6 -6
  98. package/dist/utils/ai-providers.d.ts +29 -0
  99. package/dist/utils/ai-providers.d.ts.map +1 -0
  100. package/dist/utils/index.cjs +76 -2
  101. package/dist/utils/index.d.ts +2 -0
  102. package/dist/utils/index.d.ts.map +1 -1
  103. package/dist/utils/index.js +68 -3
  104. package/dist/utils/list-url.d.ts.map +1 -1
  105. package/dist/utils/model-token-rates.d.ts +55 -0
  106. package/dist/utils/model-token-rates.d.ts.map +1 -0
  107. package/dist/utils/source-icons.d.ts.map +1 -1
  108. package/package.json +1 -1
  109. package/src/components/chat/entity-cards/dispatch.tsx +3 -0
  110. package/src/components/chat/utils/icon-library.tsx +14 -3
  111. package/src/components/chat/utils/source-row-cta.ts +3 -3
  112. package/src/components/features/index.ts +1 -0
  113. package/src/components/features/model-token-rates.tsx +696 -0
  114. package/src/utils/ai-providers.ts +46 -0
  115. package/src/utils/index.ts +2 -0
  116. package/src/utils/list-url.ts +1 -0
  117. package/src/utils/model-token-rates.ts +103 -0
  118. package/src/utils/source-icons.ts +3 -0
@@ -5,13 +5,13 @@ var _chunkDFM572VHcjs = require('./chunk-DFM572VH.cjs');
5
5
 
6
6
 
7
7
 
8
- var _chunkVGXAZEQPcjs = require('./chunk-VGXAZEQP.cjs');
8
+ var _chunkLR6DJY4Zcjs = require('./chunk-LR6DJY4Z.cjs');
9
9
 
10
10
 
11
11
  var _chunkZSOFLPQNcjs = require('./chunk-ZSOFLPQN.cjs');
12
12
 
13
13
 
14
- var _chunkGYUFKNOQcjs = require('./chunk-GYUFKNOQ.cjs');
14
+ var _chunkKLCOSY7Bcjs = require('./chunk-KLCOSY7B.cjs');
15
15
 
16
16
 
17
17
 
@@ -23,10 +23,10 @@ var _chunkGYUFKNOQcjs = require('./chunk-GYUFKNOQ.cjs');
23
23
 
24
24
 
25
25
 
26
- var _chunkMWLVYYRXcjs = require('./chunk-MWLVYYRX.cjs');
26
+ var _chunkAI3CLDZOcjs = require('./chunk-AI3CLDZO.cjs');
27
27
 
28
28
 
29
- var _chunkNFABAOMDcjs = require('./chunk-NFABAOMD.cjs');
29
+ var _chunkU6LRRG2Ecjs = require('./chunk-U6LRRG2E.cjs');
30
30
 
31
31
 
32
32
 
@@ -39,7 +39,7 @@ var _chunk4LY6R4TNcjs = require('./chunk-4LY6R4TN.cjs');
39
39
 
40
40
 
41
41
 
42
- var _chunkOWRD2GZUcjs = require('./chunk-OWRD2GZU.cjs');
42
+ var _chunkRU6BTELIcjs = require('./chunk-RU6BTELI.cjs');
43
43
 
44
44
 
45
45
  var _chunkK2JUJ37Dcjs = require('./chunk-K2JUJ37D.cjs');
@@ -64,7 +64,7 @@ var _chunk7DNL734Scjs = require('./chunk-7DNL734S.cjs');
64
64
 
65
65
 
66
66
 
67
- var _chunkJENNI7XUcjs = require('./chunk-JENNI7XU.cjs');
67
+ var _chunkHEQ4GPYEcjs = require('./chunk-HEQ4GPYE.cjs');
68
68
 
69
69
 
70
70
  var _chunkTKFTWM3Vcjs = require('./chunk-TKFTWM3V.cjs');
@@ -92,8 +92,8 @@ var _chunk3ATAYP36cjs = require('./chunk-3ATAYP36.cjs');
92
92
  // src/components/shared/product-release/product-releases-view.tsx
93
93
  var _jsxruntime = require('react/jsx-runtime');
94
94
  var DEFAULT_ENDPOINT = "/api/releases";
95
- var DEFAULT_SEARCH_PARAM_KEY = _chunkOWRD2GZUcjs.DEV_SECTION_PARAM_KEYS.search;
96
- var DEFAULT_STATUS_PARAM_KEY = _chunkOWRD2GZUcjs.DEV_SECTION_PARAM_KEYS.releaseStatus;
95
+ var DEFAULT_SEARCH_PARAM_KEY = _chunkRU6BTELIcjs.DEV_SECTION_PARAM_KEYS.search;
96
+ var DEFAULT_STATUS_PARAM_KEY = _chunkRU6BTELIcjs.DEV_SECTION_PARAM_KEYS.releaseStatus;
97
97
  var DEFAULT_PAGE_PARAM_KEY = "page";
98
98
  function ReleaseRow({
99
99
  release,
@@ -102,17 +102,17 @@ function ReleaseRow({
102
102
  }) {
103
103
  const runtime = _chunkUJ7AXHRZcjs.useChatRuntime.call(void 0, );
104
104
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
105
- const cta = _chunkOWRD2GZUcjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _2 => _2.composeContentUrl]), {
105
+ const cta = _chunkRU6BTELIcjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _2 => _2.composeContentUrl]), {
106
106
  type: "product_release",
107
107
  slug: release.slug,
108
108
  basePath,
109
109
  platforms: release.product_release_platforms
110
110
  });
111
- const { target, rel } = _chunkJENNI7XUcjs.useEntityCardLink.call(void 0, { href: cta.href, targetPlatform: cta.targetPlatform });
111
+ const { target, rel } = _chunkHEQ4GPYEcjs.useEntityCardLink.call(void 0, { href: cta.href, targetPlatform: cta.targetPlatform });
112
112
  const onClick = (e) => {
113
- if (e.defaultPrevented || _chunkOWRD2GZUcjs.isModifierClick.call(void 0, e) || target === "_blank") return;
113
+ if (e.defaultPrevented || _chunkRU6BTELIcjs.isModifierClick.call(void 0, e) || target === "_blank") return;
114
114
  e.preventDefault();
115
- _chunkOWRD2GZUcjs.executeNavigationImperative.call(void 0, {
115
+ _chunkRU6BTELIcjs.executeNavigationImperative.call(void 0, {
116
116
  runtime,
117
117
  href: cta.href,
118
118
  targetPlatform: cta.targetPlatform,
@@ -120,7 +120,7 @@ function ReleaseRow({
120
120
  });
121
121
  };
122
122
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
123
- _chunkJENNI7XUcjs.ProductReleaseCard,
123
+ _chunkHEQ4GPYEcjs.ProductReleaseCard,
124
124
  {
125
125
  size: "lg",
126
126
  title: release.title,
@@ -136,7 +136,7 @@ function ProductReleasesView({
136
136
  initialData,
137
137
  itemsPerPage = 5,
138
138
  basePath = "/releases",
139
- buildCardProps = _chunkJENNI7XUcjs.buildProductReleaseCardProps,
139
+ buildCardProps = _chunkHEQ4GPYEcjs.buildProductReleaseCardProps,
140
140
  searchParamKey = DEFAULT_SEARCH_PARAM_KEY,
141
141
  statusParamKey = DEFAULT_STATUS_PARAM_KEY,
142
142
  pageParamKey = DEFAULT_PAGE_PARAM_KEY,
@@ -152,7 +152,7 @@ function ProductReleasesView({
152
152
  const listParams = new URLSearchParams({ limit: String(itemsPerPage), offset: String(offset) });
153
153
  if (search) listParams.set(searchParamKey, search);
154
154
  if (status && status !== "all") listParams.set(statusParamKey, status);
155
- const { data, isLoading, error, reload } = _chunkJENNI7XUcjs.useSelfFetch.call(void 0,
155
+ const { data, isLoading, error, reload } = _chunkHEQ4GPYEcjs.useSelfFetch.call(void 0,
156
156
  `${endpoint}?${listParams.toString()}`,
157
157
  { initialData }
158
158
  );
@@ -174,10 +174,10 @@ function ProductReleasesView({
174
174
  router.replace(`${pathname}?${params.toString()}`, { scroll: false });
175
175
  };
176
176
  if (error) {
177
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "w-full", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMWLVYYRXcjs.LoadError, { message: "Failed to load releases.", onRetry: reload }) });
177
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "w-full", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAI3CLDZOcjs.LoadError, { message: "Failed to load releases.", onRetry: reload }) });
178
178
  }
179
179
  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,
180
- _chunkVGXAZEQPcjs.ListEmptyState,
180
+ _chunkLR6DJY4Zcjs.ListEmptyState,
181
181
  {
182
182
  isFiltered: hasActiveFilters,
183
183
  filtered: {
@@ -196,7 +196,7 @@ function ProductReleasesView({
196
196
  "div",
197
197
  {
198
198
  style: { visibility: isLoading || hasData ? "visible" : "hidden" },
199
- children: isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJENNI7XUcjs.ProductReleaseCardSkeleton, { size: "lg" }) : release ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ReleaseRow, { release, basePath, buildCardProps }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJENNI7XUcjs.ProductReleaseCardSkeleton, { size: "lg" })
199
+ children: isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHEQ4GPYEcjs.ProductReleaseCardSkeleton, { size: "lg" }) : release ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ReleaseRow, { release, basePath, buildCardProps }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHEQ4GPYEcjs.ProductReleaseCardSkeleton, { size: "lg" })
200
200
  },
201
201
  _nullishCoalesce(_optionalChain([release, 'optionalAccess', _5 => _5.id]), () => ( `slot-${i}`))
202
202
  );
@@ -254,10 +254,10 @@ function MediaGalleryStrip({ items, className }) {
254
254
  mediaItem.id || index
255
255
  );
256
256
  }
257
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: tileClass, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJENNI7XUcjs.Video, { url: mediaItem.media_url, layout: "native" }) }, mediaItem.id || index);
257
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: tileClass, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHEQ4GPYEcjs.Video, { url: mediaItem.media_url, layout: "native" }) }, mediaItem.id || index);
258
258
  }) }),
259
259
  galleryImages.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
260
- _chunkJENNI7XUcjs.ImageGalleryModal,
260
+ _chunkHEQ4GPYEcjs.ImageGalleryModal,
261
261
  {
262
262
  images: galleryImages,
263
263
  isOpen: galleryOpen,
@@ -272,7 +272,7 @@ function MediaGalleryStrip({ items, className }) {
272
272
  var _lucidereact = require('lucide-react');
273
273
 
274
274
 
275
- var DefaultMarkdownRenderer = _chunkMWLVYYRXcjs.RichMarkdownRenderer;
275
+ var DefaultMarkdownRenderer = _chunkAI3CLDZOcjs.RichMarkdownRenderer;
276
276
  var DEFAULT_ENDPOINT2 = "/api/releases";
277
277
  function ReleaseDetailPage({
278
278
  authorHref,
@@ -290,14 +290,14 @@ function ReleaseDetailPage({
290
290
  shell = true
291
291
  }) {
292
292
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
293
- const captions = _chunkOWRD2GZUcjs.useCaptions.call(void 0, );
294
- const renderShell = (node) => shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMWLVYYRXcjs.PageShell, { children: node }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: node });
293
+ const captions = _chunkRU6BTELIcjs.useCaptions.call(void 0, );
294
+ const renderShell = (node) => shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAI3CLDZOcjs.PageShell, { children: node }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: node });
295
295
  const seed = initialData == null ? void 0 : initialData;
296
296
  const {
297
297
  data: release,
298
298
  isLoading,
299
299
  error
300
- } = _chunkJENNI7XUcjs.useSelfFetch.call(void 0, slug ? `${endpoint}/${encodeURIComponent(slug)}` : null, {
300
+ } = _chunkHEQ4GPYEcjs.useSelfFetch.call(void 0, slug ? `${endpoint}/${encodeURIComponent(slug)}` : null, {
301
301
  initialData: seed
302
302
  });
303
303
  const showBackButton = backButton !== false;
@@ -350,7 +350,7 @@ function ReleaseDetailPage({
350
350
  return renderShell(
351
351
  // Match the loaded page's top offset (TitleBlock's
352
352
  // `pt-[var(--spacing-system-l)]`) so content doesn't jump on load.
353
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-[var(--spacing-system-l)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGYUFKNOQcjs.DetailPageSkeleton, { bare: true, metadataColumns: 4, showImageGallery: true }) })
353
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-[var(--spacing-system-l)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkKLCOSY7Bcjs.DetailPageSkeleton, { bare: true, metadataColumns: 4, showImageGallery: true }) })
354
354
  );
355
355
  }
356
356
  if (error || !release) {
@@ -389,7 +389,7 @@ function ReleaseDetailPage({
389
389
  const improvements = release.improvements;
390
390
  return renderShell(
391
391
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
392
- _chunkNFABAOMDcjs.PageLayout,
392
+ _chunkU6LRRG2Ecjs.PageLayout,
393
393
  {
394
394
  title: releaseTitle,
395
395
  subtitle: `Version: ${releaseVersion}`,
@@ -398,7 +398,7 @@ function ReleaseDetailPage({
398
398
  backButton: showBackButton ? { label: backLabel, onClick: () => router.push(backHref) } : void 0,
399
399
  children: [
400
400
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-6 content-md:space-y-8", children: [
401
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMWLVYYRXcjs.EntityTagBadges, { tags: release.product_release_tags }),
401
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAI3CLDZOcjs.EntityTagBadges, { tags: release.product_release_tags }),
402
402
  /* @__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: [
403
403
  /* @__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: [
404
404
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: releaseType.toLocaleUpperCase() }),
@@ -409,11 +409,11 @@ function ReleaseDetailPage({
409
409
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: "Release Status" })
410
410
  ] }) }),
411
411
  /* @__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: [
412
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: _chunkJENNI7XUcjs.formatReleaseDate.call(void 0, releaseDate) }),
412
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: _chunkHEQ4GPYEcjs.formatReleaseDate.call(void 0, releaseDate) }),
413
413
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h6", children: "Release Date" })
414
414
  ] }) }),
415
415
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
416
- _chunkJENNI7XUcjs.EntityMetadataAuthorCell,
416
+ _chunkHEQ4GPYEcjs.EntityMetadataAuthorCell,
417
417
  {
418
418
  author: _nullishCoalesce(author, () => ( { full_name: null, avatar_url: null })),
419
419
  authorHref: _optionalChain([author, 'optionalAccess', _7 => _7.full_name]) ? authorHref : void 0
@@ -431,18 +431,18 @@ function ReleaseDetailPage({
431
431
  highlightVideoThumbnail,
432
432
  title: releaseTitle,
433
433
  videoBites,
434
- bitesTitle: _chunkJENNI7XUcjs.DEFAULT_VIDEO_BITES_TITLE,
434
+ bitesTitle: _chunkHEQ4GPYEcjs.DEFAULT_VIDEO_BITES_TITLE,
435
435
  filterPublishedBites: true,
436
- bitesProfile: _chunkJENNI7XUcjs.toStripProfile.call(void 0, author),
436
+ bitesProfile: _chunkHEQ4GPYEcjs.toStripProfile.call(void 0, author),
437
437
  bitesHref: typeof release.slug === "string" ? `/releases/${release.slug}` : void 0,
438
438
  srtContent: _optionalChain([release, 'optionalAccess', _8 => _8.srt_content]),
439
439
  captionsUrl,
440
440
  highlightCaptionsUrl
441
441
  }
442
442
  ) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
443
- youtubeUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJENNI7XUcjs.Video, { kind: "youtube", url: youtubeUrl, title: `${releaseTitle} - Video`, layout: "native" }),
443
+ youtubeUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHEQ4GPYEcjs.Video, { kind: "youtube", url: youtubeUrl, title: `${releaseTitle} - Video`, layout: "native" }),
444
444
  !youtubeUrl && mainVideoUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
445
- _chunkJENNI7XUcjs.Video,
445
+ _chunkHEQ4GPYEcjs.Video,
446
446
  {
447
447
  url: mainVideoUrl,
448
448
  srtContent: _optionalChain([release, 'optionalAccess', _9 => _9.srt_content]),
@@ -451,7 +451,7 @@ function ReleaseDetailPage({
451
451
  }
452
452
  ),
453
453
  highlightVideoUrl && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
454
- _chunkJENNI7XUcjs.Video,
454
+ _chunkHEQ4GPYEcjs.Video,
455
455
  {
456
456
  url: highlightVideoUrl,
457
457
  poster: highlightVideoThumbnail,
@@ -461,7 +461,7 @@ function ReleaseDetailPage({
461
461
  )
462
462
  ] }),
463
463
  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 }) }),
464
- hasBreakingChanges && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJENNI7XUcjs.Card, { className: "border-ods-error bg-ods-error/10", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJENNI7XUcjs.CardContent, { className: "p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
464
+ hasBreakingChanges && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHEQ4GPYEcjs.Card, { className: "border-ods-error bg-ods-error/10", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHEQ4GPYEcjs.CardContent, { className: "p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3", children: [
465
465
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.AlertTriangle, { className: "h-6 w-6 text-ods-error" }),
466
466
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { children: [
467
467
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-ods-error text-h3", children: "Breaking Changes" }),
@@ -469,7 +469,7 @@ function ReleaseDetailPage({
469
469
  ] })
470
470
  ] }) }) }),
471
471
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
472
- _chunkMWLVYYRXcjs.ReleaseChangelogSection,
472
+ _chunkAI3CLDZOcjs.ReleaseChangelogSection,
473
473
  {
474
474
  title: "Breaking Changes",
475
475
  entries: breakingChanges || [],
@@ -480,7 +480,7 @@ function ReleaseDetailPage({
480
480
  }
481
481
  ),
482
482
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
483
- _chunkMWLVYYRXcjs.ReleaseChangelogSection,
483
+ _chunkAI3CLDZOcjs.ReleaseChangelogSection,
484
484
  {
485
485
  title: "Features Added",
486
486
  entries: featuresAdded || [],
@@ -490,7 +490,7 @@ function ReleaseDetailPage({
490
490
  }
491
491
  ),
492
492
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
493
- _chunkMWLVYYRXcjs.ReleaseChangelogSection,
493
+ _chunkAI3CLDZOcjs.ReleaseChangelogSection,
494
494
  {
495
495
  title: "Bugs Fixed",
496
496
  entries: bugFixed || [],
@@ -500,7 +500,7 @@ function ReleaseDetailPage({
500
500
  }
501
501
  ),
502
502
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
503
- _chunkMWLVYYRXcjs.ReleaseChangelogSection,
503
+ _chunkAI3CLDZOcjs.ReleaseChangelogSection,
504
504
  {
505
505
  title: "Improvements",
506
506
  entries: improvements || [],
@@ -526,12 +526,12 @@ function ReleaseDetailPage({
526
526
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "tracking-[-0.28px] text-ods-text-secondary text-h5", children: "Related Enhancements and Bug-fixes" }),
527
527
  (() => {
528
528
  const deliveryCount = deliveryData ? deliveryData.completed.length + deliveryData.inProgress.length : 0;
529
- return deliveryLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeliverySection, { data: deliveryData, isLoading: deliveryLoading }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMWLVYYRXcjs.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 }) }) });
529
+ return deliveryLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeliverySection, { data: deliveryData, isLoading: deliveryLoading }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAI3CLDZOcjs.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
530
  })()
531
531
  ] }),
532
532
  (_optionalChain([githubReleases, 'optionalAccess', _10 => _10.length]) || _optionalChain([knowledgeBaseLinks, 'optionalAccess', _11 => _11.length]) || migrationGuideUrl || documentationUrl) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "w-full space-y-1", children: [
533
533
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "tracking-[-0.28px] text-ods-text-secondary text-h5", children: "Related Links" }),
534
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJENNI7XUcjs.Card, { className: "border-ods-border bg-ods-card p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
534
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHEQ4GPYEcjs.Card, { className: "border-ods-border bg-ods-card p-6", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
535
535
  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: [
536
536
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLLSUVPQCcjs.GitHubIcon, { className: "shrink-0", width: 24, height: 24, color: "var(--color-text-secondary)" }),
537
537
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-primary text-h4", children: "Github Release" }),
@@ -605,7 +605,7 @@ function ReleaseDetailPage({
605
605
  // src/components/shared/product-release/release-detail-skeleton.tsx
606
606
 
607
607
  function ReleaseDetailSkeleton() {
608
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGYUFKNOQcjs.DetailPageSkeleton, { metadataColumns: 4, showImageGallery: true });
608
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkKLCOSY7Bcjs.DetailPageSkeleton, { metadataColumns: 4, showImageGallery: true });
609
609
  }
610
610
 
611
611
  // src/components/shared/roadmap/use-roadmap-voting.ts
@@ -628,7 +628,7 @@ function useRoadmapVoting(options = {}) {
628
628
  const { getSignals } = _chunk4LY6R4TNcjs.useHumanitySignals.call(void 0, );
629
629
  const [votes, setVotes] = _react.useState.call(void 0, NO_VOTES);
630
630
  const [loadedKey, setLoadedKey] = _react.useState.call(void 0, null);
631
- const hydrated = _chunkOWRD2GZUcjs.useIsHydrated.call(void 0, );
631
+ const hydrated = _chunkRU6BTELIcjs.useIsHydrated.call(void 0, );
632
632
  if (hydrated && loadedKey !== storageKey) {
633
633
  setLoadedKey(storageKey);
634
634
  setVotes(readStoredVotes(storageKey));
@@ -777,10 +777,10 @@ function RoadmapGridSingle({
777
777
  // `useScrollToHash` in `roadmap-view.tsx` finds the card by id
778
778
  // and scrolls.
779
779
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
780
- _chunkJENNI7XUcjs.RoadmapCard,
780
+ _chunkHEQ4GPYEcjs.RoadmapCard,
781
781
  {
782
782
  item,
783
- id: _chunkOWRD2GZUcjs.devSectionAnchorId.call(void 0, "roadmap", item.id),
783
+ id: _chunkRU6BTELIcjs.devSectionAnchorId.call(void 0, "roadmap", item.id),
784
784
  userVote: getVote(item.id),
785
785
  onVote: (voteType) => onVote(item.id, voteType),
786
786
  isVoting: votingTasks.has(item.id)
@@ -896,7 +896,7 @@ function RoadmapGrid({
896
896
  );
897
897
  }
898
898
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
899
- _chunkMWLVYYRXcjs.Accordion,
899
+ _chunkAI3CLDZOcjs.Accordion,
900
900
  {
901
901
  type: "multiple",
902
902
  value: expandedQuarters,
@@ -906,13 +906,13 @@ function RoadmapGrid({
906
906
  const itemCount = _optionalChain([itemsByQuarter, 'access', _20 => _20[quarter], 'optionalAccess', _21 => _21.length]) || 0;
907
907
  const isExpanded = expandedQuarters.includes(quarter);
908
908
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
909
- _chunkMWLVYYRXcjs.AccordionItem,
909
+ _chunkAI3CLDZOcjs.AccordionItem,
910
910
  {
911
911
  value: quarter,
912
912
  id: `quarter-${quarter.replace(/\s+/g, "-").toLowerCase()}`,
913
913
  className: "border-0",
914
914
  children: [
915
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMWLVYYRXcjs.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: [
915
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAI3CLDZOcjs.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
916
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
917
917
  "h3",
918
918
  {
@@ -942,7 +942,7 @@ function RoadmapGrid({
942
942
  }
943
943
  )
944
944
  ] }) }),
945
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMWLVYYRXcjs.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,
945
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAI3CLDZOcjs.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
946
  RoadmapGridSingle,
947
947
  {
948
948
  items: itemsByQuarter[quarter],
@@ -994,8 +994,8 @@ function RoadmapGridSkeleton({ count = 4, showLeftMargin = true }) {
994
994
 
995
995
 
996
996
  var DEFAULT_ENDPOINT3 = "/api/roadmap";
997
- var DEFAULT_SEARCH_PARAM_KEY2 = _chunkOWRD2GZUcjs.DEV_SECTION_PARAM_KEYS.search;
998
- var DEFAULT_STATUS_PARAM_KEY2 = _chunkOWRD2GZUcjs.DEV_SECTION_PARAM_KEYS.status;
997
+ var DEFAULT_SEARCH_PARAM_KEY2 = _chunkRU6BTELIcjs.DEV_SECTION_PARAM_KEYS.search;
998
+ var DEFAULT_STATUS_PARAM_KEY2 = _chunkRU6BTELIcjs.DEV_SECTION_PARAM_KEYS.status;
999
999
  function RoadmapView({
1000
1000
  endpoint = DEFAULT_ENDPOINT3,
1001
1001
  initialItems,
@@ -1014,11 +1014,11 @@ function RoadmapView({
1014
1014
  const qs = listParams.toString();
1015
1015
  const url = qs ? `${endpoint}?${qs}` : endpoint;
1016
1016
  const initialData = _react.useMemo.call(void 0, () => initialItems ? { items: initialItems } : void 0, [initialItems]);
1017
- const { data, setData, isLoading, error, reload } = _chunkJENNI7XUcjs.useSelfFetch.call(void 0, url, { initialData });
1017
+ const { data, setData, isLoading, error, reload } = _chunkHEQ4GPYEcjs.useSelfFetch.call(void 0, url, { initialData });
1018
1018
  const items = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _22 => _22.items]), () => ( []));
1019
1019
  _chunk4LY6R4TNcjs.useScrollToHash.call(void 0, data, { headerOffset: _chunkK2JUJ37Dcjs.STICKY_HEADER_OFFSET_PX });
1020
1020
  if (error) {
1021
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMWLVYYRXcjs.LoadError, { message: "Failed to load roadmap.", onRetry: reload });
1021
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAI3CLDZOcjs.LoadError, { message: "Failed to load roadmap.", onRetry: reload });
1022
1022
  }
1023
1023
  if (isLoading && !data) {
1024
1024
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RoadmapGridSkeleton, { showLeftMargin });
@@ -1060,18 +1060,18 @@ function SkeletonRow() {
1060
1060
  }
1061
1061
  function DeliveryTable({ items, isLoading = false }) {
1062
1062
  if (isLoading) {
1063
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `w-full ${_chunkJENNI7XUcjs.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)) }) });
1063
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `w-full ${_chunkHEQ4GPYEcjs.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
1064
  }
1065
1065
  if (items.length === 0) {
1066
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `w-full ${_chunkJENNI7XUcjs.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" }) });
1066
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `w-full ${_chunkHEQ4GPYEcjs.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
1067
  }
1068
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `w-full ${_chunkJENNI7XUcjs.CONTENT_CARD_SKELETON_FRAME_CLASS}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: items.map((item) => (
1068
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `w-full ${_chunkHEQ4GPYEcjs.CONTENT_CARD_SKELETON_FRAME_CLASS}`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: items.map((item) => (
1069
1069
  // DOM id lives on DeliveryRow's own outer element (no wrapper
1070
1070
  // div). Anchor mirrors `buildDevSectionUrl('delivery', <id>)`
1071
1071
  // → `#delivery-<external_id>`; `useScrollToHash` in
1072
1072
  // `delivery-lists.tsx` finds the row by id and scrolls. The
1073
1073
  // outer wrapper here ONLY exists for the row separators.
1074
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border last:border-b-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVGXAZEQPcjs.DeliveryRow, { item, id: _chunkOWRD2GZUcjs.devSectionAnchorId.call(void 0, "delivery", item.id) }) }, item.id)
1074
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border last:border-b-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLR6DJY4Zcjs.DeliveryRow, { item, id: _chunkRU6BTELIcjs.devSectionAnchorId.call(void 0, "delivery", item.id) }) }, item.id)
1075
1075
  )) }) });
1076
1076
  }
1077
1077
 
@@ -1080,8 +1080,8 @@ function DeliveryTable({ items, isLoading = false }) {
1080
1080
 
1081
1081
  var DEFAULT_COMPLETED_ENDPOINT = "/api/delivery/completed";
1082
1082
  var DEFAULT_IN_PROGRESS_ENDPOINT = "/api/delivery/in-progress";
1083
- var DEFAULT_SEARCH_PARAM_KEY3 = _chunkOWRD2GZUcjs.DEV_SECTION_PARAM_KEYS.search;
1084
- var DEFAULT_TASK_TYPE_PARAM_KEY = _chunkOWRD2GZUcjs.DEV_SECTION_PARAM_KEYS.deliveryTaskType;
1083
+ var DEFAULT_SEARCH_PARAM_KEY3 = _chunkRU6BTELIcjs.DEV_SECTION_PARAM_KEYS.search;
1084
+ var DEFAULT_TASK_TYPE_PARAM_KEY = _chunkRU6BTELIcjs.DEV_SECTION_PARAM_KEYS.deliveryTaskType;
1085
1085
  function DeliveryLists({
1086
1086
  completedApiEndpoint = DEFAULT_COMPLETED_ENDPOINT,
1087
1087
  inProgressApiEndpoint = DEFAULT_IN_PROGRESS_ENDPOINT,
@@ -1148,11 +1148,11 @@ function DeliveryLists({
1148
1148
  const hasActiveFilters = searchQuery !== "" || taskTypeFilter !== "all";
1149
1149
  const hasResults = showCompleted && filteredCompleted.length > 0 || showInProgress && filteredInProgress.length > 0;
1150
1150
  if (error) {
1151
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMWLVYYRXcjs.LoadError, { message: error, onRetry: () => window.location.reload() }) });
1151
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAI3CLDZOcjs.LoadError, { message: error, onRetry: () => window.location.reload() }) });
1152
1152
  }
1153
1153
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[40px]", children: [
1154
1154
  !isLoading && !hasResults && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1155
- _chunkVGXAZEQPcjs.ListEmptyState,
1155
+ _chunkLR6DJY4Zcjs.ListEmptyState,
1156
1156
  {
1157
1157
  isFiltered: hasActiveFilters,
1158
1158
  filtered: {
@@ -1306,7 +1306,7 @@ function LegalDocumentPage({
1306
1306
  initialData = null,
1307
1307
  initialLastUpdatedLabel = null,
1308
1308
  apiEndpoint,
1309
- MarkdownRenderer = _chunkMWLVYYRXcjs.RichMarkdownRenderer,
1309
+ MarkdownRenderer = _chunkAI3CLDZOcjs.RichMarkdownRenderer,
1310
1310
  backButton,
1311
1311
  shell = true
1312
1312
  }) {
@@ -1319,7 +1319,7 @@ function LegalDocumentPage({
1319
1319
  const fallbackLastUpdatedLabel = _optionalChain([data, 'optionalAccess', _27 => _27.lastSynced]) != null ? _chunkTKFTWM3Vcjs.formatLegalDate.call(void 0, data.lastSynced) : null;
1320
1320
  const effectiveLastUpdatedLabel = _nullishCoalesce(initialLastUpdatedLabel, () => ( fallbackLastUpdatedLabel));
1321
1321
  const subtitle = effectiveLastUpdatedLabel ? `Last Updated: ${effectiveLastUpdatedLabel}` : fallbackDescription;
1322
- const inner = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkNFABAOMDcjs.PageLayout, { title, subtitle, backButton: backCfg, titleSize: "h1", titleWrap: true, children: [
1322
+ const inner = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkU6LRRG2Ecjs.PageLayout, { title, subtitle, backButton: backCfg, titleSize: "h1", titleWrap: true, children: [
1323
1323
  _optionalChain([data, 'optionalAccess', _28 => _28.sourceFile]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-secondary opacity-75 text-h6", children: [
1324
1324
  "Source: ",
1325
1325
  data.sourceFile
@@ -1359,7 +1359,7 @@ function LegalDocumentPage({
1359
1359
  ] })
1360
1360
  ] }) }) }) }) })
1361
1361
  ] });
1362
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMWLVYYRXcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
1362
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAI3CLDZOcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
1363
1363
  }
1364
1364
 
1365
1365
 
@@ -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 _chunkMWLVYYRXcjs = require('./chunk-MWLVYYRX.cjs');
4
+ var _chunkAI3CLDZOcjs = require('./chunk-AI3CLDZO.cjs');
5
5
 
6
6
 
7
7
 
@@ -9,7 +9,7 @@ var _chunkMWLVYYRXcjs = require('./chunk-MWLVYYRX.cjs');
9
9
 
10
10
 
11
11
 
12
- var _chunkOWRD2GZUcjs = require('./chunk-OWRD2GZU.cjs');
12
+ var _chunkRU6BTELIcjs = require('./chunk-RU6BTELI.cjs');
13
13
 
14
14
 
15
15
  var _chunkK2JUJ37Dcjs = require('./chunk-K2JUJ37D.cjs');
@@ -18,7 +18,7 @@ var _chunkK2JUJ37Dcjs = require('./chunk-K2JUJ37D.cjs');
18
18
  var _chunk7DNL734Scjs = require('./chunk-7DNL734S.cjs');
19
19
 
20
20
 
21
- var _chunkJENNI7XUcjs = require('./chunk-JENNI7XU.cjs');
21
+ var _chunkHEQ4GPYEcjs = require('./chunk-HEQ4GPYE.cjs');
22
22
 
23
23
 
24
24
  var _chunk7GRPR7XAcjs = require('./chunk-7GRPR7XA.cjs');
@@ -39,7 +39,7 @@ var _jsxruntime = require('react/jsx-runtime');
39
39
  function DocSearchResultRow({ result, isHighlighted }) {
40
40
  const docType = _optionalChain([result, 'access', _ => _.metadata, 'optionalAccess', _2 => _2.documentType]) || void 0;
41
41
  const sourceRepo = _optionalChain([result, 'access', _3 => _3.metadata, 'optionalAccess', _4 => _4.sourceRepo]) || void 0;
42
- const { Icon: SourceIcon, label: iconLabel } = _chunkOWRD2GZUcjs.resolveSourceIcon.call(void 0, {
42
+ const { Icon: SourceIcon, label: iconLabel } = _chunkRU6BTELIcjs.resolveSourceIcon.call(void 0, {
43
43
  sourceRepo,
44
44
  documentType: docType
45
45
  });
@@ -69,7 +69,7 @@ function DocSearchBar({
69
69
  renderResult
70
70
  }) {
71
71
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
72
- _chunkMWLVYYRXcjs.SearchInput,
72
+ _chunkAI3CLDZOcjs.SearchInput,
73
73
  {
74
74
  placeholder,
75
75
  value: query,
@@ -119,7 +119,7 @@ function mapDocSearchResults(docs) {
119
119
  results.push({
120
120
  id: `group-${entry.repo}`,
121
121
  // Same table label and count as the chat's grouped chip: one owner each.
122
- title: `${_chunkOWRD2GZUcjs.getSourceLabel.call(void 0, entry.repo)} ${_chunkOWRD2GZUcjs.recordCountLabel.call(void 0, rows.length)}`,
122
+ title: `${_chunkRU6BTELIcjs.getSourceLabel.call(void 0, entry.repo)} ${_chunkRU6BTELIcjs.recordCountLabel.call(void 0, rows.length)}`,
123
123
  path: rows[0].path,
124
124
  type: "file",
125
125
  metadata: {
@@ -182,7 +182,7 @@ function resolveSearchResultAction(result, source, runtimeMode, composeContentUr
182
182
  if (composed && !isAbsoluteHref(href)) {
183
183
  return { kind: "navigate-same-tab", href };
184
184
  }
185
- const isNewTab = _chunkJENNI7XUcjs.decideNewTab.call(void 0, {
185
+ const isNewTab = _chunkHEQ4GPYEcjs.decideNewTab.call(void 0, {
186
186
  href,
187
187
  targetPlatform: composed ? composed.targetPlatform : targetPlatform,
188
188
  surface: "useUnifiedNav",
@@ -311,27 +311,27 @@ function useDocSearch(config) {
311
311
  case "navigate-same-tab": {
312
312
  if (wantsNewTab) {
313
313
  setKeepOpen(true);
314
- window.open(action.href, "_blank", _chunkOWRD2GZUcjs.NEW_TAB_FEATURES);
314
+ window.open(action.href, "_blank", _chunkRU6BTELIcjs.NEW_TAB_FEATURES);
315
315
  return;
316
316
  }
317
317
  setKeepOpen(false);
318
318
  const path = baseRoute && action.href.startsWith(`${baseRoute}/`) ? action.href.slice(baseRoute.length + 1) : null;
319
319
  if (path && _optionalChain([onInPageSwap, 'optionalCall', _16 => _16(path)])) return;
320
- router.push(_chunkOWRD2GZUcjs.stripSameOriginToPath.call(void 0, action.href));
320
+ router.push(_chunkRU6BTELIcjs.stripSameOriginToPath.call(void 0, action.href));
321
321
  return;
322
322
  }
323
323
  case "navigate-new-tab":
324
324
  setKeepOpen(true);
325
325
  if (_optionalChain([runtime, 'optionalAccess', _17 => _17.navigation, 'access', _18 => _18.mode]) === "embed") {
326
326
  const targetPlatform = _nullishCoalesce(_optionalChain([result, 'access', _19 => _19.metadata, 'optionalAccess', _20 => _20.targetPlatform]), () => ( null));
327
- _chunkOWRD2GZUcjs.resolveExternalNavigation.call(void 0, {
327
+ _chunkRU6BTELIcjs.resolveExternalNavigation.call(void 0, {
328
328
  href: action.href,
329
329
  targetPlatform,
330
330
  runtime
331
331
  }).open();
332
332
  return;
333
333
  }
334
- window.open(action.href, "_blank", _chunkOWRD2GZUcjs.NEW_TAB_FEATURES);
334
+ window.open(action.href, "_blank", _chunkRU6BTELIcjs.NEW_TAB_FEATURES);
335
335
  return;
336
336
  case "ask-ai":
337
337
  setKeepOpen(false);
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  SearchInput
4
- } from "./chunk-G6YNPBWV.js";
4
+ } from "./chunk-W2DXHR2R.js";
5
5
  import {
6
6
  NEW_TAB_FEATURES,
7
7
  getSourceLabel,
@@ -9,7 +9,7 @@ import {
9
9
  resolveExternalNavigation,
10
10
  resolveSourceIcon,
11
11
  stripSameOriginToPath
12
- } from "./chunk-IIBTYCEN.js";
12
+ } from "./chunk-MLFS5G3V.js";
13
13
  import {
14
14
  useDebounce
15
15
  } from "./chunk-4I3K6LEH.js";
@@ -18,7 +18,7 @@ import {
18
18
  } from "./chunk-GY4IZG22.js";
19
19
  import {
20
20
  decideNewTab
21
- } from "./chunk-PKS2QQJU.js";
21
+ } from "./chunk-6EFNWQRY.js";
22
22
  import {
23
23
  contentFetch
24
24
  } from "./chunk-FSQQZFVG.js";
@@ -5,7 +5,7 @@ import {
5
5
  import {
6
6
  AvatarStack,
7
7
  resolveIcon
8
- } from "./chunk-EWED6ISQ.js";
8
+ } from "./chunk-YQDKVGKO.js";
9
9
  import {
10
10
  SquareAvatar,
11
11
  Tag,
@@ -1913,6 +1913,7 @@ var BUILDERS = {
1913
1913
  prospect_call: (ids, b) => `${b}/api/prospect-calls?ids=${ids.join(",")}`,
1914
1914
  // The public website's own pages (live source; ChatRef-shaped items like the objects above).
1915
1915
  site_page: (ids, b) => `${b}/api/site-pages?ids=${ids.join(",")}`,
1916
+ openframe_price: (ids, b) => `${b}/api/openframe-pricing?ids=${ids.join(",")}`,
1916
1917
  // The OpenMSP vendor directory (indexed source).
1917
1918
  vendor: (ids, b) => `${b}/api/vendors/cards?ids=${ids.join(",")}`,
1918
1919
  // Code intelligence — per-object card hydration, same `handleEntityCardList`