@flamingo-stack/openframe-frontend-core 0.0.755 → 0.0.757

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 (89) hide show
  1. package/dist/{chunk-AG4HR6Z6.cjs → chunk-2ANICXS7.cjs} +16 -16
  2. package/dist/{chunk-NS5DO6QK.cjs → chunk-33PJH2TF.cjs} +22 -22
  3. package/dist/{chunk-2HWKYPJB.cjs → chunk-33RJU565.cjs} +6 -6
  4. package/dist/{chunk-NE3T3ZIG.cjs → chunk-3C4U4UW6.cjs} +21 -21
  5. package/dist/{chunk-HAL6HBTM.cjs → chunk-7RADSQJF.cjs} +428 -411
  6. package/dist/{chunk-MGF3FUKD.cjs → chunk-AKK3EO37.cjs} +4 -1
  7. package/dist/{chunk-3GG3QAPT.cjs → chunk-AXBVN5SW.cjs} +63 -57
  8. package/dist/{chunk-FOVNP5HU.cjs → chunk-AZFSHHWT.cjs} +6 -6
  9. package/dist/{chunk-SZGUEPJC.cjs → chunk-BLYP7ZT4.cjs} +36 -36
  10. package/dist/{chunk-YXX6UMG3.cjs → chunk-CT3UDNAV.cjs} +42 -42
  11. package/dist/{chunk-P6F6PHVK.cjs → chunk-EFTUFJS2.cjs} +4 -4
  12. package/dist/{chunk-LVO7FALW.cjs → chunk-F64VMOIB.cjs} +5 -5
  13. package/dist/{chunk-BQ5KRCSJ.cjs → chunk-HB3QFOHD.cjs} +22 -22
  14. package/dist/{chunk-5WHEQ63L.cjs → chunk-JEIAB7JQ.cjs} +4 -4
  15. package/dist/{chunk-JV4VVA2V.cjs → chunk-L2RNZOCI.cjs} +11 -11
  16. package/dist/{chunk-YRULLK7N.cjs → chunk-LOFDIDSD.cjs} +8 -2
  17. package/dist/{chunk-HSWNJAIK.cjs → chunk-ORC3ZKHT.cjs} +11 -11
  18. package/dist/{chunk-SDF5UUTE.cjs → chunk-QTYSYEHK.cjs} +74 -74
  19. package/dist/{chunk-Q2MSW2IW.cjs → chunk-RPADJ2E6.cjs} +7 -7
  20. package/dist/{chunk-32IKIBPY.cjs → chunk-S5ITKW6G.cjs} +73 -73
  21. package/dist/{chunk-RRE6C3ZU.cjs → chunk-UWXUGP3V.cjs} +3 -3
  22. package/dist/{chunk-BVEUGFIN.cjs → chunk-VD4HVLXG.cjs} +38 -38
  23. package/dist/{chunk-UNRNLSG4.cjs → chunk-VUSXDMCE.cjs} +2 -2
  24. package/dist/{chunk-RRCHQTZW.cjs → chunk-WSRMYHIV.cjs} +4 -4
  25. package/dist/{cloud-tenants-S7RR2UDJ.cjs → cloud-tenants-PA5UU2KQ.cjs} +10 -10
  26. package/dist/components/case-studies/index.cjs +20 -20
  27. package/dist/components/chat/embeddable-chat.js +8 -6
  28. package/dist/components/chat/index.cjs +7 -7
  29. package/dist/components/contact/index.cjs +11 -11
  30. package/dist/components/context-menu.d.ts +2 -2
  31. package/dist/components/context-menu.d.ts.map +1 -1
  32. package/dist/components/context-menu.js +19 -12
  33. package/dist/components/docs/index.cjs +14 -14
  34. package/dist/components/embeds/index.cjs +11 -11
  35. package/dist/components/faq/index.cjs +12 -12
  36. package/dist/components/features/index.cjs +10 -10
  37. package/dist/components/features/time-tracker/time-tracker-header-button.d.ts.map +1 -1
  38. package/dist/components/features/time-tracker/time-tracker-header-button.js +3 -1
  39. package/dist/components/help-center-pages/index.cjs +71 -71
  40. package/dist/components/index.cjs +44 -44
  41. package/dist/components/meeting-scheduler/index.cjs +35 -35
  42. package/dist/components/navigation/index.cjs +13 -13
  43. package/dist/components/onboarding-guides/index.cjs +13 -13
  44. package/dist/components/popover.d.ts.map +1 -1
  45. package/dist/components/popover.js +3 -1
  46. package/dist/components/product-demo/index.cjs +9 -9
  47. package/dist/components/tickets/index.cjs +15 -15
  48. package/dist/components/ui/date-picker.d.ts.map +1 -1
  49. package/dist/components/ui/date-picker.js +9 -4
  50. package/dist/components/ui/dropdown-menu.d.ts +2 -2
  51. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  52. package/dist/components/ui/dropdown-menu.js +4 -1
  53. package/dist/components/ui/file-manager/index.cjs +6 -6
  54. package/dist/components/ui/index.cjs +10 -10
  55. package/dist/components/ui/menubar.d.ts +2 -2
  56. package/dist/components/ui/menubar.d.ts.map +1 -1
  57. package/dist/components/ui/menubar.js +22 -15
  58. package/dist/components/ui/modal-v2.d.ts.map +1 -1
  59. package/dist/components/ui/modal-v2.js +5 -2
  60. package/dist/components/ui/searchable-select.d.ts.map +1 -1
  61. package/dist/components/ui/searchable-select.js +3 -1
  62. package/dist/components/ui/select.d.ts.map +1 -1
  63. package/dist/components/ui/select.js +27 -23
  64. package/dist/components/ui/tag-select-dropdown.d.ts.map +1 -1
  65. package/dist/components/ui/tag-select-dropdown.js +3 -1
  66. package/dist/{devices-KCD2WSEV.cjs → devices-72YSJM4Z.cjs} +11 -11
  67. package/dist/{embeddable-chat-OGUGNKLP.cjs → embeddable-chat-CHHWPGAY.cjs} +85 -83
  68. package/dist/index.cjs +14 -14
  69. package/dist/{knowledge-OX5PYEPE.cjs → knowledge-76RIDA7P.cjs} +11 -11
  70. package/dist/{logs-ZVOBADLB.cjs → logs-ODMJ3KOP.cjs} +18 -18
  71. package/dist/{policies-NSHPEZTR.cjs → policies-5BZ5X2S4.cjs} +14 -14
  72. package/dist/{remote-session-57DGC4X3.cjs → remote-session-SKNXYG6K.cjs} +7 -7
  73. package/dist/{scripts-OHMKBEXO.cjs → scripts-TWQPG46M.cjs} +17 -17
  74. package/dist/{software-update-WMLGMSBQ.cjs → software-update-TSGISQV5.cjs} +14 -14
  75. package/dist/{tickets-board-EP6L3BSV.cjs → tickets-board-B2FH7Z4B.cjs} +9 -9
  76. package/eslint-config/base.js +7 -1
  77. package/eslint-config/popup-portal.js +68 -0
  78. package/package.json +1 -1
  79. package/src/components/chat/embeddable-chat.tsx +10 -6
  80. package/src/components/context-menu.tsx +20 -13
  81. package/src/components/features/time-tracker/time-tracker-header-button.tsx +3 -1
  82. package/src/components/popover.tsx +3 -1
  83. package/src/components/ui/date-picker.tsx +9 -4
  84. package/src/components/ui/dropdown-menu.tsx +4 -1
  85. package/src/components/ui/menubar.tsx +23 -16
  86. package/src/components/ui/modal-v2.tsx +17 -3
  87. package/src/components/ui/searchable-select.tsx +3 -1
  88. package/src/components/ui/select.tsx +28 -24
  89. package/src/components/ui/tag-select-dropdown.tsx +3 -1
