@flamingo-stack/openframe-frontend-core 0.0.709 → 0.0.711

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 (76) hide show
  1. package/README.md +1 -0
  2. package/dist/{chunk-36BCTE7D.js → chunk-2JTGK64G.js} +4 -4
  3. package/dist/{chunk-YBUT4AMG.cjs → chunk-3UNL26CD.cjs} +2 -2
  4. package/dist/{chunk-4L6XCMOU.js → chunk-5HB7FLCV.js} +1 -1
  5. package/dist/{chunk-6IW7TWPV.js → chunk-62KNLDXK.js} +1 -1
  6. package/dist/{chunk-AOWDNSTM.cjs → chunk-6AMIRXKM.cjs} +40 -40
  7. package/dist/{chunk-LNW45N2C.js → chunk-6GLQLTJI.js} +5 -5
  8. package/dist/{chunk-QAOFMK2A.cjs → chunk-6K7QZDA6.cjs} +3 -3
  9. package/dist/{chunk-SEXWHIMS.cjs → chunk-7AM6C6XH.cjs} +42 -37
  10. package/dist/{chunk-CNWOMQQJ.js → chunk-AGDVEUVL.js} +1 -1
  11. package/dist/{chunk-3AHTOSXJ.cjs → chunk-C4HRRB3V.cjs} +9 -9
  12. package/dist/{chunk-NSGXARGJ.cjs → chunk-CDM7OSFB.cjs} +70 -70
  13. package/dist/{chunk-4UM2ETLM.js → chunk-EQWD4IJE.js} +2 -2
  14. package/dist/{chunk-6I4ZAFO2.cjs → chunk-EX6GGCAC.cjs} +9 -9
  15. package/dist/{chunk-L6Y6OOKG.cjs → chunk-FEMAJES4.cjs} +20 -20
  16. package/dist/{chunk-P42V6N34.cjs → chunk-FYOKS5RI.cjs} +313 -313
  17. package/dist/{chunk-B73373AG.cjs → chunk-G47AP6LX.cjs} +20 -20
  18. package/dist/{chunk-I3ST4PLM.js → chunk-IFWLJ66M.js} +1 -1
  19. package/dist/{chunk-F5FF4DME.js → chunk-K4PTDK34.js} +3 -3
  20. package/dist/{chunk-ZCLBYT2V.cjs → chunk-K6Y5NX6L.cjs} +24 -24
  21. package/dist/{chunk-6YKAT7NV.js → chunk-NF7GNGYG.js} +2 -2
  22. package/dist/{chunk-2G7UYK35.cjs → chunk-P6G3JZNC.cjs} +32 -32
  23. package/dist/{chunk-JRU2CXLB.cjs → chunk-PRX7HVLE.cjs} +2 -2
  24. package/dist/{chunk-CZSZSDD4.js → chunk-Q6B35Y7O.js} +4 -4
  25. package/dist/{chunk-2KXTOP6G.cjs → chunk-QA6TROME.cjs} +14 -14
  26. package/dist/{chunk-LFFB6EMB.js → chunk-QGZPZ3RL.js} +2 -2
  27. package/dist/{chunk-PO33GZVY.js → chunk-SMAAV3HL.js} +8 -3
  28. package/dist/{chunk-DA5UDTLG.js → chunk-TKZXHVBG.js} +2 -2
  29. package/dist/{chunk-SS5MBHDP.js → chunk-VMMHJFHG.js} +2 -2
  30. package/dist/{chunk-MR3A4MZV.js → chunk-VWFZRMQR.js} +1 -1
  31. package/dist/{chunk-TDYIREDJ.js → chunk-WJUIXU6Y.js} +4 -4
  32. package/dist/{chunk-2RNB5DTN.cjs → chunk-XWEBHS7O.cjs} +7 -7
  33. package/dist/{chunk-OJLR5MEO.cjs → chunk-YD4LJZV4.cjs} +4 -4
  34. package/dist/components/case-studies/index.cjs +14 -14
  35. package/dist/components/case-studies/index.js +3 -3
  36. package/dist/components/chat/hooks/use-chat-dialog-manager.d.ts +4 -1
  37. package/dist/components/chat/hooks/use-chat-dialog-manager.d.ts.map +1 -1
  38. package/dist/components/chat/hooks/use-unified-chat.d.ts.map +1 -1
  39. package/dist/components/chat/index.cjs +2 -2
  40. package/dist/components/chat/index.js +1 -1
  41. package/dist/components/chat/types/component.types.d.ts +4 -0
  42. package/dist/components/chat/types/component.types.d.ts.map +1 -1
  43. package/dist/components/chat/types/unified-chat-state.types.d.ts +12 -0
  44. package/dist/components/chat/types/unified-chat-state.types.d.ts.map +1 -1
  45. package/dist/components/contact/index.cjs +4 -4
  46. package/dist/components/contact/index.js +3 -3
  47. package/dist/components/docs/index.cjs +7 -7
  48. package/dist/components/docs/index.js +6 -6
  49. package/dist/components/embeds/index.cjs +4 -4
  50. package/dist/components/embeds/index.js +3 -3
  51. package/dist/components/faq/index.cjs +4 -4
  52. package/dist/components/faq/index.js +3 -3
  53. package/dist/components/features/index.cjs +3 -3
  54. package/dist/components/features/index.js +2 -2
  55. package/dist/components/help-center-pages/index.cjs +70 -70
  56. package/dist/components/help-center-pages/index.js +14 -14
  57. package/dist/components/index.cjs +36 -36
  58. package/dist/components/index.js +13 -13
  59. package/dist/components/meeting-scheduler/index.cjs +25 -25
  60. package/dist/components/meeting-scheduler/index.js +2 -2
  61. package/dist/components/navigation/index.cjs +6 -6
  62. package/dist/components/navigation/index.js +5 -5
  63. package/dist/components/onboarding-guides/index.cjs +6 -6
  64. package/dist/components/onboarding-guides/index.js +5 -5
  65. package/dist/components/tickets/index.cjs +7 -7
  66. package/dist/components/tickets/index.js +6 -6
  67. package/dist/components/ui/index.cjs +3 -3
  68. package/dist/components/ui/index.js +2 -2
  69. package/dist/index.cjs +7 -7
  70. package/dist/index.js +6 -6
  71. package/package.json +1 -1
  72. package/src/components/chat/embeddable-chat.tsx +2 -0
  73. package/src/components/chat/hooks/use-chat-dialog-manager.ts +22 -4
  74. package/src/components/chat/hooks/use-unified-chat.ts +1 -0
  75. package/src/components/chat/types/component.types.ts +4 -0
  76. package/src/components/chat/types/unified-chat-state.types.ts +13 -0
