@flamingo-stack/openframe-frontend-core 0.0.734 → 0.0.736

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 (95) hide show
  1. package/dist/build/export-map.json +1 -1
  2. package/dist/{chunk-XKB7YGQM.cjs → chunk-77SD7RXY.cjs} +18 -6
  3. package/dist/{chunk-FA5SMA7L.cjs → chunk-7V2KP2TB.cjs} +4 -4
  4. package/dist/{chunk-KSXZABGH.cjs → chunk-BDF3FNOC.cjs} +38 -38
  5. package/dist/{chunk-3NANWZO3.cjs → chunk-BL5GOCHP.cjs} +14 -14
  6. package/dist/{chunk-DHIISS4W.cjs → chunk-EJOXXJJB.cjs} +62 -10
  7. package/dist/{chunk-TLQQP2EL.cjs → chunk-EX2GYIGW.cjs} +6 -6
  8. package/dist/{chunk-JRC3KXKV.cjs → chunk-FTGVG6FW.cjs} +30 -30
  9. package/dist/{chunk-4Q34V7MD.cjs → chunk-JGGSRCRD.cjs} +18 -18
  10. package/dist/{chunk-73ZW3265.cjs → chunk-JM54CNZZ.cjs} +85 -85
  11. package/dist/{chunk-HBUUCLQM.cjs → chunk-L535OD7V.cjs} +2 -2
  12. package/dist/{chunk-AOTOOGNX.cjs → chunk-LIH5OQLY.cjs} +3 -3
  13. package/dist/{chunk-OXJ57643.cjs → chunk-MGW5DO6P.cjs} +76 -17
  14. package/dist/{chunk-R65UD6BH.cjs → chunk-NONQUGRP.cjs} +14 -14
  15. package/dist/{chunk-4V672TEI.cjs → chunk-OJUMVOMP.cjs} +408 -355
  16. package/dist/{chunk-HAWQA5FI.cjs → chunk-OV6BGMEL.cjs} +151 -184
  17. package/dist/{chunk-5OGT7H2S.cjs → chunk-P6Z3EBPJ.cjs} +15 -15
  18. package/dist/{chunk-5DDFSGCE.cjs → chunk-SZFA2LQR.cjs} +33 -33
  19. package/dist/{chunk-EMBH2EJO.cjs → chunk-T27CVQBO.cjs} +65 -65
  20. package/dist/{chunk-CMUEFHM3.cjs → chunk-UBQSOB3X.cjs} +4 -4
  21. package/dist/{chunk-L7WJBJU7.cjs → chunk-URX2YTCL.cjs} +72 -72
  22. package/dist/{chunk-BP6R5WDW.cjs → chunk-VA7OMDZO.cjs} +41 -23
  23. package/dist/{chunk-D34BLEIR.cjs → chunk-VRNNIV5Y.cjs} +2 -2
  24. package/dist/{chunk-2OHBH6PS.cjs → chunk-XLSVQJBA.cjs} +44 -44
  25. package/dist/{chunk-OV7QQHLG.cjs → chunk-ZEX5WU35.cjs} +17 -17
  26. package/dist/{cloud-tenants-HU7YZD33.cjs → cloud-tenants-M55HMW6F.cjs} +8 -8
  27. package/dist/components/case-studies/index.cjs +20 -20
  28. package/dist/components/chat/entity-cards/program-card.d.ts.map +1 -1
  29. package/dist/components/chat/entity-cards/program-card.js +6 -6
  30. package/dist/components/chat/index.cjs +9 -9
  31. package/dist/components/contact/index.cjs +9 -9
  32. package/dist/components/docs/index.cjs +12 -12
  33. package/dist/components/embeds/index.cjs +9 -9
  34. package/dist/components/faq/index.cjs +9 -9
  35. package/dist/components/features/cards-strip.d.ts.map +1 -1
  36. package/dist/components/features/cards-strip.js +6 -2
  37. package/dist/components/features/index.cjs +8 -8
  38. package/dist/components/features/video-bites-strip.d.ts +6 -1
  39. package/dist/components/features/video-bites-strip.d.ts.map +1 -1
  40. package/dist/components/features/video-bites-strip.js +15 -3
  41. package/dist/components/help-center-pages/index.cjs +109 -109
  42. package/dist/components/index.cjs +68 -62
  43. package/dist/components/meeting-scheduler/index.cjs +35 -35
  44. package/dist/components/navigation/index.cjs +11 -11
  45. package/dist/components/onboarding-guides/index.cjs +11 -11
  46. package/dist/components/pagination.d.ts +9 -1
  47. package/dist/components/pagination.d.ts.map +1 -1
  48. package/dist/components/pagination.js +72 -17
  49. package/dist/components/product-demo/index.cjs +6 -6
  50. package/dist/components/related-content/index.cjs +5 -5
  51. package/dist/components/tickets/index.cjs +13 -13
  52. package/dist/components/ui/fade-preview.d.ts +5 -1
  53. package/dist/components/ui/fade-preview.d.ts.map +1 -1
  54. package/dist/components/ui/fade-preview.js +18 -1
  55. package/dist/components/ui/index.cjs +18 -12
  56. package/dist/components/ui/index.d.ts +1 -0
  57. package/dist/components/ui/index.d.ts.map +1 -1
  58. package/dist/components/ui/index.js +1 -0
  59. package/dist/components/ui/layout-hold.d.ts +31 -0
  60. package/dist/components/ui/layout-hold.d.ts.map +1 -0
  61. package/dist/components/ui/layout-hold.js +25 -0
  62. package/dist/components/ui/snap-carousel.d.ts.map +1 -1
  63. package/dist/components/ui/snap-carousel.js +28 -15
  64. package/dist/components/unified-pagination.d.ts.map +1 -1
  65. package/dist/components/unified-pagination.js +16 -4
  66. package/dist/{devices-CKLN7BHY.cjs → devices-WWJZFG6E.cjs} +9 -9
  67. package/dist/{embeddable-chat-FTAX4SVV.cjs → embeddable-chat-76IJ6TQZ.cjs} +72 -72
  68. package/dist/hooks/index.cjs +4 -2
  69. package/dist/hooks/ui/index.d.ts +1 -0
  70. package/dist/hooks/ui/index.d.ts.map +1 -1
  71. package/dist/hooks/ui/index.js +1 -0
  72. package/dist/hooks/ui/use-resumable-timeout.d.ts +22 -0
  73. package/dist/hooks/ui/use-resumable-timeout.d.ts.map +1 -0
  74. package/dist/hooks/ui/use-resumable-timeout.js +26 -0
  75. package/dist/hooks/use-scenario-player.d.ts +4 -3
  76. package/dist/hooks/use-scenario-player.d.ts.map +1 -1
  77. package/dist/hooks/use-scenario-player.js +17 -23
  78. package/dist/index.cjs +24 -16
  79. package/dist/{knowledge-NRLHSCC5.cjs → knowledge-F4YFQT3G.cjs} +9 -9
  80. package/dist/{logs-BR6SLYAF.cjs → logs-GAYEGEZM.cjs} +16 -16
  81. package/dist/{policies-MQRXBYG2.cjs → policies-ZOVJCJWX.cjs} +12 -12
  82. package/dist/{software-update-RUGIQP7N.cjs → software-update-H4YE5GMJ.cjs} +11 -11
  83. package/package.json +1 -1
  84. package/src/components/chat/entity-cards/program-card.tsx +9 -8
  85. package/src/components/features/cards-strip.tsx +11 -2
  86. package/src/components/features/video-bites-strip.tsx +22 -3
  87. package/src/components/pagination.tsx +117 -21
  88. package/src/components/ui/fade-preview.tsx +30 -1
  89. package/src/components/ui/index.ts +1 -0
  90. package/src/components/ui/layout-hold.tsx +55 -0
  91. package/src/components/ui/snap-carousel.tsx +36 -20
  92. package/src/components/unified-pagination.tsx +23 -7
  93. package/src/hooks/ui/index.ts +1 -0
  94. package/src/hooks/ui/use-resumable-timeout.ts +55 -0
  95. package/src/hooks/use-scenario-player.ts +28 -32
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- var _chunk4V672TEIcjs = require('./chunk-4V672TEI.cjs');
5
+ var _chunkOJUMVOMPcjs = require('./chunk-OJUMVOMP.cjs');
6
6
 