@@ -16,7 +16,10 @@ var _jsxruntime = require('react/jsx-runtime');
16
16
  var DropdownMenu = DropdownMenuPrimitive.Root;
17
17
  var DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
18
18
  var DropdownMenuGroup = DropdownMenuPrimitive.Group;
19
- var DropdownMenuPortal = DropdownMenuPrimitive.Portal;
19
+ function DropdownMenuPortal({ container, ...props }) {
20
+ const active = _chunkRB6BSE3Ocjs.usePortalContainer.call(void 0, );
21
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DropdownMenuPrimitive.Portal, { container: _nullishCoalesce(_nullishCoalesce(container, () => ( active)), () => ( void 0)), ...props });
22
+ }
20
23
  var DropdownMenuSub = DropdownMenuPrimitive.Sub;
21
24
  var DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
22
25
  var DropdownMenuSubTrigger = _react.forwardRef.call(void 0, ({ className, inset, children, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -10,14 +10,14 @@ var _chunkA6P6DHEZcjs = require('./chunk-A6P6DHEZ.cjs');
10
10
 
11
11
 
12
12
 
13
- var _chunkYRULLK7Ncjs = require('./chunk-YRULLK7N.cjs');
13
+ var _chunkLOFDIDSDcjs = require('./chunk-LOFDIDSD.cjs');
14
14
 
15
15
 
16
16
 
17
17
 
18
18
 
19
19
 
20
- var _chunkP6F6PHVKcjs = require('./chunk-P6F6PHVK.cjs');
20
+ var _chunkEFTUFJS2cjs = require('./chunk-EFTUFJS2.cjs');
21
21
 
22
22
 
23
23
  var _chunk2NETL2MScjs = require('./chunk-2NETL2MS.cjs');
@@ -122,7 +122,7 @@ var _chunkHTRILBJDcjs = require('./chunk-HTRILBJD.cjs');
122
122
 
123
123
 
124
124
 
125
- var _chunkMGF3FUKDcjs = require('./chunk-MGF3FUKD.cjs');
125
+ var _chunkAKK3EO37cjs = require('./chunk-AKK3EO37.cjs');
126
126
 
127
127
 
128
128
  var _chunkNO5UJLLQcjs = require('./chunk-NO5UJLLQ.cjs');
@@ -140,6 +140,9 @@ var _chunkV45KLJQPcjs = require('./chunk-V45KLJQP.cjs');
140
140
  var _chunkOF336YWGcjs = require('./chunk-OF336YWG.cjs');
141
141
 
142
142
 
143
+ var _chunkRB6BSE3Ocjs = require('./chunk-RB6BSE3O.cjs');
144
+
145
+
143
146
  var _chunkH3RYUTNDcjs = require('./chunk-H3RYUTND.cjs');
144
147
 
145
148
 
@@ -1070,29 +1073,32 @@ var SelectScrollDownButton = _react.forwardRef.call(void 0, ({ className, ...pro
1070
1073
  }
1071
1074
  ));
1072
1075
  SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
1073
- var SelectContent = _react.forwardRef.call(void 0, ({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectPrimitive.Portal, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1074
- SelectPrimitive.Content,
1075
- {
1076
- ref,
1077
- className: _chunk3ATAYP36cjs.cn.call(void 0,
1078
- "relative z-[9999] max-h-96 overflow-hidden rounded-[4px] border border-ods-border bg-ods-card text-ods-text-primary",
1079
- "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
1080
- position === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
1081
- className
1082
- ),
1083
- position,
1084
- style: {
1085
- width: "var(--radix-select-trigger-width)",
1086
- minWidth: "var(--radix-select-trigger-width)"
1087
- },
1088
- ...props,
1089
- children: [
1090
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectScrollUpButton, {}),
1091
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectPrimitive.Viewport, { className: "w-full", children }),
1092
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectScrollDownButton, {})
1093
- ]
1094
- }
1095
- ) }));
1076
+ var SelectContent = _react.forwardRef.call(void 0, ({ className, children, position = "popper", ...props }, ref) => {
1077
+ const container = _chunkRB6BSE3Ocjs.usePortalContainer.call(void 0, );
1078
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectPrimitive.Portal, { container: _nullishCoalesce(container, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1079
+ SelectPrimitive.Content,
1080
+ {
1081
+ ref,
1082
+ className: _chunk3ATAYP36cjs.cn.call(void 0,
1083
+ "relative z-[9999] max-h-96 overflow-hidden rounded-[4px] border border-ods-border bg-ods-card text-ods-text-primary",
1084
+ "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
1085
+ position === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
1086
+ className
1087
+ ),
1088
+ position,
1089
+ style: {
1090
+ width: "var(--radix-select-trigger-width)",
1091
+ minWidth: "var(--radix-select-trigger-width)"
1092
+ },
1093
+ ...props,
1094
+ children: [
1095
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectScrollUpButton, {}),
1096
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectPrimitive.Viewport, { className: "w-full", children }),
1097
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectScrollDownButton, {})
1098
+ ]
1099
+ }
1100
+ ) });
1101
+ });
1096
1102
  SelectContent.displayName = SelectPrimitive.Content.displayName;
