@flamingo-stack/openframe-frontend-core 0.0.766 → 0.0.768

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 (154) hide show
  1. package/dist/build/export-map.json +1 -1
  2. package/dist/{chunk-REJMFXGD.cjs → chunk-2MND64QJ.cjs} +46 -46
  3. package/dist/{chunk-F7R3U5EN.cjs → chunk-2TS3FEPQ.cjs} +4 -4
  4. package/dist/{chunk-WO3XO27C.cjs → chunk-2ZYCYLPL.cjs} +5 -5
  5. package/dist/{chunk-DGNBXZXT.cjs → chunk-4EJU462O.cjs} +57 -30
  6. package/dist/{chunk-JKQVKWLB.cjs → chunk-57KIBZFQ.cjs} +76 -76
  7. package/dist/{chunk-VYYLYZUC.cjs → chunk-5O6PHVKO.cjs} +4 -4
  8. package/dist/{chunk-XZ6DKGT4.cjs → chunk-5QP3K2CE.cjs} +5 -5
  9. package/dist/{chunk-NJMZ3N7Q.cjs → chunk-6EEE76VU.cjs} +24 -24
  10. package/dist/{chunk-YRFWOJF4.cjs → chunk-BLTNKLAX.cjs} +4 -4
  11. package/dist/{chunk-7U3ELNGC.cjs → chunk-DE7U72NZ.cjs} +26 -26
  12. package/dist/{chunk-GTONIRJU.cjs → chunk-EHJE3UWZ.cjs} +10 -16
  13. package/dist/{chunk-HNQRY6RU.cjs → chunk-GGORS7G6.cjs} +13 -13
  14. package/dist/{chunk-FZB4RMRK.cjs → chunk-HQF62LAU.cjs} +33 -33
  15. package/dist/{chunk-JTSUAHDL.cjs → chunk-HY6BCZH7.cjs} +4 -2
  16. package/dist/{chunk-MPTMT773.cjs → chunk-LJT2KRE2.cjs} +14 -14
  17. package/dist/{chunk-NBVZIHGS.cjs → chunk-MYA6NR2C.cjs} +2 -2
  18. package/dist/{chunk-NF3PBWDJ.cjs → chunk-NPVYID2L.cjs} +80 -80
  19. package/dist/{chunk-RTBYQWAV.cjs → chunk-OEVNX4OR.cjs} +44 -44
  20. package/dist/{chunk-UW7UWUZU.cjs → chunk-OGHLIUF4.cjs} +41 -41
  21. package/dist/{chunk-JGWN6GH5.cjs → chunk-PFY23KN7.cjs} +6 -6
  22. package/dist/{chunk-ZRDMGMY7.cjs → chunk-QS4G7CHU.cjs} +2 -2
  23. package/dist/{chunk-7XFVUUVZ.cjs → chunk-S4QS5E5A.cjs} +12 -12
  24. package/dist/{chunk-VRDHAR3X.cjs → chunk-STHQJNND.cjs} +517 -551
  25. package/dist/{chunk-INI4ADPT.cjs → chunk-U6UIG4OP.cjs} +31 -31
  26. package/dist/{chunk-7VI7TOGI.cjs → chunk-UBPSA3RM.cjs} +219 -181
  27. package/dist/{chunk-K3IHNXR4.cjs → chunk-VADRKMLE.cjs} +3 -3
  28. package/dist/{chunk-AAECWUNV.cjs → chunk-VFUMM6JC.cjs} +19 -11
  29. package/dist/{chunk-X7ECVSVN.cjs → chunk-VVBRYOSI.cjs} +19 -19
  30. package/dist/{chunk-ZV45VS6K.cjs → chunk-XI2CHCOD.cjs} +34 -43
  31. package/dist/{chunk-RMUSPTJN.cjs → chunk-ZVNL5OK6.cjs} +5 -5
  32. package/dist/{chunk-YL6ZB2SR.cjs → chunk-ZXFOMNI5.cjs} +183 -183
  33. package/dist/{cloud-tenants-U2KMEIO7.cjs → cloud-tenants-I5HABFNZ.cjs} +13 -13
  34. package/dist/components/case-studies/index.cjs +29 -29
  35. package/dist/components/case-studies/index.d.ts +1 -1
  36. package/dist/components/case-studies/index.d.ts.map +1 -1
  37. package/dist/components/case-studies/index.js +5 -1
  38. package/dist/components/chat/entity-cards/campaign-card-admin.d.ts.map +1 -1
  39. package/dist/components/chat/entity-cards/investor-update-card.d.ts.map +1 -1
  40. package/dist/components/chat/entity-cards/investor-update-card.js +9 -1
  41. package/dist/components/chat/hooks/use-ask-prompts.d.ts.map +1 -1
  42. package/dist/components/chat/index.cjs +9 -9
  43. package/dist/components/chat/index.d.ts.map +1 -1
  44. package/dist/components/chat/index.js +18 -4
  45. package/dist/components/contact/index.cjs +14 -14
  46. package/dist/components/docs/index.cjs +17 -17
  47. package/dist/components/embeds/index.cjs +14 -14
  48. package/dist/components/embeds/rich-markdown-runtime.d.ts +4 -1
  49. package/dist/components/embeds/rich-markdown-runtime.d.ts.map +1 -1
  50. package/dist/components/embeds/rich-markdown-runtime.js +6 -5
  51. package/dist/components/faq/index.cjs +15 -15
  52. package/dist/components/features/cards-strip.d.ts.map +1 -1
  53. package/dist/components/features/command-box.d.ts.map +1 -1
  54. package/dist/components/features/command-box.js +2 -19
  55. package/dist/components/features/index.cjs +13 -13
  56. package/dist/components/features/paths-display.d.ts.map +1 -1
  57. package/dist/components/features/remote-session/remote-desktop-chat-message-row.d.ts.map +1 -1
  58. package/dist/components/features/remote-session/remote-desktop-chat-message-row.js +1 -10
  59. package/dist/components/features/walkthrough-video.d.ts.map +1 -1
  60. package/dist/components/features/walkthrough-video.js +3 -1
  61. package/dist/components/help-center-pages/index.cjs +98 -98
  62. package/dist/components/icon-display.d.ts.map +1 -1
  63. package/dist/components/icon-display.js +9 -1
  64. package/dist/components/index.cjs +74 -74
  65. package/dist/components/interactive-wrapper.d.ts.map +1 -1
  66. package/dist/components/interactive-wrapper.js +7 -1
  67. package/dist/components/layout/page-heading.d.ts.map +1 -1
  68. package/dist/components/layout/page-heading.js +8 -1
  69. package/dist/components/meeting-scheduler/directory.d.ts.map +1 -1
  70. package/dist/components/meeting-scheduler/index.cjs +73 -73
  71. package/dist/components/navigation/index.cjs +16 -16
  72. package/dist/components/onboarding-guides/index.cjs +16 -16
  73. package/dist/components/product-demo/index.cjs +24 -24
  74. package/dist/components/related-content/index.cjs +7 -7
  75. package/dist/components/results-count.d.ts.map +1 -1
  76. package/dist/components/results-count.js +2 -2
  77. package/dist/components/tickets/index.cjs +19 -19
  78. package/dist/components/ui/avatar-stack.d.ts.map +1 -1
  79. package/dist/components/ui/avatar-stack.js +17 -9
  80. package/dist/components/ui/cursor-pagination.d.ts.map +1 -1
  81. package/dist/components/ui/data-table/data-table-row-count.js +1 -1
  82. package/dist/components/ui/feature-card.d.ts.map +1 -1
  83. package/dist/components/ui/feature-list.d.ts.map +1 -1
  84. package/dist/components/ui/feature-list.js +7 -21
  85. package/dist/components/ui/incident-feed.d.ts +1 -1
  86. package/dist/components/ui/incident-feed.d.ts.map +1 -1
  87. package/dist/components/ui/incident-feed.js +1 -7
  88. package/dist/components/ui/index.cjs +13 -13
  89. package/dist/components/ui/leader-row.d.ts.map +1 -1
  90. package/dist/components/ui/markdown/rich/embed-overrides.d.ts.map +1 -1
  91. package/dist/components/ui/markdown/rich/embed-overrides.js +10 -1
  92. package/dist/components/ui/product-screen-frame.d.ts.map +1 -1
  93. package/dist/components/ui/product-screen-frame.js +4 -13
  94. package/dist/components/ui/status-badge.d.ts.map +1 -1
  95. package/dist/components/ui/status-badge.js +5 -1
  96. package/dist/components/ui/status-line.d.ts.map +1 -1
  97. package/dist/components/ui/status-line.js +1 -7
  98. package/dist/components/ui/strip-card.d.ts.map +1 -1
  99. package/dist/components/ui/tag.d.ts.map +1 -1
  100. package/dist/{devices-2D3XSIIE.cjs → devices-OS26UG7Y.cjs} +14 -14
  101. package/dist/{embeddable-chat-YL6ZSTDJ.cjs → embeddable-chat-BXEK3SPJ.cjs} +83 -83
  102. package/dist/index.cjs +22 -18
  103. package/dist/{knowledge-AJ36PMK2.cjs → knowledge-JD2OFKEL.cjs} +14 -14
  104. package/dist/{logs-DNE44ACE.cjs → logs-KGKNFROP.cjs} +21 -21
  105. package/dist/{policies-AJHSP6ZY.cjs → policies-J2XL6XQK.cjs} +17 -17
  106. package/dist/{remote-session-PPA5SXX7.cjs → remote-session-RHQ2K27H.cjs} +7 -7
  107. package/dist/{scripts-4YO2QL36.cjs → scripts-MJONVIWL.cjs} +20 -20
  108. package/dist/{software-update-KMI2EOO3.cjs → software-update-VSMTHJR4.cjs} +17 -17
  109. package/dist/{tickets-board-G3WBH4SV.cjs → tickets-board-YT25IX3O.cjs} +8 -8
  110. package/dist/utils/after-page-load.d.ts +8 -0
  111. package/dist/utils/after-page-load.d.ts.map +1 -0
  112. package/dist/utils/after-page-load.js +24 -0
  113. package/dist/utils/format.d.ts +13 -3
  114. package/dist/utils/format.d.ts.map +1 -1
  115. package/dist/utils/format.js +4 -2
  116. package/dist/utils/index.cjs +27 -1
  117. package/dist/utils/index.d.ts +2 -1
  118. package/dist/utils/index.d.ts.map +1 -1
  119. package/dist/utils/index.js +3 -0
  120. package/package.json +1 -1
  121. package/src/components/case-studies/entity-quotes-panel.tsx +18 -18
  122. package/src/components/case-studies/index.ts +8 -1
  123. package/src/components/chat/entity-cards/campaign-card-admin.tsx +1 -3
  124. package/src/components/chat/entity-cards/investor-update-card.tsx +6 -1
  125. package/src/components/chat/hooks/use-ask-prompts.ts +1 -2
  126. package/src/components/chat/index.ts +22 -5
  127. package/src/components/embeds/rich-markdown-runtime.tsx +10 -6
  128. package/src/components/features/cards-strip.tsx +3 -2
  129. package/src/components/features/command-box.tsx +2 -11
  130. package/src/components/features/paths-display.tsx +4 -1
  131. package/src/components/features/remote-session/remote-desktop-chat-message-row.tsx +1 -6
  132. package/src/components/features/walkthrough-video.tsx +8 -1
  133. package/src/components/icon-display.tsx +6 -1
  134. package/src/components/interactive-wrapper.tsx +4 -1
  135. package/src/components/layout/page-heading.tsx +15 -3
  136. package/src/components/meeting-scheduler/directory.tsx +2 -1
  137. package/src/components/results-count.tsx +3 -2
  138. package/src/components/ui/avatar-stack.tsx +5 -1
  139. package/src/components/ui/button/button-styles.ts +0 -1
  140. package/src/components/ui/cursor-pagination.tsx +8 -1
  141. package/src/components/ui/data-table/data-table-row-count.tsx +1 -1
  142. package/src/components/ui/feature-card.tsx +2 -10
  143. package/src/components/ui/feature-list.tsx +2 -8
  144. package/src/components/ui/incident-feed.tsx +2 -13
  145. package/src/components/ui/leader-row.tsx +0 -1
  146. package/src/components/ui/markdown/rich/embed-overrides.tsx +11 -1
  147. package/src/components/ui/product-screen-frame.tsx +1 -6
  148. package/src/components/ui/status-badge.tsx +5 -1
  149. package/src/components/ui/status-line.tsx +1 -4
  150. package/src/components/ui/strip-card.tsx +1 -3
  151. package/src/components/ui/tag.tsx +3 -1
  152. package/src/utils/after-page-load.ts +30 -0
  153. package/src/utils/format.ts +16 -4
  154. package/src/utils/index.ts +2 -0
