@flamingo-stack/openframe-frontend-core 0.0.763 → 0.0.765

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 (72) hide show
  1. package/dist/build/export-map.json +1 -1
  2. package/dist/{chunk-G5NCY5IE.cjs → chunk-2OPYWMAV.cjs} +72 -72
  3. package/dist/{chunk-UUBHKQOH.cjs → chunk-2Y36SQSZ.cjs} +6 -6
  4. package/dist/{chunk-J4P47JHM.cjs → chunk-3FC6AKEJ.cjs} +7 -7
  5. package/dist/{chunk-TQPQKBBL.cjs → chunk-74ALTXXC.cjs} +34 -34
  6. package/dist/{chunk-3JUIDOHB.cjs → chunk-B3W7RCQF.cjs} +38 -38
  7. package/dist/{chunk-PE26VSWT.cjs → chunk-BIA77I6B.cjs} +8 -2
  8. package/dist/{chunk-ZUF5WDGE.cjs → chunk-BVA7YX4P.cjs} +22 -22
  9. package/dist/{chunk-IUIDZS6W.cjs → chunk-FMH2DYBC.cjs} +345 -322
  10. package/dist/{chunk-LUNXHJ53.cjs → chunk-JB424IQK.cjs} +22 -22
  11. package/dist/{chunk-AXGTRPF6.cjs → chunk-L2V7K7RR.cjs} +11 -11
  12. package/dist/{chunk-66FQUWKF.cjs → chunk-MDB65HQC.cjs} +27 -27
  13. package/dist/{chunk-QCO32MEE.cjs → chunk-NJS7FQRW.cjs} +4 -4
  14. package/dist/{chunk-4NGXJA3V.cjs → chunk-PERN37KO.cjs} +4 -4
  15. package/dist/{chunk-IJMPXTGV.cjs → chunk-PYK4ZSEZ.cjs} +6 -6
  16. package/dist/{chunk-6XCE2VLH.cjs → chunk-QQ7LKNNP.cjs} +3 -3
  17. package/dist/{chunk-O2VRIGDI.cjs → chunk-RQQVN7LC.cjs} +48 -48
  18. package/dist/{chunk-CEJDHCFZ.cjs → chunk-T5FRANE6.cjs} +21 -21
  19. package/dist/{chunk-RM6AHNM4.cjs → chunk-UI2TLQWA.cjs} +2 -2
  20. package/dist/{chunk-SU3EXXVC.cjs → chunk-VLJFAGMR.cjs} +12 -12
  21. package/dist/{chunk-2IFCRPNP.cjs → chunk-WA4X55XY.cjs} +10 -1
  22. package/dist/{chunk-E4LA4BEH.cjs → chunk-ZCU2PYCW.cjs} +9 -9
  23. package/dist/{cloud-tenants-4AGSRBJ2.cjs → cloud-tenants-6PSTDE3F.cjs} +7 -7
  24. package/dist/components/case-studies/index.cjs +17 -17
  25. package/dist/components/chat/index.cjs +4 -4
  26. package/dist/components/contact/index.cjs +8 -8
  27. package/dist/components/docs/index.cjs +11 -11
  28. package/dist/components/embeds/index.cjs +8 -8
  29. package/dist/components/faq/index.cjs +9 -9
  30. package/dist/components/features/index.cjs +7 -7
  31. package/dist/components/help-center-pages/index.cjs +65 -65
  32. package/dist/components/index.cjs +43 -41
  33. package/dist/components/meeting-scheduler/index.cjs +32 -32
  34. package/dist/components/navigation/index.cjs +10 -10
  35. package/dist/components/onboarding-guides/index.cjs +10 -10
  36. package/dist/components/product-demo/index.cjs +9 -9
  37. package/dist/components/tickets/index.cjs +12 -12
  38. package/dist/components/ui/date-picker.d.ts.map +1 -1
  39. package/dist/components/ui/date-picker.js +2 -2
  40. package/dist/components/ui/device-card.d.ts.map +1 -1
  41. package/dist/components/ui/device-card.js +3 -2
  42. package/dist/components/ui/index.cjs +9 -7
  43. package/dist/components/ui/index.d.ts +1 -0
  44. package/dist/components/ui/index.d.ts.map +1 -1
  45. package/dist/components/ui/index.js +1 -0
  46. package/dist/components/ui/page-actions.d.ts +2 -1
  47. package/dist/components/ui/page-actions.d.ts.map +1 -1
  48. package/dist/components/ui/page-actions.js +10 -1
  49. package/dist/components/ui/super-user-banner-view.d.ts +24 -0
  50. package/dist/components/ui/super-user-banner-view.d.ts.map +1 -0
  51. package/dist/components/ui/super-user-banner-view.js +28 -0
  52. package/dist/{devices-FKRZIBJP.cjs → devices-O5PZ4IR6.cjs} +8 -8
  53. package/dist/{embeddable-chat-HWQSP3DY.cjs → embeddable-chat-YFUCVDMV.cjs} +69 -69
  54. package/dist/index.cjs +13 -11
  55. package/dist/{knowledge-25CBYZ7E.cjs → knowledge-4OU73KTO.cjs} +8 -8
  56. package/dist/{logs-HQ7NDBVV.cjs → logs-R6ZH32UU.cjs} +15 -15
  57. package/dist/{policies-2RV2CQD3.cjs → policies-XN4TDX3G.cjs} +11 -11
  58. package/dist/{remote-session-F72S6I7J.cjs → remote-session-7NSC7DI5.cjs} +4 -4
  59. package/dist/{scripts-32EM4WDI.cjs → scripts-53VHKMY3.cjs} +14 -14
  60. package/dist/{software-update-WVIARIUG.cjs → software-update-KLJSMAUM.cjs} +11 -11
  61. package/dist/{tickets-board-4PBXPSGJ.cjs → tickets-board-DXMF7IKL.cjs} +7 -7
  62. package/dist/utils/date-utils.d.ts +7 -2
  63. package/dist/utils/date-utils.d.ts.map +1 -1
  64. package/dist/utils/date-utils.js +8 -3
  65. package/dist/utils/index.cjs +7 -2
  66. package/package.json +1 -1
  67. package/src/components/ui/date-picker.tsx +6 -3
  68. package/src/components/ui/device-card.tsx +5 -6
  69. package/src/components/ui/index.ts +1 -0
  70. package/src/components/ui/page-actions.tsx +26 -2
  71. package/src/components/ui/super-user-banner-view.tsx +52 -0
  72. package/src/utils/date-utils.ts +17 -8