1097
1103
  var SelectLabel = _react.forwardRef.call(void 0, ({ className, ...props }, ref) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SelectPrimitive.Label, { ref, className: _chunk3ATAYP36cjs.cn.call(void 0, "py-1.5 pl-8 pr-2 font-semibold text-h6", className), ...props }));
1098
1104
  SelectLabel.displayName = SelectPrimitive.Label.displayName;
@@ -1199,9 +1205,9 @@ function actionToMenuItems(action, idx) {
1199
1205
  function renderActionButton(action, opts = {}) {
1200
1206
  const button = renderRawActionButton(action, opts);
1201
1207
  if (!action.tooltip) return button;
1202
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP6F6PHVKcjs.TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkP6F6PHVKcjs.Tooltip, { children: [
1203
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP6F6PHVKcjs.TooltipTrigger, { asChild: true, children: button }),
1204
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP6F6PHVKcjs.TooltipContent, { children: action.tooltip })
1208
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkEFTUFJS2cjs.Tooltip, { children: [
1209
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipTrigger, { asChild: true, children: button }),
1210
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.TooltipContent, { children: action.tooltip })
1205
1211
  ] }) });
1206
1212
  }
1207
1213
  function renderRawActionButton(action, opts = {}) {
@@ -1225,7 +1231,7 @@ function renderRawActionButton(action, opts = {}) {
1225
1231
  }
1226
1232
  if (action.submenu && action.submenu.length > 0) {
1227
1233
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1228
- _chunkP6F6PHVKcjs.ActionsMenuDropdown,
1234
+ _chunkEFTUFJS2cjs.ActionsMenuDropdown,
1229
1235
  {
1230
1236
  groups: [{ items: action.submenu }],
1231
1237
  customTrigger: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -1358,10 +1364,10 @@ function IconButtonsVariant({
1358
1364
  selector,
1359
1365
  loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionSkeletons, { actions: desktopActions }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
1360
1366
  desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton(action) }, actionKey(action, idx))),
1361
- hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP6F6PHVKcjs.ActionsMenuDropdown, { groups: menuActions })
1367
+ hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.ActionsMenuDropdown, { groups: menuActions })
1362
1368
  ] })
1363
1369
  ] }),
1364
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex content-md:hidden", className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: MOBILE_TRIGGER_SKELETON_CLASS }) : useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true }) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP6F6PHVKcjs.ActionsMenuDropdown, { groups: mobileMenuGroups }) : null })
1370
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "flex content-md:hidden", className), children: loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: MOBILE_TRIGGER_SKELETON_CLASS }) : useSingleActionMobile && singleAction ? renderActionButton(singleAction, { iconOnly: true }) : hasMobileMenuItems ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.ActionsMenuDropdown, { groups: mobileMenuGroups }) : null })
1365
1371
  ] });
1366
1372
  }
1367
1373
  function PrimaryButtonsVariant({
@@ -1400,7 +1406,7 @@ function MenuPrimaryVariant({
1400
1406
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, "hidden items-center content-md:flex", ACTIONS_GAP, className), children: [
1401
1407
  selector,
1402
1408
  loading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ActionSkeletons, { actions: desktopActions }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
1403
- hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP6F6PHVKcjs.ActionsMenuDropdown, { groups: menuActions }),
1409
+ hasMenuActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.ActionsMenuDropdown, { groups: menuActions }),
1404
1410
  desktopActions.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton({ ...action, variant: action.variant || "accent" }) }, `desktop-${actionKey(action, idx)}`))
1405
1411
  ] })
1406
1412
  ] }),
@@ -1408,7 +1414,7 @@ function MenuPrimaryVariant({
1408
1414
  // The selector rides into the menu as its header row: on mobile the
1409
1415
  // title row has no room for it, and hiding it entirely (what
1410
1416
  // `icon-buttons` does) would leave no way to switch views at all.
1411
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP6F6PHVKcjs.ActionsMenuDropdown, { groups: mobileMenuGroups, header: selector })
1417
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.ActionsMenuDropdown, { groups: mobileMenuGroups, header: selector })
1412
1418
  ) : null })
1413
1419
  ] });
1414
1420
  }
@@ -1417,7 +1423,7 @@ function CompactPrimaryActions({ actions }) {
1417
1423
  const fold = foldable.length > 1;
1418
1424
  const inline = fold ? actions.filter((action) => !foldable.includes(action)) : actions;
1419
1425
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
1420
- fold && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP6F6PHVKcjs.ActionsMenuDropdown, { groups: [{ items: foldable.flatMap(actionToMenuItems) }] }),
1426
+ fold && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.ActionsMenuDropdown, { groups: [{ items: foldable.flatMap(actionToMenuItems) }] }),
1421
1427
  inline.map((action, idx) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _react2.default.Fragment, { children: renderActionButton(action) }, `compact-${actionKey(action, idx)}`))
1422
1428
  ] });
1423
1429
  }