@@ -3,10 +3,10 @@
3
3
 
4
4
 
5
5
 
6
- var _chunkVYYLYZUCcjs = require('./chunk-VYYLYZUC.cjs');
6
+ var _chunk5O6PHVKOcjs = require('./chunk-5O6PHVKO.cjs');
7
7
 
8
8
 
9
- var _chunkF7R3U5ENcjs = require('./chunk-F7R3U5EN.cjs');
9
+ var _chunk2TS3FEPQcjs = require('./chunk-2TS3FEPQ.cjs');
10
10
 
11
11
 
12
12
 
@@ -18,7 +18,7 @@ var _chunkF7R3U5ENcjs = require('./chunk-F7R3U5EN.cjs');
18
18
 
19
19
 
20
20
 
21
- var _chunkVRDHAR3Xcjs = require('./chunk-VRDHAR3X.cjs');
21
+ var _chunkSTHQJNNDcjs = require('./chunk-STHQJNND.cjs');
22
22
 
23
23
 
24
24
  var _chunkRB7VLVMDcjs = require('./chunk-RB7VLVMD.cjs');
@@ -38,14 +38,14 @@ var _chunk24I6RFVUcjs = require('./chunk-24I6RFVU.cjs');
38
38
 
39
39
 
40
40
 
41
- var _chunk7VI7TOGIcjs = require('./chunk-7VI7TOGI.cjs');
41
+ var _chunkUBPSA3RMcjs = require('./chunk-UBPSA3RM.cjs');
42
42
 
43
43
 
44
44
 
45
- var _chunkYL6ZB2SRcjs = require('./chunk-YL6ZB2SR.cjs');
45
+ var _chunkZXFOMNI5cjs = require('./chunk-ZXFOMNI5.cjs');
46
46
 
47
47
 
48
- var _chunkGTONIRJUcjs = require('./chunk-GTONIRJU.cjs');
48
+ var _chunkEHJE3UWZcjs = require('./chunk-EHJE3UWZ.cjs');
49
49
 
50
50
 
51
51
  var _chunk756VZNPPcjs = require('./chunk-756VZNPP.cjs');
@@ -94,11 +94,11 @@ var _chunkSKI6NKOEcjs = require('./chunk-SKI6NKOE.cjs');
94
94
 