@@ -17,7 +17,7 @@
17
17
 
18
18
 
19
19
 
20
- var _chunkPE26VSWTcjs = require('./chunk-PE26VSWT.cjs');
20
+ var _chunkBIA77I6Bcjs = require('./chunk-BIA77I6B.cjs');
21
21
 
22
22
 
23
23
  var _chunk3RFQPQ7Zcjs = require('./chunk-3RFQPQ7Z.cjs');
@@ -3319,7 +3319,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
3319
3319
  {
3320
3320
  ref,
3321
3321
  className: _chunk3ATAYP36cjs.cn.call(void 0,
3322
- _chunkPE26VSWTcjs.CHAT_BLOCK_CLASS,
3322
+ _chunkBIA77I6Bcjs.CHAT_BLOCK_CLASS,
3323
3323
  // v2: the thread owns the space below the card.
3324
3324
  !isV2 && "mb-[var(--spacing-system-xsf)]",
3325
3325
  className
@@ -3327,7 +3327,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
3327
3327
  ...props,
3328
3328
  children: [
3329
3329
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "w-full whitespace-pre-line break-words text-ods-text-primary text-h4", children: _optionalChain([data, 'access', _49 => _49.explanation, 'optionalAccess', _50 => _50.trim, 'call', _51 => _51()]) || "Approval required" }),
3330
- showFooterActions && status === "pending" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ApprovalWaitingLine, {}),
3330
+ showFooterActions && status === "pending" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBIA77I6Bcjs.ApprovalWaitingLine, {}),
3331
3331
  !showFooterActions ? null : status === "pending" ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-[var(--spacing-system-xsf)]", children: [
3332
3332
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3333
3333
  _chunk2QMBXGMQcjs.Button,
@@ -3359,14 +3359,14 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
3359
3359
  children: "Reject"
3360
3360
  }
3361
3361
  )
3362
- ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ApprovalStatusTag, { status, resolvedByName, inlineResolver: true }) })
3362
+ ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBIA77I6Bcjs.ApprovalStatusTag, { status, resolvedByName, inlineResolver: true }) })
3363
3363
  ]
3364
3364
  }
3365
3365
  );
3366
3366
  }
3367
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref, className: _chunk3ATAYP36cjs.cn.call(void 0, "mb-[var(--spacing-system-xsf)]", _chunkPE26VSWTcjs.CHAT_BLOCK_CLASS, className), ...props, children: [
3367
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref, className: _chunk3ATAYP36cjs.cn.call(void 0, "mb-[var(--spacing-system-xsf)]", _chunkBIA77I6Bcjs.CHAT_BLOCK_CLASS, className), ...props, children: [
3368
3368
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ApprovalCardBody, { data }),
3369
- showFooterActions && status === "pending" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ApprovalWaitingLine, {}),
3369
+ showFooterActions && status === "pending" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBIA77I6Bcjs.ApprovalWaitingLine, {}),
3370
3370
  !showFooterActions ? null : status === "pending" ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
3371
3371
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3372
3372
  _chunk2QMBXGMQcjs.Button,
@@ -3398,7 +3398,7 @@ var ApprovalRequestMessage = _react.forwardRef.call(void 0,
3398
3398
  children: "Reject"
3399
3399
  }
3400
3400
  )
3401
- ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ApprovalStatusTag, { status, resolvedByName, inlineResolver: true }) })
3401
+ ] }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBIA77I6Bcjs.ApprovalStatusTag, { status, resolvedByName, inlineResolver: true }) })
3402
3402
  ] });
3403
3403
  }
3404
3404
  );
@@ -3643,7 +3643,7 @@ var thoughtMdClasses = [
3643
3643
  var ThinkingDisplay = _react.forwardRef.call(void 0,
3644
3644
  ({ className, text: text2, isStreaming = false, ...props }, ref) => {
3645
3645
  const [expanded, setExpanded] = _react.useState.call(void 0, false);
3646
- const { innerRef, isOverflowing, containerStyle } = _chunkPE26VSWTcjs.useCollapsible.call(void 0, {
3646
+ const { innerRef, isOverflowing, containerStyle } = _chunkBIA77I6Bcjs.useCollapsible.call(void 0, {
3647
3647
  expanded,
3648
3648
  collapsedHeight: 19,
3649
3649
  disableTransition: isStreaming
@@ -3658,7 +3658,7 @@ var ThinkingDisplay = _react.forwardRef.call(void 0,
3658
3658
  setExpanded(!expanded);
3659
3659
  }
3660
3660
  };
3661
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, className: _chunk3ATAYP36cjs.cn.call(void 0, _chunkPE26VSWTcjs.CHAT_BLOCK_FRAME_CLASS, "p-1.5", className), ...props, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
3661
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref, className: _chunk3ATAYP36cjs.cn.call(void 0, _chunkBIA77I6Bcjs.CHAT_BLOCK_FRAME_CLASS, "p-1.5", className), ...props, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
3662
3662
  "div",
3663
3663
  {
3664
3664
  role: "button",
@@ -3676,7 +3676,7 @@ var ThinkingDisplay = _react.forwardRef.call(void 0,
3676
3676
  isStreaming && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC7GIHB3Vcjs.DotsLoaderIcon, { size: 16, className: "text-ods-text-secondary" })
3677
3677
  ] }),
3678
3678
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0 flex-1", style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, className: _chunk3ATAYP36cjs.cn.call(void 0, "text-sm leading-snug text-ods-text-secondary", thoughtMdClasses), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SimpleMarkdownRenderer, { content: text2, textSize: "compact" }) }) }),
3679
- canToggle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[19px] shrink-0 items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ExpandChevron, { expanded }) })
3679
+ canToggle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-[19px] shrink-0 items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBIA77I6Bcjs.ExpandChevron, { expanded }) })
3680
3680
  ]
3681
3681
  }
3682
3682
  ) });