@@ -1714,9 +1720,9 @@ function RemoteSessionViewers({ viewers, max = 4, className }) {
1714
1720
  const faces = ordered.slice(0, max);
1715
1721
  const overflow = ordered.length - faces.length;
1716
1722
  const Chevron = open ? _chunk3MRRIHC2cjs.Chevron02UpIcon : _chunkSKI6NKOEcjs.Chevron02DownIcon;
1717
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkMGF3FUKDcjs.DropdownMenu, { open, onOpenChange: setOpen, children: [
1723
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkAKK3EO37cjs.DropdownMenu, { open, onOpenChange: setOpen, children: [
1718
1724
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1719
- _chunkMGF3FUKDcjs.DropdownMenuTrigger,
1725
+ _chunkAKK3EO37cjs.DropdownMenuTrigger,
1720
1726
  {
1721
1727
  "aria-label": `In this session: ${ordered.map(viewerLabel).join(", ")}`,
1722
1728
  className: _chunk3ATAYP36cjs.cn.call(void 0,
@@ -1752,8 +1758,8 @@ function RemoteSessionViewers({ viewers, max = 4, className }) {
1752
1758
  ]
1753
1759
  }
1754
1760
  ),
1755
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMGF3FUKDcjs.DropdownMenuContent, { align: "end", className: "w-[280px] p-0", children: ordered.map((viewer) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1756
- _chunkMGF3FUKDcjs.DropdownMenuItem,
1761
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAKK3EO37cjs.DropdownMenuContent, { align: "end", className: "w-[280px] p-0", children: ordered.map((viewer) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
1762
+ _chunkAKK3EO37cjs.DropdownMenuItem,
1757
1763
  {
1758
1764
  className: _chunk3ATAYP36cjs.cn.call(void 0,
1759
1765
  "gap-[var(--spacing-system-xsf)] rounded-none border-b border-ods-border bg-ods-bg last:border-b-0",
@@ -2288,7 +2294,7 @@ function RemoteDesktopChatMessageRow({
2288
2294
  children: authorName
2289
2295
  }
2290
2296
  ),
2291
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { suppressHydrationWarning: true, className: "shrink-0 text-ods-text-secondary text-h6", children: _chunkYRULLK7Ncjs.formatTime.call(void 0, sentAt) })
2297
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { suppressHydrationWarning: true, className: "shrink-0 text-ods-text-secondary text-h6", children: _chunkLOFDIDSDcjs.formatTime.call(void 0, sentAt) })
2292
2298
  ] }),
2293
2299
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "whitespace-pre-wrap text-ods-text-primary text-h4", children: body })
2294
2300
  ] });
@@ -2333,7 +2339,7 @@ function RemoteDesktopChatPanel({
2333
2339
  message.id
2334
2340
  )) }) }),
2335
2341
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2336
- _chunkYRULLK7Ncjs.ChatInput,
2342
+ _chunkLOFDIDSDcjs.ChatInput,
2337
2343
  {
2338
2344
  placeholder: "Enter your Message...",
2339
2345
  onSend,
@@ -2377,7 +2383,7 @@ function RemoteDesktopFullscreenToolbar({
2377
2383
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center gap-[var(--spacing-system-xsf)]", children: [
2378
2384
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate text-ods-text-primary text-h6", children: deviceName }),
2379
2385
  displayMenuGroups.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2380
- _chunkP6F6PHVKcjs.ActionsMenuDropdown,
2386
+ _chunkEFTUFJS2cjs.ActionsMenuDropdown,
2381
2387
  {
2382
2388
  groups: displayMenuGroups,
2383
2389
  customTrigger: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -2408,7 +2414,7 @@ function RemoteDesktopFullscreenToolbar({
2408
2414
  }
2409
2415
  ),
2410
2416
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2411
- _chunkP6F6PHVKcjs.ActionsMenuDropdown,
2417
+ _chunkEFTUFJS2cjs.ActionsMenuDropdown,
2412
2418
  {
2413
2419
  groups: actionsMenuGroups,
2414
2420
  customTrigger: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -2497,7 +2503,7 @@ function RemoteDesktopView({
2497
2503
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "sr-only content-md:not-sr-only", children: chatOpen ? "Close Chat" : "Open Chat" })
2498
2504
  }
2499
2505
  ),
2500
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkP6F6PHVKcjs.ActionsMenuDropdown, { groups: actionsMenuGroups, triggerAriaLabel: "Actions" }),
2506
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkEFTUFJS2cjs.ActionsMenuDropdown, { groups: actionsMenuGroups, triggerAriaLabel: "Actions" }),
2501
2507
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2502
2508
  _chunk2QMBXGMQcjs.Button,
2503
2509
  {
@@ -2521,7 +2527,7 @@ function RemoteDesktopView({
2521
2527
  ] })
2522
2528
  ] }),
2523
2529
  displayMenuGroups.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2524
- _chunkP6F6PHVKcjs.ActionsMenuDropdown,
2530
+ _chunkEFTUFJS2cjs.ActionsMenuDropdown,
2525
2531
  {
2526
2532
  groups: displayMenuGroups,
2527
2533
  align: "start",
@@ -2700,9 +2706,9 @@ function KeepRecordingModal({
2700
2706
  if (!canKeep || isPending) return;
2701
2707
  onConfirm({ reason, description: reason === "OTHER" ? trimmed : null });
2702
2708
  };
2703
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.Modal, { isOpen, onClose: isPending ? () => {
2709
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.Modal, { isOpen, onClose: isPending ? () => {
2704
2710
  } : onClose, className: "text-left md:max-w-[600px]", children: [
2705
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalTitle, { children: "Keep this recording" }) }),
2711
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalTitle, { children: "Keep this recording" }) }),
2706
2712
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
2707
2713
  KeepNotice,
2708
2714
  {
@@ -2740,7 +2746,7 @@ function KeepRecordingModal({
2740
2746
  }
2741
2747
  )
2742
2748
  ] }),