package/README.md CHANGED
@@ -177,3 +177,4 @@ End-to-end guides under [`docs/`](./docs):
177
177
  ## License
178
178
 
179
179
  Private package for Flamingo CX projects.
180
+
@@ -2,11 +2,11 @@
2
2
  import {
3
3
  ArticleAuthorByline,
4
4
  DetailPageSkeleton
5
- } from "./chunk-I3ST4PLM.js";
5
+ } from "./chunk-IFWLJ66M.js";
6
6
  import {
7
7
  DocSearchBar,
8
8
  useDocSearch
9
- } from "./chunk-DA5UDTLG.js";
9
+ } from "./chunk-TKZXHVBG.js";
10
10
  import {
11
11
  useSelfFetch
12
12
  } from "./chunk-4IBPRIQH.js";
@@ -18,12 +18,12 @@ import {
18
18
  PageShell,
19
19
  RichMarkdownRenderer,
20
20
  resolveContentHref
21
- } from "./chunk-4L6XCMOU.js";
21
+ } from "./chunk-5HB7FLCV.js";
22
22
  import {
23
23
  EntityVideoSection,
24
24
  VideoBitesStrip,
25
25
  useCaptions
26
- } from "./chunk-PO33GZVY.js";
26
+ } from "./chunk-SMAAV3HL.js";
27
27
  import {
28
28
  useRouter,
29
29
  useSearchParams
@@ -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 _chunkP42V6N34cjs = require('./chunk-P42V6N34.cjs');
4
+ var _chunkFYOKS5RIcjs = require('./chunk-FYOKS5RI.cjs');
5
5
 
6
6
 
7
7
 
@@ -64,7 +64,7 @@ function DetailPageSkeleton({
64
64
  ] });