95
95
 
96
96
 
97
- var _chunkDGNBXZXTcjs = require('./chunk-DGNBXZXT.cjs');
97
+ var _chunk4EJU462Ocjs = require('./chunk-4EJU462O.cjs');
98
98
 
99
99
 
100
100
 
101
- var _chunkJTSUAHDLcjs = require('./chunk-JTSUAHDL.cjs');
101
+ var _chunkHY6BCZH7cjs = require('./chunk-HY6BCZH7.cjs');
102
102
 
103
103
 
104
104
  var _chunkVFZFCRALcjs = require('./chunk-VFZFCRAL.cjs');
@@ -166,7 +166,7 @@ function RowGlyph({ link, box, glyph }) {
166
166
  {
167
167
  "aria-hidden": "true",
168
168
  className: _chunk65VVJSQZcjs.cn.call(void 0, "flex shrink-0 items-center justify-center overflow-hidden rounded-full", box),
169
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDGNBXZXTcjs.EntityIcon, { icon: link.icon, className: "h-full w-full" })
169
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EJU462Ocjs.EntityIcon, { icon: link.icon, className: "h-full w-full" })
170
170
  }
171
171
  );
172
172
  }
@@ -179,7 +179,7 @@ function RowGlyph({ link, box, glyph }) {
179
179
  "flex shrink-0 items-center justify-center rounded-lg border border-ods-border bg-ods-bg text-ods-text-primary",
180
180
  box
181
181
  ),
182
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDGNBXZXTcjs.EntityIcon, { icon: { name: link.iconName }, size: glyph })
182
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EJU462Ocjs.EntityIcon, { icon: { name: link.iconName }, size: glyph })
183
183
  }
184
184
  );
185
185
  }
@@ -192,7 +192,7 @@ function NavItemRow({
192
192
  className
193
193
  }) {
194
194
  const label = navLinkLabel(link);
195
- const counter = badge ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVRDHAR3Xcjs.UnreadCountBadge, { count: badge, className: "static shrink-0" }) : null;
195
+ const counter = badge ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHQJNNDcjs.UnreadCountBadge, { count: badge, className: "static shrink-0" }) : null;
196
196
  const singleLine = !link.description && !link.builtOn;
197
197
  const rowClassName = _chunk65VVJSQZcjs.cn.call(void 0,
198
198
  ROW_CLASSES[variant],
@@ -209,7 +209,7 @@ function NavItemRow({
209
209
  ] });
210
210
  } else if (variant === "side") {
211
211
  children = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
212
- link.iconName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { "aria-hidden": "true", className: "flex shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDGNBXZXTcjs.EntityIcon, { icon: { name: link.iconName }, size: 18 }) }),
212
+ link.iconName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { "aria-hidden": "true", className: "flex shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EJU462Ocjs.EntityIcon, { icon: { name: link.iconName }, size: 18 }) }),
213
213
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 flex-1", children: label }),
214
214
  counter
215
215
  ] });