2743
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.ModalFooter, { children: [
2749
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.ModalFooter, { children: [
2744
2750
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2745
2751
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
2746
2752
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -2770,9 +2776,9 @@ function ReleaseKeepingModal({
2770
2776
  isPending = false,
2771
2777
  onConfirm
2772
2778
  }) {
2773
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.Modal, { isOpen, onClose: isPending ? () => {
2779
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.Modal, { isOpen, onClose: isPending ? () => {
2774
2780
  } : onClose, className: "text-left md:max-w-[600px]", children: [
2775
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalTitle, { children: "Release Keeping" }) }),
2781
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalTitle, { children: "Release Keeping" }) }),
2776
2782
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-xsf)] text-ods-text-primary text-h4", children: [
2777
2783
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { children: [
2778
2784
  "Kept by ",
@@ -2789,7 +2795,7 @@ function ReleaseKeepingModal({
2789
2795
  ] })
2790
2796
  ] }),
2791
2797
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, KeepNotice, { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkILWSAV64cjs.HourglassIcon, { size: 24, color: "currentColor" }), title: `It will expire on ${expiresOn}`, children: dueOn ? `It was due to expire on ${dueOn}. Releasing gives it 3 days' grace, and it shows amber until then. Whoever placed the Keep is reminded the day before it goes. Nothing is deleted now.` : "Nothing is deleted now." }),
2792
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.ModalFooter, { children: [
2798
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.ModalFooter, { children: [
2793
2799
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2794
2800
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
2795
2801
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "accent", onClick: onConfirm, loading: isPending, className: "flex-1", children: "Release Keeping" })
@@ -2831,9 +2837,9 @@ function AssignTicketModal({
2831
2837
  if (ticketIds.length === 0 || isPending) return;
2832
2838
  onConfirm(ticketIds);
2833
2839
  };
2834
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.Modal, { isOpen, onClose: isPending ? () => {
2840
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.Modal, { isOpen, onClose: isPending ? () => {
2835
2841
  } : onClose, className: "text-left md:max-w-[600px]", children: [
2836
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalTitle, { children: "Assign Ticket" }) }),
2842
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalTitle, { children: "Assign Ticket" }) }),
2837
2843
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
2838
2844
  Autocomplete,
2839
2845
  {
@@ -2852,7 +2858,7 @@ function AssignTicketModal({
2852
2858
  disabled: isPending
2853
2859
  }
2854
2860
  ),
2855
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.ModalFooter, { children: [
2861
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.ModalFooter, { children: [
2856
2862
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2857
2863
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
2858
2864
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -2871,11 +2877,11 @@ function AssignTicketModal({
2871
2877
  ] });
2872
2878
  }
2873
2879
  function UnassignTicketModal({ isOpen, onClose, isPending = false, onConfirm }) {
2874
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.Modal, { isOpen, onClose: isPending ? () => {
2880
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.Modal, { isOpen, onClose: isPending ? () => {
2875
2881
  } : onClose, className: "text-left md:max-w-[600px]", children: [
2876
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRULLK7Ncjs.ModalTitle, { children: "Unassign Ticket" }) }),
2882
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkLOFDIDSDcjs.ModalTitle, { children: "Unassign Ticket" }) }),
2877
2883
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full text-ods-text-primary text-h4", children: "This Ticket will no longer be linked to this remote session. The ticket itself stays as it is, and you can assign it again anytime." }),
2878
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkYRULLK7Ncjs.ModalFooter, { children: [
2884
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkLOFDIDSDcjs.ModalFooter, { children: [
2879
2885
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "outline", onClick: onClose, disabled: isPending, className: "flex-1 md:hidden", children: "Cancel" }),
2880
2886
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
2881
2887
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2QMBXGMQcjs.Button, { type: "button", variant: "destructive", onClick: onConfirm, loading: isPending, className: "flex-1", children: "Unassign" })
@@ -1,13 +1,13 @@
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 _chunkQ2MSW2IWcjs = require('./chunk-Q2MSW2IW.cjs');
4
+ var _chunkRPADJ2E6cjs = require('./chunk-RPADJ2E6.cjs');
5
5
 
6
6
 
7
- var _chunkHAL6HBTMcjs = require('./chunk-HAL6HBTM.cjs');
7
+ var _chunk7RADSQJFcjs = require('./chunk-7RADSQJF.cjs');
8
8
 
9
9
 
10
- var _chunk3GG3QAPTcjs = require('./chunk-3GG3QAPT.cjs');
10
+ var _chunkAXBVN5SWcjs = require('./chunk-AXBVN5SW.cjs');
11
11
 
12
12
 
13
13
  var _chunk7DNL734Scjs = require('./chunk-7DNL734S.cjs');
@@ -34,8 +34,8 @@ function FaqDocumentPage({
34
34
  label: _nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _ => _.label]), () => ( "Back to home")),
35
35
  onClick: () => router.push(_nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _2 => _2.href]), () => ( "/")))
36
36
  };