@@ -3988,7 +3988,7 @@ var iconTint = {
3988
3988
  var ErrorMessageDisplay = _react.forwardRef.call(void 0,
3989
3989
  ({ className, title, details, type = "error", ...props }, ref) => {
3990
3990
  const [expanded, setExpanded] = _react.useState.call(void 0, false);
3991
- const { innerRef, containerStyle } = _chunkPE26VSWTcjs.useCollapsible.call(void 0, { expanded });
3991
+ const { innerRef, containerStyle } = _chunkBIA77I6Bcjs.useCollapsible.call(void 0, { expanded });
3992
3992
  const hasDetails = Boolean(details);
3993
3993
  const isV2 = useChatAppearance() === _chunkGZKWF6NHcjs.CHAT_APPEARANCE.V2;
3994
3994
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -4027,7 +4027,7 @@ var ErrorMessageDisplay = _react.forwardRef.call(void 0,
4027
4027
  children: title
4028
4028
  }
4029
4029
  ),
4030
- hasDetails && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ExpandChevron, { expanded })
4030
+ hasDetails && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBIA77I6Bcjs.ExpandChevron, { expanded })
4031
4031
  ]
4032
4032
  }
4033
4033
  ),
@@ -4302,9 +4302,9 @@ var ChatHeader = _react.forwardRef.call(void 0,
4302
4302
  )
4303
4303
  ] }),
4304
4304
  (ticketInfo.status || ticketInfo.statusName) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4305
- _chunkPE26VSWTcjs.TicketStatusTag,
4305
+ _chunkBIA77I6Bcjs.TicketStatusTag,
4306
4306
  {
4307
- ..._chunkPE26VSWTcjs.resolveStatusTagProps.call(void 0, {
4307
+ ..._chunkBIA77I6Bcjs.resolveStatusTagProps.call(void 0, {
4308
4308
  status: ticketInfo.status,
4309
4309
  statusKind: ticketInfo.statusKind,
4310
4310
  statusName: ticketInfo.statusName,
@@ -4862,11 +4862,11 @@ var remarkMentionChips = () => {
4862
4862
  // src/components/chat/tool-execution-display.tsx
4863
4863
 
4864
4864
 
4865
- var COMMAND_BODY_KEYS = new Set(_chunkPE26VSWTcjs.COMMAND_BODY_ARG_KEYS);
4865
+ var COMMAND_BODY_KEYS = new Set(_chunkBIA77I6Bcjs.COMMAND_BODY_ARG_KEYS);
4866
4866
  var ToolExecutionDisplay = _react.forwardRef.call(void 0,
4867
4867
  ({ className, message, assistantType, variant = "admin", ...props }, ref) => {
4868
4868
  const [expanded, setExpanded] = _react.useState.call(void 0, false);
4869
- const { innerRef, containerStyle } = _chunkPE26VSWTcjs.useCollapsible.call(void 0, { expanded });
4869
+ const { innerRef, containerStyle } = _chunkBIA77I6Bcjs.useCollapsible.call(void 0, { expanded });
4870
4870
  const isClient = assistantType === "fae";
4871
4871
  const isClientView = variant === "client";
4872
4872
  const isExecuting = message.type === "EXECUTING_TOOL";
@@ -4909,7 +4909,7 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
4909
4909
  }
4910
4910
  ),
4911
4911
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-5 w-5 shrink-0 items-center justify-center", children: renderStatusIcon() }),
4912
- !isStaticRow && hasBody && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-5 w-5 shrink-0 items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ExpandChevron, { expanded: isExpanded }) })
4912
+ !isStaticRow && hasBody && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-5 w-5 shrink-0 items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBIA77I6Bcjs.ExpandChevron, { expanded: isExpanded }) })
4913
4913
  ] });
4914
4914
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4915
4915
  "div",
@@ -4919,7 +4919,7 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
4919
4919
  // The command running block keeps its bordered box in both chats
4920
4920
  // (Figma 1972-6109). CLIENT (Fae) only drops the tool icon below.
4921
4921
  "flex w-full flex-col overflow-hidden",
4922
- _chunkPE26VSWTcjs.CHAT_BLOCK_FRAME_CLASS,
4922
+ _chunkBIA77I6Bcjs.CHAT_BLOCK_FRAME_CLASS,
4923
4923
  className
4924
4924
  ),
4925
4925
  ...props,
@@ -4930,7 +4930,7 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
4930
4930
  // It reads as a card: what was done, then one status line under it.
4931
4931
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-xsf)] p-[var(--spacing-system-sf)] text-left", children: [
4932
4932
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "min-w-0 whitespace-pre-wrap break-words text-ods-text-primary text-h4", children: previewText }),
4933
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.StatusLine, { tone: statusTone, label: statusLabel })
4933
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBIA77I6Bcjs.StatusLine, { tone: statusTone, label: statusLabel })
4934
4934
  ] })
4935
4935
  ) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
4936
4936
  hasBody ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -4943,9 +4943,9 @@ var ToolExecutionDisplay = _react.forwardRef.call(void 0,
4943
4943
  }
4944
4944
  ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full items-start gap-[var(--spacing-system-xs)] p-[var(--spacing-system-s)] text-left", children: headerContent }),
4945
4945
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full", style: containerStyle, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, children: hasBody && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col items-start gap-0 border-t border-ods-border p-[var(--spacing-system-sf)] text-h6", children: [
4946
- argEntries.map(([key, value]) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.ArgRow, { argKey: key, value }, key)),
4946
+ argEntries.map(([key, value]) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBIA77I6Bcjs.ArgRow, { argKey: key, value }, key)),
4947
4947
  hasResult && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
