@flamingo-stack/openframe-frontend-core 0.0.762 → 0.0.764

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 (69) hide show
  1. package/dist/build/export-map.json +1 -1
  2. package/dist/{chunk-J4P47JHM.cjs → chunk-3FC6AKEJ.cjs} +7 -7
  3. package/dist/{chunk-CZ3OVWUL.cjs → chunk-5AV5R5RC.cjs} +6 -6
  4. package/dist/{chunk-TQPQKBBL.cjs → chunk-74ALTXXC.cjs} +34 -34
  5. package/dist/{chunk-DZ6BYXQF.cjs → chunk-7GUWPGB4.cjs} +9 -9
  6. package/dist/{chunk-PE26VSWT.cjs → chunk-BIA77I6B.cjs} +8 -2
  7. package/dist/{chunk-3WPWUUFU.cjs → chunk-FQWBIKF4.cjs} +17 -17
  8. package/dist/{chunk-NSR7K57R.cjs → chunk-IDGOMHTC.cjs} +43 -43
  9. package/dist/{chunk-PFXR3RF3.cjs → chunk-JD7CL2I6.cjs} +4 -4
  10. package/dist/{chunk-N52HFJTK.cjs → chunk-JJ2S6C5U.cjs} +36 -36
  11. package/dist/{chunk-AXGTRPF6.cjs → chunk-L2V7K7RR.cjs} +11 -11
  12. package/dist/{chunk-TGVV7STM.cjs → chunk-LNGR4DXA.cjs} +10 -10
  13. package/dist/{chunk-QCO32MEE.cjs → chunk-NJS7FQRW.cjs} +4 -4
  14. package/dist/{chunk-4NGXJA3V.cjs → chunk-PERN37KO.cjs} +4 -4
  15. package/dist/{chunk-DYJWZIPU.cjs → chunk-RYSNH2VY.cjs} +72 -72
  16. package/dist/{chunk-CEJDHCFZ.cjs → chunk-T5FRANE6.cjs} +21 -21
  17. package/dist/{chunk-72XMAKDA.cjs → chunk-VL6IXTAI.cjs} +174 -144
  18. package/dist/{chunk-TWAHPTWW.cjs → chunk-XFNWHCRM.cjs} +3 -3
  19. package/dist/{chunk-E4LA4BEH.cjs → chunk-ZCU2PYCW.cjs} +9 -9
  20. package/dist/{chunk-4VAMNI27.cjs → chunk-ZG6F5A3A.cjs} +27 -27
  21. package/dist/{cloud-tenants-M5SIL6QZ.cjs → cloud-tenants-N5CLYDPU.cjs} +6 -6
  22. package/dist/components/case-studies/index.cjs +16 -16
  23. package/dist/components/chat/index.cjs +4 -4
  24. package/dist/components/contact/index.cjs +7 -7
  25. package/dist/components/docs/index.cjs +10 -10
  26. package/dist/components/embeds/index.cjs +7 -7
  27. package/dist/components/faq/index.cjs +8 -8
  28. package/dist/components/features/index.cjs +8 -6
  29. package/dist/components/features/walkthrough-video.d.ts +7 -0
  30. package/dist/components/features/walkthrough-video.d.ts.map +1 -1
  31. package/dist/components/features/walkthrough-video.js +9 -1
  32. package/dist/components/help-center-pages/index.cjs +58 -58
  33. package/dist/components/index.cjs +43 -39
  34. package/dist/components/meeting-scheduler/index.cjs +24 -24
  35. package/dist/components/navigation/index.cjs +9 -9
  36. package/dist/components/onboarding-guides/index.cjs +8 -8
  37. package/dist/components/product-demo/index.cjs +8 -8
  38. package/dist/components/tickets/index.cjs +11 -11
  39. package/dist/components/ui/date-picker.d.ts.map +1 -1
  40. package/dist/components/ui/date-picker.js +2 -2
  41. package/dist/components/ui/device-card.d.ts.map +1 -1
  42. package/dist/components/ui/device-card.js +3 -2
  43. package/dist/components/ui/index.cjs +8 -6
  44. package/dist/components/ui/index.d.ts +1 -0
  45. package/dist/components/ui/index.d.ts.map +1 -1
  46. package/dist/components/ui/index.js +1 -0
  47. package/dist/components/ui/super-user-banner-view.d.ts +24 -0
  48. package/dist/components/ui/super-user-banner-view.d.ts.map +1 -0
  49. package/dist/components/ui/super-user-banner-view.js +28 -0
  50. package/dist/{devices-TZY7RF7M.cjs → devices-557PMFDC.cjs} +7 -7
  51. package/dist/{embeddable-chat-HWQSP3DY.cjs → embeddable-chat-YFUCVDMV.cjs} +69 -69
  52. package/dist/index.cjs +14 -10
  53. package/dist/{knowledge-UKC2BLQP.cjs → knowledge-4JTOUDAR.cjs} +7 -7
  54. package/dist/{logs-MFVTQ5NN.cjs → logs-7YWAOPZ2.cjs} +14 -14
  55. package/dist/{policies-BETELENB.cjs → policies-W5JEPQTA.cjs} +10 -10
  56. package/dist/{scripts-XDT3ZAXU.cjs → scripts-FY5IPOIM.cjs} +11 -11
  57. package/dist/{software-update-EW5X7R2X.cjs → software-update-5BOGZOHG.cjs} +9 -9
  58. package/dist/{tickets-board-4PBXPSGJ.cjs → tickets-board-DXMF7IKL.cjs} +7 -7
  59. package/dist/utils/date-utils.d.ts +7 -2
  60. package/dist/utils/date-utils.d.ts.map +1 -1
  61. package/dist/utils/date-utils.js +8 -3
  62. package/dist/utils/index.cjs +7 -2
  63. package/package.json +1 -1
  64. package/src/components/features/walkthrough-video.tsx +17 -0
  65. package/src/components/ui/date-picker.tsx +6 -3
  66. package/src/components/ui/device-card.tsx +5 -6
  67. package/src/components/ui/index.ts +1 -0
  68. package/src/components/ui/super-user-banner-view.tsx +52 -0
  69. package/src/utils/date-utils.ts +17 -8