37
- const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3GG3QAPTcjs.PageLayout, { title, subtitle, backButton: backCfg, titleSize: "h1", titleWrap: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38
- _chunkQ2MSW2IWcjs.FaqSection,
37
+ const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.PageLayout, { title, subtitle, backButton: backCfg, titleSize: "h1", titleWrap: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38
+ _chunkRPADJ2E6cjs.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, _chunkHAL6HBTMcjs.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, _chunk7RADSQJFcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
53
53
  }
54
54
 
55
55
 
@@ -3,32 +3,32 @@
3
3
 
4
4
 
5
5
 
6
- var _chunkRRE6C3ZUcjs = require('./chunk-RRE6C3ZU.cjs');
6
+ var _chunkUWXUGP3Vcjs = require('./chunk-UWXUGP3V.cjs');
7
7
 
8
8
 
9
9
 
10
10
 
11
11
 
12
- var _chunk5WHEQ63Lcjs = require('./chunk-5WHEQ63L.cjs');
12
+ var _chunkJEIAB7JQcjs = require('./chunk-JEIAB7JQ.cjs');
13
13
 
14
14
 
15
15
 
16
- var _chunk2HWKYPJBcjs = require('./chunk-2HWKYPJB.cjs');
16
+ var _chunk33RJU565cjs = require('./chunk-33RJU565.cjs');
17
17
 
18
18
 
19
19
 
20
20
 
21
21
 
22
- var _chunkHAL6HBTMcjs = require('./chunk-HAL6HBTM.cjs');
22
+ var _chunk7RADSQJFcjs = require('./chunk-7RADSQJF.cjs');
23
23
 
24
24
 
25
- var _chunk3GG3QAPTcjs = require('./chunk-3GG3QAPT.cjs');
25
+ var _chunkAXBVN5SWcjs = require('./chunk-AXBVN5SW.cjs');
26
26
 
27
27
 
28
28
 
29
29
 
30
30
 
31
- var _chunkNE3T3ZIGcjs = require('./chunk-NE3T3ZIG.cjs');
31
+ var _chunk3C4U4UW6cjs = require('./chunk-3C4U4UW6.cjs');
32
32
 
33
33
 
34
34
 
@@ -344,8 +344,8 @@ function toDocContent(value, requestedPath) {
344
344
  }
345
345
  function useDocumentTree(config, initialPath) {
346
346
  const { structureEndpoint, contentEndpoint, baseRoute } = config;
347
- const folderIndexFile = _nullishCoalesce(config.folderIndexFile, () => ( _chunkNE3T3ZIGcjs.DEFAULT_FOLDER_INDEX_FILE));
348
- const cleanInitialPath = _chunkNE3T3ZIGcjs.stripFolderIndexFromPath.call(void 0, _optionalChain([initialPath, 'optionalAccess', _4 => _4.replace, 'call', _5 => _5(/\/$/, "")]) || "", folderIndexFile);
347
+ const folderIndexFile = _nullishCoalesce(config.folderIndexFile, () => ( _chunk3C4U4UW6cjs.DEFAULT_FOLDER_INDEX_FILE));
348
+ const cleanInitialPath = _chunk3C4U4UW6cjs.stripFolderIndexFromPath.call(void 0, _optionalChain([initialPath, 'optionalAccess', _4 => _4.replace, 'call', _5 => _5(/\/$/, "")]) || "", folderIndexFile);
349
349
  const [structure, setStructure] = _react.useState.call(void 0, []);
350
350
  const [selectedPath, setSelectedPath] = _react.useState.call(void 0, cleanInitialPath);
351
351
  const [content, setContent] = _react.useState.call(void 0, null);
@@ -369,12 +369,12 @@ function useDocumentTree(config, initialPath) {
369
369
  } else if (pathname.startsWith(`${normalizedBaseRoute}/`)) {
370
370
  pathFromUrl = pathname.substring(`${normalizedBaseRoute}/`.length);
371
371
  }
372
- pathFromUrl = _chunkNE3T3ZIGcjs.stripFolderIndexFromPath.call(void 0, pathFromUrl, folderIndexFile);
372
+ pathFromUrl = _chunk3C4U4UW6cjs.stripFolderIndexFromPath.call(void 0, pathFromUrl, folderIndexFile);
373
373
  if (pathFromUrl !== selectedPathRef.current) {
374
374
  setSelectedPath(pathFromUrl);
375
375
  if (pathFromUrl) {
376
376
  const parentPath = pathFromUrl.includes("/") ? pathFromUrl.substring(0, pathFromUrl.lastIndexOf("/")) : pathFromUrl;
377
- setExpandedNodes(new Set(_chunkNE3T3ZIGcjs.getDocAncestorNodeIds.call(void 0, parentPath)));
377
+ setExpandedNodes(new Set(_chunk3C4U4UW6cjs.getDocAncestorNodeIds.call(void 0, parentPath)));
378
378
  }
379
379
  setTimeout(() => {
380
380
  scrollToContent();
@@ -392,7 +392,7 @@ function useDocumentTree(config, initialPath) {
392
392
  setSelectedPath(cleanInitialPath);
393
393
  if (cleanInitialPath) {
394
394
  const parentPath = cleanInitialPath.includes("/") ? cleanInitialPath.substring(0, cleanInitialPath.lastIndexOf("/")) : cleanInitialPath;
395
- setExpandedNodes(new Set(_chunkNE3T3ZIGcjs.getDocAncestorNodeIds.call(void 0, parentPath)));
395
+ setExpandedNodes(new Set(_chunk3C4U4UW6cjs.getDocAncestorNodeIds.call(void 0, parentPath)));
396
396
  }
397
397
  setExternalNavCount((n) => n + 1);
398
398
  }
@@ -417,7 +417,7 @@ function useDocumentTree(config, initialPath) {
417
417
  if (cleanInitialPath) {
418
418
  const pathForExpansion = cleanInitialPath.includes(".") ? cleanInitialPath.substring(0, cleanInitialPath.lastIndexOf("/")) : cleanInitialPath;
419
419
  if (pathForExpansion) {
420
- setExpandedNodes(new Set(_chunkNE3T3ZIGcjs.getDocAncestorNodeIds.call(void 0, pathForExpansion)));
420
+ setExpandedNodes(new Set(_chunk3C4U4UW6cjs.getDocAncestorNodeIds.call(void 0, pathForExpansion)));
421
421
  }
422
422
  } else if (nodes.length > 0) {
423
423
  const hasRootReadme = nodes.some((node) => node.type === "file" && node.path === folderIndexFile);
@@ -457,7 +457,7 @@ function useDocumentTree(config, initialPath) {
457
457
  setContent(null);
458
458
  return;
459
459
  }
460
- const probe = _chunkNE3T3ZIGcjs.findDocNodeByPath.call(void 0, _chunkNE3T3ZIGcjs.stripFolderIndexFromPath.call(void 0, path, folderIndexFile), structure);
460
+ const probe = _chunk3C4U4UW6cjs.findDocNodeByPath.call(void 0, _chunk3C4U4UW6cjs.stripFolderIndexFromPath.call(void 0, path, folderIndexFile), structure);
461
461
  const probeIsNoReadmeFolder = !!probe && probe.type === "folder" && !probe.hasReadme;
462
462
  const preStructureFolderLike = structure.length === 0 && !path.endsWith(".md");
463
463
  if (probeIsNoReadmeFolder || preStructureFolderLike) {
@@ -514,7 +514,7 @@ function useDocumentTree(config, initialPath) {
514
514
  if (selectedPath === "") {
515
515
  pathToFetch = folderIndexFile;
516
516
  } else {
517
- const node = _chunkNE3T3ZIGcjs.findDocNodeByPath.call(void 0, selectedPath, structure);
517
+ const node = _chunk3C4U4UW6cjs.findDocNodeByPath.call(void 0, selectedPath, structure);
518
518
  if (node && node.type === "folder" && !node.hasReadme) {
519
519
  const firstDocPath = findFirstDocPath(node);
520
520
  if (!firstDocPath) {
@@ -555,16 +555,16 @@ function useDocumentTree(config, initialPath) {
555
555
  if (node.type === "folder") {
556
556
  setExpandedNodes((prev) => {
557
557
  if (prev.has(node.id)) {
558
- const ancestorIds = _chunkNE3T3ZIGcjs.getDocAncestorNodeIds.call(void 0, node.path);
558
+ const ancestorIds = _chunk3C4U4UW6cjs.getDocAncestorNodeIds.call(void 0, node.path);
559
559
  ancestorIds.pop();
560
560
  return new Set(ancestorIds);
561
561
  }
562
- return new Set(_chunkNE3T3ZIGcjs.getDocAncestorNodeIds.call(void 0, node.path));
562
+ return new Set(_chunk3C4U4UW6cjs.getDocAncestorNodeIds.call(void 0, node.path));
563
563
  });
564
564
  } else {
565
565
  const lastSlash = node.path.lastIndexOf("/");
566
566
  if (lastSlash > 0) {
567
- setExpandedNodes(new Set(_chunkNE3T3ZIGcjs.getDocAncestorNodeIds.call(void 0, node.path.substring(0, lastSlash))));
567
+ setExpandedNodes(new Set(_chunk3C4U4UW6cjs.getDocAncestorNodeIds.call(void 0, node.path.substring(0, lastSlash))));
568
568
  }
569
569
  }
570
570
  lastFetchedPath.current = null;
@@ -579,7 +579,7 @@ function useDocumentTree(config, initialPath) {
579
579
  const hashIndex = path.indexOf("#");
580
580
  const anchor = hashIndex !== -1 ? path.substring(hashIndex) : "";
581
581
  const cleanPath = path.replace(/\/$/, "").split("#")[0];
582
- const pathForSelection = anchor && _optionalChain([options, 'optionalAccess', _6 => _6.fromInternalLink]) && cleanPath === "" ? selectedPathRef.current : _chunkNE3T3ZIGcjs.stripFolderIndexFromPath.call(void 0, cleanPath, folderIndexFile);
582
+ const pathForSelection = anchor && _optionalChain([options, 'optionalAccess', _6 => _6.fromInternalLink]) && cleanPath === "" ? selectedPathRef.current : _chunk3C4U4UW6cjs.stripFolderIndexFromPath.call(void 0, cleanPath, folderIndexFile);
583
583
  if (anchor && _optionalChain([options, 'optionalAccess', _7 => _7.fromInternalLink]) && pathForSelection === selectedPathRef.current) {
584
584
  _chunkCSJO7ZGNcjs.navigateSamePageHash.call(void 0, anchor, { headerOffset: _chunkCSJO7ZGNcjs.HUB_HEADER_OFFSET_PX });
585
585
  return;
@@ -643,15 +643,15 @@ function useDocumentTree(config, initialPath) {
643
643
  return docNavigation.register({
644
644
  baseRoute: normalizedBaseRoute,
645
645
  findNodeByPath: (path) => {
646
- const clean = _chunkNE3T3ZIGcjs.stripFolderIndexFromPath.call(void 0, path.replace(/\/$/, "").split("#")[0], folderIndexFile);
647
- return _nullishCoalesce(_chunkNE3T3ZIGcjs.findDocNodeByPath.call(void 0, clean, structure), () => ( null));
646
+ const clean = _chunk3C4U4UW6cjs.stripFolderIndexFromPath.call(void 0, path.replace(/\/$/, "").split("#")[0], folderIndexFile);
647
+ return _nullishCoalesce(_chunk3C4U4UW6cjs.findDocNodeByPath.call(void 0, clean, structure), () => ( null));
648
648
  },
649
649
  selectNode
650
650
  });
651
651
  }, [docNavigation, normalizedBaseRoute, structure, selectNode, folderIndexFile]);
652
652
  const isEmptyFolder = _react.useMemo.call(void 0, () => {
653
653
  if (!selectedPath || structure.length === 0) return false;
654
- const node = _chunkNE3T3ZIGcjs.findDocNodeByPath.call(void 0, selectedPath, structure);
654
+ const node = _chunk3C4U4UW6cjs.findDocNodeByPath.call(void 0, selectedPath, structure);
655
655
  return !!node && node.type === "folder" && !node.hasReadme && !findFirstDocPath(node);
656
656
  }, [selectedPath, structure]);
657
657
  return {
@@ -731,14 +731,14 @@ function DocViewerContent({
731
731
  },
732
732
  docPath
733
733
  );
734
- const { activeSection, handleSectionClick } = _chunk5WHEQ63Lcjs.useScrollSpy.call(void 0, _optionalChain([content, 'optionalAccess', _11 => _11.sections]));
734
+ const { activeSection, handleSectionClick } = _chunkJEIAB7JQcjs.useScrollSpy.call(void 0, _optionalChain([content, 'optionalAccess', _11 => _11.sections]));
735
735
  const docNav = useDocNavigation();
736
736
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
737
737
  const backCfg = backButton === false ? null : {
738
738
  label: _nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _12 => _12.label]), () => ( "Back to home")),
739
739
  onClick: () => router.push(_nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _13 => _13.href]), () => ( "/")))
740
740
  };
741
- const docSearch = _chunk2HWKYPJBcjs.useDocSearch.call(void 0, {
741
+ const docSearch = _chunk33RJU565cjs.useDocSearch.call(void 0, {
742
742
  source: chatSource,
743
743
  baseRoute,
744
744
  searchEndpoint,
@@ -762,7 +762,7 @@ function DocViewerContent({
762
762
  onResolveLink: resolveLink
763
763
  });
764
764
  }, [content, renderContent, navigateToDoc, sourceId, resolveLink]);
765
- const selectedNodeDocType = selectedPath && structure.length > 0 ? _optionalChain([_chunkNE3T3ZIGcjs.findDocNodeByPath.call(void 0, selectedPath, structure), 'optionalAccess', _14 => _14.documentType]) : void 0;
765
+ const selectedNodeDocType = selectedPath && structure.length > 0 ? _optionalChain([_chunk3C4U4UW6cjs.findDocNodeByPath.call(void 0, selectedPath, structure), 'optionalAccess', _14 => _14.documentType]) : void 0;
766
766
  const activeDocType = _nullishCoalesce(_optionalChain([content, 'optionalAccess', _15 => _15.documentType]), () => ( selectedNodeDocType));
767
767
  const isMarkdownContent = !activeDocType || activeDocType === "markdown";
768
768
  const showStickyNav = isMarkdownContent;
@@ -773,9 +773,9 @@ function DocViewerContent({
773
773
  const containerBgStyle = colorPalette.containerBackground !== "transparent" ? { backgroundColor: colorPalette.containerBackground } : {};
774
774
  const defaultEmptyText = structure.length > 0 ? "Select a document from the sidebar to view" : "No documents yet. Add content from the admin panel.";
775
775
  const resolvedEmptyText = emptyStateText || defaultEmptyText;
776
- const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: { ...bgStyle, ...containerBgStyle }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3GG3QAPTcjs.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: [
776
+ const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: { ...bgStyle, ...containerBgStyle }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkAXBVN5SWcjs.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: [
777
777
  showAIChat && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
778
- _chunk2HWKYPJBcjs.DocSearchBar,
778
+ _chunk33RJU565cjs.DocSearchBar,
779
779
  {
780
780
  placeholder: `Search ${_optionalChain([sidebarLabel, 'optionalAccess', _19 => _19.toLowerCase, 'call', _20 => _20()]) || "documents"}...`,
781
781
  query: docSearch.query,
@@ -794,9 +794,9 @@ function DocViewerContent({
794
794
  ] })
795
795
  ] }) }),
796
796
  !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: [
797
- /* @__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, _chunkHAL6HBTMcjs.CategorySidebarSkeleton, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
797
+ /* @__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, _chunk7RADSQJFcjs.CategorySidebarSkeleton, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
798
798
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PersistentMobileDropdown, { isLoading: false, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
799
- _chunk5WHEQ63Lcjs.MobileNavigationDropdown,
799
+ _chunkJEIAB7JQcjs.MobileNavigationDropdown,
800
800
  {
801
801
  nodes: structure,
802
802
  selectedPath,
@@ -810,7 +810,7 @@ function DocViewerContent({
810
810
  /* @__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: [
811
811
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "font-semibold text-ods-text-secondary text-h5", children: sidebarLabel }),
812
812
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
813
- _chunk5WHEQ63Lcjs.MultiLevelNavigation,
813
+ _chunkJEIAB7JQcjs.MultiLevelNavigation,
814
814
  {
815
815
  nodes: structure,
816
816
  selectedPath,
@@ -849,7 +849,7 @@ function DocViewerContent({
849
849
  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: [
850
850
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "mb-4 font-semibold text-ods-text-secondary text-h5", children: "ON THIS PAGE" }),
851
851
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
852
- _chunk5WHEQ63Lcjs.StickySectionNav,
852
+ _chunkJEIAB7JQcjs.StickySectionNav,
853
853
  {
854
854
  sections: stickyNavSections,
855
855
  activeSection,
@@ -864,7 +864,7 @@ function DocViewerContent({
864
864
  ) })
865
865
  ] })
866
866
  ] }) }) });
867
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHAL6HBTMcjs.PageShell, { contentClassName: `${bgClass} ${className}`, children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `page-shell-content ${bgClass} ${className}`.trim(), children: inner });
867
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7RADSQJFcjs.PageShell, { contentClassName: `${bgClass} ${className}`, children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `page-shell-content ${bgClass} ${className}`.trim(), children: inner });
868
868
  }
869
869
 
870
870
  // src/components/docs/skeletons.tsx
@@ -950,7 +950,7 @@ function EmbedSkeleton({ documentType, region = true } = {}) {
950
950
  ] }),
951
951
  /* @__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)) })
952
952
  ] }),
953
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHAL6HBTMcjs.EmbedLoadingSkeleton, { region: false })
953
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7RADSQJFcjs.EmbedLoadingSkeleton, { region: false })
954
954
  ] });
955
955
  }
956
956
 
@@ -958,11 +958,11 @@ function EmbedSkeleton({ documentType, region = true } = {}) {
958
958
 
959
959
  var DEFAULT_TITLE = "Documents";
960
960
  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" }) });
961
- var defaultPdfRenderer = (content, handlers) => content.fileUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRRE6C3ZUcjs.PdfViewer, { src: content.fileUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
962
- var defaultGoogleSheetRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRRE6C3ZUcjs.GoogleSheetsViewer, { externalUrl: content.externalUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
963
- var defaultFigmaRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHAL6HBTMcjs.FigmaEmbed, { url: content.externalUrl, title: content.fileName, loading: "eager" }) : defaultFallbackRenderer(content, handlers);
961
+ var defaultPdfRenderer = (content, handlers) => content.fileUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUWXUGP3Vcjs.PdfViewer, { src: content.fileUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
962
+ var defaultGoogleSheetRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUWXUGP3Vcjs.GoogleSheetsViewer, { externalUrl: content.externalUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
963
+ var defaultFigmaRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk7RADSQJFcjs.FigmaEmbed, { url: content.externalUrl, title: content.fileName, loading: "eager" }) : defaultFallbackRenderer(content, handlers);
964
964
  var defaultFileRenderer = (content) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
965
- _chunkRRE6C3ZUcjs.FileDownloadCard,
965
+ _chunkUWXUGP3Vcjs.FileDownloadCard,
966
966
  {
967
967
  fileName: content.fileName,
968
968
  mimeType: content.mimeType,