@@ -313,7 +313,7 @@ var NavPanel = _react.forwardRef.call(void 0, function NavPanelImpl({
313
313
  !!_optionalChain([menu, 'access', _10 => _10.features, 'optionalAccess', _11 => _11.length]) && // One row of cards, as many as the bar's width holds: a card that
314
314
  // would wrap lands on a zero-height row, where its cell clips it.
315
315
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "grid min-w-0 flex-[3] auto-rows-[0px] grid-cols-[repeat(auto-fit,minmax(240px,1fr))] grid-rows-[minmax(0,1fr)] gap-x-[var(--spacing-system-mf)]", children: menu.features.map((feature) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-0 min-w-0 overflow-hidden", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
316
- _chunkDGNBXZXTcjs.CaseStudyCard,
316
+ _chunk4EJU462Ocjs.CaseStudyCard,
317
317
  {
318
318
  size: "menu",
319
319
  study: feature.study,
@@ -430,7 +430,7 @@ function TopNavigation({
430
430
 
431
431
  var TOP_ITEM_CLASS = "relative inline-flex h-10 items-center gap-1.5 whitespace-nowrap rounded-md px-3.5 text-ods-text-secondary transition-colors text-h6 hover:bg-ods-bg-hover hover:text-ods-text-primary";
432
432
  var TOP_ITEM_CURRENT_CLASS = "rounded-b-none bg-gradient-to-b from-transparent to-ods-accent/10 text-ods-text-primary after:absolute after:inset-x-0 after:bottom-0 after:h-0.5 after:bg-ods-accent";
433
- var menuIcon = (menu) => menu.iconName ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDGNBXZXTcjs.EntityIcon, { icon: { name: menu.iconName }, size: 20, className: "size-5 shrink-0" }) : null;
433
+ var menuIcon = (menu) => menu.iconName ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4EJU462Ocjs.EntityIcon, { icon: { name: menu.iconName }, size: 20, className: "size-5 shrink-0" }) : null;
434
434
  function SiteHeader({
435
435
  nav,
436
436
  pathname,
@@ -580,7 +580,7 @@ function SiteHeader({
580
580
  leading: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
581
581
  leading,
582
582
  mobile && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
583
- _chunkVRDHAR3Xcjs.HeaderButton,
583
+ _chunkSTHQJNNDcjs.HeaderButton,
584
584
  {
585
585
  className: "border-r border-ods-border lg:hidden",
586
586
  onClick: mobile.onToggle,
@@ -606,7 +606,7 @@ function SiteHeader({
606
606
  centerClassName: "justify-start pl-[var(--spacing-system-xlf)]",
607
607
  cta: hasRight ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
608
608
  mingo && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
609
- _chunk7VI7TOGIcjs.MingoAiButton,
609
+ _chunkUBPSA3RMcjs.MingoAiButton,
610
610
  {
611
611
  source: mingo.source,
612
612
  icon: mingo.icon,
@@ -708,7 +708,7 @@ function MobileNavSheetBody({
708
708
  ] }),
709
709
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-h-0 flex-1 overflow-y-auto overflow-x-hidden overscroll-contain px-5", children: [
710
710
  askAI && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
711
- _chunk7VI7TOGIcjs.MingoAiButton,
711
+ _chunkUBPSA3RMcjs.MingoAiButton,
712
712
  {
713
713
  variant: "field",
714
714
  source: askAI.source,
@@ -886,7 +886,7 @@ function SiteFooter({
886
886
  const columns = nav.footerColumns;
887
887
  const accordion = columns.length > ACCORDION_OVER;
888
888
  const socialRow = _nullishCoalesce(social, () => ( (nav.brand.social.length > 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
889
- _chunkVRDHAR3Xcjs.SocialIconRow,
889
+ _chunkSTHQJNNDcjs.SocialIconRow,
890
890
  {
891
891
  compact: true,
892
892
  links: nav.brand.social.map((link) => ({
@@ -989,7 +989,7 @@ var _framermotion = require('framer-motion');
989
989
 
990
990
  function SlidingSidebar({ config }) {
991
991
  const [expandedItems, setExpandedItems] = _react.useState.call(void 0, /* @__PURE__ */ new Set());
992
- const mounted = _chunkYL6ZB2SRcjs.useIsHydrated.call(void 0, );
992
+ const mounted = _chunkZXFOMNI5cjs.useIsHydrated.call(void 0, );
993
993
  const headerHeight = _chunk24I6RFVUcjs.useHeaderHeight.call(void 0, );
994
994
  const asideRef = _react.useRef.call(void 0, null);
995
995
  const prefersReducedMotion = _framermotion.useReducedMotion.call(void 0, );
@@ -1164,7 +1164,7 @@ function SlidingSidebar({ config }) {
1164
1164
  // src/components/navigation/page-section-bar.tsx
1165
1165
 
1166
1166
 
1167
- var SECTION_BAR_HEIGHT_PX = _chunkVYYLYZUCcjs.STICKY_SECTION_NAV_HEIGHT_PX;
1167
+ var SECTION_BAR_HEIGHT_PX = _chunk5O6PHVKOcjs.STICKY_SECTION_NAV_HEIGHT_PX;
1168
1168
  var PAGE_ANCHOR_SCROLL_MARGIN_CLASS = "scroll-mt-36";
1169
1169
  var PAGE_ANCHOR_SCOPE_CLASS = "[&_[id]]:scroll-mt-36";
1170
1170
  var PAGE_ANCHOR_GAP_PX = 16;
@@ -1192,21 +1192,21 @@ function PageSectionBar({ sections: listed, label, brand, action }) {
1192
1192
  const sections = useRenderedSections(listed);
1193
1193
  const inScope = _chunkXFRBEXQNcjs.useLoadingScope.call(void 0, );
1194
1194
  const headerBottom = _chunk24I6RFVUcjs.useHeaderHeight.call(void 0, void 0, { stuckOnly: true });
1195
- const { activeSection, handleSectionClick } = _chunkVYYLYZUCcjs.useScrollSpy.call(void 0, sections, {
1195
+ const { activeSection, handleSectionClick } = _chunk5O6PHVKOcjs.useScrollSpy.call(void 0, sections, {
1196
1196
  syncHash: true,
1197
1197
  aboveFirst: "none",
1198
1198
  headerOffset: headerBottom + SECTION_BAR_HEIGHT_PX + PAGE_ANCHOR_GAP_PX
1199
1199
  });
1200
1200
  if (sections.length === 0 && !inScope) return null;
1201
1201
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1202
- _chunkVRDHAR3Xcjs.PageContainer,
1202
+ _chunkSTHQJNNDcjs.PageContainer,
1203
1203
  {
1204
1204
  as: "div",
1205
1205
  backgroundClassName: "sticky z-30 border-b border-ods-border bg-ods-bg transition-[top] duration-300 ease-in-out motion-reduce:transition-none",
1206
1206
  backgroundStyle: { top: headerBottom },
1207
1207
  contentPadding: SECTION_BAR_INSET_CLASS,
1208
1208
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1209
- _chunkVYYLYZUCcjs.StickySectionNav,
1209
+ _chunk5O6PHVKOcjs.StickySectionNav,
1210
1210
  {
1211
1211
  orientation: "horizontal",
1212
1212
  label,
@@ -1215,7 +1215,7 @@ function PageSectionBar({ sections: listed, label, brand, action }) {
1215
1215
  onSectionClick: handleSectionClick,
1216
1216
  brand,
1217
1217
  action: action && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1218
- _chunkYL6ZB2SRcjs.NavLinkAnchorViaRuntime,
1218
+ _chunkZXFOMNI5cjs.NavLinkAnchorViaRuntime,
1219
1219
  {
1220
1220
  href: action.href,
1221
1221
  onClick: (event) => {
@@ -1269,7 +1269,7 @@ function NavigationSidebarHeader({ minimized }) {
1269
1269
 
1270
1270
  function NavigationItemBadge({ label, compact = false, className, ...rest }) {
1271
1271
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1272
- _chunkJTSUAHDLcjs.Tag,
1272
+ _chunkHY6BCZH7cjs.Tag,
1273
1273
  {
1274
1274
  as: "span",
1275
1275
  label,
@@ -1334,7 +1334,7 @@ var NavigationSidebarItemButton = _react.memo.call(void 0, function NavigationSi
1334
1334
  _react.cloneElement.call(void 0, item.icon, {
1335
1335
  color: isActive && !disabled ? "text-ods-accent" : "text-ods-text-secondary"
1336
1336
  }),
1337
- hasUnread && !showLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVRDHAR3Xcjs.UnreadDot, { size: "fixed" })
1337
+ hasUnread && !showLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHQJNNDcjs.UnreadDot, { size: "fixed" })
1338
1338
  ] }),
1339
1339
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1340
1340
  "span",
@@ -1435,7 +1435,7 @@ function NavigationSidebar({ config, disabled = false, pushOnTablet = false }) {
1435
1435
  setTabletFor(isTablet);
1436
1436
  if (isTablet) setTabletMinimized(true);
1437
1437
  }
1438
- const hydrated = _chunkYL6ZB2SRcjs.useIsHydrated.call(void 0, );
1438
+ const hydrated = _chunkZXFOMNI5cjs.useIsHydrated.call(void 0, );
1439
1439
  const minimized = hydrated ? isTablet ? tabletMinimized : desktopMinimized : _nullishCoalesce(config.minimized, () => ( false));
1440
1440
  const [transitionsEnabled, setTransitionsEnabled] = _react.useState.call(void 0, false);
1441
1441
  const isOverlayOpen = isTablet && !minimized;
@@ -1627,7 +1627,7 @@ function HeaderGlobalSearch({
1627
1627
  "form",
1628
1628
  {
1629
1629
  onSubmit: handleSubmit,
1630
- ..._chunk7VI7TOGIcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
1630
+ ..._chunkUBPSA3RMcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
1631
1631
  className: _chunk65VVJSQZcjs.cn.call(void 0,
1632
1632
  "flex h-full flex-1 items-center gap-2 px-3",
1633
1633
  // Transparent so the cell inherits the bar's background
@@ -1698,7 +1698,7 @@ function HeaderMingoButton({
1698
1698
  ) : (
1699
1699
  // Outer frame follows the button's text color (currentColor); the eyes
1700
1700
  // and corner block are ODS cyan.
1701
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGTONIRJUcjs.AgentMark, { agent: "mingo", className: "h-6 w-6 shrink-0" })
1701
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEHJE3UWZcjs.AgentMark, { agent: "mingo", className: "h-6 w-6 shrink-0" })
1702
1702
  ),
1703
1703
  !iconOnly && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap font-bold tracking-[-0.36px] text-h3", children: "Mingo AI" })
1704
1704
  ]
@@ -1752,16 +1752,16 @@ function HeaderOrganizationFilter({
1752
1752
  // src/components/navigation/ticket-alerts-button.tsx
1753
1753
 
1754
1754
  function TicketAlertsButton({ href, onNavigate, disabled, className }) {
1755
- const live = _chunkF7R3U5ENcjs.useOptionalTicketLive.call(void 0, );
1755
+ const live = _chunk2TS3FEPQcjs.useOptionalTicketLive.call(void 0, );
1756
1756
  if (!live || !live.authed || live.unreadTotal === 0) return null;
1757
1757
  const targetId = live.nextUnreadTicketId;
1758
- const target = targetId ? _chunk7VI7TOGIcjs.buildTicketOpenHref.call(void 0, href, targetId) : href;
1758
+ const target = targetId ? _chunkUBPSA3RMcjs.buildTicketOpenHref.call(void 0, href, targetId) : href;
1759
1759
  const handleClick = () => {
1760
1760
  if (onNavigate) onNavigate(target);
1761
1761
  else window.location.assign(target);
1762
1762
  };
1763
1763
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1764
- _chunkVRDHAR3Xcjs.HeaderButton,
1764
+ _chunkSTHQJNNDcjs.HeaderButton,
1765
1765
  {
1766
1766
  icon: (
1767
1767
  // Glyph inherits HeaderButton's standard cell coloring (secondary at
@@ -1771,7 +1771,7 @@ function TicketAlertsButton({ href, onNavigate, disabled, className }) {
1771
1771
  // existing while updates are unread — never by tinting the glyph.
1772
1772
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "relative inline-flex", children: [
1773
1773
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk365ZKGGOcjs.LifeBuoyIcon, { className: "h-6 w-6" }),
1774
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVRDHAR3Xcjs.UnreadCountBadge, { count: live.unreadTotal })
1774
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHQJNNDcjs.UnreadCountBadge, { count: live.unreadTotal })
1775
1775
  ] })
1776
1776
  ),
1777
1777
  "aria-label": `Support tickets \u2014 ${live.unreadTotal} unread ${live.unreadTotal === 1 ? "update" : "updates"}`,
@@ -1847,7 +1847,7 @@ var AppHeader = _react2.default.memo(function AppHeaderImpl({
1847
1847
  leading: (
1848
1848
  // Mobile: Burger Menu Button
1849
1849
  !isMdUp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1850
- _chunkVRDHAR3Xcjs.HeaderButton,
1850
+ _chunkSTHQJNNDcjs.HeaderButton,
1851
1851
  {
1852
1852
  onClick: onToggleMobileMenu,
1853
1853
  isActive: isMobileMenuOpen,
@@ -1873,7 +1873,7 @@ var AppHeader = _react2.default.memo(function AppHeaderImpl({
1873
1873
  center: showSearch ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderGlobalSearch, { onSubmit: onSearch, className: _chunk65VVJSQZcjs.cn.call(void 0, "w-full", dimmedClass) }) : void 0,
1874
1874
  sideActions: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
1875
1875
  showSearch && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1876
- _chunkVRDHAR3Xcjs.HeaderButton,
1876
+ _chunkSTHQJNNDcjs.HeaderButton,
1877
1877
  {
1878
1878
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZ74QE57Tcjs.SearchIcon, { className: "h-6 w-6" }),
1879
1879
  "aria-label": "Search",
@@ -1890,7 +1890,7 @@ var AppHeader = _react2.default.memo(function AppHeaderImpl({
1890
1890
  className: _chunk65VVJSQZcjs.cn.call(void 0, "hidden lg:flex", dimmedClass)
1891
1891
  }
1892
1892
  ),
1893
- showTimeTracker && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVRDHAR3Xcjs.TimeTrackerHeaderButton, { disabled, className: _chunk65VVJSQZcjs.cn.call(void 0, cellDivider, dimmedClass) }),
1893
+ showTimeTracker && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHQJNNDcjs.TimeTrackerHeaderButton, { disabled, className: _chunk65VVJSQZcjs.cn.call(void 0, cellDivider, dimmedClass) }),
1894
1894
  showNotifications && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1895
1895
  NotificationsHeaderButton,
1896
1896
  {
@@ -1910,10 +1910,10 @@ var AppHeader = _react2.default.memo(function AppHeaderImpl({
1910
1910
  ),
1911
1911
  isMdUp && showUser && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXIFEZ2JTcjs.DropdownMenu, { children: [
1912
1912
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXIFEZ2JTcjs.DropdownMenuTrigger, { asChild: true, disabled, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1913
- _chunkVRDHAR3Xcjs.HeaderButton,
1913
+ _chunkSTHQJNNDcjs.HeaderButton,
1914
1914
  {
1915
1915
  icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1916
- _chunkJTSUAHDLcjs.SquareAvatar,
1916
+ _chunkHY6BCZH7cjs.SquareAvatar,
1917
1917
  {
1918
1918
  src: userAvatarUrl || void 0,
1919
1919
  alt: userName || "User",
@@ -1939,7 +1939,7 @@ var AppHeader = _react2.default.memo(function AppHeaderImpl({
1939
1939
  children: [
1940
1940
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2 border-b border-ods-border bg-ods-card p-3", children: [
1941
1941
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1942
- _chunkJTSUAHDLcjs.SquareAvatar,
1942
+ _chunkHY6BCZH7cjs.SquareAvatar,
1943
1943
  {
1944
1944
  src: userAvatarUrl || void 0,
1945
1945
  alt: userName || "User",
@@ -1995,12 +1995,12 @@ var AppHeader = _react2.default.memo(function AppHeaderImpl({
1995
1995
  );
1996
1996
  });
1997
1997
  function NotificationsHeaderButton({ fallbackUnreadCount, disabled, dimmedClass }) {
1998
- const ctx = _chunkVRDHAR3Xcjs.useOptionalNotifications.call(void 0, );
1998
+ const ctx = _chunkSTHQJNNDcjs.useOptionalNotifications.call(void 0, );
1999
1999
  const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _56 => _56.unreadCount]), () => ( fallbackUnreadCount))) > 0;
2000
2000
  const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _57 => _57.isOpen]), () => ( false));
2001
2001
  const onClick = _optionalChain([ctx, 'optionalAccess', _58 => _58.toggle]);
2002
2002
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2003
- _chunkVRDHAR3Xcjs.HeaderButton,
2003
+ _chunkSTHQJNNDcjs.HeaderButton,
2004
2004
  {
2005
2005
  icon: isActive ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWWUSFOJ7cjs.XmarkIcon, { className: "h-6 w-6" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCON36SEJcjs.BellIcon, { className: "h-6 w-6" }),
2006
2006
  showUnreadDot: !isActive && hasUnread,
@@ -2558,7 +2558,7 @@ var MobileBurgerMenu = _react2.default.memo(function MobileBurgerMenuImpl({
2558
2558
  "aria-disabled": disabled || void 0,
2559
2559
  children: [
2560
2560
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2561
- _chunkJTSUAHDLcjs.SquareAvatar,
2561
+ _chunkHY6BCZH7cjs.SquareAvatar,
2562
2562
  {
2563
2563
  src: user.userAvatarUrl || void 0,
2564
2564
  alt: user.userName || "User",
@@ -2673,7 +2673,7 @@ function AppLayout({
2673
2673
  }),
2674
2674
  []
2675
2675
  );
2676
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVRDHAR3Xcjs.AppLayoutDrawerContainerContext.Provider, { value: drawerContainer, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVRDHAR3Xcjs.AppLayoutDrawerCoordinationContext.Provider, { value: drawerCoordination, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, "flex h-screen flex-col bg-ods-bg", className), children: [
2676
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHQJNNDcjs.AppLayoutDrawerContainerContext.Provider, { value: drawerContainer, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHQJNNDcjs.AppLayoutDrawerCoordinationContext.Provider, { value: drawerCoordination, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk65VVJSQZcjs.cn.call(void 0, "flex h-screen flex-col bg-ods-bg", className), children: [
2677
2677
  topBar,
2678
2678
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative flex min-h-0 flex-1", children: [
2679
2679
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, NavigationSidebar, { config: sidebarConfig, disabled, pushOnTablet: hasSidePanel }),
@@ -2697,7 +2697,7 @@ function AppLayout({
2697
2697
  disabled
2698
2698
  }
2699
2699
  ),
2700
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVRDHAR3Xcjs.NotificationDrawer, {}),
2700
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHQJNNDcjs.NotificationDrawer, {}),
2701
2701
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
2702
2702
  "div",
2703
2703
  {
@@ -3,39 +3,39 @@
3
3
 
4
4
 
5
5
 
6
- var _chunkWO3XO27Ccjs = require('./chunk-WO3XO27C.cjs');
6
+ var _chunk2ZYCYLPLcjs = require('./chunk-2ZYCYLPL.cjs');
7
7
 
8
8
 
9
9
 
10
10
 
11
11
 
12
- var _chunkVYYLYZUCcjs = require('./chunk-VYYLYZUC.cjs');
12
+ var _chunk5O6PHVKOcjs = require('./chunk-5O6PHVKO.cjs');
13
13
 
14
14
 
15
15
 
16
- var _chunk7XFVUUVZcjs = require('./chunk-7XFVUUVZ.cjs');
16
+ var _chunkS4QS5E5Acjs = require('./chunk-S4QS5E5A.cjs');
17
17
 
18
18
 
19
19
 
20
20
 
21
21
 
22
22
 
23
- var _chunkVRDHAR3Xcjs = require('./chunk-VRDHAR3X.cjs');
23
+ var _chunkSTHQJNNDcjs = require('./chunk-STHQJNND.cjs');
24
24
 
25
25
 
26
- var _chunkZV45VS6Kcjs = require('./chunk-ZV45VS6K.cjs');
26
+ var _chunkXI2CHCODcjs = require('./chunk-XI2CHCOD.cjs');
27
27
 
28
28
 
29
29
 
30
30
 
31
31
 
32
- var _chunk7VI7TOGIcjs = require('./chunk-7VI7TOGI.cjs');
32
+ var _chunkUBPSA3RMcjs = require('./chunk-UBPSA3RM.cjs');
33
33
 
34
34
 
35
35
 
36
36
 
37
37
 
38
- var _chunkYL6ZB2SRcjs = require('./chunk-YL6ZB2SR.cjs');
38
+ var _chunkZXFOMNI5cjs = require('./chunk-ZXFOMNI5.cjs');
39
39
 
40
40
 
41
41
 
@@ -354,13 +354,13 @@ function toDocContent(value, requestedPath) {
354
354
  function toDataSync(value) {
355
355
  if (!isRecord(value)) return void 0;
356
356
  const source = readString(value, "source");
357
- if (!_chunkVRDHAR3Xcjs.isDataSyncSource.call(void 0, source)) return void 0;
357
+ if (!_chunkSTHQJNNDcjs.isDataSyncSource.call(void 0, source)) return void 0;
358
358
  return { source, syncedAt: _nullishCoalesce(readString(value, "syncedAt"), () => ( null)) };
359
359
  }
360
360
  function useDocumentTree(config, initialPath) {
361
361
  const { structureEndpoint, contentEndpoint, baseRoute } = config;
362
- const folderIndexFile = _nullishCoalesce(config.folderIndexFile, () => ( _chunk7VI7TOGIcjs.DEFAULT_FOLDER_INDEX_FILE));
363
- const cleanInitialPath = _chunk7VI7TOGIcjs.stripFolderIndexFromPath.call(void 0, _optionalChain([initialPath, 'optionalAccess', _4 => _4.replace, 'call', _5 => _5(/\/$/, "")]) || "", folderIndexFile);
362
+ const folderIndexFile = _nullishCoalesce(config.folderIndexFile, () => ( _chunkUBPSA3RMcjs.DEFAULT_FOLDER_INDEX_FILE));
363
+ const cleanInitialPath = _chunkUBPSA3RMcjs.stripFolderIndexFromPath.call(void 0, _optionalChain([initialPath, 'optionalAccess', _4 => _4.replace, 'call', _5 => _5(/\/$/, "")]) || "", folderIndexFile);
364
364
  const [structure, setStructure] = _react.useState.call(void 0, []);
365
365
  const [selectedPath, setSelectedPath] = _react.useState.call(void 0, cleanInitialPath);
366
366
  const [content, setContent] = _react.useState.call(void 0, null);
@@ -386,12 +386,12 @@ function useDocumentTree(config, initialPath) {
386
386
  } else if (pathname.startsWith(`${normalizedBaseRoute}/`)) {
387
387
  pathFromUrl = pathname.substring(`${normalizedBaseRoute}/`.length);
388
388
  }
389
- pathFromUrl = _chunk7VI7TOGIcjs.stripFolderIndexFromPath.call(void 0, pathFromUrl, folderIndexFile);
389
+ pathFromUrl = _chunkUBPSA3RMcjs.stripFolderIndexFromPath.call(void 0, pathFromUrl, folderIndexFile);
390
390
  if (pathFromUrl !== selectedPathRef.current) {
391
391
  setSelectedPath(pathFromUrl);
392
392
  if (pathFromUrl) {
393
393
  const parentPath = pathFromUrl.includes("/") ? pathFromUrl.substring(0, pathFromUrl.lastIndexOf("/")) : pathFromUrl;
394
- setExpandedNodes(new Set(_chunk7VI7TOGIcjs.getDocAncestorNodeIds.call(void 0, parentPath)));
394
+ setExpandedNodes(new Set(_chunkUBPSA3RMcjs.getDocAncestorNodeIds.call(void 0, parentPath)));
395
395
  }
396
396
  setTimeout(() => {
397
397
  scrollToContent();
@@ -409,7 +409,7 @@ function useDocumentTree(config, initialPath) {
409
409
  setSelectedPath(cleanInitialPath);
410
410
  if (cleanInitialPath) {
411
411
  const parentPath = cleanInitialPath.includes("/") ? cleanInitialPath.substring(0, cleanInitialPath.lastIndexOf("/")) : cleanInitialPath;
412
- setExpandedNodes(new Set(_chunk7VI7TOGIcjs.getDocAncestorNodeIds.call(void 0, parentPath)));
412
+ setExpandedNodes(new Set(_chunkUBPSA3RMcjs.getDocAncestorNodeIds.call(void 0, parentPath)));
413
413
  }
414
414
  setExternalNavCount((n) => n + 1);
415
415
  }
@@ -434,7 +434,7 @@ function useDocumentTree(config, initialPath) {
434
434
  if (cleanInitialPath) {
435
435
  const pathForExpansion = cleanInitialPath.includes(".") ? cleanInitialPath.substring(0, cleanInitialPath.lastIndexOf("/")) : cleanInitialPath;
436
436
  if (pathForExpansion) {
437
- setExpandedNodes(new Set(_chunk7VI7TOGIcjs.getDocAncestorNodeIds.call(void 0, pathForExpansion)));
437
+ setExpandedNodes(new Set(_chunkUBPSA3RMcjs.getDocAncestorNodeIds.call(void 0, pathForExpansion)));
438
438
  }
439
439
  } else if (nodes.length > 0) {
440
440
  const hasRootReadme = nodes.some((node) => node.type === "file" && node.path === folderIndexFile);
@@ -474,7 +474,7 @@ function useDocumentTree(config, initialPath) {
474
474
  setContent(null);
475
475
  return;
476
476
  }
477
- const probe = _chunk7VI7TOGIcjs.findDocNodeByPath.call(void 0, _chunk7VI7TOGIcjs.stripFolderIndexFromPath.call(void 0, path, folderIndexFile), structure);
477
+ const probe = _chunkUBPSA3RMcjs.findDocNodeByPath.call(void 0, _chunkUBPSA3RMcjs.stripFolderIndexFromPath.call(void 0, path, folderIndexFile), structure);
478
478
  const probeIsNoReadmeFolder = !!probe && probe.type === "folder" && !probe.hasReadme;
479
479
  const preStructureFolderLike = structure.length === 0 && !path.endsWith(".md");
480
480
  if (probeIsNoReadmeFolder || preStructureFolderLike) {
@@ -533,7 +533,7 @@ function useDocumentTree(config, initialPath) {
533
533
  if (selectedPath === "") {
534
534
  pathToFetch = folderIndexFile;
535
535
  } else {
536
- const node = _chunk7VI7TOGIcjs.findDocNodeByPath.call(void 0, selectedPath, structure);
536
+ const node = _chunkUBPSA3RMcjs.findDocNodeByPath.call(void 0, selectedPath, structure);
537
537
  if (node && node.type === "folder" && !node.hasReadme) {
538
538
  const firstDocPath = findFirstDocPath(node);
539
539
  if (!firstDocPath) {
@@ -574,16 +574,16 @@ function useDocumentTree(config, initialPath) {
574
574
  if (node.type === "folder") {
575
575
  setExpandedNodes((prev) => {
576
576
  if (prev.has(node.id)) {
577
- const ancestorIds = _chunk7VI7TOGIcjs.getDocAncestorNodeIds.call(void 0, node.path);
577
+ const ancestorIds = _chunkUBPSA3RMcjs.getDocAncestorNodeIds.call(void 0, node.path);
578
578
  ancestorIds.pop();
579
579
  return new Set(ancestorIds);
580
580
  }
581
- return new Set(_chunk7VI7TOGIcjs.getDocAncestorNodeIds.call(void 0, node.path));
581
+ return new Set(_chunkUBPSA3RMcjs.getDocAncestorNodeIds.call(void 0, node.path));
582
582
  });
583
583
  } else {
584
584
  const lastSlash = node.path.lastIndexOf("/");
585
585
  if (lastSlash > 0) {
586
- setExpandedNodes(new Set(_chunk7VI7TOGIcjs.getDocAncestorNodeIds.call(void 0, node.path.substring(0, lastSlash))));
586
+ setExpandedNodes(new Set(_chunkUBPSA3RMcjs.getDocAncestorNodeIds.call(void 0, node.path.substring(0, lastSlash))));
587
587
  }
588
588
  }
589
589
  lastFetchedPath.current = null;
@@ -598,7 +598,7 @@ function useDocumentTree(config, initialPath) {
598
598
  const hashIndex = path.indexOf("#");
599
599
  const anchor = hashIndex !== -1 ? path.substring(hashIndex) : "";
600
600
  const cleanPath = path.replace(/\/$/, "").split("#")[0];
601
- const pathForSelection = anchor && _optionalChain([options, 'optionalAccess', _6 => _6.fromInternalLink]) && cleanPath === "" ? selectedPathRef.current : _chunk7VI7TOGIcjs.stripFolderIndexFromPath.call(void 0, cleanPath, folderIndexFile);
601
+ const pathForSelection = anchor && _optionalChain([options, 'optionalAccess', _6 => _6.fromInternalLink]) && cleanPath === "" ? selectedPathRef.current : _chunkUBPSA3RMcjs.stripFolderIndexFromPath.call(void 0, cleanPath, folderIndexFile);
602
602
  if (anchor && _optionalChain([options, 'optionalAccess', _7 => _7.fromInternalLink]) && pathForSelection === selectedPathRef.current) {
603
603
  _chunkXXJL5GY3cjs.navigateSamePageHash.call(void 0, anchor, { headerOffset: _chunkXXJL5GY3cjs.HUB_HEADER_OFFSET_PX });
604
604
  return;
@@ -662,15 +662,15 @@ function useDocumentTree(config, initialPath) {
662
662
  return docNavigation.register({
663
663
  baseRoute: normalizedBaseRoute,
664
664
  findNodeByPath: (path) => {
665
- const clean = _chunk7VI7TOGIcjs.stripFolderIndexFromPath.call(void 0, path.replace(/\/$/, "").split("#")[0], folderIndexFile);
666
- return _nullishCoalesce(_chunk7VI7TOGIcjs.findDocNodeByPath.call(void 0, clean, structure), () => ( null));
665
+ const clean = _chunkUBPSA3RMcjs.stripFolderIndexFromPath.call(void 0, path.replace(/\/$/, "").split("#")[0], folderIndexFile);
666
+ return _nullishCoalesce(_chunkUBPSA3RMcjs.findDocNodeByPath.call(void 0, clean, structure), () => ( null));
667
667
  },
668
668
  selectNode
669
669
  });
670
670
  }, [docNavigation, normalizedBaseRoute, structure, selectNode, folderIndexFile]);
671
671
  const isEmptyFolder = _react.useMemo.call(void 0, () => {
672
672
  if (!selectedPath || structure.length === 0) return false;
673
- const node = _chunk7VI7TOGIcjs.findDocNodeByPath.call(void 0, selectedPath, structure);
673
+ const node = _chunkUBPSA3RMcjs.findDocNodeByPath.call(void 0, selectedPath, structure);
674
674
  return !!node && node.type === "folder" && !node.hasReadme && !findFirstDocPath(node);
675
675
  }, [selectedPath, structure]);
676
676
  return {
@@ -753,14 +753,14 @@ function DocViewerContent({
753
753
  },
754
754
  docPath
755
755
  );
756
- const { activeSection, handleSectionClick } = _chunkVYYLYZUCcjs.useScrollSpy.call(void 0, _optionalChain([content, 'optionalAccess', _11 => _11.sections]));
756
+ const { activeSection, handleSectionClick } = _chunk5O6PHVKOcjs.useScrollSpy.call(void 0, _optionalChain([content, 'optionalAccess', _11 => _11.sections]));
757
757
  const docNav = useDocNavigation();
758
758
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
759
759
  const backCfg = backButton === false ? null : {
760
760
  label: _nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _12 => _12.label]), () => ( "Back to home")),
761
761
  onClick: () => router.push(_nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _13 => _13.href]), () => ( "/")))
762
762
  };
763
- const docSearch = _chunk7XFVUUVZcjs.useDocSearch.call(void 0, {
763
+ const docSearch = _chunkS4QS5E5Acjs.useDocSearch.call(void 0, {
764
764
  source: chatSource,
765
765
  baseRoute,
766
766
  searchEndpoint,
@@ -784,7 +784,7 @@ function DocViewerContent({
784
784
  onResolveLink: resolveLink
785
785
  });
786
786
  }, [content, renderContent, navigateToDoc, sourceId, resolveLink]);
787
- const selectedNodeDocType = selectedPath && structure.length > 0 ? _optionalChain([_chunk7VI7TOGIcjs.findDocNodeByPath.call(void 0, selectedPath, structure), 'optionalAccess', _14 => _14.documentType]) : void 0;
787
+ const selectedNodeDocType = selectedPath && structure.length > 0 ? _optionalChain([_chunkUBPSA3RMcjs.findDocNodeByPath.call(void 0, selectedPath, structure), 'optionalAccess', _14 => _14.documentType]) : void 0;
788
788
  const activeDocType = _nullishCoalesce(_optionalChain([content, 'optionalAccess', _15 => _15.documentType]), () => ( selectedNodeDocType));
789
789
  const isMarkdownContent = !activeDocType || activeDocType === "markdown";
790
790
  const showStickyNav = isMarkdownContent;
@@ -795,10 +795,10 @@ function DocViewerContent({
795
795
  const containerBgStyle = colorPalette.containerBackground !== "transparent" ? { backgroundColor: colorPalette.containerBackground } : {};
796
796
  const defaultEmptyText = structure.length > 0 ? "Select a document from the sidebar to view" : "No documents yet. Add content from the admin panel.";
797
797
  const resolvedEmptyText = emptyStateText || defaultEmptyText;
798
- const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: { ...bgStyle, ...containerBgStyle }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkZV45VS6Kcjs.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: [
799
- synced && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVRDHAR3Xcjs.DataSyncLine, { sync: _optionalChain([content, 'optionalAccess', _19 => _19.sync]), loading: !content && (isLoadingContent || isLoadingStructure) }),
798
+ const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: { ...bgStyle, ...containerBgStyle }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXI2CHCODcjs.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: [
799
+ synced && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHQJNNDcjs.DataSyncLine, { sync: _optionalChain([content, 'optionalAccess', _19 => _19.sync]), loading: !content && (isLoadingContent || isLoadingStructure) }),
800
800
  showAIChat && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
801
- _chunk7XFVUUVZcjs.DocSearchBar,
801
+ _chunkS4QS5E5Acjs.DocSearchBar,
802
802
  {
803
803
  placeholder: `Search ${_optionalChain([sidebarLabel, 'optionalAccess', _20 => _20.toLowerCase, 'call', _21 => _21()]) || "documents"}...`,
804
804
  query: docSearch.query,
@@ -819,7 +819,7 @@ function DocViewerContent({
819
819
  !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: [
820
820
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full content-lg:w-[320px] content-lg:shrink-0", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "content-lg:sticky content-lg:top-20", children: [
821
821
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PersistentMobileDropdown, { isLoading: false, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
822
- _chunkVYYLYZUCcjs.MobileNavigationDropdown,
822
+ _chunk5O6PHVKOcjs.MobileNavigationDropdown,
823
823
  {
824
824
  nodes: structure,
825
825
  selectedPath,
@@ -833,7 +833,7 @@ function DocViewerContent({
833
833
  /* @__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: [
834
834
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "font-semibold text-ods-text-secondary text-h5", children: sidebarLabel }),
835
835
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
836
- _chunkVYYLYZUCcjs.MultiLevelNavigation,
836
+ _chunk5O6PHVKOcjs.MultiLevelNavigation,
837
837
  {
838
838
  nodes: structure,
839
839
  selectedPath,
@@ -872,7 +872,7 @@ function DocViewerContent({
872
872
  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: [
873
873
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: ON_THIS_PAGE_HEADING_CLASS, children: ON_THIS_PAGE_LABEL }),
874
874
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
875
- _chunkVYYLYZUCcjs.StickySectionNav,
875
+ _chunk5O6PHVKOcjs.StickySectionNav,
876
876
  {
877
877
  sections: stickyNavSections,
878
878
  activeSection,
@@ -887,7 +887,7 @@ function DocViewerContent({
887
887
  ) })
888
888
  ] })
889
889
  ] }) }) });
890
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVRDHAR3Xcjs.PageShell, { contentClassName: `${bgClass} ${className}`, children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `page-shell-content ${bgClass} ${className}`.trim(), children: inner });
890
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHQJNNDcjs.PageShell, { contentClassName: `${bgClass} ${className}`, children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `page-shell-content ${bgClass} ${className}`.trim(), children: inner });
891
891
  }
892
892
 
893
893
  // src/components/docs/skeletons.tsx
@@ -903,14 +903,14 @@ var MARKDOWN_SKELETON_BLOCKS = [
903
903
  { kind: "p", lines: 3 },
904
904
  { kind: "p", lines: 4 }
905
905
  ];
906
- var MARKDOWN_SKELETON_H2_CLASS = _chunk65VVJSQZcjs.cn.call(void 0, _chunkYL6ZB2SRcjs.MARKDOWN_H2_CLASS, _chunkYL6ZB2SRcjs.TEXT_SIZE_PRESETS.default.h2);
907
- var MARKDOWN_SKELETON_P_CLASS = _chunk65VVJSQZcjs.cn.call(void 0, _chunkYL6ZB2SRcjs.MARKDOWN_PARAGRAPH_CLASS, _chunkYL6ZB2SRcjs.TEXT_SIZE_PRESETS.default.p);
906
+ var MARKDOWN_SKELETON_H2_CLASS = _chunk65VVJSQZcjs.cn.call(void 0, _chunkZXFOMNI5cjs.MARKDOWN_H2_CLASS, _chunkZXFOMNI5cjs.TEXT_SIZE_PRESETS.default.h2);
907
+ var MARKDOWN_SKELETON_P_CLASS = _chunk65VVJSQZcjs.cn.call(void 0, _chunkZXFOMNI5cjs.MARKDOWN_PARAGRAPH_CLASS, _chunkZXFOMNI5cjs.TEXT_SIZE_PRESETS.default.p);
908
908
  function MarkdownSkeleton({
909
909
  region = true
910
910
  } = {}) {
911
911
  return (
912
912
  // The renderer's root class, and its box (no margin of its own, like the rendered body): the document's first fold.
913
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWEANWBJHcjs.LoadingRegion, { label: "Loading the document", announce: region, className: _chunkYL6ZB2SRcjs.MARKDOWN_RENDERER_CLASS, children: MARKDOWN_SKELETON_BLOCKS.map(
913
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWEANWBJHcjs.LoadingRegion, { label: "Loading the document", announce: region, className: _chunkZXFOMNI5cjs.MARKDOWN_RENDERER_CLASS, children: MARKDOWN_SKELETON_BLOCKS.map(
914
914
  (block, i) => block.kind === "h2" ? (
915
915
  // biome-ignore lint/suspicious/noArrayIndexKey: skeleton blocks never reorder
916
916
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: MARKDOWN_SKELETON_H2_CLASS, "aria-hidden": true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXFRBEXQNcjs.TextLineSkeleton, { type: "inherit", as: "span", className: "w-1/3" }) }, i)
@@ -949,7 +949,7 @@ function EmbedSkeleton({ documentType, region = true } = {}) {
949
949
  ] }),
950
950
  /* @__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, _chunkXFRBEXQNcjs.UnifiedSkeleton, { className: "h-10 w-full flex-1 rounded content-sm:w-32 content-sm:flex-initial" }, i)) })
951
951
  ] }),
952
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVRDHAR3Xcjs.EmbedLoadingSkeleton, { region: false })
952
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHQJNNDcjs.EmbedLoadingSkeleton, { region: false })
953
953
  ] });
954
954
  }
955
955
 
@@ -957,11 +957,11 @@ function EmbedSkeleton({ documentType, region = true } = {}) {
957
957
 
958
958
  var DEFAULT_TITLE = "Documents";
959
959
  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" }) });
960
- var defaultPdfRenderer = (content, handlers) => content.fileUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWO3XO27Ccjs.PdfViewer, { src: content.fileUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
961
- var defaultGoogleSheetRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWO3XO27Ccjs.GoogleSheetsViewer, { externalUrl: content.externalUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
962
- var defaultFigmaRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVRDHAR3Xcjs.FigmaEmbed, { url: content.externalUrl, title: content.fileName, loading: "eager" }) : defaultFallbackRenderer(content, handlers);
960
+ var defaultPdfRenderer = (content, handlers) => content.fileUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ZYCYLPLcjs.PdfViewer, { src: content.fileUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
961
+ var defaultGoogleSheetRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2ZYCYLPLcjs.GoogleSheetsViewer, { externalUrl: content.externalUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
962
+ var defaultFigmaRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkSTHQJNNDcjs.FigmaEmbed, { url: content.externalUrl, title: content.fileName, loading: "eager" }) : defaultFallbackRenderer(content, handlers);
963
963
  var defaultFileRenderer = (content) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
964
- _chunkWO3XO27Ccjs.FileDownloadCard,
964
+ _chunk2ZYCYLPLcjs.FileDownloadCard,
965
965
  {
966
966
  fileName: content.fileName,
967
967
  mimeType: content.mimeType,