@@ -6,14 +6,14 @@ var _chunkLVKUMVUJcjs = require('./chunk-LVKUMVUJ.cjs');
6
6
 
7
7
 
8
8
 
9
- var _chunkTGVV7STMcjs = require('./chunk-TGVV7STM.cjs');
9
+ var _chunkLNGR4DXAcjs = require('./chunk-LNGR4DXA.cjs');
10
10
 
11
11
 
12
12
  var _chunkTSJUL6IHcjs = require('./chunk-TSJUL6IH.cjs');
13
13
 
14
14
 
15
15
 
16
- var _chunkJ4P47JHMcjs = require('./chunk-J4P47JHM.cjs');
16
+ var _chunk3FC6AKEJcjs = require('./chunk-3FC6AKEJ.cjs');
17
17
 
18
18
 
19
19
  var _chunkRM6AHNM4cjs = require('./chunk-RM6AHNM4.cjs');
@@ -29,7 +29,7 @@ var _chunkRM6AHNM4cjs = require('./chunk-RM6AHNM4.cjs');
29
29
 
30
30
 
31
31
 
32
- var _chunk72XMAKDAcjs = require('./chunk-72XMAKDA.cjs');
32
+ var _chunkVL6IXTAIcjs = require('./chunk-VL6IXTAI.cjs');
33
33
 
34
34
 
35
35
  var _chunk2IFCRPNPcjs = require('./chunk-2IFCRPNP.cjs');
@@ -41,12 +41,12 @@ var _chunkXCH7SPGIcjs = require('./chunk-XCH7SPGI.cjs');
41
41
 
42
42
 
43
43
 
44
- var _chunkCEJDHCFZcjs = require('./chunk-CEJDHCFZ.cjs');
44
+ var _chunkT5FRANE6cjs = require('./chunk-T5FRANE6.cjs');
45
45
 
46
46
 
47
47
 
48
48
 
49
- var _chunkTQPQKBBLcjs = require('./chunk-TQPQKBBL.cjs');
49
+ var _chunk74ALTXXCcjs = require('./chunk-74ALTXXC.cjs');
50
50
 
51
51
 
52
52
  var _chunkEWCFJLNUcjs = require('./chunk-EWCFJLNU.cjs');
@@ -108,8 +108,8 @@ var _chunk3ATAYP36cjs = require('./chunk-3ATAYP36.cjs');
108
108
  // src/components/shared/product-release/product-releases-view.tsx
109
109
  var _jsxruntime = require('react/jsx-runtime');
110
110
  var DEFAULT_ENDPOINT = "/api/releases";
111
- var DEFAULT_SEARCH_PARAM_KEY = _chunkCEJDHCFZcjs.DEV_SECTION_PARAM_KEYS.search;
112
- var DEFAULT_STATUS_PARAM_KEY = _chunkCEJDHCFZcjs.DEV_SECTION_PARAM_KEYS.releaseStatus;
111
+ var DEFAULT_SEARCH_PARAM_KEY = _chunkT5FRANE6cjs.DEV_SECTION_PARAM_KEYS.search;
112
+ var DEFAULT_STATUS_PARAM_KEY = _chunkT5FRANE6cjs.DEV_SECTION_PARAM_KEYS.releaseStatus;
113
113
  var DEFAULT_PAGE_PARAM_KEY = "page";