4948
- _chunkPE26VSWTcjs.ResultBlock,
4948
+ _chunkBIA77I6Bcjs.ResultBlock,
4949
4949
  {
4950
4950
  result: message.result,
4951
4951
  className: argEntries.length > 0 ? "mt-[var(--spacing-system-xsf)]" : void 0
@@ -5000,7 +5000,7 @@ var MENTION_MARKER_REGEX = /(^|[^\w@])@[a-zA-Z]+:([A-Za-z0-9_.+/=-]*[A-Za-z0-9_+
5000
5000
  var CARD_MARKER_REGEX = createCardMarkerScanner();
5001
5001
  function formatMessageTimestamp(timestamp) {
5002
5002
  const time = _chunkGZKWF6NHcjs.formatTime.call(void 0, timestamp);
5003
- return _chunkPE26VSWTcjs.isToday.call(void 0, timestamp) ? time : `${_chunkGZKWF6NHcjs.formatDate.call(void 0, timestamp)} ${time}`;
5003
+ return _chunkBIA77I6Bcjs.isToday.call(void 0, timestamp) ? time : `${_chunkGZKWF6NHcjs.formatDate.call(void 0, timestamp)} ${time}`;
5004
5004
  }
5005
5005
  function normalizeContent(content) {
5006
5006
  if (typeof content === "string") {
@@ -5241,7 +5241,7 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
5241
5241
  const faceBox = "h-5 w-5 flex-shrink-0";
5242
5242
  const face = !showAvatar || isSystem ? null : !isHuman && !avatar && assistantIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: displayName, className: _chunk3ATAYP36cjs.cn.call(void 0, "flex items-center justify-center", faceBox), children: assistantIcon }) : !isHuman && !avatar && assistantType ? (
5243
5243
  // An agent with no picture shows its packaged mark, never initials.
5244
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "img", "aria-label": displayName, title: displayName, className: _chunk3ATAYP36cjs.cn.call(void 0, "inline-flex", faceBox), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.AgentMark, { agent: assistantType, className: "h-full w-full rounded-full" }) })
5244
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "img", "aria-label": displayName, title: displayName, className: _chunk3ATAYP36cjs.cn.call(void 0, "inline-flex", faceBox), children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBIA77I6Bcjs.AgentMark, { agent: assistantType, className: "h-full w-full rounded-full" }) })
5245
5245
  ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { title: displayName, className: "inline-flex flex-shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
5246
5246
  _chunkEQZXJUYVcjs.SquareAvatar,
5247
5247
  {
@@ -5324,7 +5324,7 @@ var ChatMessageEnhanced = _react.forwardRef.call(void 0,
5324
5324
  );
5325
5325
  } else if (segment.type === "approval_batch") {
5326
5326
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
5327
- _chunkPE26VSWTcjs.ApprovalBatchMessage,
5327
+ _chunkBIA77I6Bcjs.ApprovalBatchMessage,
5328
5328
  {
5329
5329
  data: segment.data,
5330
5330
  status: segment.status,
@@ -7775,7 +7775,7 @@ function MingoWelcome({
7775
7775
  onScroll: updateScrollFade,
7776
7776
  className: "flex min-h-0 flex-1 flex-col gap-[var(--spacing-system-m)] overflow-y-auto overscroll-contain",
7777
7777
  children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 flex-col items-center justify-center gap-[var(--spacing-system-l)] px-[var(--spacing-system-l)] py-[var(--spacing-system-xxl)] text-center", children: [
7778
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.AgentMark, { agent: "mingo", className: "h-12 w-12" }),
7778
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBIA77I6Bcjs.AgentMark, { agent: "mingo", className: "h-12 w-12" }),
7779
7779
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)]", children: [
7780
7780
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h2", children: heading }),
7781
7781
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle })
@@ -7898,7 +7898,7 @@ function GuideWelcome({
7898
7898
  // Agent-mode identity glyph (chat-config Identity tab). Sized to
7899
7899
  // match the default Mingo mark (48px).
7900
7900
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk22XAPV6Ncjs.EntityIcon, { icon: { name: icon.name, url: icon.url, props: icon.props }, size: 48 })
7901
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.AgentMark, { agent: "mingo", className: "h-12 w-12" }),
7901
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBIA77I6Bcjs.AgentMark, { agent: "mingo", className: "h-12 w-12" }),
7902
7902
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-l)]", children: [
7903
7903
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-primary text-h2", children: title }),
7904
7904
  subtitle ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary text-h4", children: subtitle }) : subtitleLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-5 w-3/4 max-w-80 rounded-sm" }) }) : null
@@ -8100,7 +8100,7 @@ function MingoArchiveList({
8100
8100
  title: dialog.title || "Untitled Chat",
8101
8101
  onClick: () => _optionalChain([onSelectDialog, 'optionalCall', _177 => _177(dialog.id)]),
8102
8102
  trailing: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-[var(--spacing-system-xs)]", children: [
8103
- dialog.timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap text-ods-text-secondary text-h6", children: _chunkPE26VSWTcjs.formatRelativeTime.call(void 0, dialog.timestamp) }),
8103
+ dialog.timestamp && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "whitespace-nowrap text-ods-text-secondary text-h6", children: _chunkBIA77I6Bcjs.formatRelativeTime.call(void 0, dialog.timestamp) }),
8104
8104
  dialog.owner && (dialog.owner.name || dialog.owner.avatarUrl) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
8105
8105
  _chunkEQZXJUYVcjs.SquareAvatar,