65
65
  if (bare) return content;
66
66
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
67
- _chunkP42V6N34cjs.PageLayout,
67
+ _chunkFYOKS5RIcjs.PageLayout,
68
68
  {
69
69
  showHeader: false,
70
70
  className: "mx-auto max-w-[1280px] bg-ods-bg px-6 py-6 content-md:px-20 content-md:py-10",
@@ -95,7 +95,7 @@ import {
95
95
  useNavLinkViaRuntime,
96
96
  useResizablePanelSize,
97
97
  useScrollFade
98
- } from "./chunk-PO33GZVY.js";
98
+ } from "./chunk-SMAAV3HL.js";
99
99
  import {
100
100
  ToolIcon,
101
101
  createHeadingIdDeduper,
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  EmbedViewerFrame
4
- } from "./chunk-4L6XCMOU.js";
4
+ } from "./chunk-5HB7FLCV.js";
5
5
  import {
6
6
  toGoogleSheetsEmbedUrl,
7
7
  toGoogleSheetsOriginalUrl
@@ -5,13 +5,13 @@ var _chunkY2GSOUCScjs = require('./chunk-Y2GSOUCS.cjs');
5
5
 
6
6
 
7
7
 
8
- var _chunk3AHTOSXJcjs = require('./chunk-3AHTOSXJ.cjs');
8
+ var _chunkC4HRRB3Vcjs = require('./chunk-C4HRRB3V.cjs');
9
9
 
10
10
 
11
11
  var _chunkPLYEKV3Ncjs = require('./chunk-PLYEKV3N.cjs');
12
12
 
13
13
 
14
- var _chunkYBUT4AMGcjs = require('./chunk-YBUT4AMG.cjs');
14
+ var _chunk3UNL26CDcjs = require('./chunk-3UNL26CD.cjs');
15
15
 
16
16
 
17
17
  var _chunkUDFRUKLCcjs = require('./chunk-UDFRUKLC.cjs');
@@ -30,7 +30,7 @@ var _chunkUDFRUKLCcjs = require('./chunk-UDFRUKLC.cjs');
30
30
 
31
31
 
32
32
 
33
- var _chunkP42V6N34cjs = require('./chunk-P42V6N34.cjs');
33
+ var _chunkFYOKS5RIcjs = require('./chunk-FYOKS5RI.cjs');
34
34
 
35
35
 
36
36
 
@@ -45,7 +45,7 @@ var _chunkOF6GEI5Acjs = require('./chunk-OF6GEI5A.cjs');
45
45
 
46
46
 
47
47
 
48
- var _chunkSEXWHIMScjs = require('./chunk-SEXWHIMS.cjs');
48
+ var _chunk7AM6C6XHcjs = require('./chunk-7AM6C6XH.cjs');
49
49
 
50
50
 
51
51
  var _chunkUVTD52MDcjs = require('./chunk-UVTD52MD.cjs');
@@ -90,8 +90,8 @@ var _chunk3ATAYP36cjs = require('./chunk-3ATAYP36.cjs');
90
90
  // src/components/shared/product-release/product-releases-view.tsx
91
91
  var _jsxruntime = require('react/jsx-runtime');
92
92
  var DEFAULT_ENDPOINT = "/api/releases";
93
- var DEFAULT_SEARCH_PARAM_KEY = _chunkP42V6N34cjs.DEV_SECTION_PARAM_KEYS.search;
94
- var DEFAULT_STATUS_PARAM_KEY = _chunkP42V6N34cjs.DEV_SECTION_PARAM_KEYS.releaseStatus;
93
+ var DEFAULT_SEARCH_PARAM_KEY = _chunkFYOKS5RIcjs.DEV_SECTION_PARAM_KEYS.search;
94
+ var DEFAULT_STATUS_PARAM_KEY = _chunkFYOKS5RIcjs.DEV_SECTION_PARAM_KEYS.releaseStatus;
95
95
  var DEFAULT_PAGE_PARAM_KEY = "page";
96
96
  function ReleaseRow({
97
97
  release,
@@ -100,7 +100,7 @@ function ReleaseRow({
100
100
  }) {
101
101
  const runtime = _chunkUJ7AXHRZcjs.useChatRuntime.call(void 0, );
102
102
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
103
- const cta = _chunkP42V6N34cjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _2 => _2.composeContentUrl]), {
103
+ const cta = _chunkFYOKS5RIcjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _2 => _2.composeContentUrl]), {
104
104
  type: "product_release",
105
105
  slug: release.slug,
106
106
  basePath,
@@ -108,9 +108,9 @@ function ReleaseRow({
108
108
  });
109
109
  const { target, rel } = _chunk6NTPY5QAcjs.useEntityCardLink.call(void 0, { href: cta.href, targetPlatform: cta.targetPlatform });
110
110
  const onClick = (e) => {
111
- if (e.defaultPrevented || _chunkSEXWHIMScjs.isModifierClick.call(void 0, e) || target === "_blank") return;
111
+ if (e.defaultPrevented || _chunk7AM6C6XHcjs.isModifierClick.call(void 0, e) || target === "_blank") return;
112
112
  e.preventDefault();
113
- _chunkSEXWHIMScjs.executeNavigationImperative.call(void 0, {
113
+ _chunk7AM6C6XHcjs.executeNavigationImperative.call(void 0, {
114
114
  runtime,
115
115
  href: cta.href,
116
116
  targetPlatform: cta.targetPlatform,
@@ -172,10 +172,10 @@ function ProductReleasesView({
172
172
  router.replace(`${pathname}?${params.toString()}`, { scroll: false });
173
173
  };
174
174
  if (error) {
175
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "w-full", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP42V6N34cjs.LoadError, { message: "Failed to load releases.", onRetry: reload }) });
175
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "w-full", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFYOKS5RIcjs.LoadError, { message: "Failed to load releases.", onRetry: reload }) });
176
176
  }
177
177
  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,
178
- _chunk3AHTOSXJcjs.ListEmptyState,
178
+ _chunkC4HRRB3Vcjs.ListEmptyState,
179
179
  {
180
180
  isFiltered: hasActiveFilters,
181
181
  filtered: {
@@ -270,7 +270,7 @@ function MediaGalleryStrip({ items, className }) {
270
270
  var _lucidereact = require('lucide-react');
271
271
 
272
272
 
273
- var DefaultMarkdownRenderer = _chunkP42V6N34cjs.RichMarkdownRenderer;
273
+ var DefaultMarkdownRenderer = _chunkFYOKS5RIcjs.RichMarkdownRenderer;
274
274
  var DEFAULT_ENDPOINT2 = "/api/releases";
275
275
  function ReleaseDetailPage({
276
276
  authorHref,
@@ -288,8 +288,8 @@ function ReleaseDetailPage({
288
288
  shell = true
289
289
  }) {
290
290
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
291
- const captions = _chunkSEXWHIMScjs.useCaptions.call(void 0, );
292
- const renderShell = (node) => shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP42V6N34cjs.PageShell, { children: node }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: node });
291
+ const captions = _chunk7AM6C6XHcjs.useCaptions.call(void 0, );
292
+ const renderShell = (node) => shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFYOKS5RIcjs.PageShell, { children: node }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: node });
293
293
  const seed = initialData == null ? void 0 : initialData;
294
294
  const {
295
295
  data: release,
@@ -348,7 +348,7 @@ function ReleaseDetailPage({
348
348
  return renderShell(
349
349
  // Match the loaded page's top offset (TitleBlock's
350
350
  // `pt-[var(--spacing-system-l)]`) so content doesn't jump on load.
351
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-[var(--spacing-system-l)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYBUT4AMGcjs.DetailPageSkeleton, { bare: true, metadataColumns: 4, showImageGallery: true }) })
351
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pt-[var(--spacing-system-l)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3UNL26CDcjs.DetailPageSkeleton, { bare: true, metadataColumns: 4, showImageGallery: true }) })
352
352
  );
353
353
  }
354
354
  if (error || !release) {
@@ -387,7 +387,7 @@ function ReleaseDetailPage({
387
387
  const improvements = release.improvements;
388
388
  return renderShell(
389
389
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
390
- _chunkP42V6N34cjs.PageLayout,
390
+ _chunkFYOKS5RIcjs.PageLayout,
391
391
  {
392
392
  title: releaseTitle,
393
393
  subtitle: `Version: ${releaseVersion}`,
@@ -396,7 +396,7 @@ function ReleaseDetailPage({
396
396
  backButton: showBackButton ? { label: backLabel, onClick: () => router.push(backHref) } : void 0,
397
397
  children: [
398
398
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-6 content-md:space-y-8", children: [
399
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP42V6N34cjs.EntityTagBadges, { tags: release.product_release_tags }),
399
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFYOKS5RIcjs.EntityTagBadges, { tags: release.product_release_tags }),
400
400
  /* @__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: [
401
401
  /* @__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: [
402
402
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: releaseType.toLocaleUpperCase() }),
@@ -467,7 +467,7 @@ function ReleaseDetailPage({
467
467
  ] })
468
468
  ] }) }) }),
469
469
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
470
- _chunkP42V6N34cjs.ReleaseChangelogSection,
470
+ _chunkFYOKS5RIcjs.ReleaseChangelogSection,
471
471
  {
472
472
  title: "Breaking Changes",
473
473
  entries: breakingChanges || [],
@@ -478,7 +478,7 @@ function ReleaseDetailPage({
478
478
  }
479
479
  ),
480
480
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
481
- _chunkP42V6N34cjs.ReleaseChangelogSection,
481
+ _chunkFYOKS5RIcjs.ReleaseChangelogSection,
482
482
  {
483
483
  title: "Features Added",
484
484
  entries: featuresAdded || [],
@@ -488,7 +488,7 @@ function ReleaseDetailPage({
488
488
  }
489
489
  ),
490
490
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
491
- _chunkP42V6N34cjs.ReleaseChangelogSection,
491
+ _chunkFYOKS5RIcjs.ReleaseChangelogSection,
492
492
  {
493
493
  title: "Bugs Fixed",
494
494
  entries: bugFixed || [],
@@ -498,7 +498,7 @@ function ReleaseDetailPage({
498
498
  }
499
499
  ),
500
500
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
501
- _chunkP42V6N34cjs.ReleaseChangelogSection,
501
+ _chunkFYOKS5RIcjs.ReleaseChangelogSection,
502
502
  {
503
503
  title: "Improvements",
504
504
  entries: improvements || [],
@@ -524,7 +524,7 @@ function ReleaseDetailPage({
524
524
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "tracking-[-0.28px] text-ods-text-secondary text-h5", children: "Related Enhancements and Bug-fixes" }),
525
525
  (() => {
526
526
  const deliveryCount = deliveryData ? deliveryData.completed.length + deliveryData.inProgress.length : 0;
527
- return deliveryLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeliverySection, { data: deliveryData, isLoading: deliveryLoading }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP42V6N34cjs.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
+ return deliveryLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeliverySection, { data: deliveryData, isLoading: deliveryLoading }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFYOKS5RIcjs.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 }) }) });
528
528
  })()
529
529
  ] }),
530
530
  (_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: [
@@ -603,7 +603,7 @@ function ReleaseDetailPage({
603
603
  // src/components/shared/product-release/release-detail-skeleton.tsx
604
604
 
605
605
  function ReleaseDetailSkeleton() {
606
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYBUT4AMGcjs.DetailPageSkeleton, { metadataColumns: 4, showImageGallery: true });
606
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3UNL26CDcjs.DetailPageSkeleton, { metadataColumns: 4, showImageGallery: true });
607
607
  }
608
608
 
609
609
  // src/components/shared/roadmap/use-roadmap-voting.ts
@@ -626,7 +626,7 @@ function useRoadmapVoting(options = {}) {
626
626
  const { getSignals } = _chunkWCVZCGK5cjs.useHumanitySignals.call(void 0, );
627
627
  const [votes, setVotes] = _react.useState.call(void 0, NO_VOTES);
628
628
  const [loadedKey, setLoadedKey] = _react.useState.call(void 0, null);
629
- const hydrated = _chunkSEXWHIMScjs.useIsHydrated.call(void 0, );
629
+ const hydrated = _chunk7AM6C6XHcjs.useIsHydrated.call(void 0, );
630
630
  if (hydrated && loadedKey !== storageKey) {
631
631
  setLoadedKey(storageKey);
632
632
  setVotes(readStoredVotes(storageKey));
@@ -778,7 +778,7 @@ function RoadmapGridSingle({
778
778
  _chunk6NTPY5QAcjs.RoadmapCard,
779
779
  {
780
780
  item,
781
- id: _chunkP42V6N34cjs.devSectionAnchorId.call(void 0, "roadmap", item.id),
781
+ id: _chunkFYOKS5RIcjs.devSectionAnchorId.call(void 0, "roadmap", item.id),
782
782
  userVote: getVote(item.id),
783
783
  onVote: (voteType) => onVote(item.id, voteType),
784
784
  isVoting: votingTasks.has(item.id)
@@ -894,7 +894,7 @@ function RoadmapGrid({
894
894
  );
895
895
  }
896
896
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
897
- _chunkP42V6N34cjs.Accordion,
897
+ _chunkFYOKS5RIcjs.Accordion,
898
898
  {
899
899
  type: "multiple",
900
900
  value: expandedQuarters,
@@ -904,13 +904,13 @@ function RoadmapGrid({
904
904
  const itemCount = _optionalChain([itemsByQuarter, 'access', _20 => _20[quarter], 'optionalAccess', _21 => _21.length]) || 0;
905
905
  const isExpanded = expandedQuarters.includes(quarter);
906
906
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
907
- _chunkP42V6N34cjs.AccordionItem,
907
+ _chunkFYOKS5RIcjs.AccordionItem,
908
908
  {
909
909
  value: quarter,
910
910
  id: `quarter-${quarter.replace(/\s+/g, "-").toLowerCase()}`,
911
911
  className: "border-0",
912
912
  children: [
913
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP42V6N34cjs.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
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFYOKS5RIcjs.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: [
914
914
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
915
915
  "h3",
916
916
  {
@@ -940,7 +940,7 @@ function RoadmapGrid({
940
940
  }
941
941
  )
942
942
  ] }) }),
943
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP42V6N34cjs.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
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFYOKS5RIcjs.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,
944
944
  RoadmapGridSingle,
945
945
  {
946
946
  items: itemsByQuarter[quarter],
@@ -992,8 +992,8 @@ function RoadmapGridSkeleton({ count = 4, showLeftMargin = true }) {
992
992
 
993
993
 
994
994
  var DEFAULT_ENDPOINT3 = "/api/roadmap";
995
- var DEFAULT_SEARCH_PARAM_KEY2 = _chunkP42V6N34cjs.DEV_SECTION_PARAM_KEYS.search;
996
- var DEFAULT_STATUS_PARAM_KEY2 = _chunkP42V6N34cjs.DEV_SECTION_PARAM_KEYS.status;
995
+ var DEFAULT_SEARCH_PARAM_KEY2 = _chunkFYOKS5RIcjs.DEV_SECTION_PARAM_KEYS.search;
996
+ var DEFAULT_STATUS_PARAM_KEY2 = _chunkFYOKS5RIcjs.DEV_SECTION_PARAM_KEYS.status;
997
997
  function RoadmapView({
998
998
  endpoint = DEFAULT_ENDPOINT3,
999
999
  initialItems,
@@ -1016,7 +1016,7 @@ function RoadmapView({
1016
1016
  const items = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _22 => _22.items]), () => ( []));
1017
1017
  _chunkWCVZCGK5cjs.useScrollToHash.call(void 0, data, { headerOffset: _chunkUVTD52MDcjs.STICKY_HEADER_OFFSET_PX });
1018
1018
  if (error) {
1019
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP42V6N34cjs.LoadError, { message: "Failed to load roadmap.", onRetry: reload });
1019
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFYOKS5RIcjs.LoadError, { message: "Failed to load roadmap.", onRetry: reload });
1020
1020
  }
1021
1021
  if (isLoading && !data) {
1022
1022
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RoadmapGridSkeleton, { showLeftMargin });
@@ -1069,7 +1069,7 @@ function DeliveryTable({ items, isLoading = false }) {
1069
1069
  // → `#delivery-<external_id>`; `useScrollToHash` in
1070
1070
  // `delivery-lists.tsx` finds the row by id and scrolls. The
1071
1071
  // outer wrapper here ONLY exists for the row separators.
1072
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border last:border-b-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3AHTOSXJcjs.DeliveryRow, { item, id: _chunkP42V6N34cjs.devSectionAnchorId.call(void 0, "delivery", item.id) }) }, item.id)
1072
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border-b border-ods-border last:border-b-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC4HRRB3Vcjs.DeliveryRow, { item, id: _chunkFYOKS5RIcjs.devSectionAnchorId.call(void 0, "delivery", item.id) }) }, item.id)
1073
1073
  )) }) });
1074
1074
  }
1075
1075
 
@@ -1078,8 +1078,8 @@ function DeliveryTable({ items, isLoading = false }) {
1078
1078
 
1079
1079
  var DEFAULT_COMPLETED_ENDPOINT = "/api/delivery/completed";
1080
1080
  var DEFAULT_IN_PROGRESS_ENDPOINT = "/api/delivery/in-progress";
1081
- var DEFAULT_SEARCH_PARAM_KEY3 = _chunkP42V6N34cjs.DEV_SECTION_PARAM_KEYS.search;
1082
- var DEFAULT_TASK_TYPE_PARAM_KEY = _chunkP42V6N34cjs.DEV_SECTION_PARAM_KEYS.deliveryTaskType;
1081
+ var DEFAULT_SEARCH_PARAM_KEY3 = _chunkFYOKS5RIcjs.DEV_SECTION_PARAM_KEYS.search;
1082
+ var DEFAULT_TASK_TYPE_PARAM_KEY = _chunkFYOKS5RIcjs.DEV_SECTION_PARAM_KEYS.deliveryTaskType;
1083
1083
  function DeliveryLists({
1084
1084
  completedApiEndpoint = DEFAULT_COMPLETED_ENDPOINT,
1085
1085
  inProgressApiEndpoint = DEFAULT_IN_PROGRESS_ENDPOINT,
@@ -1146,11 +1146,11 @@ function DeliveryLists({
1146
1146
  const hasActiveFilters = searchQuery !== "" || taskTypeFilter !== "all";
1147
1147
  const hasResults = showCompleted && filteredCompleted.length > 0 || showInProgress && filteredInProgress.length > 0;
1148
1148
  if (error) {
1149
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP42V6N34cjs.LoadError, { message: error, onRetry: () => window.location.reload() }) });
1149
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFYOKS5RIcjs.LoadError, { message: error, onRetry: () => window.location.reload() }) });
1150
1150
  }
1151
1151
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[40px]", children: [
1152
1152
  !isLoading && !hasResults && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1153
- _chunk3AHTOSXJcjs.ListEmptyState,
1153
+ _chunkC4HRRB3Vcjs.ListEmptyState,
1154
1154
  {
1155
1155
  isFiltered: hasActiveFilters,
1156
1156
  filtered: {
@@ -1304,7 +1304,7 @@ function LegalDocumentPage({
1304
1304
  initialData = null,
1305
1305
  initialLastUpdatedLabel = null,
1306
1306
  apiEndpoint,
1307
- MarkdownRenderer = _chunkP42V6N34cjs.RichMarkdownRenderer,
1307
+ MarkdownRenderer = _chunkFYOKS5RIcjs.RichMarkdownRenderer,
1308
1308
  backButton,
1309
1309
  shell = true
1310
1310
  }) {
@@ -1317,7 +1317,7 @@ function LegalDocumentPage({
1317
1317
  const fallbackLastUpdatedLabel = _optionalChain([data, 'optionalAccess', _27 => _27.lastSynced]) != null ? _chunk6NTPY5QAcjs.formatLegalDate.call(void 0, data.lastSynced) : null;
1318
1318
  const effectiveLastUpdatedLabel = _nullishCoalesce(initialLastUpdatedLabel, () => ( fallbackLastUpdatedLabel));
1319
1319
  const subtitle = effectiveLastUpdatedLabel ? `Last Updated: ${effectiveLastUpdatedLabel}` : fallbackDescription;
1320
- const inner = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkP42V6N34cjs.PageLayout, { title, subtitle, backButton: backCfg, titleSize: "h1", titleWrap: true, children: [
1320
+ const inner = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkFYOKS5RIcjs.PageLayout, { title, subtitle, backButton: backCfg, titleSize: "h1", titleWrap: true, children: [
1321
1321
  _optionalChain([data, 'optionalAccess', _28 => _28.sourceFile]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-ods-text-secondary opacity-75 text-h6", children: [
1322
1322
  "Source: ",
1323
1323
  data.sourceFile
@@ -1357,7 +1357,7 @@ function LegalDocumentPage({
1357
1357
  ] })
1358
1358
  ] }) }) }) }) })
1359
1359
  ] });
1360
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP42V6N34cjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
1360
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFYOKS5RIcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
1361
1361
  }
1362
1362
 
1363
1363
 
@@ -1,14 +1,14 @@
1
1
  "use client";
2
2
  import {
3
3
  ContactForm
4
- } from "./chunk-SS5MBHDP.js";
4
+ } from "./chunk-VMMHJFHG.js";
5
5
  import {
6
6
  DeliveryRow,
7
7
  DevCardRowContent,
8
8
  DevCardRowSkeletonList,
9
9
  DevSectionPage,
10
10
  ListEmptyState
11
- } from "./chunk-MR3A4MZV.js";
11
+ } from "./chunk-VWFZRMQR.js";
12
12
  import {
13
13
  EmptyState,
14
14
  UnifiedPagination
@@ -19,7 +19,7 @@ import {
19
19
  TOAST_COPY,
20
20
  isOptimistic,
21
21
  useOptionalTicketLive
22
- } from "./chunk-6YKAT7NV.js";
22
+ } from "./chunk-NF7GNGYG.js";
23
23
  import {
24
24
  AlertDialog,
25
25
  AlertDialogAction,
@@ -35,7 +35,7 @@ import {
35
35
  Textarea,
36
36
  TicketAttachmentsList,
37
37
  devSectionAnchorId
38
- } from "./chunk-4L6XCMOU.js";
38
+ } from "./chunk-5HB7FLCV.js";
39
39
  import {
40
40
  toast,
41
41
  useScrollToHash
@@ -55,7 +55,7 @@ import {
55
55
  formatRelativeTime,
56
56
  useChatAttachments,
57
57
  useChatIdentity
58
- } from "./chunk-PO33GZVY.js";
58
+ } from "./chunk-SMAAV3HL.js";
59
59
  import {
60
60
  STICKY_HEADER_OFFSET_PX,
61
61
  scrollElementIntoView
@@ -1,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
 
3
3
 
4
- var _chunkP42V6N34cjs = require('./chunk-P42V6N34.cjs');
4
+ var _chunkFYOKS5RIcjs = require('./chunk-FYOKS5RI.cjs');
5
5
 
6
6
 
7
7
 
@@ -46,7 +46,7 @@ function GoogleSheetsViewer({ externalUrl, fileName, height }) {
46
46
  ] });
47
47
  }
48
48
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
49
- _chunkP42V6N34cjs.EmbedViewerFrame,
49
+ _chunkFYOKS5RIcjs.EmbedViewerFrame,
50
50
  {
51
51
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVX4E6YSBcjs.GoogleSheetsIcon, { className: "h-5 w-5 shrink-0" }),
52
52
  title: displayName,
@@ -81,7 +81,7 @@ function PdfViewer({ src, fileName, onPreview, onDownload, height }) {
81
81
  ] });
82
82
  }
83
83
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
84
- _chunkP42V6N34cjs.EmbedViewerFrame,
84
+ _chunkFYOKS5RIcjs.EmbedViewerFrame,
85
85
  {
86
86
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVX4E6YSBcjs.AdobePdfIcon, { className: "h-5 w-5 shrink-0" }),
87
87
  title: displayName,