114
114
  function ReleaseRow({
115
115
  release,
@@ -118,7 +118,7 @@ function ReleaseRow({
118
118
  }) {
119
119
  const runtime = _chunkUJ7AXHRZcjs.useChatRuntime.call(void 0, );
120
120
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
121
- const cta = _chunkCEJDHCFZcjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _2 => _2.composeContentUrl]), {
121
+ const cta = _chunkT5FRANE6cjs.resolveContentHref.call(void 0, _optionalChain([runtime, 'optionalAccess', _2 => _2.composeContentUrl]), {
122
122
  type: "product_release",
123
123
  slug: release.slug,
124
124
  basePath,
@@ -128,7 +128,7 @@ function ReleaseRow({
128
128
  const onClick = (e) => {
129
129
  if (e.defaultPrevented || _chunk22XAPV6Ncjs.isModifierClick.call(void 0, e) || target === "_blank") return;
130
130
  e.preventDefault();
131
- _chunkTQPQKBBLcjs.executeNavigationImperative.call(void 0, {
131
+ _chunk74ALTXXCcjs.executeNavigationImperative.call(void 0, {
132
132
  runtime,
133
133
  href: cta.href,
134
134
  targetPlatform: cta.targetPlatform,
@@ -190,10 +190,10 @@ function ProductReleasesView({
190
190
  router.replace(`${pathname}?${params.toString()}`, { scroll: false });
191
191
  };
192
192
  if (error) {
193
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "w-full", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.LoadError, { message: "Failed to load releases.", onRetry: reload }) });
193
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "w-full", className), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVL6IXTAIcjs.LoadError, { message: "Failed to load releases.", onRetry: reload }) });
194
194
  }
195
195
  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,
196
- _chunkTGVV7STMcjs.ListEmptyState,
196
+ _chunkLNGR4DXAcjs.ListEmptyState,
197
197
  {
198
198
  isFiltered: hasActiveFilters,
199
199
  filtered: {
@@ -288,7 +288,7 @@ function MediaGalleryStrip({ items, className }) {
288
288
  var _lucidereact = require('lucide-react');
289
289
 
290
290
 
291
- var DefaultMarkdownRenderer = _chunk72XMAKDAcjs.RichMarkdownRenderer;
291
+ var DefaultMarkdownRenderer = _chunkVL6IXTAIcjs.RichMarkdownRenderer;
292
292
  var DEFAULT_ENDPOINT2 = "/api/releases";
293
293
  function ReleaseDetailPage({
294
294
  authorHref,
@@ -306,8 +306,8 @@ function ReleaseDetailPage({
306
306
  shell = true
307
307
  }) {
308
308
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
309
- const captions = _chunkTQPQKBBLcjs.useCaptions.call(void 0, );
310
- const renderShell = (node) => shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.PageShell, { children: node }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: node });
309
+ const captions = _chunk74ALTXXCcjs.useCaptions.call(void 0, );
310
+ const renderShell = (node) => shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVL6IXTAIcjs.PageShell, { children: node }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: node });
311
311
  const seed = initialData == null ? void 0 : initialData;
312
312
  const {
313
313
  data: release,
@@ -414,7 +414,7 @@ function ReleaseDetailPage({
414
414
  backButton: showBackButton ? { label: backLabel, onClick: () => router.push(backHref) } : void 0,
415
415
  children: [
416
416
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-6 content-md:space-y-8", children: [
417
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.EntityTagBadges, { tags: release.product_release_tags }),
417
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVL6IXTAIcjs.EntityTagBadges, { tags: release.product_release_tags }),
418
418
  /* @__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: [
419
419
  /* @__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: [
420
420
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: releaseType.toLocaleUpperCase() }),
@@ -476,7 +476,7 @@ function ReleaseDetailPage({
476
476
  ] })
477
477
  ] }) }) }),
478
478
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
479
- _chunk72XMAKDAcjs.ReleaseChangelogSection,
479
+ _chunkVL6IXTAIcjs.ReleaseChangelogSection,
480
480
  {
481
481
  title: "Breaking Changes",
482
482
  entries: breakingChanges || [],
@@ -487,7 +487,7 @@ function ReleaseDetailPage({
487
487
  }
488
488
  ),
489
489
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
490
- _chunk72XMAKDAcjs.ReleaseChangelogSection,
490
+ _chunkVL6IXTAIcjs.ReleaseChangelogSection,
491
491
  {
492
492
  title: "Features Added",
493
493
  entries: featuresAdded || [],
@@ -497,7 +497,7 @@ function ReleaseDetailPage({
497
497
  }
498
498
  ),
499
499
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
500
- _chunk72XMAKDAcjs.ReleaseChangelogSection,
500
+ _chunkVL6IXTAIcjs.ReleaseChangelogSection,
501
501
  {
502
502
  title: "Bugs Fixed",
503
503
  entries: bugFixed || [],
@@ -507,7 +507,7 @@ function ReleaseDetailPage({
507
507
  }
508
508
  ),
509
509
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
510
- _chunk72XMAKDAcjs.ReleaseChangelogSection,
510
+ _chunkVL6IXTAIcjs.ReleaseChangelogSection,
511
511
  {
512
512
  title: "Improvements",
513
513
  entries: improvements || [],
@@ -533,7 +533,7 @@ function ReleaseDetailPage({
533
533
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "tracking-[-0.28px] text-ods-text-secondary text-h5", children: "Related Enhancements and Bug-fixes" }),
534
534
  (() => {
535
535
  const deliveryCount = deliveryData ? deliveryData.completed.length + deliveryData.inProgress.length : 0;
536
- return deliveryLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeliverySection, { data: deliveryData, isLoading: deliveryLoading }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.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 }) }) });
536
+ return deliveryLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DeliverySection, { data: deliveryData, isLoading: deliveryLoading }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVL6IXTAIcjs.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 }) }) });
537
537
  })()
538
538
  ] }),
539
539
  (_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: [
@@ -629,7 +629,7 @@ function useRoadmapVoting(options = {}) {
629
629
  const { getSignals } = _chunkXCH7SPGIcjs.useHumanitySignals.call(void 0, );
630
630
  const [votes, setVotes] = _react.useState.call(void 0, NO_VOTES);
631
631
  const [loadedKey, setLoadedKey] = _react.useState.call(void 0, null);
632
- const hydrated = _chunkTQPQKBBLcjs.useIsHydrated.call(void 0, );
632
+ const hydrated = _chunk74ALTXXCcjs.useIsHydrated.call(void 0, );
633
633
  if (hydrated && loadedKey !== storageKey) {
634
634
  setLoadedKey(storageKey);
635
635
  setVotes(readStoredVotes(storageKey));
@@ -781,7 +781,7 @@ function RoadmapGridSingle({
781
781
  _chunk22XAPV6Ncjs.RoadmapCard,
782
782
  {
783
783
  item,
784
- id: _chunkCEJDHCFZcjs.devSectionAnchorId.call(void 0, "roadmap", item.id),
784
+ id: _chunkT5FRANE6cjs.devSectionAnchorId.call(void 0, "roadmap", item.id),
785
785
  userVote: getVote(item.id),
786
786
  onVote: (voteType) => onVote(item.id, voteType),
787
787
  isVoting: votingTasks.has(item.id)
@@ -897,7 +897,7 @@ function RoadmapGrid({
897
897
  );
898
898
  }
899
899
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
900
- _chunk72XMAKDAcjs.Accordion,
900
+ _chunkVL6IXTAIcjs.Accordion,
901
901
  {
902
902
  type: "multiple",
903
903
  value: expandedQuarters,
@@ -907,13 +907,13 @@ function RoadmapGrid({
907
907
  const itemCount = _optionalChain([itemsByQuarter, 'access', _18 => _18[quarter], 'optionalAccess', _19 => _19.length]) || 0;
908
908
  const isExpanded = expandedQuarters.includes(quarter);
909
909
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
910
- _chunk72XMAKDAcjs.AccordionItem,
910
+ _chunkVL6IXTAIcjs.AccordionItem,
911
911
  {
912
912
  value: quarter,
913
913
  id: `quarter-${quarter.replace(/\s+/g, "-").toLowerCase()}`,
914
914
  className: "border-0",
915
915
  children: [
916
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.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, _chunkVL6IXTAIcjs.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: [
917
917
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
918
918
  "h3",
919
919
  {
@@ -943,7 +943,7 @@ function RoadmapGrid({
943
943
  }
944
944
  )
945
945
  ] }) }),
946
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.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, _chunkVL6IXTAIcjs.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,
947
947
  RoadmapGridSingle,
948
948
  {
949
949
  items: itemsByQuarter[quarter],
@@ -982,8 +982,8 @@ function RoadmapGridSkeleton({ region = true, count = 4, showLeftMargin = true }
982
982
 
983
983
  var DEFAULT_ENDPOINT3 = "/api/roadmap";
984
984
  var SYNCED_LIST_CLASS = "flex w-full flex-col gap-[var(--spacing-system-lf)]";
985
- var DEFAULT_SEARCH_PARAM_KEY2 = _chunkCEJDHCFZcjs.DEV_SECTION_PARAM_KEYS.search;
986
- var DEFAULT_STATUS_PARAM_KEY2 = _chunkCEJDHCFZcjs.DEV_SECTION_PARAM_KEYS.status;
985
+ var DEFAULT_SEARCH_PARAM_KEY2 = _chunkT5FRANE6cjs.DEV_SECTION_PARAM_KEYS.search;
986
+ var DEFAULT_STATUS_PARAM_KEY2 = _chunkT5FRANE6cjs.DEV_SECTION_PARAM_KEYS.status;
987
987
  function RoadmapView({
988
988
  endpoint = DEFAULT_ENDPOINT3,
989
989
  initialItems,
@@ -1007,18 +1007,18 @@ function RoadmapView({
1007
1007
  });
1008
1008
  const items = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _20 => _20.items]), () => ( []));
1009
1009
  _chunkXCH7SPGIcjs.useScrollToHash.call(void 0, data, { headerOffset: _chunk3RYIF4OWcjs.STICKY_HEADER_OFFSET_PX });
1010
- const syncInPage = _chunkTGVV7STMcjs.usePageDataSync.call(void 0, _optionalChain([data, 'optionalAccess', _21 => _21.sync]), isLoading && !data);
1010
+ const syncInPage = _chunkLNGR4DXAcjs.usePageDataSync.call(void 0, _optionalChain([data, 'optionalAccess', _21 => _21.sync]), isLoading && !data);
1011
1011
  if (error) {
1012
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.LoadError, { message: "Failed to load roadmap.", onRetry: reload });
1012
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVL6IXTAIcjs.LoadError, { message: "Failed to load roadmap.", onRetry: reload });
1013
1013
  }
1014
1014
  if (isLoading && !data) {
1015
1015
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: SYNCED_LIST_CLASS, children: [
1016
- !syncInPage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.DataSyncLine, { loading: true }),
1016
+ !syncInPage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVL6IXTAIcjs.DataSyncLine, { loading: true }),
1017
1017
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RoadmapGridSkeleton, { showLeftMargin })
1018
1018
  ] });
1019
1019
  }
1020
1020
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: SYNCED_LIST_CLASS, children: [
1021
- !syncInPage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.DataSyncLine, { sync: _optionalChain([data, 'optionalAccess', _22 => _22.sync]) }),
1021
+ !syncInPage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVL6IXTAIcjs.DataSyncLine, { sync: _optionalChain([data, 'optionalAccess', _22 => _22.sync]) }),
1022
1022
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1023
1023
  RoadmapGrid,
1024
1024
  {
@@ -1068,7 +1068,7 @@ function DeliveryTable({ items, isLoading = false }) {
1068
1068
  // → `#delivery-<external_id>`; `useScrollToHash` in
1069
1069
  // `delivery-lists.tsx` finds the row by id and scrolls. The
1070
1070
  // 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, _chunkTGVV7STMcjs.DeliveryRow, { item, id: _chunkCEJDHCFZcjs.devSectionAnchorId.call(void 0, "delivery", item.id) }) }, item.id)
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, _chunkLNGR4DXAcjs.DeliveryRow, { item, id: _chunkT5FRANE6cjs.devSectionAnchorId.call(void 0, "delivery", item.id) }) }, item.id)
1072
1072
  )) }) });
1073
1073
  }
1074
1074
 
@@ -1077,8 +1077,8 @@ function DeliveryTable({ items, isLoading = false }) {
1077
1077
 
1078
1078
  var DEFAULT_COMPLETED_ENDPOINT = "/api/delivery/completed";
1079
1079
  var DEFAULT_IN_PROGRESS_ENDPOINT = "/api/delivery/in-progress";
1080
- var DEFAULT_SEARCH_PARAM_KEY3 = _chunkCEJDHCFZcjs.DEV_SECTION_PARAM_KEYS.search;
1081
- var DEFAULT_TASK_TYPE_PARAM_KEY = _chunkCEJDHCFZcjs.DEV_SECTION_PARAM_KEYS.deliveryTaskType;
1080
+ var DEFAULT_SEARCH_PARAM_KEY3 = _chunkT5FRANE6cjs.DEV_SECTION_PARAM_KEYS.search;
1081
+ var DEFAULT_TASK_TYPE_PARAM_KEY = _chunkT5FRANE6cjs.DEV_SECTION_PARAM_KEYS.deliveryTaskType;
1082
1082
  function DeliveryLists({
1083
1083
  completedApiEndpoint = DEFAULT_COMPLETED_ENDPOINT,
1084
1084
  inProgressApiEndpoint = DEFAULT_IN_PROGRESS_ENDPOINT,
@@ -1142,18 +1142,18 @@ function DeliveryLists({
1142
1142
  const filteredCompleted = _optionalChain([data, 'optionalAccess', _23 => _23.completed]) || [];
1143
1143
  const filteredInProgress = _optionalChain([data, 'optionalAccess', _24 => _24.inProgress]) || [];
1144
1144
  _chunkXCH7SPGIcjs.useScrollToHash.call(void 0, data, { headerOffset: _chunk3RYIF4OWcjs.STICKY_HEADER_OFFSET_PX });
1145
- const syncInPage = _chunkTGVV7STMcjs.usePageDataSync.call(void 0, sync, isLoading && !data);
1145
+ const syncInPage = _chunkLNGR4DXAcjs.usePageDataSync.call(void 0, sync, isLoading && !data);
1146
1146
  const showCompleted = true;
1147
1147
  const showInProgress = true;
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, _chunk72XMAKDAcjs.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, _chunkVL6IXTAIcjs.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
- !syncInPage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.DataSyncLine, { sync, loading: isLoading && !data }),
1154
+ !syncInPage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVL6IXTAIcjs.DataSyncLine, { sync, loading: isLoading && !data }),
1155
1155
  !isLoading && !hasResults && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1156
- _chunkTGVV7STMcjs.ListEmptyState,
1156
+ _chunkLNGR4DXAcjs.ListEmptyState,
1157
1157
  {
1158
1158
  isFiltered: hasActiveFilters,
1159
1159
  filtered: {
@@ -1383,7 +1383,7 @@ function LegalDocumentPage({
1383
1383
  emptyStateMessage: emptyStateMessageProp,
1384
1384
  initialData = null,
1385
1385
  apiEndpoint,
1386
- MarkdownRenderer = _chunk72XMAKDAcjs.RichMarkdownRenderer,
1386
+ MarkdownRenderer = _chunkVL6IXTAIcjs.RichMarkdownRenderer,
1387
1387
  documentsEndpoint,
1388
1388
  backButton,
1389
1389
  faq,
@@ -1404,7 +1404,7 @@ function LegalDocumentPage({
1404
1404
  const emptyStateMessage = _nullishCoalesce(emptyStateMessageProp, () => ( `${title} is not available at this time.`));
1405
1405
  const subtitle = _nullishCoalesce(legalDocumentStampLabel(data), () => ( fallbackDescription));
1406
1406
  const inner = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunk2IFCRPNPcjs.PageLayout, { title, subtitle, backButton: backCfg, titleSize: "h1", titleWrap: true, children: [
1407
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.DataSyncLine, { sync: data ? { source: "github", syncedAt: data.lastSynced } : null, loading: isLoading && !data }),
1407
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVL6IXTAIcjs.DataSyncLine, { sync: data ? { source: "github", syncedAt: data.lastSynced } : null, loading: isLoading && !data }),
1408
1408
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-1 flex-col items-start gap-6 lg:flex-row lg:gap-10", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex-1", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "article", { className: "space-y-2", children: isLoading ? (
1409
1409
  // Loading skeleton matching Knowledge Hub pattern
1410
1410
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-6", children: [
@@ -1439,9 +1439,9 @@ function LegalDocumentPage({
1439
1439
  "for more information."
1440
1440
  ] })
1441
1441
  ] }) }) }) }) }),
1442
- faqSlot && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ4P47JHMcjs.FaqSection, { ..._chunkJ4P47JHMcjs.pageFaqProps.call(void 0, faqSlot) })
1442
+ faqSlot && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3FC6AKEJcjs.FaqSection, { ..._chunk3FC6AKEJcjs.pageFaqProps.call(void 0, faqSlot) })
1443
1443
  ] });
1444
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
1444
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVL6IXTAIcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
1445
1445
  }
1446
1446
 
1447
1447
 
@@ -1,10 +1,10 @@
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 _chunkJ4P47JHMcjs = require('./chunk-J4P47JHM.cjs');
4
+ var _chunk3FC6AKEJcjs = require('./chunk-3FC6AKEJ.cjs');
5
5
 
6
6
 
7
- var _chunk72XMAKDAcjs = require('./chunk-72XMAKDA.cjs');
7
+ var _chunkVL6IXTAIcjs = require('./chunk-VL6IXTAI.cjs');
8
8
 
9
9
 
10
10
  var _chunk2IFCRPNPcjs = require('./chunk-2IFCRPNP.cjs');
@@ -35,7 +35,7 @@ function FaqDocumentPage({
35
35
  onClick: () => router.push(_nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _2 => _2.href]), () => ( "/")))
36
36
  };
37
37
  const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.PageLayout, { title, subtitle, backButton: backCfg, titleSize: "h1", titleWrap: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38
- _chunkJ4P47JHMcjs.FaqSection,
38
+ _chunk3FC6AKEJcjs.FaqSection,
39
39
  {
40
40
  initialFaqs,
41
41
  heading: null,
@@ -49,7 +49,7 @@ function FaqDocumentPage({
49
49
  ask
50
50
  }
51
51
  ) });
52
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
52
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVL6IXTAIcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
53
53
  }
54
54
 
55
55
 
@@ -3,17 +3,17 @@
3
3
 
4
4
 
5
5
 
6
- var _chunkTWAHPTWWcjs = require('./chunk-TWAHPTWW.cjs');
6
+ var _chunkXFNWHCRMcjs = require('./chunk-XFNWHCRM.cjs');
7
7
 
8
8
 
9
9
 
10
10
 
11
11
 
12
- var _chunkQCO32MEEcjs = require('./chunk-QCO32MEE.cjs');
12
+ var _chunkNJS7FQRWcjs = require('./chunk-NJS7FQRW.cjs');
13
13
 
14
14
 
15
15
 
16
- var _chunkCZ3OVWULcjs = require('./chunk-CZ3OVWUL.cjs');
16
+ var _chunk5AV5R5RCcjs = require('./chunk-5AV5R5RC.cjs');
17
17
 
18
18
 
19
19
 
@@ -21,7 +21,7 @@ var _chunkCZ3OVWULcjs = require('./chunk-CZ3OVWUL.cjs');
21
21
 
22
22
 
23
23
 
24
- var _chunk72XMAKDAcjs = require('./chunk-72XMAKDA.cjs');
24
+ var _chunkVL6IXTAIcjs = require('./chunk-VL6IXTAI.cjs');
25
25
 
26
26
 
27
27
  var _chunk2IFCRPNPcjs = require('./chunk-2IFCRPNP.cjs');
@@ -30,7 +30,7 @@ var _chunk2IFCRPNPcjs = require('./chunk-2IFCRPNP.cjs');
30
30
 
31
31
 
32
32
 
33
- var _chunkCEJDHCFZcjs = require('./chunk-CEJDHCFZ.cjs');
33
+ var _chunkT5FRANE6cjs = require('./chunk-T5FRANE6.cjs');
34
34
 
35
35
 
36
36
 
@@ -348,13 +348,13 @@ function toDocContent(value, requestedPath) {
348
348
  function toDataSync(value) {
349
349
  if (!isRecord(value)) return void 0;
350
350
  const source = readString(value, "source");
351
- if (!_chunk72XMAKDAcjs.isDataSyncSource.call(void 0, source)) return void 0;
351
+ if (!_chunkVL6IXTAIcjs.isDataSyncSource.call(void 0, source)) return void 0;
352
352
  return { source, syncedAt: _nullishCoalesce(readString(value, "syncedAt"), () => ( null)) };
353
353
  }
354
354
  function useDocumentTree(config, initialPath) {
355
355
  const { structureEndpoint, contentEndpoint, baseRoute } = config;
356
- const folderIndexFile = _nullishCoalesce(config.folderIndexFile, () => ( _chunkCEJDHCFZcjs.DEFAULT_FOLDER_INDEX_FILE));
357
- const cleanInitialPath = _chunkCEJDHCFZcjs.stripFolderIndexFromPath.call(void 0, _optionalChain([initialPath, 'optionalAccess', _4 => _4.replace, 'call', _5 => _5(/\/$/, "")]) || "", folderIndexFile);
356
+ const folderIndexFile = _nullishCoalesce(config.folderIndexFile, () => ( _chunkT5FRANE6cjs.DEFAULT_FOLDER_INDEX_FILE));
357
+ const cleanInitialPath = _chunkT5FRANE6cjs.stripFolderIndexFromPath.call(void 0, _optionalChain([initialPath, 'optionalAccess', _4 => _4.replace, 'call', _5 => _5(/\/$/, "")]) || "", folderIndexFile);
358
358
  const [structure, setStructure] = _react.useState.call(void 0, []);
359
359
  const [selectedPath, setSelectedPath] = _react.useState.call(void 0, cleanInitialPath);
360
360
  const [content, setContent] = _react.useState.call(void 0, null);
@@ -378,12 +378,12 @@ function useDocumentTree(config, initialPath) {
378
378
  } else if (pathname.startsWith(`${normalizedBaseRoute}/`)) {
379
379
  pathFromUrl = pathname.substring(`${normalizedBaseRoute}/`.length);
380
380
  }
381
- pathFromUrl = _chunkCEJDHCFZcjs.stripFolderIndexFromPath.call(void 0, pathFromUrl, folderIndexFile);
381
+ pathFromUrl = _chunkT5FRANE6cjs.stripFolderIndexFromPath.call(void 0, pathFromUrl, folderIndexFile);
382
382
  if (pathFromUrl !== selectedPathRef.current) {
383
383
  setSelectedPath(pathFromUrl);
384
384
  if (pathFromUrl) {
385
385
  const parentPath = pathFromUrl.includes("/") ? pathFromUrl.substring(0, pathFromUrl.lastIndexOf("/")) : pathFromUrl;
386
- setExpandedNodes(new Set(_chunkCEJDHCFZcjs.getDocAncestorNodeIds.call(void 0, parentPath)));
386
+ setExpandedNodes(new Set(_chunkT5FRANE6cjs.getDocAncestorNodeIds.call(void 0, parentPath)));
387
387
  }
388
388
  setTimeout(() => {
389
389
  scrollToContent();
@@ -401,7 +401,7 @@ function useDocumentTree(config, initialPath) {
401
401
  setSelectedPath(cleanInitialPath);
402
402
  if (cleanInitialPath) {
403
403
  const parentPath = cleanInitialPath.includes("/") ? cleanInitialPath.substring(0, cleanInitialPath.lastIndexOf("/")) : cleanInitialPath;
404
- setExpandedNodes(new Set(_chunkCEJDHCFZcjs.getDocAncestorNodeIds.call(void 0, parentPath)));
404
+ setExpandedNodes(new Set(_chunkT5FRANE6cjs.getDocAncestorNodeIds.call(void 0, parentPath)));
405
405
  }
406
406
  setExternalNavCount((n) => n + 1);
407
407
  }
@@ -426,7 +426,7 @@ function useDocumentTree(config, initialPath) {
426
426
  if (cleanInitialPath) {
427
427
  const pathForExpansion = cleanInitialPath.includes(".") ? cleanInitialPath.substring(0, cleanInitialPath.lastIndexOf("/")) : cleanInitialPath;
428
428
  if (pathForExpansion) {
429
- setExpandedNodes(new Set(_chunkCEJDHCFZcjs.getDocAncestorNodeIds.call(void 0, pathForExpansion)));
429
+ setExpandedNodes(new Set(_chunkT5FRANE6cjs.getDocAncestorNodeIds.call(void 0, pathForExpansion)));
430
430
  }
431
431
  } else if (nodes.length > 0) {
432
432
  const hasRootReadme = nodes.some((node) => node.type === "file" && node.path === folderIndexFile);
@@ -466,7 +466,7 @@ function useDocumentTree(config, initialPath) {
466
466
  setContent(null);
467
467
  return;
468
468
  }
469
- const probe = _chunkCEJDHCFZcjs.findDocNodeByPath.call(void 0, _chunkCEJDHCFZcjs.stripFolderIndexFromPath.call(void 0, path, folderIndexFile), structure);
469
+ const probe = _chunkT5FRANE6cjs.findDocNodeByPath.call(void 0, _chunkT5FRANE6cjs.stripFolderIndexFromPath.call(void 0, path, folderIndexFile), structure);
470
470
  const probeIsNoReadmeFolder = !!probe && probe.type === "folder" && !probe.hasReadme;
471
471
  const preStructureFolderLike = structure.length === 0 && !path.endsWith(".md");
472
472
  if (probeIsNoReadmeFolder || preStructureFolderLike) {
@@ -523,7 +523,7 @@ function useDocumentTree(config, initialPath) {
523
523
  if (selectedPath === "") {
524
524
  pathToFetch = folderIndexFile;
525
525
  } else {
526
- const node = _chunkCEJDHCFZcjs.findDocNodeByPath.call(void 0, selectedPath, structure);
526
+ const node = _chunkT5FRANE6cjs.findDocNodeByPath.call(void 0, selectedPath, structure);
527
527
  if (node && node.type === "folder" && !node.hasReadme) {
528
528
  const firstDocPath = findFirstDocPath(node);
529
529
  if (!firstDocPath) {
@@ -564,16 +564,16 @@ function useDocumentTree(config, initialPath) {
564
564
  if (node.type === "folder") {
565
565
  setExpandedNodes((prev) => {
566
566
  if (prev.has(node.id)) {
567
- const ancestorIds = _chunkCEJDHCFZcjs.getDocAncestorNodeIds.call(void 0, node.path);
567
+ const ancestorIds = _chunkT5FRANE6cjs.getDocAncestorNodeIds.call(void 0, node.path);
568
568
  ancestorIds.pop();
569
569
  return new Set(ancestorIds);
570
570
  }
571
- return new Set(_chunkCEJDHCFZcjs.getDocAncestorNodeIds.call(void 0, node.path));
571
+ return new Set(_chunkT5FRANE6cjs.getDocAncestorNodeIds.call(void 0, node.path));
572
572
  });
573
573
  } else {
574
574
  const lastSlash = node.path.lastIndexOf("/");
575
575
  if (lastSlash > 0) {
576
- setExpandedNodes(new Set(_chunkCEJDHCFZcjs.getDocAncestorNodeIds.call(void 0, node.path.substring(0, lastSlash))));
576
+ setExpandedNodes(new Set(_chunkT5FRANE6cjs.getDocAncestorNodeIds.call(void 0, node.path.substring(0, lastSlash))));
577
577
  }
578
578
  }
579
579
  lastFetchedPath.current = null;
@@ -588,7 +588,7 @@ function useDocumentTree(config, initialPath) {
588
588
  const hashIndex = path.indexOf("#");
589
589
  const anchor = hashIndex !== -1 ? path.substring(hashIndex) : "";
590
590
  const cleanPath = path.replace(/\/$/, "").split("#")[0];
591
- const pathForSelection = anchor && _optionalChain([options, 'optionalAccess', _6 => _6.fromInternalLink]) && cleanPath === "" ? selectedPathRef.current : _chunkCEJDHCFZcjs.stripFolderIndexFromPath.call(void 0, cleanPath, folderIndexFile);
591
+ const pathForSelection = anchor && _optionalChain([options, 'optionalAccess', _6 => _6.fromInternalLink]) && cleanPath === "" ? selectedPathRef.current : _chunkT5FRANE6cjs.stripFolderIndexFromPath.call(void 0, cleanPath, folderIndexFile);
592
592
  if (anchor && _optionalChain([options, 'optionalAccess', _7 => _7.fromInternalLink]) && pathForSelection === selectedPathRef.current) {
593
593
  _chunk3RYIF4OWcjs.navigateSamePageHash.call(void 0, anchor, { headerOffset: _chunk3RYIF4OWcjs.HUB_HEADER_OFFSET_PX });
594
594
  return;
@@ -652,15 +652,15 @@ function useDocumentTree(config, initialPath) {
652
652
  return docNavigation.register({
653
653
  baseRoute: normalizedBaseRoute,
654
654
  findNodeByPath: (path) => {
655
- const clean = _chunkCEJDHCFZcjs.stripFolderIndexFromPath.call(void 0, path.replace(/\/$/, "").split("#")[0], folderIndexFile);
656
- return _nullishCoalesce(_chunkCEJDHCFZcjs.findDocNodeByPath.call(void 0, clean, structure), () => ( null));
655
+ const clean = _chunkT5FRANE6cjs.stripFolderIndexFromPath.call(void 0, path.replace(/\/$/, "").split("#")[0], folderIndexFile);
656
+ return _nullishCoalesce(_chunkT5FRANE6cjs.findDocNodeByPath.call(void 0, clean, structure), () => ( null));
657
657
  },
658
658
  selectNode
659
659
  });
660
660
  }, [docNavigation, normalizedBaseRoute, structure, selectNode, folderIndexFile]);
661
661
  const isEmptyFolder = _react.useMemo.call(void 0, () => {
662
662
  if (!selectedPath || structure.length === 0) return false;
663
- const node = _chunkCEJDHCFZcjs.findDocNodeByPath.call(void 0, selectedPath, structure);
663
+ const node = _chunkT5FRANE6cjs.findDocNodeByPath.call(void 0, selectedPath, structure);
664
664
  return !!node && node.type === "folder" && !node.hasReadme && !findFirstDocPath(node);
665
665
  }, [selectedPath, structure]);
666
666
  return {
@@ -741,14 +741,14 @@ function DocViewerContent({
741
741
  },
742
742
  docPath
743
743
  );
744
- const { activeSection, handleSectionClick } = _chunkQCO32MEEcjs.useScrollSpy.call(void 0, _optionalChain([content, 'optionalAccess', _11 => _11.sections]));
744
+ const { activeSection, handleSectionClick } = _chunkNJS7FQRWcjs.useScrollSpy.call(void 0, _optionalChain([content, 'optionalAccess', _11 => _11.sections]));
745
745
  const docNav = useDocNavigation();
746
746
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
747
747
  const backCfg = backButton === false ? null : {
748
748
  label: _nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _12 => _12.label]), () => ( "Back to home")),
749
749
  onClick: () => router.push(_nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _13 => _13.href]), () => ( "/")))
750
750
  };
751
- const docSearch = _chunkCZ3OVWULcjs.useDocSearch.call(void 0, {
751
+ const docSearch = _chunk5AV5R5RCcjs.useDocSearch.call(void 0, {
752
752
  source: chatSource,
753
753
  baseRoute,
754
754
  searchEndpoint,
@@ -772,7 +772,7 @@ function DocViewerContent({
772
772
  onResolveLink: resolveLink
773
773
  });
774
774
  }, [content, renderContent, navigateToDoc, sourceId, resolveLink]);
775
- const selectedNodeDocType = selectedPath && structure.length > 0 ? _optionalChain([_chunkCEJDHCFZcjs.findDocNodeByPath.call(void 0, selectedPath, structure), 'optionalAccess', _14 => _14.documentType]) : void 0;
775
+ const selectedNodeDocType = selectedPath && structure.length > 0 ? _optionalChain([_chunkT5FRANE6cjs.findDocNodeByPath.call(void 0, selectedPath, structure), 'optionalAccess', _14 => _14.documentType]) : void 0;
776
776
  const activeDocType = _nullishCoalesce(_optionalChain([content, 'optionalAccess', _15 => _15.documentType]), () => ( selectedNodeDocType));
777
777
  const isMarkdownContent = !activeDocType || activeDocType === "markdown";
778
778
  const showStickyNav = isMarkdownContent;
@@ -784,9 +784,9 @@ function DocViewerContent({
784
784
  const defaultEmptyText = structure.length > 0 ? "Select a document from the sidebar to view" : "No documents yet. Add content from the admin panel.";
785
785
  const resolvedEmptyText = emptyStateText || defaultEmptyText;
786
786
  const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: { ...bgStyle, ...containerBgStyle }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.PageLayout, { title, subtitle, titleSize: "h1", titleWrap: true, backButton: _nullishCoalesce(backCfg, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-10", children: [
787
- synced && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.DataSyncLine, { sync: _optionalChain([content, 'optionalAccess', _19 => _19.sync]), loading: isLoadingContent && !content }),
787
+ synced && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVL6IXTAIcjs.DataSyncLine, { sync: _optionalChain([content, 'optionalAccess', _19 => _19.sync]), loading: isLoadingContent && !content }),
788
788
  showAIChat && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
789
- _chunkCZ3OVWULcjs.DocSearchBar,
789
+ _chunk5AV5R5RCcjs.DocSearchBar,
790
790
  {
791
791
  placeholder: `Search ${_optionalChain([sidebarLabel, 'optionalAccess', _20 => _20.toLowerCase, 'call', _21 => _21()]) || "documents"}...`,
792
792
  query: docSearch.query,
@@ -805,9 +805,9 @@ function DocViewerContent({
805
805
  ] })
806
806
  ] }) }),
807
807
  !error && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 flex-col items-start gap-6 content-lg:flex-row content-lg:gap-10", children: [
808
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full content-lg:w-[320px] content-lg:shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "content-lg:sticky content-lg:top-20", children: isLoadingStructure ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.CategorySidebarSkeleton, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
808
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full content-lg:w-[320px] content-lg:shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "content-lg:sticky content-lg:top-20", children: isLoadingStructure ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVL6IXTAIcjs.CategorySidebarSkeleton, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
809
809
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PersistentMobileDropdown, { isLoading: false, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
810
- _chunkQCO32MEEcjs.MobileNavigationDropdown,
810
+ _chunkNJS7FQRWcjs.MobileNavigationDropdown,
811
811
  {
812
812
  nodes: structure,
813
813
  selectedPath,
@@ -821,7 +821,7 @@ function DocViewerContent({
821
821
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PersistentSidebar, { isLoading: false, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden content-lg:block", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
822
822
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "font-semibold text-ods-text-secondary text-h5", children: sidebarLabel }),
823
823
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
824
- _chunkQCO32MEEcjs.MultiLevelNavigation,
824
+ _chunkNJS7FQRWcjs.MultiLevelNavigation,
825
825
  {
826
826
  nodes: structure,
827
827
  selectedPath,
@@ -860,7 +860,7 @@ function DocViewerContent({
860
860
  showStickyNav && content && stickyNavSections.length > 0 && !isLoadingContent && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden content-lg:block", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "sticky top-24", children: [
861
861
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "mb-4 font-semibold text-ods-text-secondary text-h5", children: "ON THIS PAGE" }),
862
862
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
863
- _chunkQCO32MEEcjs.StickySectionNav,
863
+ _chunkNJS7FQRWcjs.StickySectionNav,
864
864
  {
865
865
  sections: stickyNavSections,
866
866
  activeSection,
@@ -875,7 +875,7 @@ function DocViewerContent({
875
875
  ) })
876
876
  ] })
877
877
  ] }) }) });
878
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.PageShell, { contentClassName: `${bgClass} ${className}`, children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `page-shell-content ${bgClass} ${className}`.trim(), children: inner });
878
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVL6IXTAIcjs.PageShell, { contentClassName: `${bgClass} ${className}`, children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `page-shell-content ${bgClass} ${className}`.trim(), children: inner });
879
879
  }
880
880
 
881
881
  // src/components/docs/skeletons.tsx
@@ -961,7 +961,7 @@ function EmbedSkeleton({ documentType, region = true } = {}) {
961
961
  ] }),
962
962
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full items-center gap-2 content-sm:w-auto", children: Array.from({ length: buttonCount }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-10 w-full flex-1 rounded content-sm:w-32 content-sm:flex-initial" }, i)) })
963
963
  ] }),
964
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.EmbedLoadingSkeleton, { region: false })
964
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVL6IXTAIcjs.EmbedLoadingSkeleton, { region: false })
965
965
  ] });
966
966
  }
967
967
 
@@ -969,11 +969,11 @@ function EmbedSkeleton({ documentType, region = true } = {}) {
969
969
 
970
970
  var DEFAULT_TITLE = "Documents";
971
971
  var defaultFallbackRenderer = () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "py-16 text-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary", children: "Unsupported document type" }) });
972
- var defaultPdfRenderer = (content, handlers) => content.fileUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTWAHPTWWcjs.PdfViewer, { src: content.fileUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
973
- var defaultGoogleSheetRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTWAHPTWWcjs.GoogleSheetsViewer, { externalUrl: content.externalUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
974
- var defaultFigmaRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk72XMAKDAcjs.FigmaEmbed, { url: content.externalUrl, title: content.fileName, loading: "eager" }) : defaultFallbackRenderer(content, handlers);
972
+ var defaultPdfRenderer = (content, handlers) => content.fileUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFNWHCRMcjs.PdfViewer, { src: content.fileUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
973
+ var defaultGoogleSheetRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFNWHCRMcjs.GoogleSheetsViewer, { externalUrl: content.externalUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
974
+ var defaultFigmaRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVL6IXTAIcjs.FigmaEmbed, { url: content.externalUrl, title: content.fileName, loading: "eager" }) : defaultFallbackRenderer(content, handlers);
975
975
  var defaultFileRenderer = (content) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
976
- _chunkTWAHPTWWcjs.FileDownloadCard,
976
+ _chunkXFNWHCRMcjs.FileDownloadCard,
977
977
  {
978
978
  fileName: content.fileName,
979
979
  mimeType: content.mimeType,