8106
8106
  {
@@ -8465,7 +8465,7 @@ function MingoChatRail({
8465
8465
  "data-accent": "mingo",
8466
8466
  "aria-label": "Mingo chats",
8467
8467
  logo: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 items-center justify-between", children: [
8468
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.AgentMark, { agent: "mingo", className: "size-6 text-ods-text-primary" }),
8468
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBIA77I6Bcjs.AgentMark, { agent: "mingo", className: "size-6 text-ods-text-primary" }),
8469
8469
  onExpand && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
8470
8470
  _chunk2QMBXGMQcjs.Button,
8471
8471
  {
@@ -12794,7 +12794,7 @@ function ChatCardLoader({
12794
12794
  const discussFn = useDisplay ? onDisplay : onDiscuss;
12795
12795
  const discuss = discussFn ? {
12796
12796
  label: useDisplay ? "Display" : "Ask Mingo",
12797
- icon: useDisplay ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU4USZF42cjs.FileContentIcon, { size: 20 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPE26VSWTcjs.AgentMark, { agent: "mingo", className: "size-5" }),
12797
+ icon: useDisplay ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkU4USZF42cjs.FileContentIcon, { size: 20 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBIA77I6Bcjs.AgentMark, { agent: "mingo", className: "size-5" }),
12798
12798
  run: () => discussFn(finalChatRef)
12799
12799
  } : void 0;
12800
12800
  const renderOpts = {
@@ -15736,7 +15736,7 @@ function createChatStreamReducer(options = {}) {
15736
15736
  const status = approvalStatuses[requestId] || "pending";
15737
15737
  if (!displayInline(approvalType)) {
15738
15738
  const required = _nullishCoalesce(toolCalls.find((c) => c.requiresApproval), () => ( toolCalls[0]));
15739
- const summary = required ? _chunkPE26VSWTcjs.getCommandText.call(void 0, required) : `Batch of ${toolCalls.length} tool calls`;
15739
+ const summary = required ? _chunkBIA77I6Bcjs.getCommandText.call(void 0, required) : `Batch of ${toolCalls.length} tool calls`;
15740
15740
  pendingEscalated.set(requestId, {
15741
15741
  command: summary,
15742
15742
  explanation: _optionalChain([required, 'optionalAccess', _536 => _536.toolExplanation]),
@@ -15769,7 +15769,7 @@ function createChatStreamReducer(options = {}) {
15769
15769
  if (!call.requiresApproval) continue;
15770
15770
  segments = accumulator.addApprovalRequest(
15771
15771
  requestId,
15772
- _chunkPE26VSWTcjs.getCommandText.call(void 0, call),
15772
+ _chunkBIA77I6Bcjs.getCommandText.call(void 0, call),
15773
15773
  call.toolExplanation,
15774
15774
  approvalType,
15775
15775
  status,
@@ -15848,7 +15848,7 @@ function createChatStreamReducer(options = {}) {
15848
15848
  if (!call.requiresApproval) continue;
15849
15849
  segments = accumulator.addApprovalRequest(
15850
15850
  requestId,
15851
- _chunkPE26VSWTcjs.getCommandText.call(void 0, call),
15851
+ _chunkBIA77I6Bcjs.getCommandText.call(void 0, call),
15852
15852
  call.toolExplanation,
15853
15853
  escalatedData.approvalType,
15854
15854
  status
@@ -18293,7 +18293,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
18293
18293
  if (!call.requiresApproval) continue;
18294
18294
  accumulator.addApprovalRequest(
18295
18295
  event.requestId,
18296
- _chunkPE26VSWTcjs.getCommandText.call(void 0, call),
18296
+ _chunkBIA77I6Bcjs.getCommandText.call(void 0, call),
18297
18297
  call.toolExplanation,
18298
18298
  approvalType,
18299
18299
  status,
@@ -18354,7 +18354,7 @@ function applyHistoryEvent(event, accumulator, approvalStatuses, options, escala
18354
18354
  if (!call.requiresApproval) continue;
18355
18355
  accumulator.addApprovalRequest(
18356
18356
  requestId,
18357
- _chunkPE26VSWTcjs.getCommandText.call(void 0, call),
18357
+ _chunkBIA77I6Bcjs.getCommandText.call(void 0, call),
18358
18358
  call.toolExplanation,
18359
18359
  escalatedData.approvalType,
18360
18360
  status
@@ -3,17 +3,17 @@
3
3
 
4
4
 
5
5
 
6
- var _chunk6XCE2VLHcjs = require('./chunk-6XCE2VLH.cjs');
6
+ var _chunkQQ7LKNNPcjs = require('./chunk-QQ7LKNNP.cjs');
7
7
 
8
8
 
9
9
 
10
10
 
11
11
 
12
- var _chunkQCO32MEEcjs = require('./chunk-QCO32MEE.cjs');
12
+ var _chunkNJS7FQRWcjs = require('./chunk-NJS7FQRW.cjs');
13
13
 
14
14
 
15
15
 
16
- var _chunkIJMPXTGVcjs = require('./chunk-IJMPXTGV.cjs');
16
+ var _chunkPYK4ZSEZcjs = require('./chunk-PYK4ZSEZ.cjs');
17
17
 
18
18
 
19
19
 
@@ -21,16 +21,16 @@ var _chunkIJMPXTGVcjs = require('./chunk-IJMPXTGV.cjs');
21
21
 
22
22
 
23
23
 
24
- var _chunkIUIDZS6Wcjs = require('./chunk-IUIDZS6W.cjs');
24
+ var _chunkFMH2DYBCcjs = require('./chunk-FMH2DYBC.cjs');
25
25
 
26
26
 
27
- var _chunk2IFCRPNPcjs = require('./chunk-2IFCRPNP.cjs');
27
+ var _chunkWA4X55XYcjs = require('./chunk-WA4X55XY.cjs');
28
28
 
29
29
 
30
30
 
31
31
 
32
32
 
33
- var _chunkCEJDHCFZcjs = require('./chunk-CEJDHCFZ.cjs');
33
+ var _chunkT5FRANE6cjs = require('./chunk-T5FRANE6.cjs');
34
34
 
35
35
 
36
36
 
@@ -348,13 +348,13 @@ function toDocContent(value, requestedPath) {
348
348
  function toDataSync(value) {
349
349
  if (!isRecord(value)) return void 0;
350
350
  const source = readString(value, "source");
351
- if (!_chunkIUIDZS6Wcjs.isDataSyncSource.call(void 0, source)) return void 0;
351
+ if (!_chunkFMH2DYBCcjs.isDataSyncSource.call(void 0, source)) return void 0;
352
352
  return { source, syncedAt: _nullishCoalesce(readString(value, "syncedAt"), () => ( null)) };
353
353
  }
354
354
  function useDocumentTree(config, initialPath) {
355
355
  const { structureEndpoint, contentEndpoint, baseRoute } = config;
356
- const folderIndexFile = _nullishCoalesce(config.folderIndexFile, () => ( _chunkCEJDHCFZcjs.DEFAULT_FOLDER_INDEX_FILE));
357
- const cleanInitialPath = _chunkCEJDHCFZcjs.stripFolderIndexFromPath.call(void 0, _optionalChain([initialPath, 'optionalAccess', _4 => _4.replace, 'call', _5 => _5(/\/$/, "")]) || "", folderIndexFile);
356
+ const folderIndexFile = _nullishCoalesce(config.folderIndexFile, () => ( _chunkT5FRANE6cjs.DEFAULT_FOLDER_INDEX_FILE));
357
+ const cleanInitialPath = _chunkT5FRANE6cjs.stripFolderIndexFromPath.call(void 0, _optionalChain([initialPath, 'optionalAccess', _4 => _4.replace, 'call', _5 => _5(/\/$/, "")]) || "", folderIndexFile);
358
358
  const [structure, setStructure] = _react.useState.call(void 0, []);
359
359
  const [selectedPath, setSelectedPath] = _react.useState.call(void 0, cleanInitialPath);
360
360
  const [content, setContent] = _react.useState.call(void 0, null);
@@ -378,12 +378,12 @@ function useDocumentTree(config, initialPath) {
378
378
  } else if (pathname.startsWith(`${normalizedBaseRoute}/`)) {
379
379
  pathFromUrl = pathname.substring(`${normalizedBaseRoute}/`.length);
380
380
  }
381
- pathFromUrl = _chunkCEJDHCFZcjs.stripFolderIndexFromPath.call(void 0, pathFromUrl, folderIndexFile);
381
+ pathFromUrl = _chunkT5FRANE6cjs.stripFolderIndexFromPath.call(void 0, pathFromUrl, folderIndexFile);
382
382
  if (pathFromUrl !== selectedPathRef.current) {
383
383
  setSelectedPath(pathFromUrl);
384
384
  if (pathFromUrl) {
385
385
  const parentPath = pathFromUrl.includes("/") ? pathFromUrl.substring(0, pathFromUrl.lastIndexOf("/")) : pathFromUrl;
386
- setExpandedNodes(new Set(_chunkCEJDHCFZcjs.getDocAncestorNodeIds.call(void 0, parentPath)));
386
+ setExpandedNodes(new Set(_chunkT5FRANE6cjs.getDocAncestorNodeIds.call(void 0, parentPath)));
387
387
  }
388
388
  setTimeout(() => {
389
389
  scrollToContent();
@@ -401,7 +401,7 @@ function useDocumentTree(config, initialPath) {
401
401
  setSelectedPath(cleanInitialPath);
402
402
  if (cleanInitialPath) {
403
403
  const parentPath = cleanInitialPath.includes("/") ? cleanInitialPath.substring(0, cleanInitialPath.lastIndexOf("/")) : cleanInitialPath;
404
- setExpandedNodes(new Set(_chunkCEJDHCFZcjs.getDocAncestorNodeIds.call(void 0, parentPath)));
404
+ setExpandedNodes(new Set(_chunkT5FRANE6cjs.getDocAncestorNodeIds.call(void 0, parentPath)));
405
405
  }
406
406
  setExternalNavCount((n) => n + 1);
407
407
  }
@@ -426,7 +426,7 @@ function useDocumentTree(config, initialPath) {
426
426
  if (cleanInitialPath) {
427
427
  const pathForExpansion = cleanInitialPath.includes(".") ? cleanInitialPath.substring(0, cleanInitialPath.lastIndexOf("/")) : cleanInitialPath;
428
428
  if (pathForExpansion) {
429
- setExpandedNodes(new Set(_chunkCEJDHCFZcjs.getDocAncestorNodeIds.call(void 0, pathForExpansion)));
429
+ setExpandedNodes(new Set(_chunkT5FRANE6cjs.getDocAncestorNodeIds.call(void 0, pathForExpansion)));
430
430
  }
431
431
  } else if (nodes.length > 0) {
432
432
  const hasRootReadme = nodes.some((node) => node.type === "file" && node.path === folderIndexFile);
@@ -466,7 +466,7 @@ function useDocumentTree(config, initialPath) {
466
466
  setContent(null);
467
467
  return;
468
468
  }
469
- const probe = _chunkCEJDHCFZcjs.findDocNodeByPath.call(void 0, _chunkCEJDHCFZcjs.stripFolderIndexFromPath.call(void 0, path, folderIndexFile), structure);
469
+ const probe = _chunkT5FRANE6cjs.findDocNodeByPath.call(void 0, _chunkT5FRANE6cjs.stripFolderIndexFromPath.call(void 0, path, folderIndexFile), structure);
470
470
  const probeIsNoReadmeFolder = !!probe && probe.type === "folder" && !probe.hasReadme;
471
471
  const preStructureFolderLike = structure.length === 0 && !path.endsWith(".md");
472
472
  if (probeIsNoReadmeFolder || preStructureFolderLike) {
@@ -523,7 +523,7 @@ function useDocumentTree(config, initialPath) {
523
523
  if (selectedPath === "") {
524
524
  pathToFetch = folderIndexFile;
525
525
  } else {
526
- const node = _chunkCEJDHCFZcjs.findDocNodeByPath.call(void 0, selectedPath, structure);
526
+ const node = _chunkT5FRANE6cjs.findDocNodeByPath.call(void 0, selectedPath, structure);
527
527
  if (node && node.type === "folder" && !node.hasReadme) {
528
528
  const firstDocPath = findFirstDocPath(node);
529
529
  if (!firstDocPath) {
@@ -564,16 +564,16 @@ function useDocumentTree(config, initialPath) {
564
564
  if (node.type === "folder") {
565
565
  setExpandedNodes((prev) => {
566
566
  if (prev.has(node.id)) {
567
- const ancestorIds = _chunkCEJDHCFZcjs.getDocAncestorNodeIds.call(void 0, node.path);
567
+ const ancestorIds = _chunkT5FRANE6cjs.getDocAncestorNodeIds.call(void 0, node.path);
568
568
  ancestorIds.pop();
569
569
  return new Set(ancestorIds);
570
570
  }
571
- return new Set(_chunkCEJDHCFZcjs.getDocAncestorNodeIds.call(void 0, node.path));
571
+ return new Set(_chunkT5FRANE6cjs.getDocAncestorNodeIds.call(void 0, node.path));
572
572
  });
573
573
  } else {
574
574
  const lastSlash = node.path.lastIndexOf("/");
575
575
  if (lastSlash > 0) {
576
- setExpandedNodes(new Set(_chunkCEJDHCFZcjs.getDocAncestorNodeIds.call(void 0, node.path.substring(0, lastSlash))));
576
+ setExpandedNodes(new Set(_chunkT5FRANE6cjs.getDocAncestorNodeIds.call(void 0, node.path.substring(0, lastSlash))));
577
577
  }
578
578
  }
579
579
  lastFetchedPath.current = null;
@@ -588,7 +588,7 @@ function useDocumentTree(config, initialPath) {
588
588
  const hashIndex = path.indexOf("#");
589
589
  const anchor = hashIndex !== -1 ? path.substring(hashIndex) : "";
590
590
  const cleanPath = path.replace(/\/$/, "").split("#")[0];
591
- const pathForSelection = anchor && _optionalChain([options, 'optionalAccess', _6 => _6.fromInternalLink]) && cleanPath === "" ? selectedPathRef.current : _chunkCEJDHCFZcjs.stripFolderIndexFromPath.call(void 0, cleanPath, folderIndexFile);
591
+ const pathForSelection = anchor && _optionalChain([options, 'optionalAccess', _6 => _6.fromInternalLink]) && cleanPath === "" ? selectedPathRef.current : _chunkT5FRANE6cjs.stripFolderIndexFromPath.call(void 0, cleanPath, folderIndexFile);
592
592
  if (anchor && _optionalChain([options, 'optionalAccess', _7 => _7.fromInternalLink]) && pathForSelection === selectedPathRef.current) {
593
593
  _chunk3RYIF4OWcjs.navigateSamePageHash.call(void 0, anchor, { headerOffset: _chunk3RYIF4OWcjs.HUB_HEADER_OFFSET_PX });
594
594
  return;
@@ -652,15 +652,15 @@ function useDocumentTree(config, initialPath) {
652
652
  return docNavigation.register({
653
653
  baseRoute: normalizedBaseRoute,
654
654
  findNodeByPath: (path) => {
655
- const clean = _chunkCEJDHCFZcjs.stripFolderIndexFromPath.call(void 0, path.replace(/\/$/, "").split("#")[0], folderIndexFile);
656
- return _nullishCoalesce(_chunkCEJDHCFZcjs.findDocNodeByPath.call(void 0, clean, structure), () => ( null));
655
+ const clean = _chunkT5FRANE6cjs.stripFolderIndexFromPath.call(void 0, path.replace(/\/$/, "").split("#")[0], folderIndexFile);
656
+ return _nullishCoalesce(_chunkT5FRANE6cjs.findDocNodeByPath.call(void 0, clean, structure), () => ( null));
657
657
  },
658
658
  selectNode
659
659
  });
660
660
  }, [docNavigation, normalizedBaseRoute, structure, selectNode, folderIndexFile]);
661
661
  const isEmptyFolder = _react.useMemo.call(void 0, () => {
662
662
  if (!selectedPath || structure.length === 0) return false;
663
- const node = _chunkCEJDHCFZcjs.findDocNodeByPath.call(void 0, selectedPath, structure);
663
+ const node = _chunkT5FRANE6cjs.findDocNodeByPath.call(void 0, selectedPath, structure);
664
664
  return !!node && node.type === "folder" && !node.hasReadme && !findFirstDocPath(node);
665
665
  }, [selectedPath, structure]);
666
666
  return {
@@ -741,14 +741,14 @@ function DocViewerContent({
741
741
  },
742
742
  docPath
743
743
  );
744
- const { activeSection, handleSectionClick } = _chunkQCO32MEEcjs.useScrollSpy.call(void 0, _optionalChain([content, 'optionalAccess', _11 => _11.sections]));
744
+ const { activeSection, handleSectionClick } = _chunkNJS7FQRWcjs.useScrollSpy.call(void 0, _optionalChain([content, 'optionalAccess', _11 => _11.sections]));
745
745
  const docNav = useDocNavigation();
746
746
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
747
747
  const backCfg = backButton === false ? null : {
748
748
  label: _nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _12 => _12.label]), () => ( "Back to home")),
749
749
  onClick: () => router.push(_nullishCoalesce(_optionalChain([backButton, 'optionalAccess', _13 => _13.href]), () => ( "/")))
750
750
  };
751
- const docSearch = _chunkIJMPXTGVcjs.useDocSearch.call(void 0, {
751
+ const docSearch = _chunkPYK4ZSEZcjs.useDocSearch.call(void 0, {
752
752
  source: chatSource,
753
753
  baseRoute,
754
754
  searchEndpoint,
@@ -772,7 +772,7 @@ function DocViewerContent({
772
772
  onResolveLink: resolveLink
773
773
  });
774
774
  }, [content, renderContent, navigateToDoc, sourceId, resolveLink]);
775
- const selectedNodeDocType = selectedPath && structure.length > 0 ? _optionalChain([_chunkCEJDHCFZcjs.findDocNodeByPath.call(void 0, selectedPath, structure), 'optionalAccess', _14 => _14.documentType]) : void 0;
775
+ const selectedNodeDocType = selectedPath && structure.length > 0 ? _optionalChain([_chunkT5FRANE6cjs.findDocNodeByPath.call(void 0, selectedPath, structure), 'optionalAccess', _14 => _14.documentType]) : void 0;
776
776
  const activeDocType = _nullishCoalesce(_optionalChain([content, 'optionalAccess', _15 => _15.documentType]), () => ( selectedNodeDocType));
777
777
  const isMarkdownContent = !activeDocType || activeDocType === "markdown";
778
778
  const showStickyNav = isMarkdownContent;
@@ -783,10 +783,10 @@ function DocViewerContent({
783
783
  const containerBgStyle = colorPalette.containerBackground !== "transparent" ? { backgroundColor: colorPalette.containerBackground } : {};
784
784
  const defaultEmptyText = structure.length > 0 ? "Select a document from the sidebar to view" : "No documents yet. Add content from the admin panel.";
785
785
  const resolvedEmptyText = emptyStateText || defaultEmptyText;
786
- const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: { ...bgStyle, ...containerBgStyle }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2IFCRPNPcjs.PageLayout, { title, subtitle, titleSize: "h1", titleWrap: true, backButton: _nullishCoalesce(backCfg, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-10", children: [
787
- synced && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIUIDZS6Wcjs.DataSyncLine, { sync: _optionalChain([content, 'optionalAccess', _19 => _19.sync]), loading: isLoadingContent && !content }),
786
+ const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: { ...bgStyle, ...containerBgStyle }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWA4X55XYcjs.PageLayout, { title, subtitle, titleSize: "h1", titleWrap: true, backButton: _nullishCoalesce(backCfg, () => ( void 0)), children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-10", children: [
787
+ synced && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFMH2DYBCcjs.DataSyncLine, { sync: _optionalChain([content, 'optionalAccess', _19 => _19.sync]), loading: isLoadingContent && !content }),
788
788
  showAIChat && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
789
- _chunkIJMPXTGVcjs.DocSearchBar,
789
+ _chunkPYK4ZSEZcjs.DocSearchBar,
790
790
  {
791
791
  placeholder: `Search ${_optionalChain([sidebarLabel, 'optionalAccess', _20 => _20.toLowerCase, 'call', _21 => _21()]) || "documents"}...`,
792
792
  query: docSearch.query,
@@ -805,9 +805,9 @@ function DocViewerContent({
805
805
  ] })
806
806
  ] }) }),
807
807
  !error && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-1 flex-col items-start gap-6 content-lg:flex-row content-lg:gap-10", children: [
808
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full content-lg:w-[320px] content-lg:shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "content-lg:sticky content-lg:top-20", children: isLoadingStructure ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIUIDZS6Wcjs.CategorySidebarSkeleton, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
808
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full content-lg:w-[320px] content-lg:shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "content-lg:sticky content-lg:top-20", children: isLoadingStructure ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFMH2DYBCcjs.CategorySidebarSkeleton, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
809
809
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PersistentMobileDropdown, { isLoading: false, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
810
- _chunkQCO32MEEcjs.MobileNavigationDropdown,
810
+ _chunkNJS7FQRWcjs.MobileNavigationDropdown,
811
811
  {
812
812
  nodes: structure,
813
813
  selectedPath,
@@ -821,7 +821,7 @@ function DocViewerContent({
821
821
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, PersistentSidebar, { isLoading: false, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden content-lg:block", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "space-y-4", children: [
822
822
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "font-semibold text-ods-text-secondary text-h5", children: sidebarLabel }),
823
823
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
824
- _chunkQCO32MEEcjs.MultiLevelNavigation,
824
+ _chunkNJS7FQRWcjs.MultiLevelNavigation,
825
825
  {
826
826
  nodes: structure,
827
827
  selectedPath,
@@ -860,7 +860,7 @@ function DocViewerContent({
860
860
  showStickyNav && content && stickyNavSections.length > 0 && !isLoadingContent && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden content-lg:block", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "sticky top-24", children: [
861
861
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "mb-4 font-semibold text-ods-text-secondary text-h5", children: "ON THIS PAGE" }),
862
862
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
863
- _chunkQCO32MEEcjs.StickySectionNav,
863
+ _chunkNJS7FQRWcjs.StickySectionNav,
864
864
  {
865
865
  sections: stickyNavSections,
866
866
  activeSection,
@@ -875,7 +875,7 @@ function DocViewerContent({
875
875
  ) })
876
876
  ] })
877
877
  ] }) }) });
878
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIUIDZS6Wcjs.PageShell, { contentClassName: `${bgClass} ${className}`, children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `page-shell-content ${bgClass} ${className}`.trim(), children: inner });
878
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFMH2DYBCcjs.PageShell, { contentClassName: `${bgClass} ${className}`, children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: `page-shell-content ${bgClass} ${className}`.trim(), children: inner });
879
879
  }
880
880
 
881
881
  // src/components/docs/skeletons.tsx
@@ -961,7 +961,7 @@ function EmbedSkeleton({ documentType, region = true } = {}) {
961
961
  ] }),
962
962
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex w-full items-center gap-2 content-sm:w-auto", children: Array.from({ length: buttonCount }).map((_, i) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkH3RYUTNDcjs.UnifiedSkeleton, { className: "h-10 w-full flex-1 rounded content-sm:w-32 content-sm:flex-initial" }, i)) })
963
963
  ] }),
964
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIUIDZS6Wcjs.EmbedLoadingSkeleton, { region: false })
964
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFMH2DYBCcjs.EmbedLoadingSkeleton, { region: false })
965
965
  ] });
966
966
  }
967
967
 
@@ -969,11 +969,11 @@ function EmbedSkeleton({ documentType, region = true } = {}) {
969
969
 
970
970
  var DEFAULT_TITLE = "Documents";
971
971
  var defaultFallbackRenderer = () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "py-16 text-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-ods-text-secondary", children: "Unsupported document type" }) });
972
- var defaultPdfRenderer = (content, handlers) => content.fileUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6XCE2VLHcjs.PdfViewer, { src: content.fileUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
973
- var defaultGoogleSheetRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk6XCE2VLHcjs.GoogleSheetsViewer, { externalUrl: content.externalUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
974
- var defaultFigmaRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIUIDZS6Wcjs.FigmaEmbed, { url: content.externalUrl, title: content.fileName, loading: "eager" }) : defaultFallbackRenderer(content, handlers);
972
+ var defaultPdfRenderer = (content, handlers) => content.fileUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQQ7LKNNPcjs.PdfViewer, { src: content.fileUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
973
+ var defaultGoogleSheetRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQQ7LKNNPcjs.GoogleSheetsViewer, { externalUrl: content.externalUrl, fileName: content.fileName }) : defaultFallbackRenderer(content, handlers);
974
+ var defaultFigmaRenderer = (content, handlers) => content.externalUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkFMH2DYBCcjs.FigmaEmbed, { url: content.externalUrl, title: content.fileName, loading: "eager" }) : defaultFallbackRenderer(content, handlers);
975
975
  var defaultFileRenderer = (content) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
976
- _chunk6XCE2VLHcjs.FileDownloadCard,
976
+ _chunkQQ7LKNNPcjs.FileDownloadCard,
977
977
  {
978
978
  fileName: content.fileName,
979
979
  mimeType: content.mimeType,
@@ -30,6 +30,7 @@ var _chunkOJJ4RL2Tcjs = require('./chunk-OJJ4RL2T.cjs');
30
30
 
31
31
 
32
32
 
33
+
33
34
  var _chunkEQZXJUYVcjs = require('./chunk-EQZXJUYV.cjs');
34
35
 
35
36
 
@@ -65,10 +66,15 @@ function formatTicketRelativeTime(iso) {
65
66
  if (diffMin < 60) return `${diffMin} min ago`;
66
67
  const diffHours = Math.floor(diffMin / 60);
67
68
  if (diffHours < 24) return diffHours === 1 ? "1 hour ago" : `${diffHours} hours ago`;
68
- return _chunkEQZXJUYVcjs.formatDateWithTimezone.call(void 0, date, null, "numeric");
69
+ return _chunkEQZXJUYVcjs.formatDateWithTimezone.call(void 0, date, _chunkEQZXJUYVcjs.VIEWER_TIMEZONE, "numeric", { viewerLocale: true });
69
70
  }
70
71
  function formatTicketFullTimestamp(iso) {
71
- return _chunkEQZXJUYVcjs.formatDateWithTimezone.call(void 0, iso, null, "numericDateTime");
72
+ return _chunkEQZXJUYVcjs.formatDateWithTimezone.call(void 0,
73
+ iso,
74
+ _chunkEQZXJUYVcjs.VIEWER_TIMEZONE,
75
+ { year: "numeric", month: "2-digit", day: "2-digit", hour: "numeric", minute: "2-digit" },
76
+ { viewerLocale: true }
77
+ );
72
78
  }
73
79
  function formatRelativeTime(timestamp) {
74
80
  return formatRelativeTimeFrom(timestamp, /* @__PURE__ */ new Date());