7
7
 
8
8
 
@@ -14,19 +14,19 @@ var _chunkL4ZNR5V7cjs = require('./chunk-L4ZNR5V7.cjs');
14
14
 
15
15
 
16
16
 
17
- var _chunkBP6R5WDWcjs = require('./chunk-BP6R5WDW.cjs');
17
+ var _chunkVA7OMDZOcjs = require('./chunk-VA7OMDZO.cjs');
18
18
 
19
19
 
20
- var _chunkEMBH2EJOcjs = require('./chunk-EMBH2EJO.cjs');
20
+ var _chunkT27CVQBOcjs = require('./chunk-T27CVQBO.cjs');
21
21
 
22
22
 
23
23
 
24
24
 
25
- var _chunkHAWQA5FIcjs = require('./chunk-HAWQA5FI.cjs');
25
+ var _chunkOV6BGMELcjs = require('./chunk-OV6BGMEL.cjs');
26
26
 
27
27
 
28
28
 
29
- var _chunkDHIISS4Wcjs = require('./chunk-DHIISS4W.cjs');
29
+ var _chunkEJOXXJJBcjs = require('./chunk-EJOXXJJB.cjs');
30
30
 
31
31
 
32
32
 
@@ -119,14 +119,14 @@ function ContactForm({
119
119
  successToastMessage = "Redirecting you to join our community...",
120
120
  rescue: rescueForm = null
121
121
  } = {}) {
122
- const attachments = _chunkHAWQA5FIcjs.useChatAttachments.call(void 0, );
123
- const builtInSubmission = _chunkBP6R5WDWcjs.useContactSubmission.call(void 0, {
122
+ const attachments = _chunkOV6BGMELcjs.useChatAttachments.call(void 0, );
123
+ const builtInSubmission = _chunkVA7OMDZOcjs.useContactSubmission.call(void 0, {
124
124
  userId,
125
125
  successRedirectUrl,
126
126
  successToastMessage
127
127
  });
128
128
  const [customSubmitting, setCustomSubmitting] = _react.useState.call(void 0, false);
129
- const { honeypotInputProps, getSignals, resetSignals } = _chunkBP6R5WDWcjs.useHumanitySignals.call(void 0, );
129
+ const { honeypotInputProps, getSignals, resetSignals } = _chunkVA7OMDZOcjs.useHumanitySignals.call(void 0, );
130
130
  const isSubmitting = onCustomSubmit ? customSubmitting : builtInSubmission.isSubmitting;
131
131
  const isSuccess = onCustomSubmit ? false : builtInSubmission.isSuccess;
132
132
  const form = _reacthookform.useForm.call(void 0, {
@@ -152,7 +152,7 @@ function ContactForm({
152
152
  ),
153
153
  [hideFields]
154
154
  );
155
- const rescue = _chunkBP6R5WDWcjs.useRescuedForm.call(void 0, form, { rescue: rescueForm, fields: rescueFieldNames, getSignals });
155
+ const rescue = _chunkVA7OMDZOcjs.useRescuedForm.call(void 0, form, { rescue: rescueForm, fields: rescueFieldNames, getSignals });
156
156
  const handleFormSubmit = async (data) => {
157
157
  if (isSubmitting) return;
158
158
  if (attachmentsEnabled && attachments.hasInflightUploads) return;
@@ -190,7 +190,7 @@ function ContactForm({
190
190
  className: `flex h-full flex-col ${!noBorder ? "rounded-2xl border border-ods-border content-md:rounded-3xl" : ""} ${!noPadding ? "p-6 content-md:p-8 content-lg:p-10" : ""}`,
191
191
  children: [
192
192
  (title || subtitle) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "mb-6 content-md:mb-8", children: [
193
- title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${_chunkDHIISS4Wcjs.SECTION_HEADING_CLASS} mb-3 content-md:mb-4`, children: _chunkDHIISS4Wcjs.accentSentenceMarks.call(void 0, title) }),
193
+ title && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: `${_chunkEJOXXJJBcjs.SECTION_HEADING_CLASS} mb-3 content-md:mb-4`, children: _chunkEJOXXJJBcjs.accentSentenceMarks.call(void 0, title) }),
194
194
  subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h4", children: subtitle })
195
195
  ] }),
196
196
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -203,13 +203,13 @@ function ContactForm({
203
203
  );
204
204
  }),
205
205
  className: "flex flex-grow flex-col space-y-4 content-md:space-y-6",
206
- ..._chunkEMBH2EJOcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
206
+ ..._chunkT27CVQBOcjs.HUBSPOT_DO_NOT_COLLECT_FORM_PROPS,
207
207
  children: [
208
208
  !showName && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "input", { type: "hidden", ...register("name") }),
209
209
  !showEmail && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "input", { type: "hidden", ...register("email") }),
210
210
  !showHelpCategory && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "input", { type: "hidden", ...register("helpCategory") }),
211
211
  !showMessage && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "input", { type: "hidden", ...register("message") }),
212
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4V672TEIcjs.HoneypotField, { ...honeypotInputProps }),
212
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOJUMVOMPcjs.HoneypotField, { ...honeypotInputProps }),
213
213
  extraTopField,
214
214
  showNameEmailRow && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "grid grid-cols-1 gap-4 content-md:grid-cols-2 content-md:gap-6", children: [
215
215
  showName && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col", children: [
@@ -334,7 +334,7 @@ function ContactForm({
334
334
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHTRILBJDcjs.RequiredMark, {})
335
335
  ] }),
336
336
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
337
- _chunk4V672TEIcjs.Textarea,
337
+ _chunkOJUMVOMPcjs.Textarea,
338
338
  {
339
339
  id: "message",
340
340
  ...register("message"),
@@ -349,7 +349,7 @@ function ContactForm({
349
349
  ] }),
350
350
  attachmentsEnabled && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-2", children: [
351
351
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
352
- _chunkHAWQA5FIcjs.ChatAttachmentChipStrip,
352
+ _chunkOV6BGMELcjs.ChatAttachmentChipStrip,
353
353
  {
354
354
  attachments: attachments.attachments,
355
355
  onRemove: attachments.removeAttachment,
@@ -358,7 +358,7 @@ function ContactForm({
358
358
  ),
359
359
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
360
360
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
361
- _chunkHAWQA5FIcjs.ChatAttachmentAddButton,
361
+ _chunkOV6BGMELcjs.ChatAttachmentAddButton,
362
362
  {
363
363
  attachmentsEnabled: true,
364
364
  attachmentsCount: attachments.attachments.length,
@@ -3,22 +3,22 @@
3
3
 
4
4
 
5
5
 
6
- var _chunkAOTOOGNXcjs = require('./chunk-AOTOOGNX.cjs');
6
+ var _chunkLIH5OQLYcjs = require('./chunk-LIH5OQLY.cjs');
7
7
 
8
8
 
9
9
 
10
10
 
11
11
 
12
- var _chunkFA5SMA7Lcjs = require('./chunk-FA5SMA7L.cjs');
12
+ var _chunk7V2KP2TBcjs = require('./chunk-7V2KP2TB.cjs');
13
13
 
14
14
 
15
15
 
16
- var _chunkR65UD6BHcjs = require('./chunk-R65UD6BH.cjs');
16
+ var _chunkNONQUGRPcjs = require('./chunk-NONQUGRP.cjs');
17
17
 
18
18
 
19
19
 
20
20
 
21
- var _chunk4V672TEIcjs = require('./chunk-4V672TEI.cjs');
21
+ var _chunkOJUMVOMPcjs = require('./chunk-OJUMVOMP.cjs');
22
22
 
23
23
 
24
24
  var _chunkL4ZNR5V7cjs = require('./chunk-L4ZNR5V7.cjs');
@@ -27,7 +27,7 @@ var _chunkL4ZNR5V7cjs = require('./chunk-L4ZNR5V7.cjs');
27
27
 
28
28
 
29
29
 
30
- var _chunkEMBH2EJOcjs = require('./chunk-EMBH2EJO.cjs');
30
+ var _chunkT27CVQBOcjs = require('./chunk-T27CVQBO.cjs');
31
31
 
32
32
 
33
33
 
@@ -337,8 +337,8 @@ function toDocContent(value, requestedPath) {
337
337
  }
338
338
  function useDocumentTree(config, initialPath) {
339
339
  const { structureEndpoint, contentEndpoint, baseRoute } = config;
340
- const folderIndexFile = _nullishCoalesce(config.folderIndexFile, () => ( _chunkEMBH2EJOcjs.DEFAULT_FOLDER_INDEX_FILE));
341
- const cleanInitialPath = _chunkEMBH2EJOcjs.stripFolderIndexFromPath.call(void 0, _optionalChain([initialPath, 'optionalAccess', _4 => _4.replace, 'call', _5 => _5(/\/$/, "")]) || "", folderIndexFile);
340
+ const folderIndexFile = _nullishCoalesce(config.folderIndexFile, () => ( _chunkT27CVQBOcjs.DEFAULT_FOLDER_INDEX_FILE));
341
+ const cleanInitialPath = _chunkT27CVQBOcjs.stripFolderIndexFromPath.call(void 0, _optionalChain([initialPath, 'optionalAccess', _4 => _4.replace, 'call', _5 => _5(/\/$/, "")]) || "", folderIndexFile);
342
342
  const [structure, setStructure] = _react.useState.call(void 0, []);
343
343
  const [selectedPath, setSelectedPath] = _react.useState.call(void 0, cleanInitialPath);
344
344
  const [content, setContent] = _react.useState.call(void 0, null);
@@ -362,12 +362,12 @@ function useDocumentTree(config, initialPath) {
362
362
  } else if (pathname.startsWith(`${normalizedBaseRoute}/`)) {
363
363
  pathFromUrl = pathname.substring(`${normalizedBaseRoute}/`.length);
364
364
  }
365
- pathFromUrl = _chunkEMBH2EJOcjs.stripFolderIndexFromPath.call(void 0, pathFromUrl, folderIndexFile);
365
+ pathFromUrl = _chunkT27CVQBOcjs.stripFolderIndexFromPath.call(void 0, pathFromUrl, folderIndexFile);
366
366
  if (pathFromUrl !== selectedPathRef.current) {
367
367
  setSelectedPath(pathFromUrl);
368
368
  if (pathFromUrl) {
369
369
  const parentPath = pathFromUrl.includes("/") ? pathFromUrl.substring(0, pathFromUrl.lastIndexOf("/")) : pathFromUrl;
370
- setExpandedNodes(new Set(_chunkEMBH2EJOcjs.getDocAncestorNodeIds.call(void 0, parentPath)));
370
+ setExpandedNodes(new Set(_chunkT27CVQBOcjs.getDocAncestorNodeIds.call(void 0, parentPath)));
371
371
  }
372
372
  setTimeout(() => {
373
373
  scrollToContent();
@@ -385,7 +385,7 @@ function useDocumentTree(config, initialPath) {
385
385
  setSelectedPath(cleanInitialPath);
386
386
  if (cleanInitialPath) {
387
387
  const parentPath = cleanInitialPath.includes("/") ? cleanInitialPath.substring(0, cleanInitialPath.lastIndexOf("/")) : cleanInitialPath;
388
- setExpandedNodes(new Set(_chunkEMBH2EJOcjs.getDocAncestorNodeIds.call(void 0, parentPath)));
388
+ setExpandedNodes(new Set(_chunkT27CVQBOcjs.getDocAncestorNodeIds.call(void 0, parentPath)));
389
389
  }
390
390
  setExternalNavCount((n) => n + 1);
391
391
  }
@@ -410,7 +410,7 @@ function useDocumentTree(config, initialPath) {
410
410
  if (cleanInitialPath) {
411
411
  const pathForExpansion = cleanInitialPath.includes(".") ? cleanInitialPath.substring(0, cleanInitialPath.lastIndexOf("/")) : cleanInitialPath;
412
412
  if (pathForExpansion) {
413
- setExpandedNodes(new Set(_chunkEMBH2EJOcjs.getDocAncestorNodeIds.call(void 0, pathForExpansion)));
413
+ setExpandedNodes(new Set(_chunkT27CVQBOcjs.getDocAncestorNodeIds.call(void 0, pathForExpansion)));
414
414
  }
415
415
  } else if (nodes.length > 0) {
416
416
  const hasRootReadme = nodes.some((node) => node.type === "file" && node.path === folderIndexFile);
@@ -450,7 +450,7 @@ function useDocumentTree(config, initialPath) {
450
450
  setContent(null);
451
451
  return;
452
452
  }
453
- const probe = _chunkEMBH2EJOcjs.findDocNodeByPath.call(void 0, _chunkEMBH2EJOcjs.stripFolderIndexFromPath.call(void 0, path, folderIndexFile), structure);
453
+ const probe = _chunkT27CVQBOcjs.findDocNodeByPath.call(void 0, _chunkT27CVQBOcjs.stripFolderIndexFromPath.call(void 0, path, folderIndexFile), structure);
454
454
  const probeIsNoReadmeFolder = !!probe && probe.type === "folder" && !probe.hasReadme;
455
455
  const preStructureFolderLike = structure.length === 0 && !path.endsWith(".md");
456
456
  if (probeIsNoReadmeFolder || preStructureFolderLike) {
@@ -507,7 +507,7 @@ function useDocumentTree(config, initialPath) {
507
507
  if (selectedPath === "") {
508
508
  pathToFetch = folderIndexFile;
509
509
  } else {
510
- const node = _chunkEMBH2EJOcjs.findDocNodeByPath.call(void 0, selectedPath, structure);
510
+ const node = _chunkT27CVQBOcjs.findDocNodeByPath.call(void 0, selectedPath, structure);
511
511
  if (node && node.type === "folder" && !node.hasReadme) {
512
512
  const firstDocPath = findFirstDocPath(node);
513
513
  if (!firstDocPath) {
@@ -548,16 +548,16 @@ function useDocumentTree(config, initialPath) {
548
548
  if (node.type === "folder") {
549
549
  setExpandedNodes((prev) => {
550
550
  if (prev.has(node.id)) {
551
- const ancestorIds = _chunkEMBH2EJOcjs.getDocAncestorNodeIds.call(void 0, node.path);
551
+ const ancestorIds = _chunkT27CVQBOcjs.getDocAncestorNodeIds.call(void 0, node.path);
552
552
  ancestorIds.pop();
553
553
  return new Set(ancestorIds);
554
554
  }
555
- return new Set(_chunkEMBH2EJOcjs.getDocAncestorNodeIds.call(void 0, node.path));
555
+ return new Set(_chunkT27CVQBOcjs.getDocAncestorNodeIds.call(void 0, node.path));
556
556
  });
557
557
  } else {
558
558
  const lastSlash = node.path.lastIndexOf("/");
559
559
  if (lastSlash > 0) {
560
- setExpandedNodes(new Set(_chunkEMBH2EJOcjs.getDocAncestorNodeIds.call(void 0, node.path.substring(0, lastSlash))));
560
+ setExpandedNodes(new Set(_chunkT27CVQBOcjs.getDocAncestorNodeIds.call(void 0, node.path.substring(0, lastSlash))));
561
561
  }
562
562
  }
563
563
  lastFetchedPath.current = null;
@@ -572,7 +572,7 @@ function useDocumentTree(config, initialPath) {
572
572
  const hashIndex = path.indexOf("#");
573
573
  const anchor = hashIndex !== -1 ? path.substring(hashIndex) : "";
574
574
  const cleanPath = path.replace(/\/$/, "").split("#")[0];
575
- const pathForSelection = anchor && _optionalChain([options, 'optionalAccess', _6 => _6.fromInternalLink]) && cleanPath === "" ? selectedPathRef.current : _chunkEMBH2EJOcjs.stripFolderIndexFromPath.call(void 0, cleanPath, folderIndexFile);
575
+ const pathForSelection = anchor && _optionalChain([options, 'optionalAccess', _6 => _6.fromInternalLink]) && cleanPath === "" ? selectedPathRef.current : _chunkT27CVQBOcjs.stripFolderIndexFromPath.call(void 0, cleanPath, folderIndexFile);
576
576
  if (anchor && _optionalChain([options, 'optionalAccess', _7 => _7.fromInternalLink]) && pathForSelection === selectedPathRef.current) {
577
577
  _chunkSA7LDEVJcjs.navigateSamePageHash.call(void 0, anchor, { headerOffset: _chunkSA7LDEVJcjs.HUB_HEADER_OFFSET_PX });
578
578
  return;
@@ -636,15 +636,15 @@ function useDocumentTree(config, initialPath) {
636
636
  return docNavigation.register({
637
637
  baseRoute: normalizedBaseRoute,
638
638
  findNodeByPath: (path) => {
639
- const clean = _chunkEMBH2EJOcjs.stripFolderIndexFromPath.call(void 0, path.replace(/\/$/, "").split("#")[0], folderIndexFile);
640
- return _nullishCoalesce(_chunkEMBH2EJOcjs.findDocNodeByPath.call(void 0, clean, structure), () => ( null));
639
+ const clean = _chunkT27CVQBOcjs.stripFolderIndexFromPath.call(void 0, path.replace(/\/$/, "").split("#")[0], folderIndexFile);
640
+ return _nullishCoalesce(_chunkT27CVQBOcjs.findDocNodeByPath.call(void 0, clean, structure), () => ( null));
641
641
  },
642
642
  selectNode
643
643
  });
644
644
  }, [docNavigation, normalizedBaseRoute, structure, selectNode, folderIndexFile]);
645
645
  const isEmptyFolder = _react.useMemo.call(void 0, () => {
646
646
  if (!selectedPath || structure.length === 0) return false;
647
- const node = _chunkEMBH2EJOcjs.findDocNodeByPath.call(void 0, selectedPath, structure);
647
+ const node = _chunkT27CVQBOcjs.findDocNodeByPath.call(void 0, selectedPath, structure);
648
648
  return !!node && node.type === "folder" && !node.hasReadme && !findFirstDocPath(node);
649
649
  }, [selectedPath, structure]);
650
650
  return {
@@ -724,14 +724,14 @@ function DocViewerContent({
724
724
  },
725
725
  docPath
726
726
  );
727
- const { activeSection, handleSectionClick } = _chunkFA5SMA7Lcjs.useScrollSpy.call(void 0, _optionalChain([content, 'optionalAccess', _11 => _11.sections]));
727
+ const { activeSection, handleSectionClick } = _chunk7V2KP2TBcjs.useScrollSpy.call(void 0, _optionalChain([content, 'optionalAccess', _11 => _11.sections]));
728
728
  const docNav = useDocNavigation();
729
729
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
730
730
  const backCfg = backButton === false ? null : {
731
731
  label: _nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _12 => _12.label]), () => ( "Back to home")),
732
732
  onClick: () => router.push(_nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _13 => _13.href]), () => ( "/")))
733
733
  };
734
- const docSearch = _chunkR65UD6BHcjs.useDocSearch.call(void 0, {
734
+ const docSearch = _chunkNONQUGRPcjs.useDocSearch.call(void 0, {
735
735
  source: chatSource,
736
736
  baseRoute,
737
737
  searchEndpoint,
@@ -755,7 +755,7 @@ function DocViewerContent({
755
755
  onResolveLink: resolveLink
756
756
  });
757
757
  }, [content, renderContent, navigateToDoc, sourceId, resolveLink]);
758
- const selectedNodeDocType = selectedPath && structure.length > 0 ? _optionalChain([_chunkEMBH2EJOcjs.findDocNodeByPath.call(void 0, selectedPath, structure), 'optionalAccess', _14 => _14.documentType]) : void 0;
758
+ const selectedNodeDocType = selectedPath && structure.length > 0 ? _optionalChain([_chunkT27CVQBOcjs.findDocNodeByPath.call(void 0, selectedPath, structure), 'optionalAccess', _14 => _14.documentType]) : void 0;
759
759
  const activeDocType = _nullishCoalesce(_optionalChain([content, 'optionalAccess', _15 => _15.documentType]), () => ( selectedNodeDocType));
760
760
  const isMarkdownContent = !activeDocType || activeDocType === "markdown";
761
761
  const showStickyNav = isMarkdownContent;
@@ -768,7 +768,7 @@ function DocViewerContent({
768
768
  const resolvedEmptyText = emptyStateText || defaultEmptyText;
769
769
  const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: { ...bgStyle, ...containerBgStyle }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkL4ZNR5V7cjs.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: [
770
770
  showAIChat && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
771
- _chunkR65UD6BHcjs.DocSearchBar,
771
+ _chunkNONQUGRPcjs.DocSearchBar,
772
772
  {
773
773
  placeholder: `Search ${_optionalChain([sidebarLabel, 'optionalAccess', _19 => _19.toLowerCase, 'call', _20 => _20()]) || "documents"}...`,
774
774
  query: docSearch.query,
@@ -787,9 +787,9 @@ function DocViewerContent({
787
787
  ] })
788
788
  ] }) }),
789
789
  !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: [
790
- /* @__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, _chunk4V672TEIcjs.CategorySidebarSkeleton, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
790
+ /* @__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, _chunkOJUMVOMPcjs.CategorySidebarSkeleton, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
791
791
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PersistentMobileDropdown, { isLoading: false, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
792
- _chunkFA5SMA7Lcjs.MobileNavigationDropdown,
792
+ _chunk7V2KP2TBcjs.MobileNavigationDropdown,
793
793
  {
794
794
  nodes: structure,
795
795
  selectedPath,
@@ -803,7 +803,7 @@ function DocViewerContent({
803
803
  /* @__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: [
804
804
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "font-semibold text-ods-text-secondary text-h5", children: sidebarLabel }),
805
805
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
806
- _chunkFA5SMA7Lcjs.MultiLevelNavigation,
806
+ _chunk7V2KP2TBcjs.MultiLevelNavigation,
807
807
  {
808
808
  nodes: structure,
809
809
  selectedPath,
@@ -842,7 +842,7 @@ function DocViewerContent({
842
842
  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: [
843
843
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "mb-4 font-semibold text-ods-text-secondary text-h5", children: "ON THIS PAGE" }),
844
844
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
845
- _chunkFA5SMA7Lcjs.StickySectionNav,
845
+ _chunk7V2KP2TBcjs.StickySectionNav,
846
846
  {
847
847
  sections: stickyNavSections,
848
848
  activeSection,
@@ -857,7 +857,7 @@ function DocViewerContent({
857
857
  ) })
858
858
  ] })
859
859
  ] }) }) });
860
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4V672TEIcjs.PageShell, { contentClassName: `${bgClass} ${className}`, children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `page-shell-content ${bgClass} ${className}`.trim(), children: inner });
860
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOJUMVOMPcjs.PageShell, { contentClassName: `${bgClass} ${className}`, children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `page-shell-content ${bgClass} ${className}`.trim(), children: inner });
861
861
  }
862
862
 
863
863
  // src/components/docs/skeletons.tsx
@@ -953,11 +953,11 @@ function EmbedSkeleton({ documentType } = {}) {
953
953
 
954
954
  var DEFAULT_TITLE = "Documents";
955
955
  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" }) });
956
- var defaultPdfRenderer = (content, handlers) => content.fileUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAOTOOGNXcjs.PdfViewer, { src: content.fileUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
957
- var defaultGoogleSheetRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAOTOOGNXcjs.GoogleSheetsViewer, { externalUrl: content.externalUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
958
- var defaultFigmaRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk4V672TEIcjs.FigmaEmbed, { url: content.externalUrl, title: content.fileName, loading: "eager" }) : defaultFallbackRenderer(content, handlers);
956
+ var defaultPdfRenderer = (content, handlers) => content.fileUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLIH5OQLYcjs.PdfViewer, { src: content.fileUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
957
+ var defaultGoogleSheetRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLIH5OQLYcjs.GoogleSheetsViewer, { externalUrl: content.externalUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
958
+ var defaultFigmaRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOJUMVOMPcjs.FigmaEmbed, { url: content.externalUrl, title: content.fileName, loading: "eager" }) : defaultFallbackRenderer(content, handlers);
959
959
  var defaultFileRenderer = (content) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
960
- _chunkAOTOOGNXcjs.FileDownloadCard,
960
+ _chunkLIH5OQLYcjs.FileDownloadCard,
961
961
  {
962
962
  fileName: content.fileName,
963
963
  mimeType: content.mimeType,