@flamingo-stack/openframe-frontend-core 0.0.358 → 0.0.359-snapshot.20260702120246

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 (94) hide show
  1. package/dist/{chunk-WLU4IOM6.cjs → chunk-2GLO2HEJ.cjs} +25 -25
  2. package/dist/{chunk-WLU4IOM6.cjs.map → chunk-2GLO2HEJ.cjs.map} +1 -1
  3. package/dist/{chunk-XZGZH5GG.js → chunk-2LTQEQWH.js} +2 -2
  4. package/dist/{chunk-XX42KS3W.cjs → chunk-35E52Q3L.cjs} +9 -9
  5. package/dist/{chunk-XX42KS3W.cjs.map → chunk-35E52Q3L.cjs.map} +1 -1
  6. package/dist/{chunk-2LLPPZB2.cjs → chunk-4NGPMJK6.cjs} +12 -12
  7. package/dist/{chunk-2LLPPZB2.cjs.map → chunk-4NGPMJK6.cjs.map} +1 -1
  8. package/dist/{chunk-CX4NZ56E.js → chunk-5NHJC3GQ.js} +2 -2
  9. package/dist/{chunk-DDCTJIWD.js → chunk-CBVU3DFH.js} +2 -2
  10. package/dist/{chunk-O6ZTFST3.js → chunk-DNJCIVD6.js} +2 -2
  11. package/dist/{chunk-IFL7IRAW.js → chunk-E66A6UJC.js} +4 -4
  12. package/dist/{chunk-AVCR5TCA.cjs → chunk-EJSVHG4X.cjs} +5 -5
  13. package/dist/{chunk-AVCR5TCA.cjs.map → chunk-EJSVHG4X.cjs.map} +1 -1
  14. package/dist/{chunk-TRAJG5JZ.js → chunk-KMYPDZEO.js} +11 -4
  15. package/dist/chunk-KMYPDZEO.js.map +1 -0
  16. package/dist/{chunk-EASJYKEA.cjs → chunk-LGQ4L3SX.cjs} +26 -26
  17. package/dist/{chunk-EASJYKEA.cjs.map → chunk-LGQ4L3SX.cjs.map} +1 -1
  18. package/dist/{chunk-SAIKHQTP.cjs → chunk-LTALFWHU.cjs} +32 -32
  19. package/dist/{chunk-SAIKHQTP.cjs.map → chunk-LTALFWHU.cjs.map} +1 -1
  20. package/dist/{chunk-FPWI7T6Z.js → chunk-LUEVAFJP.js} +4 -4
  21. package/dist/{chunk-C6XEJALZ.cjs → chunk-MGQVVGQV.cjs} +621 -614
  22. package/dist/chunk-MGQVVGQV.cjs.map +1 -0
  23. package/dist/{chunk-BJ6J6WLA.js → chunk-QPGENYQV.js} +5 -5
  24. package/dist/chunk-QPGENYQV.js.map +1 -0
  25. package/dist/{chunk-F5NAL32B.cjs → chunk-QZ3KUDFG.cjs} +7 -7
  26. package/dist/{chunk-F5NAL32B.cjs.map → chunk-QZ3KUDFG.cjs.map} +1 -1
  27. package/dist/{chunk-2J56P3HL.cjs → chunk-TRUNSPFD.cjs} +37 -37
  28. package/dist/{chunk-2J56P3HL.cjs.map → chunk-TRUNSPFD.cjs.map} +1 -1
  29. package/dist/{chunk-TRON4VRV.cjs → chunk-VS4EZRU3.cjs} +62 -62
  30. package/dist/{chunk-TRON4VRV.cjs.map → chunk-VS4EZRU3.cjs.map} +1 -1
  31. package/dist/{chunk-IL33PEQB.js → chunk-XP7M5FPW.js} +2 -2
  32. package/dist/{chunk-2NV6UIY3.js → chunk-XULFRLBZ.js} +2 -2
  33. package/dist/{chunk-IBYCZG6S.js → chunk-YA2LLBWQ.js} +2 -2
  34. package/dist/{chunk-DZHIM646.js → chunk-YEB3R52B.js} +4 -4
  35. package/dist/{chunk-EOXJ73JE.cjs → chunk-YUZ25NHF.cjs} +15 -15
  36. package/dist/{chunk-EOXJ73JE.cjs.map → chunk-YUZ25NHF.cjs.map} +1 -1
  37. package/dist/{chunk-LQONASYT.cjs → chunk-ZPY53IWK.cjs} +56 -56
  38. package/dist/{chunk-LQONASYT.cjs.map → chunk-ZPY53IWK.cjs.map} +1 -1
  39. package/dist/components/case-studies/index.cjs +8 -8
  40. package/dist/components/case-studies/index.js +2 -2
  41. package/dist/components/chat/embeddable-chat.d.ts +2 -1
  42. package/dist/components/chat/embeddable-chat.d.ts.map +1 -1
  43. package/dist/components/chat/index.cjs +2 -2
  44. package/dist/components/chat/index.js +1 -1
  45. package/dist/components/chat/mingo-welcome.d.ts +10 -1
  46. package/dist/components/chat/mingo-welcome.d.ts.map +1 -1
  47. package/dist/components/contact/index.cjs +3 -3
  48. package/dist/components/contact/index.js +2 -2
  49. package/dist/components/docs/index.cjs +5 -5
  50. package/dist/components/docs/index.js +4 -4
  51. package/dist/components/docs/use-document-tree.d.ts.map +1 -1
  52. package/dist/components/embeds/index.cjs +3 -3
  53. package/dist/components/embeds/index.js +2 -2
  54. package/dist/components/faq/index.cjs +3 -3
  55. package/dist/components/faq/index.js +2 -2
  56. package/dist/components/features/index.cjs +2 -2
  57. package/dist/components/features/index.js +1 -1
  58. package/dist/components/help-center-pages/index.cjs +20 -20
  59. package/dist/components/help-center-pages/index.js +11 -11
  60. package/dist/components/index.cjs +122 -124
  61. package/dist/components/index.cjs.map +1 -1
  62. package/dist/components/index.js +11 -13
  63. package/dist/components/index.js.map +1 -1
  64. package/dist/components/navigation/index.cjs +2 -2
  65. package/dist/components/navigation/index.js +1 -1
  66. package/dist/components/onboarding-guides/index.cjs +5 -5
  67. package/dist/components/onboarding-guides/index.js +4 -4
  68. package/dist/components/related-content/index.cjs +3 -3
  69. package/dist/components/related-content/index.js +2 -2
  70. package/dist/components/tickets/index.cjs +5 -5
  71. package/dist/components/tickets/index.js +4 -4
  72. package/dist/components/ui/index.cjs +2 -2
  73. package/dist/components/ui/index.js +1 -1
  74. package/dist/components/unified-filter-logic.d.ts.map +1 -1
  75. package/dist/index.cjs +2 -2
  76. package/dist/index.js +1 -1
  77. package/package.json +1 -1
  78. package/src/components/chat/embeddable-chat.tsx +23 -6
  79. package/src/components/chat/mingo-welcome.tsx +13 -0
  80. package/src/components/docs/use-document-tree.ts +3 -1
  81. package/src/components/unified-filter-logic.tsx +5 -4
  82. package/dist/chunk-BJ6J6WLA.js.map +0 -1
  83. package/dist/chunk-C6XEJALZ.cjs.map +0 -1
  84. package/dist/chunk-TRAJG5JZ.js.map +0 -1
  85. /package/dist/{chunk-XZGZH5GG.js.map → chunk-2LTQEQWH.js.map} +0 -0
  86. /package/dist/{chunk-CX4NZ56E.js.map → chunk-5NHJC3GQ.js.map} +0 -0
  87. /package/dist/{chunk-DDCTJIWD.js.map → chunk-CBVU3DFH.js.map} +0 -0
  88. /package/dist/{chunk-O6ZTFST3.js.map → chunk-DNJCIVD6.js.map} +0 -0
  89. /package/dist/{chunk-IFL7IRAW.js.map → chunk-E66A6UJC.js.map} +0 -0
  90. /package/dist/{chunk-FPWI7T6Z.js.map → chunk-LUEVAFJP.js.map} +0 -0
  91. /package/dist/{chunk-IL33PEQB.js.map → chunk-XP7M5FPW.js.map} +0 -0
  92. /package/dist/{chunk-2NV6UIY3.js.map → chunk-XULFRLBZ.js.map} +0 -0
  93. /package/dist/{chunk-IBYCZG6S.js.map → chunk-YA2LLBWQ.js.map} +0 -0
  94. /package/dist/{chunk-DZHIM646.js.map → chunk-YEB3R52B.js.map} +0 -0
@@ -6692,6 +6692,8 @@ function MingoWelcome({
6692
6692
  promoStorageKey = DEFAULT_PROMO_STORAGE_KEY,
6693
6693
  promoStorage = "local",
6694
6694
  quickActions,
6695
+ onQuickActionHover,
6696
+ onQuickActionHoverEnd,
6695
6697
  hasExistingChats = false,
6696
6698
  dialogHistory,
6697
6699
  isLoadingHistory = false,
@@ -6879,7 +6881,9 @@ function MingoWelcome({
6879
6881
  label: action.label,
6880
6882
  icon: action.icon,
6881
6883
  variant: action.variant,
6882
- onSelect: action.onClick
6884
+ onSelect: action.onClick,
6885
+ onHoverStart: () => _optionalChain([onQuickActionHover, 'optionalCall', _106 => _106(action)]),
6886
+ onHoverEnd: () => _optionalChain([onQuickActionHoverEnd, 'optionalCall', _107 => _107()])
6883
6887
  }))
6884
6888
  }
6885
6889
  )
@@ -6910,7 +6914,7 @@ function EntityIcon({
6910
6914
  size: size2 = 20,
6911
6915
  className
6912
6916
  }) {
6913
- if (_optionalChain([icon, 'optionalAccess', _106 => _106.url])) {
6917
+ if (_optionalChain([icon, 'optionalAccess', _108 => _108.url])) {
6914
6918
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6915
6919
  "img",
6916
6920
  {
@@ -6923,7 +6927,7 @@ function EntityIcon({
6923
6927
  }
6924
6928
  );
6925
6929
  }
6926
- if (_optionalChain([icon, 'optionalAccess', _107 => _107.name]) && BRAND_MARK_NAMES.has(icon.name)) {
6930
+ if (_optionalChain([icon, 'optionalAccess', _109 => _109.name]) && BRAND_MARK_NAMES.has(icon.name)) {
6927
6931
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
6928
6932
  "span",
6929
6933
  {
@@ -6933,8 +6937,8 @@ function EntityIcon({
6933
6937
  }
6934
6938
  );
6935
6939
  }
6936
- const Glyph = resolveIcon(_nullishCoalesce(_optionalChain([icon, 'optionalAccess', _108 => _108.name]), () => ( void 0)));
6937
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Glyph, { size: size2, className, ..._nullishCoalesce(_optionalChain([icon, 'optionalAccess', _109 => _109.props]), () => ( {})) });
6940
+ const Glyph = resolveIcon(_nullishCoalesce(_optionalChain([icon, 'optionalAccess', _110 => _110.name]), () => ( void 0)));
6941
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Glyph, { size: size2, className, ..._nullishCoalesce(_optionalChain([icon, 'optionalAccess', _111 => _111.props]), () => ( {})) });
6938
6942
  }
6939
6943
 
6940
6944
  // src/components/chat/guide-welcome.tsx
@@ -6980,9 +6984,9 @@ function GuideWelcome({
6980
6984
  id: action.id,
6981
6985
  label: action.label,
6982
6986
  icon: renderQuickActionIcon(action),
6983
- onSelect: () => _optionalChain([onQuickAction, 'optionalCall', _110 => _110(action)]),
6984
- onHoverStart: () => _optionalChain([onQuickActionHover, 'optionalCall', _111 => _111(action)]),
6985
- onHoverEnd: () => _optionalChain([onQuickActionHoverEnd, 'optionalCall', _112 => _112()])
6987
+ onSelect: () => _optionalChain([onQuickAction, 'optionalCall', _112 => _112(action)]),
6988
+ onHoverStart: () => _optionalChain([onQuickActionHover, 'optionalCall', _113 => _113(action)]),
6989
+ onHoverEnd: () => _optionalChain([onQuickActionHoverEnd, 'optionalCall', _114 => _114()])
6986
6990
  })),
6987
6991
  [quickActions, onQuickAction, onQuickActionHover, onQuickActionHoverEnd]
6988
6992
  );
@@ -7436,7 +7440,7 @@ function ChatDialogModals({
7436
7440
  RenameChatModal,
7437
7441
  {
7438
7442
  isOpen: renameTarget != null,
7439
- initialName: _nullishCoalesce(_optionalChain([renameTarget, 'optionalAccess', _113 => _113.title]), () => ( "")),
7443
+ initialName: _nullishCoalesce(_optionalChain([renameTarget, 'optionalAccess', _115 => _115.title]), () => ( "")),
7440
7444
  onClose: () => setRenameTarget(null),
7441
7445
  onSave: onConfirmRename
7442
7446
  }
@@ -7700,7 +7704,7 @@ function ChatAttachmentAddButton({
7700
7704
  const canAddMore = slotsAvailable > 0 && !disabled;
7701
7705
  const handlePick = () => {
7702
7706
  if (!canAddMore) return;
7703
- _optionalChain([fileInputRef, 'access', _114 => _114.current, 'optionalAccess', _115 => _115.click, 'call', _116 => _116()]);
7707
+ _optionalChain([fileInputRef, 'access', _116 => _116.current, 'optionalAccess', _117 => _117.click, 'call', _118 => _118()]);
7704
7708
  };
7705
7709
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
7706
7710
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -8067,7 +8071,7 @@ function ChatComposer({
8067
8071
  }) {
8068
8072
  const contextEnabled = !!contextPicker && !archived;
8069
8073
  const selected = _nullishCoalesce(selectedContextItems, () => ( []));
8070
- const entityTypes = _optionalChain([contextPicker, 'optionalAccess', _117 => _117.entityTypes]);
8074
+ const entityTypes = _optionalChain([contextPicker, 'optionalAccess', _119 => _119.entityTypes]);
8071
8075
  const iconByType = React23.useMemo(() => {
8072
8076
  const map = /* @__PURE__ */ new Map();
8073
8077
  for (const t of _nullishCoalesce(entityTypes, () => ( []))) map.set(t.type, t.icon);
@@ -8097,7 +8101,7 @@ function ChatComposer({
8097
8101
  startIcon: contextEnabled ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
8098
8102
  ChatComposerPlusMenu,
8099
8103
  {
8100
- onToggle: () => contextPickerOpen ? _optionalChain([onCloseContextPicker, 'optionalCall', _118 => _118()]) : _optionalChain([onOpenContextPicker, 'optionalCall', _119 => _119()]),
8104
+ onToggle: () => contextPickerOpen ? _optionalChain([onCloseContextPicker, 'optionalCall', _120 => _120()]) : _optionalChain([onOpenContextPicker, 'optionalCall', _121 => _121()]),
8101
8105
  open: contextPickerOpen,
8102
8106
  disabled: attachmentsDisabled,
8103
8107
  dropdown: contextPicker ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -8106,8 +8110,8 @@ function ChatComposer({
8106
8110
  open: contextPickerOpen,
8107
8111
  config: contextPicker,
8108
8112
  selectedItems: selected,
8109
- onToggleItem: (item) => _optionalChain([onToggleContextItem, 'optionalCall', _120 => _120(item)]),
8110
- onClose: () => _optionalChain([onCloseContextPicker, 'optionalCall', _121 => _121()]),
8113
+ onToggleItem: (item) => _optionalChain([onToggleContextItem, 'optionalCall', _122 => _122(item)]),
8114
+ onClose: () => _optionalChain([onCloseContextPicker, 'optionalCall', _123 => _123()]),
8111
8115
  mentionQuery
8112
8116
  }
8113
8117
  ) : void 0
@@ -8314,8 +8318,8 @@ ChatSidebarSkeleton.displayName = "ChatSidebarSkeleton";
8314
8318
  var DialogListItem = _react.forwardRef.call(void 0,
8315
8319
  ({ className, dialog, isActive, onDialogSelect, onClick, ...props }, ref) => {
8316
8320
  const handleClick = (e) => {
8317
- _optionalChain([onDialogSelect, 'optionalCall', _122 => _122(dialog.id)]);
8318
- _optionalChain([onClick, 'optionalCall', _123 => _123(e)]);
8321
+ _optionalChain([onDialogSelect, 'optionalCall', _124 => _124(dialog.id)]);
8322
+ _optionalChain([onClick, 'optionalCall', _125 => _125(e)]);
8319
8323
  };
8320
8324
  const formatTimestamp2 = (timestamp) => {
8321
8325
  if (!timestamp) return "";
@@ -8374,7 +8378,7 @@ var ChatSidebar = _react.forwardRef.call(void 0,
8374
8378
  (entries) => {
8375
8379
  const [entry] = entries;
8376
8380
  if (entry.isIntersecting && !isFetchingRef.current) {
8377
- _optionalChain([onLoadMoreRef, 'access', _124 => _124.current, 'optionalCall', _125 => _125()]);
8381
+ _optionalChain([onLoadMoreRef, 'access', _126 => _126.current, 'optionalCall', _127 => _127()]);
8378
8382
  }
8379
8383
  },
8380
8384
  { root: scrollContainer, rootMargin: "100px", threshold: 0.1 }
@@ -8490,7 +8494,7 @@ function isSameOriginAbsoluteHref(href) {
8490
8494
  function computeIsNewTab(runtime, href, targetPlatform) {
8491
8495
  if (!href) return false;
8492
8496
  if (runtime.navigation.mode === "embed") return !isSameOriginAbsoluteHref(href);
8493
- return _nullishCoalesce(_optionalChain([runtime, 'access', _126 => _126.navigation, 'access', _127 => _127.decideNewTab, 'optionalCall', _128 => _128({ href, targetPlatform })]), () => ( decideNewTab({
8497
+ return _nullishCoalesce(_optionalChain([runtime, 'access', _128 => _128.navigation, 'access', _129 => _129.decideNewTab, 'optionalCall', _130 => _130({ href, targetPlatform })]), () => ( decideNewTab({
8494
8498
  href,
8495
8499
  targetPlatform,
8496
8500
  currentSource: _nullishCoalesce(runtime.source, () => ( ""))
@@ -8554,7 +8558,7 @@ function resolveExternalNavigation(args) {
8554
8558
  function runNavigation(runtime, href, path, targetPlatform, fallbackNavigate) {
8555
8559
  const isNewTab = runtime ? computeIsNewTab(runtime, href, _nullishCoalesce(targetPlatform, () => ( null))) : false;
8556
8560
  if (isNewTab) {
8557
- if (_optionalChain([runtime, 'optionalAccess', _129 => _129.navigation, 'access', _130 => _130.openExternal])) runtime.navigation.openExternal(href);
8561
+ if (_optionalChain([runtime, 'optionalAccess', _131 => _131.navigation, 'access', _132 => _132.openExternal])) runtime.navigation.openExternal(href);
8558
8562
  else window.open(href, "_blank", NEW_TAB_FEATURES);
8559
8563
  return;
8560
8564
  }
@@ -8562,7 +8566,7 @@ function runNavigation(runtime, href, path, targetPlatform, fallbackNavigate) {
8562
8566
  if (target.includes("#") && _chunkB7NOIJR3cjs.navigateSamePageHash.call(void 0, target, { headerOffset: _chunkB7NOIJR3cjs.STICKY_HEADER_OFFSET_PX })) {
8563
8567
  return;
8564
8568
  }
8565
- const handled = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _131 => _131.navigation, 'access', _132 => _132.navigate, 'optionalCall', _133 => _133({ href, path, targetPlatform })]), () => ( false));
8569
+ const handled = _nullishCoalesce(_optionalChain([runtime, 'optionalAccess', _133 => _133.navigation, 'access', _134 => _134.navigate, 'optionalCall', _135 => _135({ href, path, targetPlatform })]), () => ( false));
8566
8570
  if (!handled) {
8567
8571
  if (fallbackNavigate) fallbackNavigate(target);
8568
8572
  else window.location.assign(target);
@@ -8627,7 +8631,7 @@ function NavLinkAnchorViaRuntime({
8627
8631
  path,
8628
8632
  targetPlatform
8629
8633
  }, router.push);
8630
- if (handled && !isNewTab && _optionalChain([panel, 'optionalAccess', _134 => _134.closeChat])) panel.closeChat();
8634
+ if (handled && !isNewTab && _optionalChain([panel, 'optionalAccess', _136 => _136.closeChat])) panel.closeChat();
8631
8635
  };
8632
8636
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
8633
8637
  "a",
@@ -8752,7 +8756,7 @@ function EntityAuthorCard({
8752
8756
  renderEmptyAuthor = false,
8753
8757
  className
8754
8758
  }) {
8755
- const hasAuthor = !!_optionalChain([author, 'optionalAccess', _135 => _135.full_name]);
8759
+ const hasAuthor = !!_optionalChain([author, 'optionalAccess', _137 => _137.full_name]);
8756
8760
  if (!hasAuthor && !renderEmptyAuthor) return null;
8757
8761
  const effectiveAuthor = hasAuthor ? author : EMPTY_AUTHOR_PLACEHOLDER;
8758
8762
  const formatted = publishedAt ? formatDate(publishedAt) : "";
@@ -9088,8 +9092,8 @@ function AdminContentCard({
9088
9092
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "font-['DM_Sans'] font-bold text-ods-text-primary text-[18px] leading-snug line-clamp-2 break-words", children: title }),
9089
9093
  subtitle && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] text-ods-text-secondary truncate", children: subtitle }),
9090
9094
  summary && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-relaxed text-ods-text-secondary line-clamp-2", children: summary }),
9091
- (Number(_optionalChain([platforms, 'optionalAccess', _136 => _136.length])) > 0 || badges) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2 flex-wrap", children: [
9092
- _optionalChain([platforms, 'optionalAccess', _137 => _137.map, 'call', _138 => _138((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9095
+ (Number(_optionalChain([platforms, 'optionalAccess', _138 => _138.length])) > 0 || badges) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2 flex-wrap", children: [
9096
+ _optionalChain([platforms, 'optionalAccess', _139 => _139.map, 'call', _140 => _140((p) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
9093
9097
  PlatformBadge,
9094
9098
  {
9095
9099
  platform: { id: p.id || p.platform_id || "", name: p.name, display_name: p.display_name || p.name },
@@ -9145,8 +9149,8 @@ function WhatIShippedCard({ entry, placeholderUrl, actions, anchorProps, classNa
9145
9149
  ) : null,
9146
9150
  meta: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
9147
9151
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "flex items-center gap-2 min-w-0", children: [
9148
- _optionalChain([entry, 'access', _139 => _139.author, 'optionalAccess', _140 => _140.avatar_url]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: _nullishCoalesce(getProxiedImageUrl2(entry.author.avatar_url), () => ( entry.author.avatar_url)), alt: "", className: "h-5 w-5 rounded-full object-cover shrink-0" }) : null,
9149
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: _nullishCoalesce(_optionalChain([entry, 'access', _141 => _141.author, 'optionalAccess', _142 => _142.full_name]), () => ( "")) })
9152
+ _optionalChain([entry, 'access', _141 => _141.author, 'optionalAccess', _142 => _142.avatar_url]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: _nullishCoalesce(getProxiedImageUrl2(entry.author.avatar_url), () => ( entry.author.avatar_url)), alt: "", className: "h-5 w-5 rounded-full object-cover shrink-0" }) : null,
9153
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "truncate", children: _nullishCoalesce(_optionalChain([entry, 'access', _143 => _143.author, 'optionalAccess', _144 => _144.full_name]), () => ( "")) })
9150
9154
  ] }),
9151
9155
  month ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: month }) : null
9152
9156
  ] }),
@@ -9231,7 +9235,7 @@ function fetchPriorityProp(priority) {
9231
9235
 
9232
9236
  if (typeof window !== "undefined") {
9233
9237
  const w = window;
9234
- if (!_optionalChain([w, 'access', _143 => _143.chrome, 'optionalAccess', _144 => _144.cast])) {
9238
+ if (!_optionalChain([w, 'access', _145 => _145.chrome, 'optionalAccess', _146 => _146.cast])) {
9235
9239
  w.chrome = { ..._nullishCoalesce(w.chrome, () => ( {})), cast: { isAvailable: false } };
9236
9240
  }
9237
9241
  }
@@ -9421,7 +9425,7 @@ function YouTubeFacadeInner({
9421
9425
  const iframe = iframeRef.current;
9422
9426
  if (!iframe) return;
9423
9427
  function subscribe() {
9424
- _optionalChain([iframe, 'optionalAccess', _145 => _145.contentWindow, 'optionalAccess', _146 => _146.postMessage, 'call', _147 => _147(
9428
+ _optionalChain([iframe, 'optionalAccess', _147 => _147.contentWindow, 'optionalAccess', _148 => _148.postMessage, 'call', _149 => _149(
9425
9429
  '{"event":"listening"}',
9426
9430
  YT_NOCOOKIE_ORIGIN
9427
9431
  )]);
@@ -9439,13 +9443,13 @@ function YouTubeFacadeInner({
9439
9443
  return;
9440
9444
  }
9441
9445
  if (!payload || payload.event !== "infoDelivery") return;
9442
- const state = _optionalChain([payload, 'access', _148 => _148.info, 'optionalAccess', _149 => _149.playerState]);
9446
+ const state = _optionalChain([payload, 'access', _150 => _150.info, 'optionalAccess', _151 => _151.playerState]);
9443
9447
  if (typeof state !== "number") return;
9444
9448
  if (state === YT_STATE_PLAYING) {
9445
9449
  if (blurTimer !== null) return;
9446
9450
  blurTimer = setTimeout(() => {
9447
9451
  blurTimer = null;
9448
- _optionalChain([iframeRef, 'access', _150 => _150.current, 'optionalAccess', _151 => _151.blur, 'call', _152 => _152()]);
9452
+ _optionalChain([iframeRef, 'access', _152 => _152.current, 'optionalAccess', _153 => _153.blur, 'call', _154 => _154()]);
9449
9453
  }, YT_PLAYING_BLUR_DELAY_MS);
9450
9454
  return;
9451
9455
  }
@@ -10051,7 +10055,7 @@ function ProductReleaseCard({
10051
10055
  changelogCounts
10052
10056
  }) {
10053
10057
  if (size2 === "lg") {
10054
- const totalChangelog = (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _153 => _153.features]), () => ( 0))) + (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _154 => _154.fixes]), () => ( 0))) + (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _155 => _155.improvements]), () => ( 0))) + (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _156 => _156.breaking]), () => ( 0)));
10058
+ const totalChangelog = (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _155 => _155.features]), () => ( 0))) + (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _156 => _156.fixes]), () => ( 0))) + (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _157 => _157.improvements]), () => ( 0))) + (_nullishCoalesce(_optionalChain([changelogCounts, 'optionalAccess', _158 => _158.breaking]), () => ( 0)));
10055
10059
  const valueCells = [
10056
10060
  releaseType && releaseTypeBadgeColor ? {
10057
10061
  value: releaseType.toUpperCase(),
@@ -10070,7 +10074,7 @@ function ProductReleaseCard({
10070
10074
  uppercase: false
10071
10075
  } : { value: "\u2014", label: "Released", uppercase: false }
10072
10076
  ];
10073
- const effectiveAuthor = _optionalChain([author, 'optionalAccess', _157 => _157.full_name]) ? author : { full_name: "\u2014", avatar_url: null, job_title: "Unknown" };
10077
+ const effectiveAuthor = _optionalChain([author, 'optionalAccess', _159 => _159.full_name]) ? author : { full_name: "\u2014", avatar_url: null, job_title: "Unknown" };
10074
10078
  const gridColsClass = "md:grid-cols-4";
10075
10079
  const dividerClass = "border-b md:border-b-0 md:border-r border-ods-border";
10076
10080
  const frameClass = _chunkFIG2RKZFcjs.cn.call(void 0,
@@ -10483,10 +10487,10 @@ function buildProductReleaseCardProps(item) {
10483
10487
  job_title: release.author.job_title
10484
10488
  } : void 0,
10485
10489
  changelogCounts: {
10486
- features: _nullishCoalesce(_optionalChain([release, 'access', _158 => _158.features_added, 'optionalAccess', _159 => _159.length]), () => ( 0)),
10487
- fixes: _nullishCoalesce(_optionalChain([release, 'access', _160 => _160.bugs_fixed, 'optionalAccess', _161 => _161.length]), () => ( 0)),
10488
- improvements: _nullishCoalesce(_optionalChain([release, 'access', _162 => _162.improvements, 'optionalAccess', _163 => _163.length]), () => ( 0)),
10489
- breaking: _nullishCoalesce(_optionalChain([release, 'access', _164 => _164.breaking_changes, 'optionalAccess', _165 => _165.length]), () => ( 0))
10490
+ features: _nullishCoalesce(_optionalChain([release, 'access', _160 => _160.features_added, 'optionalAccess', _161 => _161.length]), () => ( 0)),
10491
+ fixes: _nullishCoalesce(_optionalChain([release, 'access', _162 => _162.bugs_fixed, 'optionalAccess', _163 => _163.length]), () => ( 0)),
10492
+ improvements: _nullishCoalesce(_optionalChain([release, 'access', _164 => _164.improvements, 'optionalAccess', _165 => _165.length]), () => ( 0)),
10493
+ breaking: _nullishCoalesce(_optionalChain([release, 'access', _166 => _166.breaking_changes, 'optionalAccess', _167 => _167.length]), () => ( 0))
10490
10494
  }
10491
10495
  };
10492
10496
  }
@@ -10614,7 +10618,7 @@ function BlogCard({
10614
10618
  const displayImage = post.featured_image && !imageError ? post.featured_image : placeholderUrl;
10615
10619
  if (size2 === "sm") {
10616
10620
  const dateStr2 = post.published_at ? new Date(post.published_at).toLocaleDateString("en-US", { year: "numeric", month: "short", day: "numeric", timeZone: "UTC" }) : "";
10617
- const firstCategory = _optionalChain([post, 'access', _166 => _166.categories, 'optionalAccess', _167 => _167.find, 'call', _168 => _168((c) => c && c.name), 'optionalAccess', _169 => _169.name]);
10621
+ const firstCategory = _optionalChain([post, 'access', _168 => _168.categories, 'optionalAccess', _169 => _169.find, 'call', _170 => _170((c) => c && c.name), 'optionalAccess', _171 => _171.name]);
10618
10622
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
10619
10623
  "a",
10620
10624
  {
@@ -10820,14 +10824,14 @@ function CaseStudyCard({
10820
10824
  "img",
10821
10825
  {
10822
10826
  src: coverImage,
10823
- alt: `${_optionalChain([study, 'access', _170 => _170.msp, 'optionalAccess', _171 => _171.name]) || study.title} cover`,
10827
+ alt: `${_optionalChain([study, 'access', _172 => _172.msp, 'optionalAccess', _173 => _173.name]) || study.title} cover`,
10824
10828
  className: "absolute inset-0 block w-full h-full object-contain",
10825
10829
  onError: hideOnError
10826
10830
  }
10827
10831
  ) : null }),
10828
10832
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
10829
10833
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_TITLE, children: study.title }) }),
10830
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUBTITLE, children: [_optionalChain([study, 'access', _172 => _172.msp, 'optionalAccess', _173 => _173.name]), _optionalChain([study, 'access', _174 => _174.user, 'optionalAccess', _175 => _175.full_name])].filter(Boolean).join(" \xB7 ") || "Case study" }) }),
10834
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUBTITLE, children: [_optionalChain([study, 'access', _174 => _174.msp, 'optionalAccess', _175 => _175.name]), _optionalChain([study, 'access', _176 => _176.user, 'optionalAccess', _177 => _177.full_name])].filter(Boolean).join(" \xB7 ") || "Case study" }) }),
10831
10835
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUMMARY, children: study.summary || COMPACT_CARD_ROW_FILLER }) })
10832
10836
  ] })
10833
10837
  ] });
@@ -10837,7 +10841,7 @@ function CaseStudyCard({
10837
10841
  _chunkXL4V2PYGcjs.next_image_default,
10838
10842
  {
10839
10843
  src: coverImage,
10840
- alt: _optionalChain([study, 'access', _176 => _176.msp, 'optionalAccess', _177 => _177.name]) || study.title,
10844
+ alt: _optionalChain([study, 'access', _178 => _178.msp, 'optionalAccess', _179 => _179.name]) || study.title,
10841
10845
  className: "w-full h-full object-cover",
10842
10846
  sizes: "(min-width: 1545px) 515px, (min-width: 1280px) 33vw, (min-width: 800px) 50vw, 100vw",
10843
10847
  fill: true,
@@ -10848,18 +10852,18 @@ function CaseStudyCard({
10848
10852
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-[72px] flex items-center shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "text-h4 text-ods-text-primary line-clamp-3 break-words", children: study.title }) }),
10849
10853
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-[60px] flex items-center shrink-0", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3 min-w-0 w-full", children: [
10850
10854
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative shrink-0 w-12 h-12", children: [
10851
- _optionalChain([study, 'access', _178 => _178.user, 'optionalAccess', _179 => _179.avatar_url]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10855
+ _optionalChain([study, 'access', _180 => _180.user, 'optionalAccess', _181 => _181.avatar_url]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10852
10856
  _chunkXL4V2PYGcjs.next_image_default,
10853
10857
  {
10854
10858
  src: study.user.avatar_url,
10855
- alt: _optionalChain([study, 'access', _180 => _180.user, 'optionalAccess', _181 => _181.full_name]) || "User",
10859
+ alt: _optionalChain([study, 'access', _182 => _182.user, 'optionalAccess', _183 => _183.full_name]) || "User",
10856
10860
  className: "w-12 h-12 rounded-full object-cover bg-ods-background border border-ods-border",
10857
10861
  width: 48,
10858
10862
  height: 48,
10859
10863
  unoptimized: true
10860
10864
  }
10861
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-12 h-12 rounded-full bg-ods-background border border-ods-border flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary font-medium text-xl", children: (_optionalChain([study, 'access', _182 => _182.user, 'optionalAccess', _183 => _183.full_name]) || "A").charAt(0).toUpperCase() }) }),
10862
- _optionalChain([study, 'access', _184 => _184.msp, 'optionalAccess', _185 => _185.icon_url]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute -bottom-1 -right-1 w-6 h-6 rounded-full bg-ods-text-primary ring-1 ring-ods-bg overflow-hidden flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10865
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-12 h-12 rounded-full bg-ods-background border border-ods-border flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary font-medium text-xl", children: (_optionalChain([study, 'access', _184 => _184.user, 'optionalAccess', _185 => _185.full_name]) || "A").charAt(0).toUpperCase() }) }),
10866
+ _optionalChain([study, 'access', _186 => _186.msp, 'optionalAccess', _187 => _187.icon_url]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute -bottom-1 -right-1 w-6 h-6 rounded-full bg-ods-text-primary ring-1 ring-ods-bg overflow-hidden flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10863
10867
  _chunkXL4V2PYGcjs.next_image_default,
10864
10868
  {
10865
10869
  src: study.msp.icon_url,
@@ -10873,13 +10877,13 @@ function CaseStudyCard({
10873
10877
  ] }),
10874
10878
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
10875
10879
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "font-['DM_Sans'] text-[16px] leading-[1.3] text-ods-text-primary truncate", children: [
10876
- _optionalChain([study, 'access', _186 => _186.user, 'optionalAccess', _187 => _187.full_name]) || "Anonymous",
10877
- _optionalChain([study, 'access', _188 => _188.msp, 'optionalAccess', _189 => _189.name]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
10880
+ _optionalChain([study, 'access', _188 => _188.user, 'optionalAccess', _189 => _189.full_name]) || "Anonymous",
10881
+ _optionalChain([study, 'access', _190 => _190.msp, 'optionalAccess', _191 => _191.name]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
10878
10882
  " \u2022 ",
10879
10883
  study.msp.name
10880
10884
  ] })
10881
10885
  ] }),
10882
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([study, 'access', _190 => _190.user, 'optionalAccess', _191 => _191.job_title]) || "\xA0" })
10886
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([study, 'access', _192 => _192.user, 'optionalAccess', _193 => _193.job_title]) || "\xA0" })
10883
10887
  ] })
10884
10888
  ] }) })
10885
10889
  ] }) });
@@ -10962,7 +10966,7 @@ function CustomerInterviewCard({
10962
10966
  ] }),
10963
10967
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
10964
10968
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_TITLE, children: interview.title }) }),
10965
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUBTITLE, children: [_optionalChain([interview, 'access', _192 => _192.user, 'optionalAccess', _193 => _193.full_name]), _optionalChain([interview, 'access', _194 => _194.msp, 'optionalAccess', _195 => _195.name])].filter(Boolean).join(" \xB7 ") || "Customer interview" }) }),
10969
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUBTITLE, children: [_optionalChain([interview, 'access', _194 => _194.user, 'optionalAccess', _195 => _195.full_name]), _optionalChain([interview, 'access', _196 => _196.msp, 'optionalAccess', _197 => _197.name])].filter(Boolean).join(" \xB7 ") || "Customer interview" }) }),
10966
10970
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_META_ROW_BOX, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_SUMMARY, children: interview.video_summary || COMPACT_CARD_ROW_FILLER }) })
10967
10971
  ] })
10968
10972
  ] });
@@ -10984,15 +10988,15 @@ function CustomerInterviewCard({
10984
10988
  interview.video_summary && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-[20px] text-ods-text-secondary line-clamp-3", children: interview.video_summary }) }),
10985
10989
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-[60px] flex items-center shrink-0 mt-auto", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-3 min-w-0 w-full", children: [
10986
10990
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative shrink-0 w-12 h-12", children: [
10987
- _optionalChain([interview, 'access', _196 => _196.user, 'optionalAccess', _197 => _197.avatar_url]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10991
+ _optionalChain([interview, 'access', _198 => _198.user, 'optionalAccess', _199 => _199.avatar_url]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10988
10992
  "img",
10989
10993
  {
10990
10994
  src: interview.user.avatar_url,
10991
- alt: _optionalChain([interview, 'access', _198 => _198.user, 'optionalAccess', _199 => _199.full_name]) || "Customer",
10995
+ alt: _optionalChain([interview, 'access', _200 => _200.user, 'optionalAccess', _201 => _201.full_name]) || "Customer",
10992
10996
  className: "w-12 h-12 rounded-full object-cover bg-ods-background border border-ods-border"
10993
10997
  }
10994
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-12 h-12 rounded-full bg-ods-background border border-ods-border flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary font-medium text-xl", children: (_optionalChain([interview, 'access', _200 => _200.user, 'optionalAccess', _201 => _201.full_name]) || "A").charAt(0).toUpperCase() }) }),
10995
- _optionalChain([interview, 'access', _202 => _202.msp, 'optionalAccess', _203 => _203.icon_url]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute -bottom-1 -right-1 w-6 h-6 rounded-full bg-ods-text-primary ring-1 ring-ods-bg overflow-hidden flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10998
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-12 h-12 rounded-full bg-ods-background border border-ods-border flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-ods-text-secondary font-medium text-xl", children: (_optionalChain([interview, 'access', _202 => _202.user, 'optionalAccess', _203 => _203.full_name]) || "A").charAt(0).toUpperCase() }) }),
10999
+ _optionalChain([interview, 'access', _204 => _204.msp, 'optionalAccess', _205 => _205.icon_url]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute -bottom-1 -right-1 w-6 h-6 rounded-full bg-ods-text-primary ring-1 ring-ods-bg overflow-hidden flex items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
10996
11000
  "img",
10997
11001
  {
10998
11002
  src: interview.msp.icon_url,
@@ -11003,13 +11007,13 @@ function CustomerInterviewCard({
11003
11007
  ] }),
11004
11008
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "min-w-0 flex-1", children: [
11005
11009
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "font-['DM_Sans'] text-[16px] leading-[1.3] text-ods-text-primary truncate", children: [
11006
- _optionalChain([interview, 'access', _204 => _204.user, 'optionalAccess', _205 => _205.full_name]) || "Anonymous",
11007
- _optionalChain([interview, 'access', _206 => _206.msp, 'optionalAccess', _207 => _207.name]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
11010
+ _optionalChain([interview, 'access', _206 => _206.user, 'optionalAccess', _207 => _207.full_name]) || "Anonymous",
11011
+ _optionalChain([interview, 'access', _208 => _208.msp, 'optionalAccess', _209 => _209.name]) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary", children: [
11008
11012
  " \u2022 ",
11009
11013
  interview.msp.name
11010
11014
  ] })
11011
11015
  ] }),
11012
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([interview, 'access', _208 => _208.user, 'optionalAccess', _209 => _209.job_title]) || " " })
11016
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-['DM_Sans'] text-[14px] leading-none text-ods-text-secondary truncate", children: _optionalChain([interview, 'access', _210 => _210.user, 'optionalAccess', _211 => _211.job_title]) || " " })
11013
11017
  ] })
11014
11018
  ] }) })
11015
11019
  ] }) });
@@ -11022,7 +11026,7 @@ function CustomerInterviewCard({
11022
11026
  function formatInvestorUpdatePeriod(start, end, options) {
11023
11027
  if (!start && !end) return "";
11024
11028
  const fmt = (d) => new Date(d).toLocaleDateString("en-US", {
11025
- month: _optionalChain([options, 'optionalAccess', _210 => _210.monthFormat]) || "short",
11029
+ month: _optionalChain([options, 'optionalAccess', _212 => _212.monthFormat]) || "short",
11026
11030
  year: "numeric",
11027
11031
  // Pin to UTC so SSR (Vercel = UTC) and the client agree (React #418).
11028
11032
  timeZone: "UTC"
@@ -11114,7 +11118,7 @@ function InvestorUpdateCard({
11114
11118
  imageUrl: update.featured_image,
11115
11119
  placeholderUrl,
11116
11120
  title: update.title || `Update #${update.update_number || "?"}`,
11117
- summary: _optionalChain([update, 'access', _211 => _211.strategic_update, 'optionalAccess', _212 => _212.slice, 'call', _213 => _213(0, 120)]) || _optionalChain([update, 'access', _214 => _214.content, 'optionalAccess', _215 => _215.slice, 'call', _216 => _216(0, 120)]) || "No description",
11121
+ summary: _optionalChain([update, 'access', _213 => _213.strategic_update, 'optionalAccess', _214 => _214.slice, 'call', _215 => _215(0, 120)]) || _optionalChain([update, 'access', _216 => _216.content, 'optionalAccess', _217 => _217.slice, 'call', _218 => _218(0, 120)]) || "No description",
11118
11122
  badges: update.update_number ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "px-2 py-0.5 rounded text-xs font-medium bg-ods-accent/10 text-ods-accent", children: [
11119
11123
  "#",
11120
11124
  update.update_number
@@ -11306,7 +11310,7 @@ function OnboardingGuideCard({
11306
11310
  const compactCover = coverImage || placeholderUrl || null;
11307
11311
  const hasVideoCover = !guide.featured_image && !!guide.main_video_thumbnail;
11308
11312
  const summary2 = stripMarkdownPreview(guide.video_summary || guide.content || "");
11309
- const author = _optionalChain([guide, 'access', _217 => _217.author, 'optionalAccess', _218 => _218.full_name, 'optionalAccess', _219 => _219.trim, 'call', _220 => _220()]) || "";
11313
+ const author = _optionalChain([guide, 'access', _219 => _219.author, 'optionalAccess', _220 => _220.full_name, 'optionalAccess', _221 => _221.trim, 'call', _222 => _222()]) || "";
11310
11314
  const subtitleParts = [
11311
11315
  `Step ${guide.step_order}`,
11312
11316
  guide.section,
@@ -11682,7 +11686,7 @@ function AutocompleteInner(props, ref) {
11682
11686
  if (!isInputControlled) {
11683
11687
  setInternalInputValue(value);
11684
11688
  }
11685
- _optionalChain([onInputChange, 'optionalCall', _221 => _221(value, reason)]);
11689
+ _optionalChain([onInputChange, 'optionalCall', _223 => _223(value, reason)]);
11686
11690
  };
11687
11691
  const [isOpen, setIsOpen] = _react.useState.call(void 0, false);
11688
11692
  const [highlightedIndex, setHighlightedIndex] = _react.useState.call(void 0, -1);
@@ -11710,8 +11714,8 @@ function AutocompleteInner(props, ref) {
11710
11714
  if (!showHiddenTags) return;
11711
11715
  const handleClick = (e) => {
11712
11716
  const target = e.target;
11713
- const inButton = _optionalChain([hiddenTagsRef, 'access', _222 => _222.current, 'optionalAccess', _223 => _223.contains, 'call', _224 => _224(target)]);
11714
- const inPopup = _optionalChain([hiddenTagsPopupRef, 'access', _225 => _225.current, 'optionalAccess', _226 => _226.contains, 'call', _227 => _227(target)]);
11717
+ const inButton = _optionalChain([hiddenTagsRef, 'access', _224 => _224.current, 'optionalAccess', _225 => _225.contains, 'call', _226 => _226(target)]);
11718
+ const inPopup = _optionalChain([hiddenTagsPopupRef, 'access', _227 => _227.current, 'optionalAccess', _228 => _228.contains, 'call', _229 => _229(target)]);
11715
11719
  if (!inButton && !inPopup) {
11716
11720
  setShowHiddenTags(false);
11717
11721
  }
@@ -11756,7 +11760,7 @@ function AutocompleteInner(props, ref) {
11756
11760
  }
11757
11761
  updateInputValue("", "reset");
11758
11762
  setIsOpen(false);
11759
- _optionalChain([onCreateOption, 'optionalCall', _228 => _228(trimmed)]);
11763
+ _optionalChain([onCreateOption, 'optionalCall', _230 => _230(trimmed)]);
11760
11764
  };
11761
11765
  _react.useEffect.call(void 0, () => {
11762
11766
  setHighlightedIndex(-1);
@@ -11780,7 +11784,7 @@ function AutocompleteInner(props, ref) {
11780
11784
  props.onChange([...valueArray, option.value]);
11781
11785
  }
11782
11786
  updateInputValue("", "reset");
11783
- _optionalChain([autoLimitTags, 'access', _229 => _229.inputRef, 'access', _230 => _230.current, 'optionalAccess', _231 => _231.focus, 'call', _232 => _232()]);
11787
+ _optionalChain([autoLimitTags, 'access', _231 => _231.inputRef, 'access', _232 => _232.current, 'optionalAccess', _233 => _233.focus, 'call', _234 => _234()]);
11784
11788
  } else {
11785
11789
  ;
11786
11790
  props.onChange(option.value);
@@ -11801,7 +11805,7 @@ function AutocompleteInner(props, ref) {
11801
11805
  if (!isInputControlled) {
11802
11806
  setInternalInputValue("");
11803
11807
  }
11804
- _optionalChain([onInputChange, 'optionalCall', _233 => _233("", "clear")]);
11808
+ _optionalChain([onInputChange, 'optionalCall', _235 => _235("", "clear")]);
11805
11809
  setIsOpen(false);
11806
11810
  };
11807
11811
  const handleKeyDown = (e) => {
@@ -11875,7 +11879,7 @@ function AutocompleteInner(props, ref) {
11875
11879
  ),
11876
11880
  onClick: () => {
11877
11881
  if (!disabled) {
11878
- _optionalChain([autoLimitTags, 'access', _234 => _234.inputRef, 'access', _235 => _235.current, 'optionalAccess', _236 => _236.focus, 'call', _237 => _237()]);
11882
+ _optionalChain([autoLimitTags, 'access', _236 => _236.inputRef, 'access', _237 => _237.current, 'optionalAccess', _238 => _238.focus, 'call', _239 => _239()]);
11879
11883
  openDropdown();
11880
11884
  }
11881
11885
  },
@@ -11991,10 +11995,10 @@ function AutocompleteInner(props, ref) {
11991
11995
  align: "start",
11992
11996
  onOpenAutoFocus: (e) => {
11993
11997
  e.preventDefault();
11994
- _optionalChain([autoLimitTags, 'access', _238 => _238.inputRef, 'access', _239 => _239.current, 'optionalAccess', _240 => _240.focus, 'call', _241 => _241()]);
11998
+ _optionalChain([autoLimitTags, 'access', _240 => _240.inputRef, 'access', _241 => _241.current, 'optionalAccess', _242 => _242.focus, 'call', _243 => _243()]);
11995
11999
  },
11996
12000
  onInteractOutside: (e) => {
11997
- if (_optionalChain([containerRef, 'access', _242 => _242.current, 'optionalAccess', _243 => _243.contains, 'call', _244 => _244(e.target)])) {
12001
+ if (_optionalChain([containerRef, 'access', _244 => _244.current, 'optionalAccess', _245 => _245.contains, 'call', _246 => _246(e.target)])) {
11998
12002
  e.preventDefault();
11999
12003
  }
12000
12004
  },
@@ -12407,7 +12411,7 @@ var defaultFormatDate = (date) => {
12407
12411
  });
12408
12412
  };
12409
12413
  var formatDateRange2 = (range, formatFn) => {
12410
- if (!_optionalChain([range, 'optionalAccess', _245 => _245.from])) return "";
12414
+ if (!_optionalChain([range, 'optionalAccess', _247 => _247.from])) return "";
12411
12415
  if (!range.to) return formatFn(range.from);
12412
12416
  return `${formatFn(range.from)} - ${formatFn(range.to)}`;
12413
12417
  };
@@ -12442,16 +12446,16 @@ function DatePickerCalendar({
12442
12446
  );
12443
12447
  const [hoveredDate, setHoveredDate] = React38.useState(void 0);
12444
12448
  const rangeSelected = draftRange;
12445
- const hasCompleteRange = mode === "range" && !!_optionalChain([rangeSelected, 'optionalAccess', _246 => _246.from]) && !!_optionalChain([rangeSelected, 'optionalAccess', _247 => _247.to]) && rangeSelected.from.getTime() !== rangeSelected.to.getTime();
12449
+ const hasCompleteRange = mode === "range" && !!_optionalChain([rangeSelected, 'optionalAccess', _248 => _248.from]) && !!_optionalChain([rangeSelected, 'optionalAccess', _249 => _249.to]) && rangeSelected.from.getTime() !== rangeSelected.to.getTime();
12446
12450
  const isPreviewDate = (date) => {
12447
- if (!_optionalChain([draftRange, 'optionalAccess', _248 => _248.from]) || draftRange.to || !hoveredDate) return false;
12451
+ if (!_optionalChain([draftRange, 'optionalAccess', _250 => _250.from]) || draftRange.to || !hoveredDate) return false;
12448
12452
  const start = Math.min(draftRange.from.getTime(), hoveredDate.getTime());
12449
12453
  const end = Math.max(draftRange.from.getTime(), hoveredDate.getTime());
12450
12454
  return date.getTime() >= start && date.getTime() <= end;
12451
12455
  };
12452
12456
  const handleRangeSelect = (triggerDate) => {
12453
12457
  if (!triggerDate) return;
12454
- if (!_optionalChain([draftRange, 'optionalAccess', _249 => _249.from]) || draftRange.to) {
12458
+ if (!_optionalChain([draftRange, 'optionalAccess', _251 => _251.from]) || draftRange.to) {
12455
12459
  setDraftRange({ from: triggerDate, to: void 0 });
12456
12460
  return;
12457
12461
  }
@@ -12516,7 +12520,7 @@ function DatePickerCalendar({
12516
12520
  range_middle: "range-middle !bg-[var(--ods-open-yellow-light)] !text-ods-card !font-medium !rounded-none hover:!bg-[var(--ods-open-yellow-light)]"
12517
12521
  };
12518
12522
  const [month, setMonth] = React38.useState(
12519
- mode === "single" ? selected || today : _optionalChain([selected, 'optionalAccess', _250 => _250.from]) || today
12523
+ mode === "single" ? selected || today : _optionalChain([selected, 'optionalAccess', _252 => _252.from]) || today
12520
12524
  );
12521
12525
  const handlePreviousMonth = () => {
12522
12526
  setMonth((prev) => {
@@ -12748,14 +12752,14 @@ function DatePicker(props) {
12748
12752
  }, [props.mode, props.value, formatDate2]);
12749
12753
  const handleSelect = (value) => {
12750
12754
  if (props.mode === "single") {
12751
- _optionalChain([props, 'access', _251 => _251.onChange, 'optionalCall', _252 => _252(value)]);
12755
+ _optionalChain([props, 'access', _253 => _253.onChange, 'optionalCall', _254 => _254(value)]);
12752
12756
  if (value) {
12753
12757
  setOpen(false);
12754
12758
  }
12755
12759
  } else {
12756
12760
  const range = value;
12757
- _optionalChain([props, 'access', _253 => _253.onChange, 'optionalCall', _254 => _254(range)]);
12758
- if (_optionalChain([range, 'optionalAccess', _255 => _255.from]) && _optionalChain([range, 'optionalAccess', _256 => _256.to])) {
12761
+ _optionalChain([props, 'access', _255 => _255.onChange, 'optionalCall', _256 => _256(range)]);
12762
+ if (_optionalChain([range, 'optionalAccess', _257 => _257.from]) && _optionalChain([range, 'optionalAccess', _258 => _258.to])) {
12759
12763
  setOpen(false);
12760
12764
  }
12761
12765
  }
@@ -12862,7 +12866,7 @@ function DatePickerInput({
12862
12866
  if (newDate && value) {
12863
12867
  newDate.setHours(value.getHours(), value.getMinutes(), 0, 0);
12864
12868
  }
12865
- _optionalChain([onChange, 'optionalCall', _257 => _257(newDate)]);
12869
+ _optionalChain([onChange, 'optionalCall', _259 => _259(newDate)]);
12866
12870
  if (newDate) {
12867
12871
  setOpen(false);
12868
12872
  }
@@ -12879,12 +12883,12 @@ function DatePickerInput({
12879
12883
  }
12880
12884
  }
12881
12885
  date.setHours(hours);
12882
- _optionalChain([onChange, 'optionalCall', _258 => _258(date)]);
12886
+ _optionalChain([onChange, 'optionalCall', _260 => _260(date)]);
12883
12887
  };
12884
12888
  const handleMinuteChange = (newMinute) => {
12885
12889
  const date = value ? new Date(value) : /* @__PURE__ */ new Date();
12886
12890
  date.setMinutes(parseInt(newMinute, 10));
12887
- _optionalChain([onChange, 'optionalCall', _259 => _259(date)]);
12891
+ _optionalChain([onChange, 'optionalCall', _261 => _261(date)]);
12888
12892
  };
12889
12893
  const handlePeriodChange = (newPeriod) => {
12890
12894
  const date = value ? new Date(value) : /* @__PURE__ */ new Date();
@@ -12895,7 +12899,7 @@ function DatePickerInput({
12895
12899
  hours += 12;
12896
12900
  }
12897
12901
  date.setHours(hours);
12898
- _optionalChain([onChange, 'optionalCall', _260 => _260(date)]);
12902
+ _optionalChain([onChange, 'optionalCall', _262 => _262(date)]);
12899
12903
  };
12900
12904
  const hourOptions = React38.useMemo(() => generateHourOptions(use24HourFormat), [use24HourFormat]);
12901
12905
  const minuteOptions = React38.useMemo(() => generateMinuteOptions(), []);
@@ -13056,7 +13060,7 @@ function DatePickerInputSimple({
13056
13060
  if (newDate && value) {
13057
13061
  newDate.setHours(value.getHours(), value.getMinutes(), 0, 0);
13058
13062
  }
13059
- _optionalChain([onChange, 'optionalCall', _261 => _261(newDate)]);
13063
+ _optionalChain([onChange, 'optionalCall', _263 => _263(newDate)]);
13060
13064
  if (newDate) {
13061
13065
  setOpen(false);
13062
13066
  }
@@ -13065,7 +13069,7 @@ function DatePickerInputSimple({
13065
13069
  const [hours, minutes] = newTime.split(":").map(Number);
13066
13070
  const date = value ? new Date(value) : /* @__PURE__ */ new Date();
13067
13071
  date.setHours(hours, minutes, 0, 0);
13068
- _optionalChain([onChange, 'optionalCall', _262 => _262(date)]);
13072
+ _optionalChain([onChange, 'optionalCall', _264 => _264(date)]);
13069
13073
  };
13070
13074
  const timeOptions = React38.useMemo(
13071
13075
  () => generateTimeOptions(timeInterval, use24HourFormat),
@@ -13164,17 +13168,17 @@ function DateFilterMenu({
13164
13168
  if (next) {
13165
13169
  resetDraft();
13166
13170
  } else {
13167
- _optionalChain([onClose, 'optionalCall', _263 => _263()]);
13171
+ _optionalChain([onClose, 'optionalCall', _265 => _265()]);
13168
13172
  }
13169
13173
  setOpen(next);
13170
13174
  };
13171
13175
  const handleApply = () => {
13172
13176
  const result = mode === "single" ? { sort: draftSort, date: draftSelected } : { sort: draftSort, range: draftSelected };
13173
- _optionalChain([onApply, 'optionalCall', _264 => _264(result)]);
13177
+ _optionalChain([onApply, 'optionalCall', _266 => _266(result)]);
13174
13178
  setOpen(false);
13175
13179
  };
13176
13180
  const handleClose = () => {
13177
- _optionalChain([onClose, 'optionalCall', _265 => _265()]);
13181
+ _optionalChain([onClose, 'optionalCall', _267 => _267()]);
13178
13182
  setOpen(false);
13179
13183
  };
13180
13184
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Popover.Root, { open, onOpenChange: handleOpenChange, children: [
@@ -13284,7 +13288,7 @@ function DurationInput({ value, onChange, invalid, className }) {
13284
13288
  setSegments((prev) => compose(prev) === value ? prev : split(value));
13285
13289
  }, [value]);
13286
13290
  const focusSegment = (i) => {
13287
- const el = _optionalChain([refs, 'access', _266 => _266[i], 'optionalAccess', _267 => _267.current]);
13291
+ const el = _optionalChain([refs, 'access', _268 => _268[i], 'optionalAccess', _269 => _269.current]);
13288
13292
  if (!el) return;
13289
13293
  el.focus();
13290
13294
  el.select();
@@ -13621,7 +13625,7 @@ function CompactAssigneeDropdown({
13621
13625
  return [current, ...filtered.filter((o) => o.value !== currentAssignee.id)];
13622
13626
  }, [filtered, currentAssignee]);
13623
13627
  const handleSelect = (userId) => {
13624
- const next = _optionalChain([currentAssignee, 'optionalAccess', _268 => _268.id]) === userId ? null : userId;
13628
+ const next = _optionalChain([currentAssignee, 'optionalAccess', _270 => _270.id]) === userId ? null : userId;
13625
13629
  onAssign(next);
13626
13630
  setIsOpen(false);
13627
13631
  };
@@ -13686,7 +13690,7 @@ function CompactAssigneeDropdown({
13686
13690
  }
13687
13691
  ) }),
13688
13692
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "max-h-80 overflow-y-auto py-[var(--spacing-system-xs)]", role: "listbox", children: isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-[var(--spacing-system-sf)] py-[var(--spacing-system-s)] text-h5 text-ods-text-secondary", children: "Loading\u2026" }) : orderedOptions.length === 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-[var(--spacing-system-sf)] py-[var(--spacing-system-s)] text-h5 text-ods-text-secondary", children: "No users found" }) : orderedOptions.map((opt) => {
13689
- const isCurrent = _optionalChain([currentAssignee, 'optionalAccess', _269 => _269.id]) === opt.value;
13693
+ const isCurrent = _optionalChain([currentAssignee, 'optionalAccess', _271 => _271.id]) === opt.value;
13690
13694
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
13691
13695
  "button",
13692
13696
  {
@@ -13755,7 +13759,7 @@ function DefaultAssigneeDropdown({
13755
13759
  Autocomplete,
13756
13760
  {
13757
13761
  options,
13758
- value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess', _270 => _270.id]), () => ( null)),
13762
+ value: _nullishCoalesce(_optionalChain([currentAssignee, 'optionalAccess', _272 => _272.id]), () => ( null)),
13759
13763
  onChange: (val) => {
13760
13764
  onAssign(val);
13761
13765
  setIsEditing(false);
@@ -14088,7 +14092,7 @@ var NoData = React114.default.forwardRef(function NoData2({
14088
14092
  ...props
14089
14093
  }, ref) {
14090
14094
  const hasMessage = !!(icon || title || description);
14091
- const hasActions = !!_optionalChain([actions, 'optionalAccess', _271 => _271.length]);
14095
+ const hasActions = !!_optionalChain([actions, 'optionalAccess', _273 => _273.length]);
14092
14096
  const footerButton = _nullishCoalesce(button, () => ( (buttonLabel != null ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14093
14097
  _chunkQJGRP2YEcjs.Button,
14094
14098
  {
@@ -14096,7 +14100,7 @@ var NoData = React114.default.forwardRef(function NoData2({
14096
14100
  leftIcon: buttonIcon,
14097
14101
  onClick: onButtonClick,
14098
14102
  ...buttonProps,
14099
- className: _chunkFIG2RKZFcjs.cn.call(void 0, "w-full md:w-auto", _optionalChain([buttonProps, 'optionalAccess', _272 => _272.className])),
14103
+ className: _chunkFIG2RKZFcjs.cn.call(void 0, "w-full md:w-auto", _optionalChain([buttonProps, 'optionalAccess', _274 => _274.className])),
14100
14104
  children: buttonLabel
14101
14105
  }
14102
14106
  ) : null)));
@@ -14331,7 +14335,7 @@ var Switch = React48.forwardRef(({ className, checked, onCheckedChange, ...props
14331
14335
  }, [checked]);
14332
14336
  const handleCheckedChange = (newChecked) => {
14333
14337
  setIsChecked(newChecked);
14334
- _optionalChain([onCheckedChange, 'optionalCall', _273 => _273(newChecked)]);
14338
+ _optionalChain([onCheckedChange, 'optionalCall', _275 => _275(newChecked)]);
14335
14339
  };
14336
14340
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
14337
14341
  SwitchPrimitives.Root,
@@ -14717,7 +14721,7 @@ function TagsManager({
14717
14721
  const name = search.trim();
14718
14722
  if (!name) return;
14719
14723
  const result = await onCreateTag(name);
14720
- if (_optionalChain([result, 'optionalAccess', _274 => _274.id])) {
14724
+ if (_optionalChain([result, 'optionalAccess', _276 => _276.id])) {
14721
14725
  onChange([...selectedIds, result.id]);
14722
14726
  setSearch("");
14723
14727
  }
@@ -14725,7 +14729,7 @@ function TagsManager({
14725
14729
  const startEdit = React51.useCallback((id, name) => {
14726
14730
  setEditingId(id);
14727
14731
  setEditingName(name);
14728
- setTimeout(() => _optionalChain([editInputRef, 'access', _275 => _275.current, 'optionalAccess', _276 => _276.focus, 'call', _277 => _277()]), 0);
14732
+ setTimeout(() => _optionalChain([editInputRef, 'access', _277 => _277.current, 'optionalAccess', _278 => _278.focus, 'call', _279 => _279()]), 0);
14729
14733
  }, []);
14730
14734
  const confirmEdit = React51.useCallback(async () => {
14731
14735
  if (!onUpdateTag || !editingId || !editingName.trim()) return;
@@ -14752,7 +14756,7 @@ function TagsManager({
14752
14756
  e.stopPropagation();
14753
14757
  onChange([]);
14754
14758
  setSearch("");
14755
- _optionalChain([inputRef, 'access', _278 => _278.current, 'optionalAccess', _279 => _279.focus, 'call', _280 => _280()]);
14759
+ _optionalChain([inputRef, 'access', _280 => _280.current, 'optionalAccess', _281 => _281.focus, 'call', _282 => _282()]);
14756
14760
  },
14757
14761
  [onChange]
14758
14762
  );
@@ -14851,10 +14855,10 @@ function TagsManager({
14851
14855
  align: "start",
14852
14856
  onOpenAutoFocus: (e) => {
14853
14857
  e.preventDefault();
14854
- _optionalChain([inputRef, 'access', _281 => _281.current, 'optionalAccess', _282 => _282.focus, 'call', _283 => _283()]);
14858
+ _optionalChain([inputRef, 'access', _283 => _283.current, 'optionalAccess', _284 => _284.focus, 'call', _285 => _285()]);
14855
14859
  },
14856
14860
  onInteractOutside: (e) => {
14857
- if (_optionalChain([containerRef, 'access', _284 => _284.current, 'optionalAccess', _285 => _285.contains, 'call', _286 => _286(e.target)])) {
14861
+ if (_optionalChain([containerRef, 'access', _286 => _286.current, 'optionalAccess', _287 => _287.contains, 'call', _288 => _288(e.target)])) {
14858
14862
  e.preventDefault();
14859
14863
  }
14860
14864
  },
@@ -15139,7 +15143,7 @@ var Textarea = React52.forwardRef(
15139
15143
  "button",
15140
15144
  {
15141
15145
  type: "button",
15142
- "aria-label": _nullishCoalesce(_optionalChain([endIconButtonProps, 'optionalAccess', _287 => _287["aria-label"]]), () => ( "Submit")),
15146
+ "aria-label": _nullishCoalesce(_optionalChain([endIconButtonProps, 'optionalAccess', _289 => _289["aria-label"]]), () => ( "Submit")),
15143
15147
  ...endIconButtonProps,
15144
15148
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
15145
15149
  // `h-6` matches the textarea's `leading-6` line box so the icon's
@@ -15153,7 +15157,7 @@ var Textarea = React52.forwardRef(
15153
15157
  "cursor-pointer hover:text-ods-text-primary",
15154
15158
  "focus-visible:outline-none focus-visible:text-ods-accent",
15155
15159
  "disabled:cursor-not-allowed disabled:opacity-40 disabled:hover:text-ods-text-secondary",
15156
- _optionalChain([endIconButtonProps, 'optionalAccess', _288 => _288.className])
15160
+ _optionalChain([endIconButtonProps, 'optionalAccess', _290 => _290.className])
15157
15161
  ),
15158
15162
  children: endIcon
15159
15163
  }
@@ -16390,19 +16394,19 @@ function TabNavigation({
16390
16394
  const validTabIds = _react.useMemo.call(void 0, () => new Set(tabs.map((t) => t.id)), [tabs]);
16391
16395
  const getInitialTab = () => {
16392
16396
  if (isUrlSyncEnabled) {
16393
- const fromUrl = _optionalChain([searchParams, 'optionalAccess', _289 => _289.get, 'call', _290 => _290(paramName)]) || "";
16397
+ const fromUrl = _optionalChain([searchParams, 'optionalAccess', _291 => _291.get, 'call', _292 => _292(paramName)]) || "";
16394
16398
  if (validTabIds.has(fromUrl)) {
16395
16399
  return fromUrl;
16396
16400
  }
16397
16401
  }
16398
- return defaultTab || _optionalChain([tabs, 'access', _291 => _291[0], 'optionalAccess', _292 => _292.id]) || "";
16402
+ return defaultTab || _optionalChain([tabs, 'access', _293 => _293[0], 'optionalAccess', _294 => _294.id]) || "";
16399
16403
  };
16400
16404
  const [internalActiveTab, setInternalActiveTab] = _react.useState.call(void 0, getInitialTab);
16401
16405
  const activeTab = isUrlSyncEnabled ? internalActiveTab : controlledActiveTab || "";
16402
16406
  _react.useEffect.call(void 0, () => {
16403
16407
  if (!isUrlSyncEnabled) return;
16404
- const fromUrl = _optionalChain([searchParams, 'optionalAccess', _293 => _293.get, 'call', _294 => _294(paramName)]) || "";
16405
- const nextTab = validTabIds.has(fromUrl) ? fromUrl : defaultTab || _optionalChain([tabs, 'access', _295 => _295[0], 'optionalAccess', _296 => _296.id]) || "";
16408
+ const fromUrl = _optionalChain([searchParams, 'optionalAccess', _295 => _295.get, 'call', _296 => _296(paramName)]) || "";
16409
+ const nextTab = validTabIds.has(fromUrl) ? fromUrl : defaultTab || _optionalChain([tabs, 'access', _297 => _297[0], 'optionalAccess', _298 => _298.id]) || "";
16406
16410
  if (nextTab !== internalActiveTab) {
16407
16411
  setInternalActiveTab(nextTab);
16408
16412
  }
@@ -16410,13 +16414,13 @@ function TabNavigation({
16410
16414
  const handleTabChange = (tabId) => {
16411
16415
  if (isUrlSyncEnabled) {
16412
16416
  setInternalActiveTab(tabId);
16413
- const params = new URLSearchParams(_optionalChain([searchParams, 'optionalAccess', _297 => _297.toString, 'call', _298 => _298()]));
16417
+ const params = new URLSearchParams(_optionalChain([searchParams, 'optionalAccess', _299 => _299.toString, 'call', _300 => _300()]));
16414
16418
  params.set(paramName, tabId);
16415
16419
  const method = replaceState ? "replace" : "push";
16416
16420
  router[method](`${pathname}?${params.toString()}`);
16417
- _optionalChain([controlledOnTabChange, 'optionalCall', _299 => _299(tabId)]);
16421
+ _optionalChain([controlledOnTabChange, 'optionalCall', _301 => _301(tabId)]);
16418
16422
  } else {
16419
- _optionalChain([controlledOnTabChange, 'optionalCall', _300 => _300(tabId)]);
16423
+ _optionalChain([controlledOnTabChange, 'optionalCall', _302 => _302(tabId)]);
16420
16424
  }
16421
16425
  };
16422
16426
  const scrollRef = _react.useRef.call(void 0, null);
@@ -16530,7 +16534,7 @@ function TabNavigation({
16530
16534
  var getTabById = (tabs, tabId) => tabs.find((tab) => tab.id === tabId);
16531
16535
  var getTabComponent = (tabs, tabId) => {
16532
16536
  const tab = getTabById(tabs, tabId);
16533
- return _optionalChain([tab, 'optionalAccess', _301 => _301.component]) || null;
16537
+ return _optionalChain([tab, 'optionalAccess', _303 => _303.component]) || null;
16534
16538
  };
16535
16539
 
16536
16540
  // src/components/ui/alert.tsx
@@ -16792,13 +16796,13 @@ var SocialEmbedCache = class _SocialEmbedCache {
16792
16796
  errorData = await response.json();
16793
16797
  } catch (e19) {
16794
16798
  }
16795
- if (response.status === 404 && _optionalChain([errorData, 'optionalAccess', _302 => _302.error]) && _optionalChain([errorData, 'optionalAccess', _303 => _303.message])) {
16799
+ if (response.status === 404 && _optionalChain([errorData, 'optionalAccess', _304 => _304.error]) && _optionalChain([errorData, 'optionalAccess', _305 => _305.message])) {
16796
16800
  console.log(`\u{1F6AB} [${platformName} Proxy] Content unavailable: ${errorData.message}`);
16797
16801
  onError(errorData.message);
16798
16802
  onLoading(false);
16799
16803
  return;
16800
16804
  }
16801
- if (_optionalChain([errorData, 'optionalAccess', _304 => _304.error])) {
16805
+ if (_optionalChain([errorData, 'optionalAccess', _306 => _306.error])) {
16802
16806
  throw new Error(`Server error: ${errorData.error}`);
16803
16807
  }
16804
16808
  throw new Error(`Server proxy failed: ${response.status}`);
@@ -17250,7 +17254,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
17250
17254
  apiEndpoint: redditProxyUrl,
17251
17255
  dataValidator: validateRedditData,
17252
17256
  onDataUpdate: (data) => {
17253
- if (_optionalChain([data, 'access', _305 => _305[0], 'optionalAccess', _306 => _306.data, 'optionalAccess', _307 => _307.children, 'optionalAccess', _308 => _308[0], 'optionalAccess', _309 => _309.data])) {
17257
+ if (_optionalChain([data, 'access', _307 => _307[0], 'optionalAccess', _308 => _308.data, 'optionalAccess', _309 => _309.children, 'optionalAccess', _310 => _310[0], 'optionalAccess', _311 => _311.data])) {
17254
17258
  setRedditData(data[0].data.children[0].data);
17255
17259
  }
17256
17260
  },
@@ -17321,11 +17325,11 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
17321
17325
  gallery_data: redditData.gallery_data,
17322
17326
  media_metadata: redditData.media_metadata
17323
17327
  });
17324
- const video = _optionalChain([redditData, 'access', _310 => _310.media, 'optionalAccess', _311 => _311.reddit_video]) || _optionalChain([redditData, 'access', _312 => _312.secure_media, 'optionalAccess', _313 => _313.reddit_video]);
17328
+ const video = _optionalChain([redditData, 'access', _312 => _312.media, 'optionalAccess', _313 => _313.reddit_video]) || _optionalChain([redditData, 'access', _314 => _314.secure_media, 'optionalAccess', _315 => _315.reddit_video]);
17325
17329
  if (video && video.fallback_url) {
17326
17330
  console.log("\u{1F4F9} Found Reddit video:", video);
17327
17331
  let posterUrl = "";
17328
- if (_optionalChain([redditData, 'access', _314 => _314.preview, 'optionalAccess', _315 => _315.images, 'optionalAccess', _316 => _316[0], 'optionalAccess', _317 => _317.source, 'optionalAccess', _318 => _318.url])) {
17332
+ if (_optionalChain([redditData, 'access', _316 => _316.preview, 'optionalAccess', _317 => _317.images, 'optionalAccess', _318 => _318[0], 'optionalAccess', _319 => _319.source, 'optionalAccess', _320 => _320.url])) {
17329
17333
  posterUrl = redditData.preview.images[0].source.url.replace(/&amp;/g, "&");
17330
17334
  console.log("\u2705 Using preview image as video poster:", posterUrl);
17331
17335
  } else {
@@ -17378,7 +17382,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
17378
17382
  return media;
17379
17383
  }
17380
17384
  }
17381
- if (_optionalChain([redditData, 'access', _319 => _319.preview, 'optionalAccess', _320 => _320.images, 'optionalAccess', _321 => _321[0]]) && !redditData.is_video) {
17385
+ if (_optionalChain([redditData, 'access', _321 => _321.preview, 'optionalAccess', _322 => _322.images, 'optionalAccess', _323 => _323[0]]) && !redditData.is_video) {
17382
17386
  const imageData = redditData.preview.images[0];
17383
17387
  console.log("\u{1F5BC}\uFE0F Found preview image data:", imageData);
17384
17388
  let source = imageData.source;
@@ -17413,7 +17417,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
17413
17417
  } else if (directUrl.match(/\.(mp4|webm|mov|avi)(\?.*)?$/i)) {
17414
17418
  console.log("\u{1F3AC} Found direct video URL");
17415
17419
  let posterUrl = "";
17416
- if (_optionalChain([redditData, 'access', _322 => _322.preview, 'optionalAccess', _323 => _323.images, 'optionalAccess', _324 => _324[0], 'optionalAccess', _325 => _325.source, 'optionalAccess', _326 => _326.url])) {
17420
+ if (_optionalChain([redditData, 'access', _324 => _324.preview, 'optionalAccess', _325 => _325.images, 'optionalAccess', _326 => _326[0], 'optionalAccess', _327 => _327.source, 'optionalAccess', _328 => _328.url])) {
17417
17421
  posterUrl = redditData.preview.images[0].source.url.replace(/&amp;/g, "&");
17418
17422
  }
17419
17423
  media.push({
@@ -17426,7 +17430,7 @@ function RedditEmbedClient({ url, maxWidth = 700 }) {
17426
17430
  });
17427
17431
  } else if (directUrl.includes("imgur.com") && !directUrl.includes(".gifv")) {
17428
17432
  console.log("\u{1F310} Found Imgur link");
17429
- const imgurId = _optionalChain([directUrl, 'access', _327 => _327.match, 'call', _328 => _328(/imgur\.com\/([a-zA-Z0-9]+)/), 'optionalAccess', _329 => _329[1]]);
17433
+ const imgurId = _optionalChain([directUrl, 'access', _329 => _329.match, 'call', _330 => _330(/imgur\.com\/([a-zA-Z0-9]+)/), 'optionalAccess', _331 => _331[1]]);
17430
17434
  if (imgurId && !directUrl.includes("/a/") && !directUrl.includes("/gallery/")) {
17431
17435
  media.push({
17432
17436
  type: "image",
@@ -17575,7 +17579,7 @@ function TwitterEmbedClient({ url, tweetId, maxWidth = 700 }) {
17575
17579
  const [loading, setLoading] = _react.useState.call(void 0, true);
17576
17580
  const [error, setError] = _react.useState.call(void 0, null);
17577
17581
  const initializationDone = _react.useRef.call(void 0, false);
17578
- const extractedTweetId = tweetId || _optionalChain([url, 'access', _330 => _330.match, 'call', _331 => _331(/status\/(\d+)/), 'optionalAccess', _332 => _332[1]]);
17582
+ const extractedTweetId = tweetId || _optionalChain([url, 'access', _332 => _332.match, 'call', _333 => _333(/status\/(\d+)/), 'optionalAccess', _334 => _334[1]]);
17579
17583
  const tweetUrl = url.includes("twitter.com") || url.includes("x.com") ? url : `https://twitter.com/twitter/status/${extractedTweetId}`;
17580
17584
  _react.useEffect.call(void 0, () => {
17581
17585
  if (initializationDone.current) return;
@@ -17642,10 +17646,10 @@ function TwitterEmbedClient({ url, tweetId, maxWidth = 700 }) {
17642
17646
  const parser = new DOMParser();
17643
17647
  const doc = parser.parseFromString(tweetData.html, "text/html");
17644
17648
  const blockquote = doc.querySelector("blockquote");
17645
- const fullText = _optionalChain([blockquote, 'optionalAccess', _333 => _333.textContent]) || "";
17649
+ const fullText = _optionalChain([blockquote, 'optionalAccess', _335 => _335.textContent]) || "";
17646
17650
  const tweetText = fullText.replace(/- .* \(@.*\).*$/, "").trim();
17647
17651
  const username = tweetData.author_url ? tweetData.author_url.split("/").pop() : "";
17648
- const links = Array.from(_optionalChain([blockquote, 'optionalAccess', _334 => _334.querySelectorAll, 'call', _335 => _335("a")]) || []).map((link) => ({
17652
+ const links = Array.from(_optionalChain([blockquote, 'optionalAccess', _336 => _336.querySelectorAll, 'call', _337 => _337("a")]) || []).map((link) => ({
17649
17653
  url: link.href,
17650
17654
  text: link.textContent || link.href
17651
17655
  })).filter((link) => !link.url.includes("twitter.com") && !link.url.includes("x.com"));
@@ -17900,7 +17904,7 @@ var OGLinkPreview = ({
17900
17904
  const response = await fetch(endpoint);
17901
17905
  if (response.ok) {
17902
17906
  const data = await response.json();
17903
- if (_optionalChain([data, 'optionalAccess', _336 => _336.title]) && data.title !== "Link Preview Unavailable") {
17907
+ if (_optionalChain([data, 'optionalAccess', _338 => _338.title]) && data.title !== "Link Preview Unavailable") {
17904
17908
  setOgData(data);
17905
17909
  } else {
17906
17910
  setError(true);
@@ -17927,8 +17931,8 @@ var OGLinkPreview = ({
17927
17931
  type: "website",
17928
17932
  favicon: `https://www.google.com/s2/favicons?domain=${domain}&sz=32`
17929
17933
  } : null)));
17930
- const placeholderImageUrl = enablePlaceholder && buildPlaceholderUrl && _optionalChain([effectiveData, 'optionalAccess', _337 => _337.title]) ? buildPlaceholderUrl(effectiveData.title, effectiveData.siteName || domain) : null;
17931
- const resolvedImageUrl = _optionalChain([effectiveData, 'optionalAccess', _338 => _338.image]) && !imageError ? effectiveData.image : _optionalChain([effectiveData, 'optionalAccess', _339 => _339.originalImage]) && !originalImageError ? effectiveData.originalImage : fallbackImage && !fallbackImageError ? fallbackImage : placeholderImageUrl;
17934
+ const placeholderImageUrl = enablePlaceholder && buildPlaceholderUrl && _optionalChain([effectiveData, 'optionalAccess', _339 => _339.title]) ? buildPlaceholderUrl(effectiveData.title, effectiveData.siteName || domain) : null;
17935
+ const resolvedImageUrl = _optionalChain([effectiveData, 'optionalAccess', _340 => _340.image]) && !imageError ? effectiveData.image : _optionalChain([effectiveData, 'optionalAccess', _341 => _341.originalImage]) && !originalImageError ? effectiveData.originalImage : fallbackImage && !fallbackImageError ? fallbackImage : placeholderImageUrl;
17932
17936
  const hasImage = !!resolvedImageUrl;
17933
17937
  const isFallbackImage = resolvedImageUrl === fallbackImage;
17934
17938
  const isPlaceholder = resolvedImageUrl === placeholderImageUrl && !isFallbackImage;
@@ -18174,9 +18178,9 @@ function toFigmaEmbedUrl(url, opts) {
18174
18178
  if (match2) {
18175
18179
  const [, urlType, fileKey, titleSlug, queryString] = match2;
18176
18180
  const isSlides = urlType === "slides" || urlType === "deck";
18177
- const embedType = urlType === "proto" ? "proto" : isSlides ? _optionalChain([opts, 'optionalAccess', _340 => _340.slidesView]) === "browse" ? "slides" : "deck" : "design";
18181
+ const embedType = urlType === "proto" ? "proto" : isSlides ? _optionalChain([opts, 'optionalAccess', _342 => _342.slidesView]) === "browse" ? "slides" : "deck" : "design";
18178
18182
  const pathSuffix = titleSlug ? `/${titleSlug}` : "";
18179
- const params = new URLSearchParams(_optionalChain([queryString, 'optionalAccess', _341 => _341.replace, 'call', _342 => _342(/^\?/, "")]) || "");
18183
+ const params = new URLSearchParams(_optionalChain([queryString, 'optionalAccess', _343 => _343.replace, 'call', _344 => _344(/^\?/, "")]) || "");
18180
18184
  if (!params.has("embed-host")) {
18181
18185
  params.set("embed-host", "flamingo");
18182
18186
  }
@@ -18257,7 +18261,7 @@ function EmbedIframe({
18257
18261
  allow,
18258
18262
  referrerPolicy,
18259
18263
  loading,
18260
- allowFullScreen: _optionalChain([allow, 'optionalAccess', _343 => _343.includes, 'call', _344 => _344("fullscreen")]) ? void 0 : allowFullScreen
18264
+ allowFullScreen: _optionalChain([allow, 'optionalAccess', _345 => _345.includes, 'call', _346 => _346("fullscreen")]) ? void 0 : allowFullScreen
18261
18265
  },
18262
18266
  src
18263
18267
  )
@@ -19008,7 +19012,7 @@ var RichMarkdownInner = ({
19008
19012
  const extractText2 = (node) => {
19009
19013
  if (typeof node === "string") return node;
19010
19014
  if (Array.isArray(node)) return node.map(extractText2).join("");
19011
- if (_optionalChain([node, 'optionalAccess', _345 => _345.props, 'optionalAccess', _346 => _346.children])) return extractText2(node.props.children);
19015
+ if (_optionalChain([node, 'optionalAccess', _347 => _347.props, 'optionalAccess', _348 => _348.children])) return extractText2(node.props.children);
19012
19016
  return "";
19013
19017
  };
19014
19018
  const text = extractText2(children);
@@ -19024,7 +19028,7 @@ var RichMarkdownInner = ({
19024
19028
  const extractText2 = (node) => {
19025
19029
  if (typeof node === "string") return node;
19026
19030
  if (Array.isArray(node)) return node.map(extractText2).join("");
19027
- if (_optionalChain([node, 'optionalAccess', _347 => _347.props, 'optionalAccess', _348 => _348.children])) return extractText2(node.props.children);
19031
+ if (_optionalChain([node, 'optionalAccess', _349 => _349.props, 'optionalAccess', _350 => _350.children])) return extractText2(node.props.children);
19028
19032
  return "";
19029
19033
  };
19030
19034
  const text = extractText2(children);
@@ -19042,7 +19046,7 @@ var RichMarkdownInner = ({
19042
19046
  const extractText2 = (node) => {
19043
19047
  if (typeof node === "string") return node;
19044
19048
  if (Array.isArray(node)) return node.map(extractText2).join("");
19045
- if (_optionalChain([node, 'optionalAccess', _349 => _349.props, 'optionalAccess', _350 => _350.children])) return extractText2(node.props.children);
19049
+ if (_optionalChain([node, 'optionalAccess', _351 => _351.props, 'optionalAccess', _352 => _352.children])) return extractText2(node.props.children);
19046
19050
  return "";
19047
19051
  };
19048
19052
  const text = extractText2(children);
@@ -19060,7 +19064,7 @@ var RichMarkdownInner = ({
19060
19064
  const extractText2 = (node) => {
19061
19065
  if (typeof node === "string") return node;
19062
19066
  if (Array.isArray(node)) return node.map(extractText2).join("");
19063
- if (_optionalChain([node, 'optionalAccess', _351 => _351.props, 'optionalAccess', _352 => _352.children])) return extractText2(node.props.children);
19067
+ if (_optionalChain([node, 'optionalAccess', _353 => _353.props, 'optionalAccess', _354 => _354.children])) return extractText2(node.props.children);
19064
19068
  return "";
19065
19069
  };
19066
19070
  const text = extractText2(children);
@@ -19078,7 +19082,7 @@ var RichMarkdownInner = ({
19078
19082
  const extractText2 = (node) => {
19079
19083
  if (typeof node === "string") return node;
19080
19084
  if (Array.isArray(node)) return node.map(extractText2).join("");
19081
- if (_optionalChain([node, 'optionalAccess', _353 => _353.props, 'optionalAccess', _354 => _354.children])) return extractText2(node.props.children);
19085
+ if (_optionalChain([node, 'optionalAccess', _355 => _355.props, 'optionalAccess', _356 => _356.children])) return extractText2(node.props.children);
19082
19086
  return "";
19083
19087
  };
19084
19088
  const text = extractText2(children);
@@ -19096,7 +19100,7 @@ var RichMarkdownInner = ({
19096
19100
  const extractText2 = (node) => {
19097
19101
  if (typeof node === "string") return node;
19098
19102
  if (Array.isArray(node)) return node.map(extractText2).join("");
19099
- if (_optionalChain([node, 'optionalAccess', _355 => _355.props, 'optionalAccess', _356 => _356.children])) return extractText2(node.props.children);
19103
+ if (_optionalChain([node, 'optionalAccess', _357 => _357.props, 'optionalAccess', _358 => _358.children])) return extractText2(node.props.children);
19100
19104
  return "";
19101
19105
  };
19102
19106
  const text = extractText2(children);
@@ -19172,8 +19176,8 @@ var RichMarkdownInner = ({
19172
19176
  {
19173
19177
  href,
19174
19178
  className: `text-ods-accent no-underline relative transition-colors duration-200 hover:after:w-full after:content-[''] after:absolute after:w-0 after:h-0.5 after:-bottom-0.5 after:left-0 after:bg-ods-accent after:transition-all after:duration-300 ${className2 || ""}`,
19175
- target: _optionalChain([href, 'optionalAccess', _357 => _357.startsWith, 'call', _358 => _358("http")]) ? "_blank" : void 0,
19176
- rel: _optionalChain([href, 'optionalAccess', _359 => _359.startsWith, 'call', _360 => _360("http")]) ? "noopener noreferrer" : void 0,
19179
+ target: _optionalChain([href, 'optionalAccess', _359 => _359.startsWith, 'call', _360 => _360("http")]) ? "_blank" : void 0,
19180
+ rel: _optionalChain([href, 'optionalAccess', _361 => _361.startsWith, 'call', _362 => _362("http")]) ? "noopener noreferrer" : void 0,
19177
19181
  children
19178
19182
  }
19179
19183
  );
@@ -19297,7 +19301,7 @@ function ReleaseChangelogSection({
19297
19301
  className: "overflow-hidden transition-[max-height] duration-500",
19298
19302
  style: {
19299
19303
  transitionTimingFunction: "cubic-bezier(0.33, 1, 0.68, 1)",
19300
- maxHeight: previewExpanded || !previewNeedsFade ? _nullishCoalesce(_optionalChain([previewContentRef, 'access', _361 => _361.current, 'optionalAccess', _362 => _362.scrollHeight]), () => ( 2e3)) : PREVIEW_COLLAPSED_HEIGHT,
19304
+ maxHeight: previewExpanded || !previewNeedsFade ? _nullishCoalesce(_optionalChain([previewContentRef, 'access', _363 => _363.current, 'optionalAccess', _364 => _364.scrollHeight]), () => ( 2e3)) : PREVIEW_COLLAPSED_HEIGHT,
19301
19305
  ...previewNeedsFade && !previewExpanded ? {
19302
19306
  maskImage: "linear-gradient(to bottom, black 30%, transparent 100%)",
19303
19307
  WebkitMaskImage: "linear-gradient(to bottom, black 30%, transparent 100%)"
@@ -19810,16 +19814,16 @@ function FilterModal({
19810
19814
  };
19811
19815
  const handleReset = () => {
19812
19816
  onFilterChange({});
19813
- _optionalChain([onTagsChange, 'optionalCall', _363 => _363([])]);
19817
+ _optionalChain([onTagsChange, 'optionalCall', _365 => _365([])]);
19814
19818
  onClose();
19815
19819
  };
19816
19820
  const handleApply = () => {
19817
19821
  onFilterChange(selectedFilters);
19818
- _optionalChain([onTagsChange, 'optionalCall', _364 => _364(pendingTags)]);
19822
+ _optionalChain([onTagsChange, 'optionalCall', _366 => _366(pendingTags)]);
19819
19823
  onClose();
19820
19824
  };
19821
19825
  const getColumnDirection = (columnKey) => {
19822
- return _optionalChain([sortConfig, 'optionalAccess', _365 => _365.sortBy]) === columnKey ? sortConfig.sortDirection : void 0;
19826
+ return _optionalChain([sortConfig, 'optionalAccess', _367 => _367.sortBy]) === columnKey ? sortConfig.sortDirection : void 0;
19823
19827
  };
19824
19828
  const hasSort = !!sortConfig && sortConfig.columns.length > 0;
19825
19829
  const hasFilterGroups = filterGroups.length > 0;
@@ -19868,7 +19872,7 @@ function FilterModal({
19868
19872
  {
19869
19873
  column,
19870
19874
  currentDirection: getColumnDirection(column.key),
19871
- onSort: (direction) => _optionalChain([onSort, 'optionalCall', _366 => _366(column.key, direction)]),
19875
+ onSort: (direction) => _optionalChain([onSort, 'optionalCall', _368 => _368(column.key, direction)]),
19872
19876
  onClear: onSortClear ? () => onSortClear(column.key) : void 0
19873
19877
  },
19874
19878
  column.key
@@ -20054,7 +20058,7 @@ function IconButtonsVariant({
20054
20058
  }) {
20055
20059
  const desktopActions = actions.filter((a) => !a.showOnlyMobile);
20056
20060
  const hasMenuActions = !!menuActions && menuActions.some((g) => g.items.length > 0);
20057
- const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access', _367 => _367[0], 'access', _368 => _368.submenu, 'optionalAccess', _369 => _369.length]);
20061
+ const isSingleAction = actions.length === 1 && !_optionalChain([actions, 'access', _369 => _369[0], 'access', _370 => _370.submenu, 'optionalAccess', _371 => _371.length]);
20058
20062
  const singleAction = isSingleAction ? actions[0] : null;
20059
20063
  const useSingleActionMobile = isSingleAction && !hasMenuActions;
20060
20064
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
@@ -21082,7 +21086,7 @@ function getShellIcon(shellType) {
21082
21086
  if (!shellType) return void 0;
21083
21087
  const normalized = shellType.toUpperCase();
21084
21088
  const shellDef = SHELL_TYPES.find((s) => s.id === normalized);
21085
- return _optionalChain([shellDef, 'optionalAccess', _370 => _370.icon]);
21089
+ return _optionalChain([shellDef, 'optionalAccess', _372 => _372.icon]);
21086
21090
  }
21087
21091
 
21088
21092
  // src/types/os.types.ts
@@ -21155,7 +21159,7 @@ function getOSIcon(osType) {
21155
21159
  const normalized = normalizeOSType(osType);
21156
21160
  if (!normalized) return void 0;
21157
21161
  const osTypeDef = OS_TYPES.find((t) => t.id === normalized);
21158
- return _optionalChain([osTypeDef, 'optionalAccess', _371 => _371.icon]);
21162
+ return _optionalChain([osTypeDef, 'optionalAccess', _373 => _373.icon]);
21159
21163
  }
21160
21164
  function getOSTypeDefinition(osType) {
21161
21165
  if (!osType) return void 0;
@@ -21165,7 +21169,7 @@ function getOSTypeDefinition(osType) {
21165
21169
  }
21166
21170
  function getOSPlatformId(osType) {
21167
21171
  const osTypeDef = getOSTypeDefinition(osType);
21168
- return _optionalChain([osTypeDef, 'optionalAccess', _372 => _372.platformId]);
21172
+ return _optionalChain([osTypeDef, 'optionalAccess', _374 => _374.platformId]);
21169
21173
  }
21170
21174
  function isOSPlatform(deviceOS, targetPlatform) {
21171
21175
  if (!deviceOS || !targetPlatform) return false;
@@ -21258,10 +21262,10 @@ var GENERIC_EMAIL_DOMAINS = [
21258
21262
  ];
21259
21263
  function extractDomainFromEmail(email) {
21260
21264
  if (!email || !email.includes("@")) return null;
21261
- return _optionalChain([email, 'access', _373 => _373.split, 'call', _374 => _374("@"), 'access', _375 => _375[1], 'optionalAccess', _376 => _376.toLowerCase, 'call', _377 => _377()]) || null;
21265
+ return _optionalChain([email, 'access', _375 => _375.split, 'call', _376 => _376("@"), 'access', _377 => _377[1], 'optionalAccess', _378 => _378.toLowerCase, 'call', _379 => _379()]) || null;
21262
21266
  }
21263
21267
  function normalizeDomain(domain) {
21264
- return _optionalChain([domain, 'optionalAccess', _378 => _378.toLowerCase, 'call', _379 => _379(), 'access', _380 => _380.replace, 'call', _381 => _381(/^https?:\/\//, ""), 'access', _382 => _382.replace, 'call', _383 => _383(/^www\./, ""), 'access', _384 => _384.split, 'call', _385 => _385("/"), 'access', _386 => _386[0], 'access', _387 => _387.trim, 'call', _388 => _388()]) || "";
21268
+ return _optionalChain([domain, 'optionalAccess', _380 => _380.toLowerCase, 'call', _381 => _381(), 'access', _382 => _382.replace, 'call', _383 => _383(/^https?:\/\//, ""), 'access', _384 => _384.replace, 'call', _385 => _385(/^www\./, ""), 'access', _386 => _386.split, 'call', _387 => _387("/"), 'access', _388 => _388[0], 'access', _389 => _389.trim, 'call', _390 => _390()]) || "";
21265
21269
  }
21266
21270
  function isGenericDomain(domain) {
21267
21271
  const normalized = normalizeDomain(domain);
@@ -21695,7 +21699,7 @@ function defaultTableIdForDocumentType(documentType) {
21695
21699
 
21696
21700
  // src/utils/sse-decision-frame.ts
21697
21701
  async function readLeadingDecisionFrame(response) {
21698
- const reader = _optionalChain([response, 'access', _389 => _389.body, 'optionalAccess', _390 => _390.getReader, 'call', _391 => _391()]);
21702
+ const reader = _optionalChain([response, 'access', _391 => _391.body, 'optionalAccess', _392 => _392.getReader, 'call', _393 => _393()]);
21699
21703
  if (!reader) throw new Error("readLeadingDecisionFrame: response has no body");
21700
21704
  const decoder = new TextDecoder();
21701
21705
  let buffer = "";
@@ -21724,9 +21728,9 @@ async function readLeadingDecisionFrame(response) {
21724
21728
  );
21725
21729
  }
21726
21730
  const obj = parsed;
21727
- if (_optionalChain([obj, 'optionalAccess', _392 => _392.kind]) !== "decision_resolved") {
21731
+ if (_optionalChain([obj, 'optionalAccess', _394 => _394.kind]) !== "decision_resolved") {
21728
21732
  throw new Error(
21729
- `readLeadingDecisionFrame: expected decision_resolved, got kind=${String(_optionalChain([obj, 'optionalAccess', _393 => _393.kind]))}`
21733
+ `readLeadingDecisionFrame: expected decision_resolved, got kind=${String(_optionalChain([obj, 'optionalAccess', _395 => _395.kind]))}`
21730
21734
  );
21731
21735
  }
21732
21736
  frame = normalizeDecisionFrame(obj);
@@ -21767,7 +21771,7 @@ var AUTO_CONTINUATION_DIRECTIVE_PREFIX = "[internal-auto-continuation]";
21767
21771
  function buildAutoContinuationDirective(toolName, opts = {}) {
21768
21772
  const ticketRef = opts.ticketId ? ` (ticket #${opts.ticketId})` : "";
21769
21773
  const ticketHash = opts.ticketId ? ` #${opts.ticketId}` : "";
21770
- const isClose = toolName === "update_ticket" && _optionalChain([opts, 'access', _394 => _394.status, 'optionalAccess', _395 => _395.toUpperCase, 'call', _396 => _396()]) === "CLOSED";
21774
+ const isClose = toolName === "update_ticket" && _optionalChain([opts, 'access', _396 => _396.status, 'optionalAccess', _397 => _397.toUpperCase, 'call', _398 => _398()]) === "CLOSED";
21771
21775
  if (toolName === "create_ticket") {
21772
21776
  return `${AUTO_CONTINUATION_DIRECTIVE_PREFIX} The user just approved create_ticket${ticketRef}. Per ticket-protocol \xA71a, ask 2-4 SHORT, issue-specific diagnostic follow-up questions tailored to the symptom they reported in their original message. When they answer, propose an update_ticket with content_addendum carrying a clean Q&A digest. Do NOT call any tool in this turn \u2014 just write the questions as prose.`;
21773
21777
  }
@@ -21829,7 +21833,7 @@ function formatSingularLookupInvocation(cmdId, value) {
21829
21833
  return safe ? `/${cmdId} "${safe}"` : `/${cmdId}`;
21830
21834
  }
21831
21835
  function extractEntityIdFilter(override, expectedTableId) {
21832
- const f = _optionalChain([override, 'optionalAccess', _397 => _397.entityIdFilter]);
21836
+ const f = _optionalChain([override, 'optionalAccess', _399 => _399.entityIdFilter]);
21833
21837
  if (!f) return null;
21834
21838
  const tableId = typeof f.tableId === "string" ? f.tableId : "";
21835
21839
  const id = typeof f.id === "string" ? f.id : "";
@@ -21904,7 +21908,7 @@ function getTaskTypeLabel(customItemId) {
21904
21908
 
21905
21909
  // src/components/chat/utils/agent-status-message.ts
21906
21910
  function getStatusColorScheme(status) {
21907
- const s = _optionalChain([status, 'optionalAccess', _398 => _398.toLowerCase, 'call', _399 => _399()]) || "";
21911
+ const s = _optionalChain([status, 'optionalAccess', _400 => _400.toLowerCase, 'call', _401 => _401()]) || "";
21908
21912
  switch (status) {
21909
21913
  case "completed":
21910
21914
  case "success":
@@ -22186,10 +22190,10 @@ var CONTENT_REF_GROUPS = {
22186
22190
  what_i_shipped: { label: "What I Shipped", order: 10, layout: "grid", gridSize: "default" }
22187
22191
  };
22188
22192
  function getContentRefLabel(type) {
22189
- return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access', _400 => _400[type], 'optionalAccess', _401 => _401.label]), () => ( null));
22193
+ return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access', _402 => _402[type], 'optionalAccess', _403 => _403.label]), () => ( null));
22190
22194
  }
22191
22195
  function getContentRefLabelOrTitleCase(type) {
22192
- return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access', _402 => _402[type], 'optionalAccess', _403 => _403.label]), () => ( type.replace(/_/g, " ").replace(/\b\w/g, (ch) => ch.toUpperCase())));
22196
+ return _nullishCoalesce(_optionalChain([CONTENT_REF_GROUPS, 'access', _404 => _404[type], 'optionalAccess', _405 => _405.label]), () => ( type.replace(/_/g, " ").replace(/\b\w/g, (ch) => ch.toUpperCase())));
22193
22197
  }
22194
22198
  function orderContentRefTypes(present) {
22195
22199
  const presentSet = new Set(present);
@@ -22348,7 +22352,7 @@ function getDocSourceDefaultPath(structure, folderIndexFile = DEFAULT_FOLDER_IND
22348
22352
  const firstFolderWithReadme = structure.find(
22349
22353
  (node) => node.type === "folder" && node.hasReadme && !!node.path
22350
22354
  );
22351
- return _nullishCoalesce(_optionalChain([firstFolderWithReadme, 'optionalAccess', _404 => _404.path]), () => ( null));
22355
+ return _nullishCoalesce(_optionalChain([firstFolderWithReadme, 'optionalAccess', _406 => _406.path]), () => ( null));
22352
22356
  }
22353
22357
 
22354
22358
  // src/utils/doc-path-utils.ts
@@ -22359,7 +22363,7 @@ function pathToNodeId(path) {
22359
22363
  return path.replace(/[\/\s]/g, "-").toLowerCase();
22360
22364
  }
22361
22365
  function normalizeDocPath(segments, folderIndexFile = DEFAULT_FOLDER_INDEX_FILE) {
22362
- const lowerPath = (_optionalChain([segments, 'optionalAccess', _405 => _405.join, 'call', _406 => _406("/")]) || "").toLowerCase();
22366
+ const lowerPath = (_optionalChain([segments, 'optionalAccess', _407 => _407.join, 'call', _408 => _408("/")]) || "").toLowerCase();
22363
22367
  const lowerIndex = folderIndexFile.toLowerCase();
22364
22368
  const suffix = `/${lowerIndex}`;
22365
22369
  if (lowerPath.endsWith(suffix)) return lowerPath.slice(0, -suffix.length);
@@ -23235,26 +23239,26 @@ function DeviceCard({
23235
23239
  ] }),
23236
23240
  device.organization && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "font-['DM_Sans'] font-medium text-[14px] leading-[20px] text-ods-text-secondary truncate", title: device.organization, children: device.organization })
23237
23241
  ] }),
23238
- _optionalChain([actions, 'access', _407 => _407.moreButton, 'optionalAccess', _408 => _408.visible]) !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
23242
+ _optionalChain([actions, 'access', _409 => _409.moreButton, 'optionalAccess', _410 => _410.visible]) !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
23239
23243
  "div",
23240
23244
  {
23241
23245
  className: "flex items-center justify-center p-3 rounded-[6px] shrink-0 border border-ods-border cursor-pointer hover:bg-ods-bg-hover transition-colors",
23242
23246
  onClick: (e) => {
23243
23247
  e.stopPropagation();
23244
- _optionalChain([actions, 'access', _409 => _409.moreButton, 'optionalAccess', _410 => _410.onClick, 'optionalCall', _411 => _411()]);
23248
+ _optionalChain([actions, 'access', _411 => _411.moreButton, 'optionalAccess', _412 => _412.onClick, 'optionalCall', _413 => _413()]);
23245
23249
  },
23246
23250
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.Ellipsis01Icon, { className: "text-ods-text-primary" })
23247
23251
  }
23248
23252
  ),
23249
- _optionalChain([actions, 'access', _412 => _412.detailsButton, 'optionalAccess', _413 => _413.visible]) !== false && _optionalChain([actions, 'access', _414 => _414.detailsButton, 'optionalAccess', _415 => _415.component]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", onClick: (e) => e.stopPropagation(), children: actions.detailsButton.component }),
23250
- _optionalChain([actions, 'access', _416 => _416.customActions, 'optionalAccess', _417 => _417.map, 'call', _418 => _418(
23253
+ _optionalChain([actions, 'access', _414 => _414.detailsButton, 'optionalAccess', _415 => _415.visible]) !== false && _optionalChain([actions, 'access', _416 => _416.detailsButton, 'optionalAccess', _417 => _417.component]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0", onClick: (e) => e.stopPropagation(), children: actions.detailsButton.component }),
23254
+ _optionalChain([actions, 'access', _418 => _418.customActions, 'optionalAccess', _419 => _419.map, 'call', _420 => _420(
23251
23255
  (action, index) => action.visible !== false && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
23252
23256
  "div",
23253
23257
  {
23254
23258
  className: "flex items-center justify-center px-4 py-3 rounded-[6px] shrink-0 border border-ods-border cursor-pointer hover:bg-ods-bg-hover transition-colors",
23255
23259
  onClick: (e) => {
23256
23260
  e.stopPropagation();
23257
- _optionalChain([action, 'access', _419 => _419.onClick, 'optionalCall', _420 => _420()]);
23261
+ _optionalChain([action, 'access', _421 => _421.onClick, 'optionalCall', _422 => _422()]);
23258
23262
  },
23259
23263
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h3 text-ods-text-primary text-nowrap tracking-[-0.36px]", children: action.label })
23260
23264
  },
@@ -23754,7 +23758,7 @@ function MoreActionsMenu({
23754
23758
  ] });
23755
23759
  const handleActivate = (e) => {
23756
23760
  e.stopPropagation();
23757
- if (!item.disabled) _optionalChain([item, 'access', _421 => _421.onClick, 'optionalCall', _422 => _422()]);
23761
+ if (!item.disabled) _optionalChain([item, 'access', _423 => _423.onClick, 'optionalCall', _424 => _424()]);
23758
23762
  };
23759
23763
  if (item.href) {
23760
23764
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -23821,7 +23825,7 @@ function OrganizationCard({
23821
23825
  const handleActionClick = (e) => {
23822
23826
  e.preventDefault();
23823
23827
  e.stopPropagation();
23824
- _optionalChain([actionButton, 'optionalAccess', _423 => _423.onClick, 'call', _424 => _424(organization, e)]);
23828
+ _optionalChain([actionButton, 'optionalAccess', _425 => _425.onClick, 'call', _426 => _426(organization, e)]);
23825
23829
  };
23826
23830
  const card = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
23827
23831
  "div",
@@ -24727,10 +24731,10 @@ var getContentDimensions = (config) => {
24727
24731
  const envMobileHeight = process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT) : null;
24728
24732
  const envDesktopWidth = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH) : null;
24729
24733
  const envDesktopHeight = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT) : null;
24730
- const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess', _425 => _425.mobileContentDimensions, 'optionalAccess', _426 => _426.width]))), () => ( defaultMobile.width));
24731
- const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess', _427 => _427.mobileContentDimensions, 'optionalAccess', _428 => _428.height]))), () => ( defaultMobile.height));
24732
- const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess', _429 => _429.desktopContentDimensions, 'optionalAccess', _430 => _430.width]))), () => ( defaultDesktop.width));
24733
- const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess', _431 => _431.desktopContentDimensions, 'optionalAccess', _432 => _432.height]))), () => ( defaultDesktop.height));
24734
+ const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess', _427 => _427.mobileContentDimensions, 'optionalAccess', _428 => _428.width]))), () => ( defaultMobile.width));
24735
+ const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess', _429 => _429.mobileContentDimensions, 'optionalAccess', _430 => _430.height]))), () => ( defaultMobile.height));
24736
+ const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess', _431 => _431.desktopContentDimensions, 'optionalAccess', _432 => _432.width]))), () => ( defaultDesktop.width));
24737
+ const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess', _433 => _433.desktopContentDimensions, 'optionalAccess', _434 => _434.height]))), () => ( defaultDesktop.height));
24734
24738
  return {
24735
24739
  mobile: { width: mobileWidth, height: mobileHeight },
24736
24740
  desktop: { width: desktopWidth, height: desktopHeight }
@@ -24864,7 +24868,7 @@ function renderUnifiedUI(state, handlers, config, iframeRef) {
24864
24868
  const contentDimensions = getContentDimensions(config);
24865
24869
  const mobileHeight = contentDimensions.mobile.height;
24866
24870
  const calculatedHeight = Math.max(mobileHeight + 100, 400);
24867
- return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess', _433 => _433.innerHeight]) * 0.85 || 650)}px`;
24871
+ return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess', _435 => _435.innerHeight]) * 0.85 || 650)}px`;
24868
24872
  })(),
24869
24873
  minHeight: viewMode === "DESKTOP" ? "auto" : (() => {
24870
24874
  const contentDimensions = getContentDimensions(config);
@@ -24969,7 +24973,7 @@ var FigmaPrototypeViewer = ({
24969
24973
  const [isInitialized, setIsInitialized] = _react.useState.call(void 0, false);
24970
24974
  const [currentNodeId, setCurrentNodeId] = _react.useState.call(void 0, null);
24971
24975
  const [internalActiveSection, setInternalActiveSection] = _react.useState.call(void 0,
24972
- config.defaultSectionId || _optionalChain([config, 'access', _434 => _434.sections, 'access', _435 => _435[0], 'optionalAccess', _436 => _436.id]) || ""
24976
+ config.defaultSectionId || _optionalChain([config, 'access', _436 => _436.sections, 'access', _437 => _437[0], 'optionalAccess', _438 => _438.id]) || ""
24973
24977
  );
24974
24978
  const activeSection = externalActiveSection || internalActiveSection;
24975
24979
  const [isNavigating, setIsNavigating] = _react.useState.call(void 0, false);
@@ -25059,7 +25063,7 @@ var FigmaPrototypeViewer = ({
25059
25063
  const handleMessage = (event) => {
25060
25064
  if (event.origin !== "https://www.figma.com") return;
25061
25065
  const validEvents = ["INITIAL_LOAD", "NEW_STATE", "PRESENTED_NODE_CHANGED"];
25062
- if (_optionalChain([event, 'access', _437 => _437.data, 'optionalAccess', _438 => _438.type]) && validEvents.includes(event.data.type)) {
25066
+ if (_optionalChain([event, 'access', _439 => _439.data, 'optionalAccess', _440 => _440.type]) && validEvents.includes(event.data.type)) {
25063
25067
  const figmaEvent = event.data;
25064
25068
  console.log("[Figma Event]", figmaEvent.type, viewMode);
25065
25069
  switch (figmaEvent.type) {
@@ -25069,19 +25073,19 @@ var FigmaPrototypeViewer = ({
25069
25073
  setIframeState("READY");
25070
25074
  break;
25071
25075
  case "PRESENTED_NODE_CHANGED":
25072
- if (_optionalChain([figmaEvent, 'access', _439 => _439.data, 'optionalAccess', _440 => _440.presentedNodeId])) {
25076
+ if (_optionalChain([figmaEvent, 'access', _441 => _441.data, 'optionalAccess', _442 => _442.presentedNodeId])) {
25073
25077
  setCurrentNodeId(figmaEvent.data.presentedNodeId);
25074
25078
  if (!isNavigating) {
25075
25079
  const matchingSection = config.sections.find((s) => {
25076
- const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access', _441 => _441.data, 'optionalAccess', _442 => _442.presentedNodeId]) || s.startingNodeId.replace(":", "-") === _optionalChain([figmaEvent, 'access', _443 => _443.data, 'optionalAccess', _444 => _444.presentedNodeId]);
25077
- const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access', _445 => _445.data, 'optionalAccess', _446 => _446.presentedNodeId]) || _optionalChain([s, 'access', _447 => _447.mobileStartingNodeId, 'optionalAccess', _448 => _448.replace, 'call', _449 => _449(":", "-")]) === _optionalChain([figmaEvent, 'access', _450 => _450.data, 'optionalAccess', _451 => _451.presentedNodeId]);
25080
+ const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access', _443 => _443.data, 'optionalAccess', _444 => _444.presentedNodeId]) || s.startingNodeId.replace(":", "-") === _optionalChain([figmaEvent, 'access', _445 => _445.data, 'optionalAccess', _446 => _446.presentedNodeId]);
25081
+ const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access', _447 => _447.data, 'optionalAccess', _448 => _448.presentedNodeId]) || _optionalChain([s, 'access', _449 => _449.mobileStartingNodeId, 'optionalAccess', _450 => _450.replace, 'call', _451 => _451(":", "-")]) === _optionalChain([figmaEvent, 'access', _452 => _452.data, 'optionalAccess', _453 => _453.presentedNodeId]);
25078
25082
  return desktopMatch || mobileMatch;
25079
25083
  });
25080
25084
  if (matchingSection && matchingSection.id !== activeSection) {
25081
25085
  if (!externalActiveSection) {
25082
25086
  setInternalActiveSection(matchingSection.id);
25083
25087
  }
25084
- _optionalChain([config, 'access', _452 => _452.onSectionChange, 'optionalCall', _453 => _453(matchingSection.id)]);
25088
+ _optionalChain([config, 'access', _454 => _454.onSectionChange, 'optionalCall', _455 => _455(matchingSection.id)]);
25085
25089
  }
25086
25090
  }
25087
25091
  }
@@ -25094,7 +25098,7 @@ var FigmaPrototypeViewer = ({
25094
25098
  }, [config.sections, activeSection, isNavigating, externalActiveSection, config.onSectionChange, viewMode]);
25095
25099
  const navigateToSection = _react.useCallback.call(void 0, (sectionId) => {
25096
25100
  const section = config.sections.find((s) => s.id === sectionId);
25097
- if (!section || !_optionalChain([iframeRef, 'access', _454 => _454.current, 'optionalAccess', _455 => _455.contentWindow]) || !isInitialized) {
25101
+ if (!section || !_optionalChain([iframeRef, 'access', _456 => _456.current, 'optionalAccess', _457 => _457.contentWindow]) || !isInitialized) {
25098
25102
  return;
25099
25103
  }
25100
25104
  setIsNavigating(true);
@@ -25102,7 +25106,7 @@ var FigmaPrototypeViewer = ({
25102
25106
  if (!externalActiveSection) {
25103
25107
  setInternalActiveSection(sectionId);
25104
25108
  }
25105
- _optionalChain([config, 'access', _456 => _456.onSectionChange, 'optionalCall', _457 => _457(sectionId)]);
25109
+ _optionalChain([config, 'access', _458 => _458.onSectionChange, 'optionalCall', _459 => _459(sectionId)]);
25106
25110
  const command = {
25107
25111
  type: "NAVIGATE_TO_FRAME_AND_CLOSE_OVERLAYS",
25108
25112
  data: { nodeId }
@@ -25422,7 +25426,7 @@ var FiltersDropdown = ({
25422
25426
  defaults[section.id] = section.defaultSelected || [];
25423
25427
  });
25424
25428
  setSelectedFilters(defaults);
25425
- _optionalChain([onReset, 'optionalCall', _458 => _458()]);
25429
+ _optionalChain([onReset, 'optionalCall', _460 => _460()]);
25426
25430
  setIsOpen(false);
25427
25431
  };
25428
25432
  const handleApply = () => {
@@ -25715,7 +25719,7 @@ function MediaGalleryManager({
25715
25719
  const [deletingIndex, setDeletingIndex] = _react.useState.call(void 0, null);
25716
25720
  const [draggedIndex, setDraggedIndex] = _react.useState.call(void 0, null);
25717
25721
  const handleFileSelect = _react.useCallback.call(void 0, async (event) => {
25718
- const file = _optionalChain([event, 'access', _459 => _459.target, 'access', _460 => _460.files, 'optionalAccess', _461 => _461[0]]);
25722
+ const file = _optionalChain([event, 'access', _461 => _461.target, 'access', _462 => _462.files, 'optionalAccess', _463 => _463[0]]);
25719
25723
  if (!file) return;
25720
25724
  let mediaType;
25721
25725
  if (file.type.startsWith("image/")) {
@@ -25830,7 +25834,7 @@ function MediaGalleryManager({
25830
25834
  {
25831
25835
  type: "button",
25832
25836
  variant: "outline",
25833
- onClick: () => _optionalChain([fileInputRef, 'access', _462 => _462.current, 'optionalAccess', _463 => _463.click, 'call', _464 => _464()]),
25837
+ onClick: () => _optionalChain([fileInputRef, 'access', _464 => _464.current, 'optionalAccess', _465 => _465.click, 'call', _466 => _466()]),
25834
25838
  disabled: isUploading,
25835
25839
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
25836
25840
  className: "font-['DM_Sans'] text-[16px] font-bold",
@@ -26498,7 +26502,7 @@ function ReleaseMediaManager({
26498
26502
  const fileInputRef = _react.useRef.call(void 0, null);
26499
26503
  const [uploadingIndex, setUploadingIndex] = _react.useState.call(void 0, null);
26500
26504
  const handleFileSelect = async (event) => {
26501
- const file = _optionalChain([event, 'access', _465 => _465.target, 'access', _466 => _466.files, 'optionalAccess', _467 => _467[0]]);
26505
+ const file = _optionalChain([event, 'access', _467 => _467.target, 'access', _468 => _468.files, 'optionalAccess', _469 => _469[0]]);
26502
26506
  if (!file) return;
26503
26507
  let mediaType;
26504
26508
  if (file.type.startsWith("image/")) {
@@ -26578,7 +26582,7 @@ function ReleaseMediaManager({
26578
26582
  {
26579
26583
  type: "button",
26580
26584
  variant: "outline",
26581
- onClick: () => _optionalChain([fileInputRef, 'access', _468 => _468.current, 'optionalAccess', _469 => _469.click, 'call', _470 => _470()]),
26585
+ onClick: () => _optionalChain([fileInputRef, 'access', _470 => _470.current, 'optionalAccess', _471 => _471.click, 'call', _472 => _472()]),
26582
26586
  disabled: uploadingIndex !== null,
26583
26587
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
26584
26588
  className: "font-['DM_Sans'] text-[16px] font-bold",
@@ -26793,7 +26797,7 @@ function SEOEditorPreview({
26793
26797
  const displayImage = hasOgImage || hasFeaturedImage;
26794
26798
  const handleImageUpload = async (event) => {
26795
26799
  if (!onOgImageUpload) return;
26796
- const file = _optionalChain([event, 'access', _471 => _471.target, 'access', _472 => _472.files, 'optionalAccess', _473 => _473[0]]);
26800
+ const file = _optionalChain([event, 'access', _473 => _473.target, 'access', _474 => _474.files, 'optionalAccess', _475 => _475[0]]);
26797
26801
  if (!file) return;
26798
26802
  setIsUploading(true);
26799
26803
  try {
@@ -26934,7 +26938,7 @@ function SEOEditorPreview({
26934
26938
  type: "button",
26935
26939
  variant: "outline",
26936
26940
  size: "icon",
26937
- onClick: () => _optionalChain([fileInputRef, 'optionalAccess', _474 => _474.click, 'call', _475 => _475()]),
26941
+ onClick: () => _optionalChain([fileInputRef, 'optionalAccess', _476 => _476.click, 'call', _477 => _477()]),
26938
26942
  disabled: disabled || isUploading,
26939
26943
  className: "bg-white text-black hover:bg-gray-100 rounded-full opacity-0 group-hover:opacity-100",
26940
26944
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-4 w-4" })
@@ -26957,7 +26961,7 @@ function SEOEditorPreview({
26957
26961
  "div",
26958
26962
  {
26959
26963
  className: "h-full min-h-[280px] border-2 border-dashed border-ods-border rounded-lg flex flex-col items-center justify-center cursor-pointer hover:border-ods-accent transition-colors bg-ods-bg-hover",
26960
- onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess', _476 => _476.click, 'call', _477 => _477()]),
26964
+ onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess', _478 => _478.click, 'call', _479 => _479()]),
26961
26965
  children: isUploading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "h-8 w-8 animate-spin text-ods-accent" }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
26962
26966
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-8 w-8 text-ods-text-secondary mb-2" }),
26963
26967
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-sm text-ods-text-secondary font-['DM_Sans']", children: onOgImageUpload ? "Click to upload OG image" : "No image" })
@@ -27044,7 +27048,7 @@ function SocialLinksManager({
27044
27048
  className = ""
27045
27049
  }) {
27046
27050
  const addLink = () => {
27047
- const firstPlatform = _optionalChain([platforms, 'access', _478 => _478[0], 'optionalAccess', _479 => _479.name]) || "website";
27051
+ const firstPlatform = _optionalChain([platforms, 'access', _480 => _480[0], 'optionalAccess', _481 => _481.name]) || "website";
27048
27052
  onChange([...links, { platform: firstPlatform, url: "" }]);
27049
27053
  };
27050
27054
  const removeLink = (index) => {
@@ -27056,7 +27060,7 @@ function SocialLinksManager({
27056
27060
  onChange(updated);
27057
27061
  };
27058
27062
  const getIcon = (link, platform) => {
27059
- const iconKey = _optionalChain([platform, 'optionalAccess', _480 => _480.icon_name]) || link.platform;
27063
+ const iconKey = _optionalChain([platform, 'optionalAccess', _482 => _482.icon_name]) || link.platform;
27060
27064
  const IconComponent = iconMap[iconKey];
27061
27065
  return IconComponent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconComponent, { className: "w-5 h-5 text-ods-text-secondary" }) : null;
27062
27066
  };
@@ -27081,7 +27085,7 @@ function SocialLinksManager({
27081
27085
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
27082
27086
  _chunkQJGRP2YEcjs.Input,
27083
27087
  {
27084
- placeholder: _optionalChain([platform, 'optionalAccess', _481 => _481.placeholder]) || "Profile URL",
27088
+ placeholder: _optionalChain([platform, 'optionalAccess', _483 => _483.placeholder]) || "Profile URL",
27085
27089
  value: link.url,
27086
27090
  onChange: (e) => updateLink(index, "url", e.target.value),
27087
27091
  onKeyDown: (e) => {
@@ -27474,7 +27478,7 @@ function useVideoOriginPreconnect({
27474
27478
  supabaseStorageOrigin
27475
27479
  } = {}) {
27476
27480
  const runtime = _chunk3KEBI6TPcjs.useChatRuntime.call(void 0, );
27477
- const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _482 => _482.endpoints, 'access', _483 => _483.supabaseStorageOrigin])));
27481
+ const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _484 => _484.endpoints, 'access', _485 => _485.supabaseStorageOrigin])));
27478
27482
  try {
27479
27483
  ReactDOM2.default.preconnect(MUX_STREAM_ORIGIN, { crossOrigin: "anonymous" });
27480
27484
  ReactDOM2.default.preconnect(MUX_IMAGE_ORIGIN, { crossOrigin: "anonymous" });
@@ -27493,13 +27497,13 @@ function useVideoWarmup({
27493
27497
  nearMargin = "1000px"
27494
27498
  } = {}) {
27495
27499
  const runtime = _chunk3KEBI6TPcjs.useChatRuntime.call(void 0, );
27496
- const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _484 => _484.endpoints, 'access', _485 => _485.supabaseStorageOrigin])));
27500
+ const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _486 => _486.endpoints, 'access', _487 => _487.supabaseStorageOrigin])));
27497
27501
  useVideoOriginPreconnect({ supabaseStorageOrigin: resolvedOrigin });
27498
27502
  const { ref, isNear } = _chunkB7NOIJR3cjs.useNearViewport.call(void 0, nearMargin);
27499
27503
  _react.useEffect.call(void 0, () => {
27500
27504
  if (!isNear || !videoUrl || !resolvedOrigin) return;
27501
27505
  const conn = navigator.connection;
27502
- if (_optionalChain([conn, 'optionalAccess', _486 => _486.saveData]) === true) return;
27506
+ if (_optionalChain([conn, 'optionalAccess', _488 => _488.saveData]) === true) return;
27503
27507
  let videoOrigin;
27504
27508
  try {
27505
27509
  videoOrigin = new URL(videoUrl, "http://placeholder.local").origin;
@@ -27569,7 +27573,7 @@ function VideoSourceSelector({
27569
27573
  input.accept = "video/*";
27570
27574
  input.onchange = async (e) => {
27571
27575
  const target = e.target;
27572
- const file = _optionalChain([target, 'access', _487 => _487.files, 'optionalAccess', _488 => _488[0]]);
27576
+ const file = _optionalChain([target, 'access', _489 => _489.files, 'optionalAccess', _490 => _490[0]]);
27573
27577
  if (!file) return;
27574
27578
  setIsUploading(true);
27575
27579
  setUploadProgress(0);
@@ -27918,7 +27922,7 @@ function TranscriptSummaryEditor({
27918
27922
  {
27919
27923
  id: "subtitles",
27920
27924
  value: subtitles || "",
27921
- onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _489 => _489(e.target.value)]),
27925
+ onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _491 => _491(e.target.value)]),
27922
27926
  placeholder: subtitlesPlaceholder,
27923
27927
  disabled: disabled || !onSubtitlesChange,
27924
27928
  className: "h-full w-full resize-none border-0 bg-transparent text-ods-text-primary placeholder:text-ods-text-secondary/50 focus:ring-0 focus:outline-none p-4 font-mono text-sm",
@@ -28071,7 +28075,7 @@ var AIEnrichSection = ({
28071
28075
  }) => {
28072
28076
  const hasResults = status === "success" || status === "error";
28073
28077
  const shouldDisable = disabled || !canEnrich;
28074
- const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _490 => _490.filter, 'call', _491 => _491((f) => !f.isFilled)]) || [];
28078
+ const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _492 => _492.filter, 'call', _493 => _493((f) => !f.isFilled)]) || [];
28075
28079
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
28076
28080
  "div",
28077
28081
  {
@@ -28109,7 +28113,7 @@ var AIEnrichSection = ({
28109
28113
  {
28110
28114
  id: "ai-enrich-custom-instructions",
28111
28115
  value: _nullishCoalesce(customInstructions, () => ( "")),
28112
- onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _492 => _492(e.target.value)]),
28116
+ onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _494 => _494(e.target.value)]),
28113
28117
  placeholder: customInstructionsPlaceholder,
28114
28118
  disabled: loading,
28115
28119
  maxLength: customInstructionsMaxLength,
@@ -28238,7 +28242,7 @@ function HighlightVideoSection({
28238
28242
  input.accept = "video/*";
28239
28243
  input.onchange = async (e) => {
28240
28244
  const target = e.target;
28241
- const file = _optionalChain([target, 'access', _493 => _493.files, 'optionalAccess', _494 => _494[0]]);
28245
+ const file = _optionalChain([target, 'access', _495 => _495.files, 'optionalAccess', _496 => _496[0]]);
28242
28246
  if (!file) return;
28243
28247
  setUploadError(null);
28244
28248
  try {
@@ -28733,7 +28737,7 @@ function HighlightVideoPreview({
28733
28737
  input.accept = "video/*";
28734
28738
  input.onchange = async (e) => {
28735
28739
  const target = e.target;
28736
- const file = _optionalChain([target, 'access', _495 => _495.files, 'optionalAccess', _496 => _496[0]]);
28740
+ const file = _optionalChain([target, 'access', _497 => _497.files, 'optionalAccess', _498 => _498[0]]);
28737
28741
  if (!file) return;
28738
28742
  await onUpload(file);
28739
28743
  };
@@ -28917,7 +28921,7 @@ function HighlightVideoCombinedSection({
28917
28921
  input.accept = "video/*";
28918
28922
  input.onchange = async (e) => {
28919
28923
  const target = e.target;
28920
- const file = _optionalChain([target, 'access', _497 => _497.files, 'optionalAccess', _498 => _498[0]]);
28924
+ const file = _optionalChain([target, 'access', _499 => _499.files, 'optionalAccess', _500 => _500[0]]);
28921
28925
  if (!file) return;
28922
28926
  await onUpload(file);
28923
28927
  };
@@ -29211,7 +29215,7 @@ var getApprovalLevelLabel = (level, editMode = false) => {
29211
29215
  return editMode ? "Set Global Permission" : "";
29212
29216
  }
29213
29217
  const option = approvalLevelOptions.find((opt) => opt.value === level);
29214
- return _optionalChain([option, 'optionalAccess', _499 => _499.label]) || level;
29218
+ return _optionalChain([option, 'optionalAccess', _501 => _501.label]) || level;
29215
29219
  };
29216
29220
  var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
29217
29221
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "bg-ods-bg border-b border-ods-border flex gap-4 items-center px-4 py-3", children: [
@@ -29425,12 +29429,12 @@ function PhoneInput({
29425
29429
  const runValidation = _react.useCallback.call(void 0, (phone) => {
29426
29430
  if (!phone || digitCount(phone) === 0) {
29427
29431
  setIsInvalid(false);
29428
- _optionalChain([onValidationChange, 'optionalCall', _500 => _500(false)]);
29432
+ _optionalChain([onValidationChange, 'optionalCall', _502 => _502(false)]);
29429
29433
  return;
29430
29434
  }
29431
29435
  const invalid = !validatePhoneNumber(phone, countryCode);
29432
29436
  setIsInvalid(invalid);
29433
- _optionalChain([onValidationChange, 'optionalCall', _501 => _501(invalid)]);
29437
+ _optionalChain([onValidationChange, 'optionalCall', _503 => _503(invalid)]);
29434
29438
  }, [countryCode, digitCount, onValidationChange]);
29435
29439
  const debouncedValidation = _react.useCallback.call(void 0, (phone) => {
29436
29440
  if (debounceRef.current) clearTimeout(debounceRef.current);
@@ -29479,7 +29483,7 @@ function PhoneInput({
29479
29483
  debouncedValidation(val);
29480
29484
  } else if (digitCount(val) === 0) {
29481
29485
  setIsInvalid(false);
29482
- _optionalChain([onValidationChange, 'optionalCall', _502 => _502(false)]);
29486
+ _optionalChain([onValidationChange, 'optionalCall', _504 => _504(false)]);
29483
29487
  }
29484
29488
  }
29485
29489
  },
@@ -29820,19 +29824,19 @@ function NotificationsProvider({
29820
29824
  }, []);
29821
29825
  const markRead = React92.useCallback((id) => {
29822
29826
  dispatch({ type: "markRead", id });
29823
- void _optionalChain([actionsRef, 'access', _503 => _503.current, 'optionalAccess', _504 => _504.onMarkRead, 'optionalCall', _505 => _505(id)]);
29827
+ void _optionalChain([actionsRef, 'access', _505 => _505.current, 'optionalAccess', _506 => _506.onMarkRead, 'optionalCall', _507 => _507(id)]);
29824
29828
  }, []);
29825
29829
  const markAllRead = React92.useCallback(() => {
29826
29830
  dispatch({ type: "markAllRead" });
29827
- void _optionalChain([actionsRef, 'access', _506 => _506.current, 'optionalAccess', _507 => _507.onMarkAllRead, 'optionalCall', _508 => _508()]);
29831
+ void _optionalChain([actionsRef, 'access', _508 => _508.current, 'optionalAccess', _509 => _509.onMarkAllRead, 'optionalCall', _510 => _510()]);
29828
29832
  }, []);
29829
29833
  const markSettled = React92.useCallback((id) => {
29830
29834
  dispatch({ type: "markSettled", id });
29831
- void _optionalChain([actionsRef, 'access', _509 => _509.current, 'optionalAccess', _510 => _510.onMarkSettled, 'optionalCall', _511 => _511(id)]);
29835
+ void _optionalChain([actionsRef, 'access', _511 => _511.current, 'optionalAccess', _512 => _512.onMarkSettled, 'optionalCall', _513 => _513(id)]);
29832
29836
  }, []);
29833
29837
  const remove = React92.useCallback((id) => {
29834
29838
  dispatch({ type: "remove", id });
29835
- void _optionalChain([actionsRef, 'access', _512 => _512.current, 'optionalAccess', _513 => _513.onRemove, 'optionalCall', _514 => _514(id)]);
29839
+ void _optionalChain([actionsRef, 'access', _514 => _514.current, 'optionalAccess', _515 => _515.onRemove, 'optionalCall', _516 => _516(id)]);
29836
29840
  }, []);
29837
29841
  const clear = React92.useCallback(() => dispatch({ type: "clear" }), []);
29838
29842
  const open = React92.useCallback(() => setIsOpen(true), []);
@@ -29841,14 +29845,14 @@ function NotificationsProvider({
29841
29845
  const setShowPopups = React92.useCallback(
29842
29846
  (value2) => {
29843
29847
  setShowPopupsState(value2);
29844
- _optionalChain([onShowPopupsChange, 'optionalCall', _515 => _515(value2)]);
29848
+ _optionalChain([onShowPopupsChange, 'optionalCall', _517 => _517(value2)]);
29845
29849
  },
29846
29850
  [onShowPopupsChange]
29847
29851
  );
29848
29852
  const setShowDesktopPopups = React92.useCallback(
29849
29853
  (value2) => {
29850
29854
  setShowDesktopPopupsState(value2);
29851
- _optionalChain([onShowDesktopPopupsChange, 'optionalCall', _516 => _516(value2)]);
29855
+ _optionalChain([onShowDesktopPopupsChange, 'optionalCall', _518 => _518(value2)]);
29852
29856
  },
29853
29857
  [onShowDesktopPopupsChange]
29854
29858
  );
@@ -29952,7 +29956,7 @@ function NotificationTile({
29952
29956
  if (!counting) return;
29953
29957
  const remaining = Math.max(0, liveDurationMs - initialElapsed);
29954
29958
  const timer = window.setTimeout(() => {
29955
- _optionalChain([onSettle, 'optionalCall', _517 => _517(id)]);
29959
+ _optionalChain([onSettle, 'optionalCall', _519 => _519(id)]);
29956
29960
  }, remaining);
29957
29961
  return () => window.clearTimeout(timer);
29958
29962
  }, [id, counting, initialElapsed, liveDurationMs, onSettle]);
@@ -30014,7 +30018,7 @@ function NotificationTile({
30014
30018
  "button",
30015
30019
  {
30016
30020
  type: "button",
30017
- onClick: () => _optionalChain([onSettle, 'optionalCall', _518 => _518(id)]),
30021
+ onClick: () => _optionalChain([onSettle, 'optionalCall', _520 => _520(id)]),
30018
30022
  "aria-label": "Dismiss notification",
30019
30023
  tabIndex: isLive ? 0 : -1,
30020
30024
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
@@ -30147,7 +30151,7 @@ function DrawerScrollList({
30147
30151
  if (!sentinel || !root) return;
30148
30152
  const observer = new IntersectionObserver(
30149
30153
  (entries) => {
30150
- if (_optionalChain([entries, 'access', _519 => _519[0], 'optionalAccess', _520 => _520.isIntersecting])) _optionalChain([loadMoreRef, 'access', _521 => _521.current, 'optionalCall', _522 => _522()]);
30154
+ if (_optionalChain([entries, 'access', _521 => _521[0], 'optionalAccess', _522 => _522.isIntersecting])) _optionalChain([loadMoreRef, 'access', _523 => _523.current, 'optionalCall', _524 => _524()]);
30151
30155
  },
30152
30156
  { root, rootMargin: loadMoreRootMargin }
30153
30157
  );
@@ -30162,7 +30166,7 @@ function DrawerScrollList({
30162
30166
  className: "flex flex-1 flex-col gap-[var(--spacing-system-xs)] overflow-y-auto px-[var(--spacing-system-m)]",
30163
30167
  children: isEmpty && !isLoadingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyState, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
30164
30168
  unreadNotifications.map((n) => {
30165
- const custom = _optionalChain([renderTile, 'optionalCall', _523 => _523(n, { onComplete, onSettle, liveDurationMs })]);
30169
+ const custom = _optionalChain([renderTile, 'optionalCall', _525 => _525(n, { onComplete, onSettle, liveDurationMs })]);
30166
30170
  if (custom) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: custom }, n.id);
30167
30171
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
30168
30172
  NotificationTile,
@@ -30326,7 +30330,7 @@ function NotificationPopups({
30326
30330
  className
30327
30331
  ),
30328
30332
  children: live.map((n) => {
30329
- const custom = _optionalChain([renderTile, 'optionalCall', _524 => _524(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
30333
+ const custom = _optionalChain([renderTile, 'optionalCall', _526 => _526(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
30330
30334
  if (custom) {
30331
30335
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-auto", children: custom }, n.id);
30332
30336
  }
@@ -30506,21 +30510,21 @@ function transformWebinarToProgram(webinar) {
30506
30510
  // src/components/features/notifications/types.ts
30507
30511
  var ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = "ADMIN_APPROVAL_REQUEST";
30508
30512
  function isApprovalNotification(notification) {
30509
- return _optionalChain([notification, 'access', _525 => _525.meta, 'optionalAccess', _526 => _526.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
30513
+ return _optionalChain([notification, 'access', _527 => _527.meta, 'optionalAccess', _528 => _528.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
30510
30514
  }
30511
30515
  function getApprovalMeta(notification) {
30512
30516
  if (!isApprovalNotification(notification)) return null;
30513
30517
  const meta = notification.meta;
30514
- const approvalRequestId = _optionalChain([meta, 'optionalAccess', _527 => _527.approvalRequestId]);
30515
- const toolCalls = _optionalChain([meta, 'optionalAccess', _528 => _528.toolCalls]);
30518
+ const approvalRequestId = _optionalChain([meta, 'optionalAccess', _529 => _529.approvalRequestId]);
30519
+ const toolCalls = _optionalChain([meta, 'optionalAccess', _530 => _530.toolCalls]);
30516
30520
  if (typeof approvalRequestId !== "string" || !Array.isArray(toolCalls)) return null;
30517
30521
  return {
30518
30522
  approvalRequestId,
30519
- dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _529 => _529.dialogId]), () => ( null)),
30520
- ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _530 => _530.ticketId]), () => ( null)),
30521
- approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _531 => _531.approvalType]), () => ( null)),
30522
- resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _532 => _532.resolution]), () => ( null)),
30523
- resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _533 => _533.resolvedByName]), () => ( null)),
30523
+ dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _531 => _531.dialogId]), () => ( null)),
30524
+ ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _532 => _532.ticketId]), () => ( null)),
30525
+ approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _533 => _533.approvalType]), () => ( null)),
30526
+ resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _534 => _534.resolution]), () => ( null)),
30527
+ resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _535 => _535.resolvedByName]), () => ( null)),
30524
30528
  toolCalls
30525
30529
  };
30526
30530
  }
@@ -30569,7 +30573,7 @@ function ApprovalRequestNotificationTile({
30569
30573
  const [pinned, setPinned] = _react.useState.call(void 0, defaultExpanded);
30570
30574
  const [localStatus, setLocalStatus] = _react.useState.call(void 0, null);
30571
30575
  const approval = getApprovalMeta(notification);
30572
- const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _534 => _534.resolution]));
30576
+ const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _536 => _536.resolution]));
30573
30577
  const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
30574
30578
  const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
30575
30579
  const { innerRef, containerStyle } = useCollapsible({ expanded });
@@ -30871,7 +30875,7 @@ function TimeTrackerPanel({
30871
30875
  error: showFieldError ? "Required if no notes added" : void 0,
30872
30876
  disableClientFilter: !!onTicketSearch,
30873
30877
  onInputChange: (value, reason) => {
30874
- if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _535 => _535(value)]);
30878
+ if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _537 => _537(value)]);
30875
30879
  }
30876
30880
  }
30877
30881
  ),
@@ -30886,7 +30890,7 @@ function TimeTrackerPanel({
30886
30890
  disabled: customerLocked,
30887
30891
  disableClientFilter: !!onCustomerSearch,
30888
30892
  onInputChange: (value, reason) => {
30889
- if (reason === "input") _optionalChain([onCustomerSearch, 'optionalCall', _536 => _536(value)]);
30893
+ if (reason === "input") _optionalChain([onCustomerSearch, 'optionalCall', _538 => _538(value)]);
30890
30894
  },
30891
30895
  startAdornment: customerStartAdornment,
30892
30896
  renderOption: renderCustomerOption
@@ -30979,7 +30983,7 @@ function LastEntryRow({ entry, onClick }) {
30979
30983
  {
30980
30984
  variant: "outline",
30981
30985
  size: "icon",
30982
- onClick: () => _optionalChain([onClick, 'optionalCall', _537 => _537(entry)]),
30986
+ onClick: () => _optionalChain([onClick, 'optionalCall', _539 => _539(entry)]),
30983
30987
  disabled: !onClick,
30984
30988
  "aria-label": `Open entry: ${entry.title}`,
30985
30989
  className: "h-12 w-12 shrink-0 [&_svg]:!size-6",
@@ -31023,9 +31027,9 @@ function HeaderButton({
31023
31027
  function TimeTrackerHeaderButton({ className, disabled }) {
31024
31028
  const ctx = useOptionalTimeTracker();
31025
31029
  const elapsedLabel = useTrackerClock({
31026
- status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _538 => _538.status]), () => ( "ready")),
31027
- runningSince: _optionalChain([ctx, 'optionalAccess', _539 => _539.runningSince]),
31028
- accumulatedMs: _optionalChain([ctx, 'optionalAccess', _540 => _540.accumulatedMs])
31030
+ status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _540 => _540.status]), () => ( "ready")),
31031
+ runningSince: _optionalChain([ctx, 'optionalAccess', _541 => _541.runningSince]),
31032
+ accumulatedMs: _optionalChain([ctx, 'optionalAccess', _542 => _542.accumulatedMs])
31029
31033
  });
31030
31034
  if (!ctx) return null;
31031
31035
  const { isOpen, open, close, status } = ctx;
@@ -31308,15 +31312,15 @@ function TicketCard({
31308
31312
  transition: sortable.transition
31309
31313
  };
31310
31314
  if (showNewMessage) style.borderColor = columnColor;
31311
- const showDeviceRow = !!(_optionalChain([ticket, 'access', _541 => _541.deviceHostnames, 'optionalAccess', _542 => _542.length]) || ticket.organizationName);
31315
+ const showDeviceRow = !!(_optionalChain([ticket, 'access', _543 => _543.deviceHostnames, 'optionalAccess', _544 => _544.length]) || ticket.organizationName);
31312
31316
  const deviceText = [
31313
- _optionalChain([ticket, 'access', _543 => _543.deviceHostnames, 'optionalAccess', _544 => _544.join, 'call', _545 => _545(", ")]),
31317
+ _optionalChain([ticket, 'access', _545 => _545.deviceHostnames, 'optionalAccess', _546 => _546.join, 'call', _547 => _547(", ")]),
31314
31318
  ticket.organizationName
31315
31319
  ].filter(Boolean).join(", ");
31316
31320
  const handleClick = (e) => {
31317
31321
  if (sortable.isDragging) e.preventDefault();
31318
31322
  };
31319
- const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _546 => _546.assignees, 'optionalAccess', _547 => _547.length]) || renderAssignSlot);
31323
+ const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _548 => _548.assignees, 'optionalAccess', _549 => _549.length]) || renderAssignSlot);
31320
31324
  const rightSection = hasRightSection ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "pointer-events-auto flex shrink-0 items-center gap-[var(--spacing-system-xsf)]", children: [
31321
31325
  ticket.priority && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31322
31326
  _chunkCCG4DARMcjs.Flag02Icon,
@@ -31325,7 +31329,7 @@ function TicketCard({
31325
31329
  "aria-label": `Priority: ${ticket.priority}`
31326
31330
  }
31327
31331
  ),
31328
- renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _548 => _548.assignees, 'optionalAccess', _549 => _549.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
31332
+ renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _550 => _550.assignees, 'optionalAccess', _551 => _551.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
31329
31333
  ticket.assignees.slice(0, MAX_VISIBLE_ASSIGNEES).map((a) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31330
31334
  SquareAvatar,
31331
31335
  {
@@ -31356,7 +31360,7 @@ function TicketCard({
31356
31360
  ] }),
31357
31361
  rightSection
31358
31362
  ] }),
31359
- _optionalChain([ticket, 'access', _550 => _550.tags, 'optionalAccess', _551 => _551.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
31363
+ _optionalChain([ticket, 'access', _552 => _552.tags, 'optionalAccess', _553 => _553.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
31360
31364
  timestampLabel && tooltipLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Tooltip, { children: [
31361
31365
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "pointer-events-auto text-h6 truncate text-ods-text-secondary", children: timestampLabel }) }),
31362
31366
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipContent, { children: tooltipLabel })
@@ -31556,7 +31560,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
31556
31560
  const observer = new IntersectionObserver(
31557
31561
  (entries) => {
31558
31562
  if (entries.some((e) => e.isIntersecting)) {
31559
- _optionalChain([loadMoreRef, 'access', _552 => _552.current, 'optionalCall', _553 => _553(columnIdRef.current)]);
31563
+ _optionalChain([loadMoreRef, 'access', _554 => _554.current, 'optionalCall', _555 => _555(columnIdRef.current)]);
31560
31564
  }
31561
31565
  },
31562
31566
  { root, rootMargin: loadMoreRootMargin }
@@ -31586,7 +31590,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
31586
31590
  ticket: t,
31587
31591
  columnId: column.id,
31588
31592
  columnColor: column.color,
31589
- href: _optionalChain([getTicketHref, 'optionalCall', _554 => _554(t.id)]),
31593
+ href: _optionalChain([getTicketHref, 'optionalCall', _556 => _556(t.id)]),
31590
31594
  renderAssignSlot,
31591
31595
  onApprove,
31592
31596
  onReject,
@@ -31686,17 +31690,17 @@ function Board({
31686
31690
  const pointer = _core.pointerWithin.call(void 0, args);
31687
31691
  const intersections = pointer.length > 0 ? pointer : _core.rectIntersection.call(void 0, args);
31688
31692
  const ticketHit = intersections.find(
31689
- (c) => _optionalChain([c, 'access', _555 => _555.data, 'optionalAccess', _556 => _556.droppableContainer, 'optionalAccess', _557 => _557.data, 'optionalAccess', _558 => _558.current, 'optionalAccess', _559 => _559.type]) === "ticket"
31693
+ (c) => _optionalChain([c, 'access', _557 => _557.data, 'optionalAccess', _558 => _558.droppableContainer, 'optionalAccess', _559 => _559.data, 'optionalAccess', _560 => _560.current, 'optionalAccess', _561 => _561.type]) === "ticket"
31690
31694
  );
31691
31695
  if (ticketHit) return [ticketHit];
31692
31696
  const columnHit = intersections.find(
31693
- (c) => _optionalChain([c, 'access', _560 => _560.data, 'optionalAccess', _561 => _561.droppableContainer, 'optionalAccess', _562 => _562.data, 'optionalAccess', _563 => _563.current, 'optionalAccess', _564 => _564.type]) === "column"
31697
+ (c) => _optionalChain([c, 'access', _562 => _562.data, 'optionalAccess', _563 => _563.droppableContainer, 'optionalAccess', _564 => _564.data, 'optionalAccess', _565 => _565.current, 'optionalAccess', _566 => _566.type]) === "column"
31694
31698
  );
31695
31699
  if (columnHit) {
31696
- const columnId = _optionalChain([columnHit, 'access', _565 => _565.data, 'optionalAccess', _566 => _566.droppableContainer, 'optionalAccess', _567 => _567.data, 'optionalAccess', _568 => _568.current, 'optionalAccess', _569 => _569.columnId]);
31700
+ const columnId = _optionalChain([columnHit, 'access', _567 => _567.data, 'optionalAccess', _568 => _568.droppableContainer, 'optionalAccess', _569 => _569.data, 'optionalAccess', _570 => _570.current, 'optionalAccess', _571 => _571.columnId]);
31697
31701
  const ticketsInColumn = args.droppableContainers.filter((c) => {
31698
31702
  const d = c.data.current;
31699
- return _optionalChain([d, 'optionalAccess', _570 => _570.type]) === "ticket" && d.columnId === columnId;
31703
+ return _optionalChain([d, 'optionalAccess', _572 => _572.type]) === "ticket" && d.columnId === columnId;
31700
31704
  });
31701
31705
  if (ticketsInColumn.length > 0) {
31702
31706
  const closest = _core.closestCorners.call(void 0, { ...args, droppableContainers: ticketsInColumn });
@@ -31721,20 +31725,20 @@ function Board({
31721
31725
  const overId = String(over.id);
31722
31726
  if (activeId === overId) return;
31723
31727
  const overData = over.data.current;
31724
- const fromColumnId = _optionalChain([locate, 'call', _571 => _571(items, activeId), 'optionalAccess', _572 => _572.columnId]);
31725
- const toColumnId = _optionalChain([overData, 'optionalAccess', _573 => _573.columnId]);
31728
+ const fromColumnId = _optionalChain([locate, 'call', _573 => _573(items, activeId), 'optionalAccess', _574 => _574.columnId]);
31729
+ const toColumnId = _optionalChain([overData, 'optionalAccess', _575 => _575.columnId]);
31726
31730
  if (!fromColumnId || !toColumnId || fromColumnId === toColumnId) return;
31727
31731
  const origin = dragOriginRef.current;
31728
- const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _574 => _574.fromColumnId]) === toColumnId;
31732
+ const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _576 => _576.fromColumnId]) === toColumnId;
31729
31733
  const targetCol = items.find((c) => c.id === toColumnId);
31730
- const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _575 => _575.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
31731
- if (_optionalChain([targetCol, 'optionalAccess', _576 => _576.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
31734
+ const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _577 => _577.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
31735
+ if (_optionalChain([targetCol, 'optionalAccess', _578 => _578.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
31732
31736
  setItems((prev) => {
31733
31737
  const fromIndex = findIndexInColumn(prev, fromColumnId, activeId);
31734
31738
  const toCol = prev.find((c) => c.id === toColumnId);
31735
31739
  if (fromIndex < 0 || !toCol) return prev;
31736
31740
  let toIndex;
31737
- if (_optionalChain([overData, 'optionalAccess', _577 => _577.type]) === "column") {
31741
+ if (_optionalChain([overData, 'optionalAccess', _579 => _579.type]) === "column") {
31738
31742
  toIndex = toCol.tickets.length;
31739
31743
  } else {
31740
31744
  const overIndex = toCol.tickets.findIndex((t) => t.id === overId);
@@ -31776,14 +31780,14 @@ function Board({
31776
31780
  const toColumnId = located.columnId;
31777
31781
  const isCrossColumn = origin.fromColumnId !== toColumnId;
31778
31782
  const targetCol = items.find((c) => c.id === toColumnId);
31779
- if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _578 => _578.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _579 => _579.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
31783
+ if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _580 => _580.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _581 => _581.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
31780
31784
  setItems(columns);
31781
31785
  return;
31782
31786
  }
31783
31787
  let finalIndex = located.index;
31784
- let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _580 => _580.find, 'call', _581 => _581((c) => c.id === toColumnId), 'optionalAccess', _582 => _582.tickets]), () => ( []));
31788
+ let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _582 => _582.find, 'call', _583 => _583((c) => c.id === toColumnId), 'optionalAccess', _584 => _584.tickets]), () => ( []));
31785
31789
  const overData = over.data.current;
31786
- if (_optionalChain([overData, 'optionalAccess', _583 => _583.type]) === "ticket") {
31790
+ if (_optionalChain([overData, 'optionalAccess', _585 => _585.type]) === "ticket") {
31787
31791
  const overIndex = findIndexInColumn(items, toColumnId, String(over.id));
31788
31792
  if (overIndex >= 0 && overIndex !== located.index) {
31789
31793
  finalColumnTickets = _sortable.arrayMove.call(void 0, finalColumnTickets, located.index, overIndex);
@@ -31803,8 +31807,8 @@ function Board({
31803
31807
  ticketId: origin.ticketId,
31804
31808
  fromColumnId: origin.fromColumnId,
31805
31809
  toColumnId,
31806
- afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _584 => _584[finalIndex - 1], 'optionalAccess', _585 => _585.id]), () => ( null)),
31807
- beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _586 => _586[finalIndex + 1], 'optionalAccess', _587 => _587.id]), () => ( null))
31810
+ afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _586 => _586[finalIndex - 1], 'optionalAccess', _587 => _587.id]), () => ( null)),
31811
+ beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _588 => _588[finalIndex + 1], 'optionalAccess', _589 => _589.id]), () => ( null))
31808
31812
  });
31809
31813
  };
31810
31814
  const handleDragCancel = () => {
@@ -31833,8 +31837,8 @@ function Board({
31833
31837
  children: items.map((column, i) => {
31834
31838
  const prev = items[i - 1];
31835
31839
  const next = items[i + 1];
31836
- const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _588 => _588.system]));
31837
- const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _589 => _589.system]));
31840
+ const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _590 => _590.system]));
31841
+ const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _591 => _591.system]));
31838
31842
  const showGap = i > 0 && !joinLeft;
31839
31843
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React98.Fragment, { children: [
31840
31844
  showGap && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "w-[var(--spacing-system-mf)] shrink-0" }),
@@ -31887,7 +31891,7 @@ function Board({
31887
31891
  {
31888
31892
  ticket: activeTicket.ticket,
31889
31893
  columnId: activeTicket.columnId,
31890
- columnColor: _optionalChain([items, 'access', _590 => _590.find, 'call', _591 => _591((c) => c.id === activeTicket.columnId), 'optionalAccess', _592 => _592.color]),
31894
+ columnColor: _optionalChain([items, 'access', _592 => _592.find, 'call', _593 => _593((c) => c.id === activeTicket.columnId), 'optionalAccess', _594 => _594.color]),
31891
31895
  isOverlay: true
31892
31896
  }
31893
31897
  ) : null })
@@ -31903,7 +31907,7 @@ function locate(cols, ticketId) {
31903
31907
  return null;
31904
31908
  }
31905
31909
  function findIndexInColumn(cols, columnId, ticketId) {
31906
- return _nullishCoalesce(_optionalChain([cols, 'access', _593 => _593.find, 'call', _594 => _594((c) => c.id === columnId), 'optionalAccess', _595 => _595.tickets, 'access', _596 => _596.findIndex, 'call', _597 => _597((t) => t.id === ticketId)]), () => ( -1));
31910
+ return _nullishCoalesce(_optionalChain([cols, 'access', _595 => _595.find, 'call', _596 => _596((c) => c.id === columnId), 'optionalAccess', _597 => _597.tickets, 'access', _598 => _598.findIndex, 'call', _599 => _599((t) => t.id === ticketId)]), () => ( -1));
31907
31911
  }
31908
31912
 
31909
31913
  // src/components/features/board/types.ts
@@ -32151,7 +32155,7 @@ function Header2({ config, platform }) {
32151
32155
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
32152
32156
  "flex justify-start w-full",
32153
32157
  "font-bold text-[16px] leading-none tracking-[-0.32px]",
32154
- index < (_nullishCoalesce(_optionalChain([item, 'access', _598 => _598.children, 'optionalAccess', _599 => _599.length]), () => ( 0))) - 1 && "mb-1",
32158
+ index < (_nullishCoalesce(_optionalChain([item, 'access', _600 => _600.children, 'optionalAccess', _601 => _601.length]), () => ( 0))) - 1 && "mb-1",
32155
32159
  "text-ods-text-primary",
32156
32160
  // All dropdown items use primary text color
32157
32161
  child.isActive && "bg-ods-bg-hover"
@@ -32243,7 +32247,7 @@ function Header2({ config, platform }) {
32243
32247
  style: config.style,
32244
32248
  children: [
32245
32249
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
32246
- _optionalChain([config, 'access', _600 => _600.actions, 'optionalAccess', _601 => _601.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
32250
+ _optionalChain([config, 'access', _602 => _602.actions, 'optionalAccess', _603 => _603.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
32247
32251
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWBR7H6E3cjs.next_link_default, { href: config.logo.href, className: "transition-opacity duration-200 hover:opacity-80", children: config.logo.element })
32248
32252
  ] }),
32249
32253
  config.navigation && config.navigation.items.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -32260,7 +32264,7 @@ function Header2({ config, platform }) {
32260
32264
  }
32261
32265
  ),
32262
32266
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-end gap-4 flex-shrink-0", children: [
32263
- _optionalChain([config, 'access', _602 => _602.actions, 'optionalAccess', _603 => _603.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden md:flex items-center gap-4", children: config.actions.right }),
32267
+ _optionalChain([config, 'access', _604 => _604.actions, 'optionalAccess', _605 => _605.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden md:flex items-center gap-4", children: config.actions.right }),
32264
32268
  config.mobile && config.mobile.enabled && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32265
32269
  _chunkQJGRP2YEcjs.Button,
32266
32270
  {
@@ -32268,10 +32272,10 @@ function Header2({ config, platform }) {
32268
32272
  size: "icon",
32269
32273
  className: "flex md:hidden",
32270
32274
  onClick: () => {
32271
- _optionalChain([config, 'access', _604 => _604.mobile, 'optionalAccess', _605 => _605.onToggle, 'optionalCall', _606 => _606()]);
32275
+ _optionalChain([config, 'access', _606 => _606.mobile, 'optionalAccess', _607 => _607.onToggle, 'optionalCall', _608 => _608()]);
32272
32276
  },
32273
- "aria-label": _optionalChain([config, 'access', _607 => _607.mobile, 'optionalAccess', _608 => _608.isOpen]) ? "Close menu" : "Open menu",
32274
- leftIcon: _optionalChain([config, 'access', _609 => _609.mobile, 'optionalAccess', _610 => _610.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.Menu01Icon, {})
32277
+ "aria-label": _optionalChain([config, 'access', _609 => _609.mobile, 'optionalAccess', _610 => _610.isOpen]) ? "Close menu" : "Open menu",
32278
+ leftIcon: _optionalChain([config, 'access', _611 => _611.mobile, 'optionalAccess', _612 => _612.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.Menu01Icon, {})
32275
32279
  }
32276
32280
  )
32277
32281
  ] })
@@ -32288,10 +32292,10 @@ function Header2({ config, platform }) {
32288
32292
  // src/components/navigation/header-skeleton.tsx
32289
32293
 
32290
32294
  function HeaderSkeleton({ config }) {
32291
- const showNavigation = _optionalChain([config, 'optionalAccess', _611 => _611.navigation]) && config.navigation.items.length > 0;
32292
- const showActions = _optionalChain([config, 'optionalAccess', _612 => _612.actions, 'optionalAccess', _613 => _613.right]) && config.actions.right.length > 0;
32293
- const showMobileMenu = _optionalChain([config, 'optionalAccess', _614 => _614.mobile, 'optionalAccess', _615 => _615.enabled]);
32294
- const isAdminHeader = _optionalChain([config, 'optionalAccess', _616 => _616.className, 'optionalAccess', _617 => _617.includes, 'call', _618 => _618("admin")]);
32295
+ const showNavigation = _optionalChain([config, 'optionalAccess', _613 => _613.navigation]) && config.navigation.items.length > 0;
32296
+ const showActions = _optionalChain([config, 'optionalAccess', _614 => _614.actions, 'optionalAccess', _615 => _615.right]) && config.actions.right.length > 0;
32297
+ const showMobileMenu = _optionalChain([config, 'optionalAccess', _616 => _616.mobile, 'optionalAccess', _617 => _617.enabled]);
32298
+ const isAdminHeader = _optionalChain([config, 'optionalAccess', _618 => _618.className, 'optionalAccess', _619 => _619.includes, 'call', _620 => _620("admin")]);
32295
32299
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky top-0 z-40 w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
32296
32300
  "header",
32297
32301
  {
@@ -32300,11 +32304,11 @@ function HeaderSkeleton({ config }) {
32300
32304
  "bg-ods-card border-b border-ods-border backdrop-blur-sm",
32301
32305
  "px-6 py-3",
32302
32306
  "transition-opacity duration-300 ease-in-out",
32303
- _optionalChain([config, 'optionalAccess', _619 => _619.className])
32307
+ _optionalChain([config, 'optionalAccess', _621 => _621.className])
32304
32308
  ),
32305
32309
  children: [
32306
32310
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
32307
- isAdminHeader && _optionalChain([config, 'optionalAccess', _620 => _620.actions, 'optionalAccess', _621 => _621.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mr-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-10 bg-ods-border rounded animate-pulse" }) }),
32311
+ isAdminHeader && _optionalChain([config, 'optionalAccess', _622 => _622.actions, 'optionalAccess', _623 => _623.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "mr-4", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-10 bg-ods-border rounded animate-pulse" }) }),
32308
32312
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
32309
32313
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-8 bg-ods-border rounded animate-pulse" }),
32310
32314
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-6 w-24 bg-ods-border rounded animate-pulse" })
@@ -32312,8 +32316,8 @@ function HeaderSkeleton({ config }) {
32312
32316
  ] }),
32313
32317
  showNavigation && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "nav", { className: _chunkFIG2RKZFcjs.cn.call(void 0,
32314
32318
  "hidden md:flex items-center gap-2",
32315
- _optionalChain([config, 'optionalAccess', _622 => _622.navigation, 'optionalAccess', _623 => _623.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
32316
- _optionalChain([config, 'optionalAccess', _624 => _624.navigation, 'optionalAccess', _625 => _625.position]) === "right" && "ml-auto mr-4"
32319
+ _optionalChain([config, 'optionalAccess', _624 => _624.navigation, 'optionalAccess', _625 => _625.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
32320
+ _optionalChain([config, 'optionalAccess', _626 => _626.navigation, 'optionalAccess', _627 => _627.position]) === "right" && "ml-auto mr-4"
32317
32321
  ), children: [
32318
32322
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-20 bg-ods-border rounded animate-pulse" }),
32319
32323
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-28 bg-ods-border rounded animate-pulse" }),
@@ -32361,7 +32365,7 @@ function MobileNavPanel({ isOpen, config }) {
32361
32365
  _react.useEffect.call(void 0, () => {
32362
32366
  const handleKeyDown = (e) => {
32363
32367
  if (e.key === "Escape" && isOpen) {
32364
- _optionalChain([config, 'access', _626 => _626.onClose, 'optionalCall', _627 => _627()]);
32368
+ _optionalChain([config, 'access', _628 => _628.onClose, 'optionalCall', _629 => _629()]);
32365
32369
  }
32366
32370
  };
32367
32371
  if (isOpen) {
@@ -32378,7 +32382,7 @@ function MobileNavPanel({ isOpen, config }) {
32378
32382
  if (item.onClick) {
32379
32383
  item.onClick();
32380
32384
  }
32381
- _optionalChain([config, 'access', _628 => _628.onClose, 'optionalCall', _629 => _629()]);
32385
+ _optionalChain([config, 'access', _630 => _630.onClose, 'optionalCall', _631 => _631()]);
32382
32386
  };
32383
32387
  if (item.href) {
32384
32388
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -32548,7 +32552,7 @@ function SlidingSidebar({ config }) {
32548
32552
  variant: "transparent",
32549
32553
  size: "default",
32550
32554
  onClick: () => {
32551
- _optionalChain([item, 'access', _630 => _630.onClick, 'optionalCall', _631 => _631()]);
32555
+ _optionalChain([item, 'access', _632 => _632.onClick, 'optionalCall', _633 => _633()]);
32552
32556
  config.onClose();
32553
32557
  },
32554
32558
  leftIcon: item.icon,
@@ -32571,7 +32575,7 @@ function SlidingSidebar({ config }) {
32571
32575
  variant: "transparent",
32572
32576
  size: "default",
32573
32577
  onClick: () => {
32574
- _optionalChain([item, 'access', _632 => _632.onClick, 'optionalCall', _633 => _633()]);
32578
+ _optionalChain([item, 'access', _634 => _634.onClick, 'optionalCall', _635 => _635()]);
32575
32579
  config.onClose();
32576
32580
  },
32577
32581
  leftIcon: item.icon,
@@ -32698,7 +32702,7 @@ function StickySectionNav({
32698
32702
  ] });
32699
32703
  }
32700
32704
  function useSectionNavigation(sections, options) {
32701
- const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _634 => _634[0], 'optionalAccess', _635 => _635.id]) || "");
32705
+ const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _636 => _636[0], 'optionalAccess', _637 => _637.id]) || "");
32702
32706
  const isScrollingFromClick = _react.useRef.call(void 0, false);
32703
32707
  const { offset: offset2 = 100 } = options || {};
32704
32708
  const handleSectionClick = _react.useCallback.call(void 0, (sectionId) => {
@@ -32722,7 +32726,7 @@ function useSectionNavigation(sections, options) {
32722
32726
  const handleScroll = () => {
32723
32727
  if (isScrollingFromClick.current) return;
32724
32728
  const scrollPosition = window.scrollY + offset2 + 50;
32725
- let currentSection = _optionalChain([sections, 'access', _636 => _636[0], 'optionalAccess', _637 => _637.id]) || "";
32729
+ let currentSection = _optionalChain([sections, 'access', _638 => _638[0], 'optionalAccess', _639 => _639.id]) || "";
32726
32730
  for (let i = sections.length - 1; i >= 0; i--) {
32727
32731
  const element = document.getElementById(sections[i].id);
32728
32732
  if (element && scrollPosition >= element.offsetTop) {
@@ -32923,7 +32927,7 @@ function NavigationSidebar({ config, disabled = false }) {
32923
32927
  } else {
32924
32928
  setDesktopMinimized((prev) => !prev);
32925
32929
  }
32926
- _optionalChain([config, 'access', _638 => _638.onToggleMinimized, 'optionalCall', _639 => _639()]);
32930
+ _optionalChain([config, 'access', _640 => _640.onToggleMinimized, 'optionalCall', _641 => _641()]);
32927
32931
  }, [isTablet, setDesktopMinimized, config]);
32928
32932
  const closeOverlay = _react.useCallback.call(void 0, () => {
32929
32933
  setTabletMinimized(true);
@@ -32937,11 +32941,11 @@ function NavigationSidebar({ config, disabled = false }) {
32937
32941
  return () => document.removeEventListener("keydown", handleKeyDown);
32938
32942
  }, [isOverlayOpen, closeOverlay]);
32939
32943
  const handleItemClick = _react.useCallback.call(void 0, (item, event) => {
32940
- _optionalChain([event, 'optionalAccess', _640 => _640.stopPropagation, 'call', _641 => _641()]);
32944
+ _optionalChain([event, 'optionalAccess', _642 => _642.stopPropagation, 'call', _643 => _643()]);
32941
32945
  if (item.onClick) {
32942
32946
  item.onClick();
32943
32947
  } else if (item.path) {
32944
- _optionalChain([config, 'access', _642 => _642.onNavigate, 'optionalCall', _643 => _643(item.path)]);
32948
+ _optionalChain([config, 'access', _644 => _644.onNavigate, 'optionalCall', _645 => _645(item.path)]);
32945
32949
  }
32946
32950
  if (isTablet) setTabletMinimized(true);
32947
32951
  }, [config, isTablet]);
@@ -33061,11 +33065,11 @@ function HeaderGlobalSearch({
33061
33065
  };
33062
33066
  const handleSubmit = (e) => {
33063
33067
  e.preventDefault();
33064
- _optionalChain([onSubmit, 'optionalCall', _644 => _644(currentValue)]);
33068
+ _optionalChain([onSubmit, 'optionalCall', _646 => _646(currentValue)]);
33065
33069
  };
33066
33070
  const handleKeyDown = (e) => {
33067
33071
  if (e.key === "Enter") {
33068
- _optionalChain([onSubmit, 'optionalCall', _645 => _645(currentValue)]);
33072
+ _optionalChain([onSubmit, 'optionalCall', _647 => _647(currentValue)]);
33069
33073
  }
33070
33074
  };
33071
33075
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -33159,8 +33163,8 @@ function HeaderOrganizationFilter({
33159
33163
  className
33160
33164
  }) {
33161
33165
  const selectedOrg = organizations.find((o) => o.id === selectedOrgId);
33162
- const displayName = _optionalChain([selectedOrg, 'optionalAccess', _646 => _646.name]) || "All Organizations";
33163
- const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _647 => _647.deviceCount]), () => ( totalDeviceCount));
33166
+ const displayName = _optionalChain([selectedOrg, 'optionalAccess', _648 => _648.name]) || "All Organizations";
33167
+ const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _649 => _649.deviceCount]), () => ( totalDeviceCount));
33164
33168
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkQJGRP2YEcjs.DropdownMenu, { children: [
33165
33169
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
33166
33170
  "button",
@@ -33185,11 +33189,11 @@ function HeaderOrganizationFilter({
33185
33189
  }
33186
33190
  ) }),
33187
33191
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkQJGRP2YEcjs.DropdownMenuContent, { align: "end", className: "min-w-[240px]", children: [
33188
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _648 => _648("")]), children: "All Organizations" }),
33192
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQJGRP2YEcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _650 => _650("")]), children: "All Organizations" }),
33189
33193
  organizations.map((org) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33190
33194
  _chunkQJGRP2YEcjs.DropdownMenuItem,
33191
33195
  {
33192
- onClick: () => _optionalChain([onOrgChange, 'optionalCall', _649 => _649(org.id)]),
33196
+ onClick: () => _optionalChain([onOrgChange, 'optionalCall', _651 => _651(org.id)]),
33193
33197
  children: org.name
33194
33198
  },
33195
33199
  org.id
@@ -33379,9 +33383,9 @@ function NotificationsHeaderButton({
33379
33383
  dimmedClass
33380
33384
  }) {
33381
33385
  const ctx = useOptionalNotifications();
33382
- const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _650 => _650.unreadCount]), () => ( fallbackUnreadCount))) > 0;
33383
- const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _651 => _651.isOpen]), () => ( false));
33384
- const onClick = _optionalChain([ctx, 'optionalAccess', _652 => _652.toggle]);
33386
+ const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _652 => _652.unreadCount]), () => ( fallbackUnreadCount))) > 0;
33387
+ const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _653 => _653.isOpen]), () => ( false));
33388
+ const onClick = _optionalChain([ctx, 'optionalAccess', _654 => _654.toggle]);
33385
33389
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33386
33390
  HeaderButton,
33387
33391
  {
@@ -33445,7 +33449,7 @@ var MobileBurgerMenu = React114.default.memo(function MobileBurgerMenu2({
33445
33449
  if (item.onClick) {
33446
33450
  item.onClick();
33447
33451
  } else if (item.path) {
33448
- _optionalChain([config, 'access', _653 => _653.onNavigate, 'optionalCall', _654 => _654(item.path)]);
33452
+ _optionalChain([config, 'access', _655 => _655.onNavigate, 'optionalCall', _656 => _656(item.path)]);
33449
33453
  }
33450
33454
  onClose();
33451
33455
  }, [config, onClose]);
@@ -33688,7 +33692,7 @@ var AppLayoutDrawerRoot = ({
33688
33692
  const handleOpenChange = React107.useCallback(
33689
33693
  (next) => {
33690
33694
  if (!isControlled) setInternalOpen(next);
33691
- _optionalChain([onOpenChange, 'optionalCall', _655 => _655(next)]);
33695
+ _optionalChain([onOpenChange, 'optionalCall', _657 => _657(next)]);
33692
33696
  },
33693
33697
  [isControlled, onOpenChange]
33694
33698
  );
@@ -34069,10 +34073,10 @@ var AppLayoutDrawerContent = React107.forwardRef(
34069
34073
  ),
34070
34074
  style,
34071
34075
  onInteractOutside: (event) => {
34072
- _optionalChain([onInteractOutside, 'optionalCall', _656 => _656(event)]);
34076
+ _optionalChain([onInteractOutside, 'optionalCall', _658 => _658(event)]);
34073
34077
  if (event.defaultPrevented) return;
34074
34078
  const target = event.target;
34075
- const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _657 => _657.contains, 'call', _658 => _658(target)]);
34079
+ const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _659 => _659.contains, 'call', _660 => _660(target)]);
34076
34080
  if (!isInsideContainer) {
34077
34081
  event.preventDefault();
34078
34082
  return;
@@ -34485,7 +34489,7 @@ var ShellTypeBadge = ({
34485
34489
  className,
34486
34490
  iconClassName
34487
34491
  }) => {
34488
- const normalizedType = _optionalChain([shellType, 'optionalAccess', _659 => _659.toUpperCase, 'call', _660 => _660()]);
34492
+ const normalizedType = _optionalChain([shellType, 'optionalAccess', _661 => _661.toUpperCase, 'call', _662 => _662()]);
34489
34493
  const label = getShellLabel(normalizedType);
34490
34494
  const { icon: IconComponent, props: iconProps } = _nullishCoalesce(shellIconMap[normalizedType], () => ( defaultIconConfig));
34491
34495
  const defaultIconClassName = "className" in iconProps ? iconProps.className : void 0;
@@ -34872,12 +34876,12 @@ function OnboardingWalkthrough({
34872
34876
  }
34873
34877
  }, [state.completedSteps, markComplete]);
34874
34878
  const handleStepSkip = (step) => {
34875
- _optionalChain([step, 'access', _661 => _661.onSkip, 'optionalCall', _662 => _662()]);
34879
+ _optionalChain([step, 'access', _663 => _663.onSkip, 'optionalCall', _664 => _664()]);
34876
34880
  markSkipped(step.id);
34877
34881
  };
34878
34882
  const handleDismiss = () => {
34879
34883
  dismissOnboarding();
34880
- _optionalChain([onDismiss, 'optionalCall', _663 => _663()]);
34884
+ _optionalChain([onDismiss, 'optionalCall', _665 => _665()]);
34881
34885
  };
34882
34886
  if (state.dismissed) {
34883
34887
  return null;
@@ -35007,7 +35011,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
35007
35011
  onKeyDown: (e) => {
35008
35012
  if (e.key === "Enter" || e.key === " ") {
35009
35013
  e.preventDefault();
35010
- _optionalChain([onClick, 'optionalCall', _664 => _664()]);
35014
+ _optionalChain([onClick, 'optionalCall', _666 => _666()]);
35011
35015
  }
35012
35016
  },
35013
35017
  children: [
@@ -35108,7 +35112,7 @@ var LogsList = React111.forwardRef(({
35108
35112
  log,
35109
35113
  isLast: index === logs.length - 1,
35110
35114
  showConnector,
35111
- onClick: () => _optionalChain([onLogClick, 'optionalCall', _665 => _665(log)])
35115
+ onClick: () => _optionalChain([onLogClick, 'optionalCall', _667 => _667(log)])
35112
35116
  },
35113
35117
  log.id
35114
35118
  ))
@@ -35209,7 +35213,7 @@ var Slider = React113.forwardRef(
35209
35213
  ({ className, value = [0], onValueChange, min = 0, max = 100, step = 1, ...props }, ref) => {
35210
35214
  const handleChange = (e) => {
35211
35215
  const newValue = [Number(e.target.value)];
35212
- _optionalChain([onValueChange, 'optionalCall', _666 => _666(newValue)]);
35216
+ _optionalChain([onValueChange, 'optionalCall', _668 => _668(newValue)]);
35213
35217
  };
35214
35218
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35215
35219
  "input",
@@ -35640,7 +35644,7 @@ function CursorPaginationSimple({
35640
35644
  {
35641
35645
  variant: "transparent",
35642
35646
  size: "icon",
35643
- onClick: () => _optionalChain([onPrevious, 'optionalCall', _667 => _667("")]),
35647
+ onClick: () => _optionalChain([onPrevious, 'optionalCall', _669 => _669("")]),
35644
35648
  disabled: !hasPreviousPage || loading,
35645
35649
  className: "h-8 w-8",
35646
35650
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" }),
@@ -35652,7 +35656,7 @@ function CursorPaginationSimple({
35652
35656
  {
35653
35657
  variant: "transparent",
35654
35658
  size: "icon",
35655
- onClick: () => _optionalChain([onNext, 'optionalCall', _668 => _668("")]),
35659
+ onClick: () => _optionalChain([onNext, 'optionalCall', _670 => _670("")]),
35656
35660
  disabled: !hasNextPage || loading,
35657
35661
  className: "h-8 w-8",
35658
35662
  rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
@@ -35672,8 +35676,8 @@ function TableEmptyState({ message: message2, icon, action, className }) {
35672
35676
  icon: _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, {}))),
35673
35677
  title: _nullishCoalesce(message2, () => ( "No results found")),
35674
35678
  description: message2 == null ? "Try adjusting your search or filters" : void 0,
35675
- buttonLabel: _optionalChain([action, 'optionalAccess', _669 => _669.label]),
35676
- onButtonClick: _optionalChain([action, 'optionalAccess', _670 => _670.onClick]),
35679
+ buttonLabel: _optionalChain([action, 'optionalAccess', _671 => _671.label]),
35680
+ onButtonClick: _optionalChain([action, 'optionalAccess', _672 => _672.onClick]),
35677
35681
  className: _chunkFIG2RKZFcjs.cn.call(void 0, "py-[var(--spacing-system-xxl)]", className)
35678
35682
  }
35679
35683
  );
@@ -35694,7 +35698,7 @@ function TableColumnFilterDropdown({
35694
35698
  placement = "bottom-start",
35695
35699
  dropdownClassName = "min-w-[240px]"
35696
35700
  }) {
35697
- const activeCount = _optionalChain([filters, 'optionalAccess', _671 => _671[columnKey], 'optionalAccess', _672 => _672.length]) || 0;
35701
+ const activeCount = _optionalChain([filters, 'optionalAccess', _673 => _673[columnKey], 'optionalAccess', _674 => _674.length]) || 0;
35698
35702
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35699
35703
  FiltersDropdown,
35700
35704
  {
@@ -35737,7 +35741,7 @@ function TableColumnFilterDropdown({
35737
35741
  delete newFilters[columnKey];
35738
35742
  onFilterChange(newFilters);
35739
35743
  },
35740
- currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _673 => _673[columnKey]]) || [] },
35744
+ currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _675 => _675[columnKey]]) || [] },
35741
35745
  placement,
35742
35746
  dropdownClassName
35743
35747
  }
@@ -35947,7 +35951,7 @@ function TableCardSkeleton({
35947
35951
  className,
35948
35952
  rowClassName
35949
35953
  }) {
35950
- const primaryKey = _optionalChain([(_nullishCoalesce(columns.find((c) => /flex-(1|\[)/.test(c.width || "")), () => ( columns[0]))), 'optionalAccess', _674 => _674.key]);
35954
+ const primaryKey = _optionalChain([(_nullishCoalesce(columns.find((c) => /flex-(1|\[)/.test(c.width || "")), () => ( columns[0]))), 'optionalAccess', _676 => _676.key]);
35951
35955
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
35952
35956
  "div",
35953
35957
  {
@@ -36040,7 +36044,7 @@ function TableRow({
36040
36044
  const keys = column.key.split(".");
36041
36045
  let value = item;
36042
36046
  for (const key of keys) {
36043
- value = _optionalChain([value, 'optionalAccess', _675 => _675[key]]);
36047
+ value = _optionalChain([value, 'optionalAccess', _677 => _677[key]]);
36044
36048
  }
36045
36049
  if (value === null || value === void 0) {
36046
36050
  return "-";
@@ -36129,7 +36133,7 @@ function useTableMotion(enabled) {
36129
36133
  // src/components/ui/table/table.tsx
36130
36134
 
36131
36135
  function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref) {
36132
- const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _676 => _676.length])) || Boolean(renderRowActions);
36136
+ const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _678 => _678.length])) || Boolean(renderRowActions);
36133
36137
  const result = [...columns];
36134
36138
  if (hasActions) {
36135
36139
  const actionsColumn = {
@@ -36225,7 +36229,7 @@ function Table({
36225
36229
  return rowKey(item);
36226
36230
  }
36227
36231
  const key = item[rowKey];
36228
- return _optionalChain([key, 'optionalAccess', _677 => _677.toString, 'call', _678 => _678()]) || index.toString();
36232
+ return _optionalChain([key, 'optionalAccess', _679 => _679.toString, 'call', _680 => _680()]) || index.toString();
36229
36233
  };
36230
36234
  const getRowClassName = (item, index) => {
36231
36235
  if (typeof rowClassName === "function") {
@@ -36259,23 +36263,23 @@ function Table({
36259
36263
  const allSelected = selectedRows.length > 0 && selectedRows.length === data.length;
36260
36264
  const someSelected = selectedRows.length > 0 && selectedRows.length < data.length;
36261
36265
  const sentinelRef = _react.useRef.call(void 0, null);
36262
- const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _679 => _679.onLoadMore]));
36263
- onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _680 => _680.onLoadMore]);
36266
+ const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _681 => _681.onLoadMore]));
36267
+ onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _682 => _682.onLoadMore]);
36264
36268
  _react.useEffect.call(void 0, () => {
36265
- if (!_optionalChain([infiniteScroll, 'optionalAccess', _681 => _681.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
36269
+ if (!_optionalChain([infiniteScroll, 'optionalAccess', _683 => _683.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
36266
36270
  const sentinel = sentinelRef.current;
36267
36271
  if (!sentinel) return;
36268
36272
  const observer = new IntersectionObserver(
36269
36273
  (entries) => {
36270
- if (_optionalChain([entries, 'access', _682 => _682[0], 'optionalAccess', _683 => _683.isIntersecting])) {
36271
- _optionalChain([onLoadMoreRef, 'access', _684 => _684.current, 'optionalCall', _685 => _685()]);
36274
+ if (_optionalChain([entries, 'access', _684 => _684[0], 'optionalAccess', _685 => _685.isIntersecting])) {
36275
+ _optionalChain([onLoadMoreRef, 'access', _686 => _686.current, 'optionalCall', _687 => _687()]);
36272
36276
  }
36273
36277
  },
36274
36278
  { rootMargin: "200px" }
36275
36279
  );
36276
36280
  observer.observe(sentinel);
36277
36281
  return () => observer.disconnect();
36278
- }, [_optionalChain([infiniteScroll, 'optionalAccess', _686 => _686.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _687 => _687.isFetchingNextPage])]);
36282
+ }, [_optionalChain([infiniteScroll, 'optionalAccess', _688 => _688.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _689 => _689.isFetchingNextPage])]);
36279
36283
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-1 w-full", containerClassName), children: [
36280
36284
  showToolbar && bulkActions && selectedRows.length > 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-between bg-ods-card border border-ods-border rounded-[6px] p-3 mb-2", children: [
36281
36285
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary text-sm", children: [
@@ -36345,14 +36349,14 @@ function Table({
36345
36349
  selected: isRowSelected(item),
36346
36350
  onSelect: handleSelectRow,
36347
36351
  animateRowReorder,
36348
- motionDiv: _optionalChain([tableMotion, 'optionalAccess', _688 => _688.motionDiv])
36352
+ motionDiv: _optionalChain([tableMotion, 'optionalAccess', _690 => _690.motionDiv])
36349
36353
  },
36350
36354
  getRowKey(item, index)
36351
36355
  ));
36352
- const LayoutGroup = _optionalChain([tableMotion, 'optionalAccess', _689 => _689.LayoutGroup]);
36356
+ const LayoutGroup = _optionalChain([tableMotion, 'optionalAccess', _691 => _691.LayoutGroup]);
36353
36357
  return animateRowReorder && LayoutGroup ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, LayoutGroup, { children: rows }) : rows;
36354
36358
  })(),
36355
- _optionalChain([infiniteScroll, 'optionalAccess', _690 => _690.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36359
+ _optionalChain([infiniteScroll, 'optionalAccess', _692 => _692.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36356
36360
  TableCardSkeleton,
36357
36361
  {
36358
36362
  columns,
@@ -36361,7 +36365,7 @@ function Table({
36361
36365
  hasChevron: Boolean(rowHref)
36362
36366
  }
36363
36367
  ),
36364
- _optionalChain([infiniteScroll, 'optionalAccess', _691 => _691.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
36368
+ _optionalChain([infiniteScroll, 'optionalAccess', _693 => _693.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
36365
36369
  !infiniteScroll && Array.from({ length: Math.max(0, skeletonRows - data.length) }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
36366
36370
  "div",
36367
36371
  {
@@ -36719,7 +36723,7 @@ function QueryReportTable({
36719
36723
  );
36720
36724
  const handleExport = () => {
36721
36725
  exportToCSV(data, columns, exportFilename);
36722
- _optionalChain([onExport, 'optionalCall', _692 => _692()]);
36726
+ _optionalChain([onExport, 'optionalCall', _694 => _694()]);
36723
36727
  };
36724
36728
  const tableMinWidth = columns.length * (columnWidth + 16);
36725
36729
  const {
@@ -36892,7 +36896,7 @@ function DataTableColumnFilter({
36892
36896
  align = "left"
36893
36897
  }) {
36894
36898
  const currentValue = column.getFilterValue();
36895
- const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _693 => _693.length]), () => ( 0));
36899
+ const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _695 => _695.length]), () => ( 0));
36896
36900
  const sections = _react.useMemo.call(void 0,
36897
36901
  () => [
36898
36902
  {
@@ -36972,7 +36976,7 @@ function DataTableHeader({
36972
36976
  const hasVisibleHeaderCell = headerGroup.headers.some((header) => {
36973
36977
  if (header.isPlaceholder) return false;
36974
36978
  if (isLgUp) return true;
36975
- return Boolean(_optionalChain([header, 'access', _694 => _694.column, 'access', _695 => _695.columnDef, 'access', _696 => _696.meta, 'optionalAccess', _697 => _697.filter]));
36979
+ return Boolean(_optionalChain([header, 'access', _696 => _696.column, 'access', _697 => _697.columnDef, 'access', _698 => _698.meta, 'optionalAccess', _699 => _699.filter]));
36976
36980
  });
36977
36981
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36978
36982
  "div",
@@ -37002,20 +37006,20 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
37002
37006
  if (header.isPlaceholder) return null;
37003
37007
  const column = header.column;
37004
37008
  const meta = column.columnDef.meta;
37005
- const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _698 => _698.filter]));
37006
- const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _699 => _699.align]), () => ( "left"));
37007
- const canSort = _optionalChain([meta, 'optionalAccess', _700 => _700.sortable]) === true;
37008
- const sortDir = _optionalChain([sort, 'optionalAccess', _701 => _701.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
37009
+ const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _700 => _700.filter]));
37010
+ const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _701 => _701.align]), () => ( "left"));
37011
+ const canSort = _optionalChain([meta, 'optionalAccess', _702 => _702.sortable]) === true;
37012
+ const sortDir = _optionalChain([sort, 'optionalAccess', _703 => _703.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
37009
37013
  if (!isLgUp && !hasFilter) return null;
37010
37014
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37011
37015
  "div",
37012
37016
  {
37013
37017
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
37014
37018
  "flex items-stretch",
37015
- isLgUp && (_optionalChain([meta, 'optionalAccess', _702 => _702.width]) || "flex-1 min-w-0"),
37016
- _optionalChain([meta, 'optionalAccess', _703 => _703.headerClassName]),
37019
+ isLgUp && (_optionalChain([meta, 'optionalAccess', _704 => _704.width]) || "flex-1 min-w-0"),
37020
+ _optionalChain([meta, 'optionalAccess', _705 => _705.headerClassName]),
37017
37021
  // Don't apply hide classes if column is filterable on tablet (keep filter accessible)
37018
- !(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _704 => _704.hideAt]))
37022
+ !(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _706 => _706.hideAt]))
37019
37023
  ),
37020
37024
  children: hasFilter ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37021
37025
  DataTableColumnFilter,
@@ -37034,7 +37038,7 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
37034
37038
  isLgUp && alignJustify(align),
37035
37039
  canSort && "group cursor-pointer"
37036
37040
  ),
37037
- onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _705 => _705(column.id)]) : void 0,
37041
+ onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _707 => _707(column.id)]) : void 0,
37038
37042
  children: [
37039
37043
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
37040
37044
  canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
@@ -37099,7 +37103,7 @@ function DataTableSkeleton({
37099
37103
  }) {
37100
37104
  const table = useDataTableContext();
37101
37105
  const columns = table.getVisibleFlatColumns();
37102
- const firstColumnId = _optionalChain([columns, 'access', _706 => _706[0], 'optionalAccess', _707 => _707.id]);
37106
+ const firstColumnId = _optionalChain([columns, 'access', _708 => _708[0], 'optionalAccess', _709 => _709.id]);
37103
37107
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
37104
37108
  "div",
37105
37109
  {
@@ -37123,7 +37127,7 @@ function DataTableSkeleton({
37123
37127
  {
37124
37128
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
37125
37129
  "flex flex-col justify-center shrink-0",
37126
- _optionalChain([meta, 'optionalAccess', _708 => _708.width]) || "flex-1"
37130
+ _optionalChain([meta, 'optionalAccess', _710 => _710.width]) || "flex-1"
37127
37131
  ),
37128
37132
  children: [
37129
37133
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 bg-ods-bg-surface rounded-sm w-3/4 mb-[var(--spacing-system-xxs)]" }),
@@ -37172,7 +37176,7 @@ function DataTableRowImpl({
37172
37176
  const handleClick = _react.useCallback.call(void 0,
37173
37177
  (e) => {
37174
37178
  const target = e.target;
37175
- if (!_optionalChain([containerRef, 'access', _709 => _709.current, 'optionalAccess', _710 => _710.contains, 'call', _711 => _711(target)])) {
37179
+ if (!_optionalChain([containerRef, 'access', _711 => _711.current, 'optionalAccess', _712 => _712.contains, 'call', _713 => _713(target)])) {
37176
37180
  if (isLinkMode) e.preventDefault();
37177
37181
  return;
37178
37182
  }
@@ -37180,7 +37184,7 @@ function DataTableRowImpl({
37180
37184
  if (isLinkMode) e.preventDefault();
37181
37185
  return;
37182
37186
  }
37183
- _optionalChain([onClick, 'optionalCall', _712 => _712(row.original)]);
37187
+ _optionalChain([onClick, 'optionalCall', _714 => _714(row.original)]);
37184
37188
  },
37185
37189
  [onClick, row.original, isLinkMode]
37186
37190
  );
@@ -37205,10 +37209,10 @@ function DataTableRowImpl({
37205
37209
  {
37206
37210
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
37207
37211
  "flex flex-col overflow-hidden",
37208
- alignJustify(_optionalChain([meta, 'optionalAccess', _713 => _713.align])),
37209
- _optionalChain([meta, 'optionalAccess', _714 => _714.width]) || "flex-1 min-w-0",
37210
- _optionalChain([meta, 'optionalAccess', _715 => _715.cellClassName]),
37211
- getHideClasses2(_optionalChain([meta, 'optionalAccess', _716 => _716.hideAt]))
37212
+ alignJustify(_optionalChain([meta, 'optionalAccess', _715 => _715.align])),
37213
+ _optionalChain([meta, 'optionalAccess', _716 => _716.width]) || "flex-1 min-w-0",
37214
+ _optionalChain([meta, 'optionalAccess', _717 => _717.cellClassName]),
37215
+ getHideClasses2(_optionalChain([meta, 'optionalAccess', _718 => _718.hideAt]))
37212
37216
  ),
37213
37217
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CellContent, { children: _reacttable.flexRender.call(void 0, cell.column.columnDef.cell, cell.getContext()) })
37214
37218
  },
@@ -37287,7 +37291,7 @@ function DataTableBody({
37287
37291
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-[var(--spacing-system-xsf)] w-full", className), children: [
37288
37292
  rows.map((row, index) => {
37289
37293
  const item = row.original;
37290
- const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _717 => _717(item)]), () => ( void 0));
37294
+ const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _719 => _719(item)]), () => ( void 0));
37291
37295
  const cls = typeof rowClassName === "function" ? rowClassName(item, index) : rowClassName;
37292
37296
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37293
37297
  DataTableRow,
@@ -37297,7 +37301,7 @@ function DataTableBody({
37297
37301
  href,
37298
37302
  compact,
37299
37303
  className: cls,
37300
- subRow: _optionalChain([renderSubRow, 'optionalCall', _718 => _718(item)])
37304
+ subRow: _optionalChain([renderSubRow, 'optionalCall', _720 => _720(item)])
37301
37305
  },
37302
37306
  row.id
37303
37307
  );
@@ -37352,7 +37356,7 @@ function DataTableInfiniteFooter({
37352
37356
  if (!sentinel) return;
37353
37357
  const observer = new IntersectionObserver(
37354
37358
  (entries) => {
37355
- if (_optionalChain([entries, 'access', _719 => _719[0], 'optionalAccess', _720 => _720.isIntersecting])) onLoadMoreRef.current();
37359
+ if (_optionalChain([entries, 'access', _721 => _721[0], 'optionalAccess', _722 => _722.isIntersecting])) onLoadMoreRef.current();
37356
37360
  },
37357
37361
  { rootMargin }
37358
37362
  );
@@ -37400,7 +37404,7 @@ function DataTableRowCount({
37400
37404
  const table = useDataTableContext();
37401
37405
  const count = _nullishCoalesce(totalCount, () => ( table.getRowModel().rows.length));
37402
37406
  if (hideWhenEmpty && count === 0) return null;
37403
- const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _721 => _721(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
37407
+ const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _723 => _723(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
37404
37408
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
37405
37409
  "span",
37406
37410
  {
@@ -37559,7 +37563,7 @@ function SearchInput({
37559
37563
  if (!showHiddenTags) return;
37560
37564
  const handleClick = (e) => {
37561
37565
  const target = e.target;
37562
- if (!_optionalChain([hiddenTagsRef, 'access', _722 => _722.current, 'optionalAccess', _723 => _723.contains, 'call', _724 => _724(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _725 => _725.current, 'optionalAccess', _726 => _726.contains, 'call', _727 => _727(target)])) {
37566
+ if (!_optionalChain([hiddenTagsRef, 'access', _724 => _724.current, 'optionalAccess', _725 => _725.contains, 'call', _726 => _726(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _727 => _727.current, 'optionalAccess', _728 => _728.contains, 'call', _729 => _729(target)])) {
37563
37567
  setShowHiddenTags(false);
37564
37568
  }
37565
37569
  };
@@ -37607,10 +37611,10 @@ function SearchInput({
37607
37611
  } else {
37608
37612
  setInternalValue("");
37609
37613
  }
37610
- _optionalChain([inputRef, 'access', _728 => _728.current, 'optionalAccess', _729 => _729.focus, 'call', _730 => _730()]);
37614
+ _optionalChain([inputRef, 'access', _730 => _730.current, 'optionalAccess', _731 => _731.focus, 'call', _732 => _732()]);
37611
37615
  };
37612
37616
  const handleResultClick = (result, e) => {
37613
- _optionalChain([onResultSelect, 'optionalCall', _731 => _731(
37617
+ _optionalChain([onResultSelect, 'optionalCall', _733 => _733(
37614
37618
  result,
37615
37619
  e ? {
37616
37620
  metaKey: e.metaKey,
@@ -37642,7 +37646,7 @@ function SearchInput({
37642
37646
  if (highlightedIndex >= 0 && flatResults[highlightedIndex]) {
37643
37647
  handleResultClick(flatResults[highlightedIndex]);
37644
37648
  } else {
37645
- _optionalChain([onSubmit, 'optionalCall', _732 => _732(currentValue)]);
37649
+ _optionalChain([onSubmit, 'optionalCall', _734 => _734(currentValue)]);
37646
37650
  }
37647
37651
  break;
37648
37652
  case "Escape":
@@ -37720,7 +37724,7 @@ function SearchInput({
37720
37724
  dropdownVisible && "!border-ods-accent"
37721
37725
  ),
37722
37726
  onClick: () => {
37723
- _optionalChain([inputRef, 'access', _733 => _733.current, 'optionalAccess', _734 => _734.focus, 'call', _735 => _735()]);
37727
+ _optionalChain([inputRef, 'access', _735 => _735.current, 'optionalAccess', _736 => _736.focus, 'call', _737 => _737()]);
37724
37728
  setIsOpen(true);
37725
37729
  },
37726
37730
  children: [
@@ -37804,10 +37808,10 @@ function SearchInput({
37804
37808
  align: "start",
37805
37809
  onOpenAutoFocus: (e) => {
37806
37810
  e.preventDefault();
37807
- _optionalChain([inputRef, 'access', _736 => _736.current, 'optionalAccess', _737 => _737.focus, 'call', _738 => _738()]);
37811
+ _optionalChain([inputRef, 'access', _738 => _738.current, 'optionalAccess', _739 => _739.focus, 'call', _740 => _740()]);
37808
37812
  },
37809
37813
  onInteractOutside: (e) => {
37810
- if (_optionalChain([containerRef, 'access', _739 => _739.current, 'optionalAccess', _740 => _740.contains, 'call', _741 => _741(e.target)])) {
37814
+ if (_optionalChain([containerRef, 'access', _741 => _741.current, 'optionalAccess', _742 => _742.contains, 'call', _743 => _743(e.target)])) {
37811
37815
  e.preventDefault();
37812
37816
  }
37813
37817
  },
@@ -37824,10 +37828,10 @@ function SearchInput({
37824
37828
  ref: hiddenTagsPopupRef,
37825
37829
  items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
37826
37830
  style: {
37827
- left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _742 => _742.current, 'optionalAccess', _743 => _743.getBoundingClientRect, 'call', _744 => _744(), 'access', _745 => _745.left]), () => ( 0))) : 0
37831
+ left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _744 => _744.current, 'optionalAccess', _745 => _745.getBoundingClientRect, 'call', _746 => _746(), 'access', _747 => _747.left]), () => ( 0))) : 0
37828
37832
  },
37829
37833
  onRemove: (value2) => {
37830
- _optionalChain([onFilterRemove, 'optionalCall', _746 => _746(value2)]);
37834
+ _optionalChain([onFilterRemove, 'optionalCall', _748 => _748(value2)]);
37831
37835
  if (hiddenCount <= 1) setShowHiddenTags(false);
37832
37836
  }
37833
37837
  }
@@ -37878,7 +37882,7 @@ function FilterListItem({
37878
37882
  }) {
37879
37883
  const handleToggle = () => {
37880
37884
  if (disabled) return;
37881
- _optionalChain([onToggle, 'optionalCall', _747 => _747(!selected)]);
37885
+ _optionalChain([onToggle, 'optionalCall', _749 => _749(!selected)]);
37882
37886
  };
37883
37887
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
37884
37888
  "div",
@@ -37925,7 +37929,7 @@ function FilterListItem({
37925
37929
  CheckboxPrimitive4.Root,
37926
37930
  {
37927
37931
  checked: selected,
37928
- onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _748 => _748(c === true)]),
37932
+ onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _750 => _750(c === true)]),
37929
37933
  onClick: (e) => e.stopPropagation(),
37930
37934
  disabled,
37931
37935
  "aria-label": title,
@@ -38024,7 +38028,7 @@ function TagSearchInput({
38024
38028
  if (!showHiddenTags) return;
38025
38029
  const handleClick = (e) => {
38026
38030
  const target = e.target;
38027
- if (!_optionalChain([hiddenTagsRef, 'access', _749 => _749.current, 'optionalAccess', _750 => _750.contains, 'call', _751 => _751(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _752 => _752.current, 'optionalAccess', _753 => _753.contains, 'call', _754 => _754(target)])) {
38031
+ if (!_optionalChain([hiddenTagsRef, 'access', _751 => _751.current, 'optionalAccess', _752 => _752.contains, 'call', _753 => _753(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _754 => _754.current, 'optionalAccess', _755 => _755.contains, 'call', _756 => _756(target)])) {
38028
38032
  setShowHiddenTags(false);
38029
38033
  }
38030
38034
  };
@@ -38040,13 +38044,13 @@ function TagSearchInput({
38040
38044
  e.preventDefault();
38041
38045
  onSubmit(searchValue);
38042
38046
  }
38043
- _optionalChain([onKeyDown, 'optionalCall', _755 => _755(e)]);
38047
+ _optionalChain([onKeyDown, 'optionalCall', _757 => _757(e)]);
38044
38048
  };
38045
38049
  const handleClearAll = (e) => {
38046
38050
  e.stopPropagation();
38047
38051
  e.preventDefault();
38048
- _optionalChain([onClearAll, 'optionalCall', _756 => _756()]);
38049
- _optionalChain([inputRef, 'access', _757 => _757.current, 'optionalAccess', _758 => _758.focus, 'call', _759 => _759()]);
38052
+ _optionalChain([onClearAll, 'optionalCall', _758 => _758()]);
38053
+ _optionalChain([inputRef, 'access', _759 => _759.current, 'optionalAccess', _760 => _760.focus, 'call', _761 => _761()]);
38050
38054
  };
38051
38055
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: wrapperRef, className: "relative", children: [
38052
38056
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -38063,7 +38067,7 @@ function TagSearchInput({
38063
38067
  className
38064
38068
  ),
38065
38069
  onClick: () => {
38066
- if (!disabled) _optionalChain([inputRef, 'access', _760 => _760.current, 'optionalAccess', _761 => _761.focus, 'call', _762 => _762()]);
38070
+ if (!disabled) _optionalChain([inputRef, 'access', _762 => _762.current, 'optionalAccess', _763 => _763.focus, 'call', _764 => _764()]);
38067
38071
  },
38068
38072
  children: [
38069
38073
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 flex items-center pl-3", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, { className: "text-ods-text-secondary size-4 md:size-6" }) }),
@@ -38135,7 +38139,7 @@ function TagSearchInput({
38135
38139
  items: hiddenTags,
38136
38140
  disabled,
38137
38141
  style: {
38138
- left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _763 => _763.current, 'optionalAccess', _764 => _764.getBoundingClientRect, 'call', _765 => _765(), 'access', _766 => _766.left]), () => ( 0))) : 0
38142
+ left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _765 => _765.current, 'optionalAccess', _766 => _766.getBoundingClientRect, 'call', _767 => _767(), 'access', _768 => _768.left]), () => ( 0))) : 0
38139
38143
  },
38140
38144
  onRemove: (value) => {
38141
38145
  onTagRemove(value);
@@ -38236,7 +38240,7 @@ function MarkdownEditor({
38236
38240
  const [defaultExtraCommands, setDefaultExtraCommands] = _react.useState.call(void 0, []);
38237
38241
  _react.useEffect.call(void 0, () => {
38238
38242
  Promise.resolve().then(() => _interopRequireWildcard(require("@uiw/react-md-editor"))).then((mod) => {
38239
- if (_optionalChain([mod, 'access', _767 => _767.commands, 'optionalAccess', _768 => _768.getExtraCommands])) {
38243
+ if (_optionalChain([mod, 'access', _769 => _769.commands, 'optionalAccess', _770 => _770.getExtraCommands])) {
38240
38244
  setDefaultExtraCommands(mod.commands.getExtraCommands());
38241
38245
  }
38242
38246
  });
@@ -38270,7 +38274,7 @@ function MarkdownEditor({
38270
38274
  const isImage = file.type.startsWith("image/");
38271
38275
  const markdown = isImage ? `![${file.name}](${url})` : `[${file.name}](${url})`;
38272
38276
  insertTextAtCursor(markdown);
38273
- _optionalChain([onFileUploaded, 'optionalCall', _769 => _769(url, file.name)]);
38277
+ _optionalChain([onFileUploaded, 'optionalCall', _771 => _771(url, file.name)]);
38274
38278
  } catch (error) {
38275
38279
  console.error("File upload failed:", error);
38276
38280
  setUploadProgress("Upload failed. Please try again.");
@@ -38283,7 +38287,7 @@ function MarkdownEditor({
38283
38287
  );
38284
38288
  const handleFileInputChange = _react.useCallback.call(void 0,
38285
38289
  (e) => {
38286
- const file = _optionalChain([e, 'access', _770 => _770.target, 'access', _771 => _771.files, 'optionalAccess', _772 => _772[0]]);
38290
+ const file = _optionalChain([e, 'access', _772 => _772.target, 'access', _773 => _773.files, 'optionalAccess', _774 => _774[0]]);
38287
38291
  if (file) {
38288
38292
  handleFileUpload(file);
38289
38293
  e.target.value = "";
@@ -38294,7 +38298,7 @@ function MarkdownEditor({
38294
38298
  const handlePaste = _react.useCallback.call(void 0,
38295
38299
  (e) => {
38296
38300
  if (!onUploadFile) return;
38297
- const items = _optionalChain([e, 'access', _773 => _773.clipboardData, 'optionalAccess', _774 => _774.items]);
38301
+ const items = _optionalChain([e, 'access', _775 => _775.clipboardData, 'optionalAccess', _776 => _776.items]);
38298
38302
  if (!items) return;
38299
38303
  for (const item of items) {
38300
38304
  if (item.type.startsWith("image/")) {
@@ -38319,7 +38323,7 @@ function MarkdownEditor({
38319
38323
  buttonProps: { "aria-label": "Upload file", title: "Upload file" },
38320
38324
  icon: isUploading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "w-3 h-3 animate-spin" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "w-3 h-3" }),
38321
38325
  execute: () => {
38322
- _optionalChain([fileInputRef, 'access', _775 => _775.current, 'optionalAccess', _776 => _776.click, 'call', _777 => _777()]);
38326
+ _optionalChain([fileInputRef, 'access', _777 => _777.current, 'optionalAccess', _778 => _778.click, 'call', _779 => _779()]);
38323
38327
  }
38324
38328
  } : null;
38325
38329
  const extraCommands = uploadCommand ? [...defaultExtraCommands, uploadCommand] : defaultExtraCommands;
@@ -38331,7 +38335,7 @@ function MarkdownEditor({
38331
38335
  const EDGE_ZONE = 60;
38332
38336
  const MAX_SCROLL_SPEED = 15;
38333
38337
  const findScrollParent = _react.useCallback.call(void 0, (el) => {
38334
- let node = _optionalChain([el, 'optionalAccess', _778 => _778.parentElement]);
38338
+ let node = _optionalChain([el, 'optionalAccess', _780 => _780.parentElement]);
38335
38339
  while (node && node !== document.documentElement) {
38336
38340
  const { overflowY } = window.getComputedStyle(node);
38337
38341
  if ((overflowY === "auto" || overflowY === "scroll") && node.scrollHeight > node.clientHeight) {
@@ -38474,7 +38478,7 @@ function matchesAccept(file, accept) {
38474
38478
  });
38475
38479
  }
38476
38480
  function dragHasFiles(e) {
38477
- const types = _optionalChain([e, 'access', _779 => _779.dataTransfer, 'optionalAccess', _780 => _780.types]);
38481
+ const types = _optionalChain([e, 'access', _781 => _781.dataTransfer, 'optionalAccess', _782 => _782.types]);
38478
38482
  if (!types) return false;
38479
38483
  for (let i = 0; i < types.length; i++) {
38480
38484
  if (types[i] === "Files") return true;
@@ -38570,7 +38574,7 @@ function FileUpload({
38570
38574
  e.stopPropagation();
38571
38575
  setDragActive(false);
38572
38576
  if (disabled) return;
38573
- if (_optionalChain([e, 'access', _781 => _781.dataTransfer, 'access', _782 => _782.files, 'optionalAccess', _783 => _783.length])) {
38577
+ if (_optionalChain([e, 'access', _783 => _783.dataTransfer, 'access', _784 => _784.files, 'optionalAccess', _785 => _785.length])) {
38574
38578
  handleFiles(e.dataTransfer.files);
38575
38579
  }
38576
38580
  };
@@ -38598,7 +38602,7 @@ function FileUpload({
38598
38602
  e.preventDefault();
38599
38603
  dragCounter = 0;
38600
38604
  setDragActive(false);
38601
- if (_optionalChain([e, 'access', _784 => _784.dataTransfer, 'optionalAccess', _785 => _785.files, 'optionalAccess', _786 => _786.length])) {
38605
+ if (_optionalChain([e, 'access', _786 => _786.dataTransfer, 'optionalAccess', _787 => _787.files, 'optionalAccess', _788 => _788.length])) {
38602
38606
  handleFilesRef.current(e.dataTransfer.files);
38603
38607
  }
38604
38608
  };
@@ -38620,7 +38624,7 @@ function FileUpload({
38620
38624
  };
38621
38625
  }, [acceptWindowDrops, disabled]);
38622
38626
  const handleFileSelect = (e) => {
38623
- if (_optionalChain([e, 'access', _787 => _787.target, 'access', _788 => _788.files, 'optionalAccess', _789 => _789.length])) {
38627
+ if (_optionalChain([e, 'access', _789 => _789.target, 'access', _790 => _790.files, 'optionalAccess', _791 => _791.length])) {
38624
38628
  handleFiles(e.target.files);
38625
38629
  }
38626
38630
  };
@@ -38637,7 +38641,7 @@ function FileUpload({
38637
38641
  };
38638
38642
  const openDialog = async () => {
38639
38643
  if (disabled) return;
38640
- _optionalChain([fileInputRef, 'access', _790 => _790.current, 'optionalAccess', _791 => _791.click, 'call', _792 => _792()]);
38644
+ _optionalChain([fileInputRef, 'access', _792 => _792.current, 'optionalAccess', _793 => _793.click, 'call', _794 => _794()]);
38641
38645
  };
38642
38646
  const displayError = error || validationError || void 0;
38643
38647
  const hasFiles = isManaged ? managedFiles.length > 0 : files.length > 0;
@@ -38699,7 +38703,7 @@ function FileUpload({
38699
38703
  "button",
38700
38704
  {
38701
38705
  type: "button",
38702
- onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _793 => _793(entry.id)]),
38706
+ onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _795 => _795(entry.id)]),
38703
38707
  className: "shrink-0 text-ods-error hover:opacity-80 transition-opacity",
38704
38708
  "aria-label": `Remove ${entry.fileName}`,
38705
38709
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.TrashIcon, { className: "size-6" })
@@ -38830,7 +38834,7 @@ function ImageUploader({
38830
38834
  onChange(file);
38831
38835
  };
38832
38836
  const handleFileSelect = (e) => {
38833
- validateAndEmit(_optionalChain([e, 'access', _794 => _794.target, 'access', _795 => _795.files, 'optionalAccess', _796 => _796[0]]));
38837
+ validateAndEmit(_optionalChain([e, 'access', _796 => _796.target, 'access', _797 => _797.files, 'optionalAccess', _798 => _798[0]]));
38834
38838
  if (inputRef.current) inputRef.current.value = "";
38835
38839
  };
38836
38840
  const handleDrag = (e) => {
@@ -38845,11 +38849,11 @@ function ImageUploader({
38845
38849
  e.stopPropagation();
38846
38850
  setDragActive(false);
38847
38851
  if (!interactive) return;
38848
- validateAndEmit(_optionalChain([e, 'access', _797 => _797.dataTransfer, 'access', _798 => _798.files, 'optionalAccess', _799 => _799[0]]));
38852
+ validateAndEmit(_optionalChain([e, 'access', _799 => _799.dataTransfer, 'access', _800 => _800.files, 'optionalAccess', _801 => _801[0]]));
38849
38853
  };
38850
38854
  const openDialog = () => {
38851
38855
  if (!interactive) return;
38852
- _optionalChain([inputRef, 'access', _800 => _800.current, 'optionalAccess', _801 => _801.click, 'call', _802 => _802()]);
38856
+ _optionalChain([inputRef, 'access', _802 => _802.current, 'optionalAccess', _803 => _803.click, 'call', _804 => _804()]);
38853
38857
  };
38854
38858
  const handleRootKeyDown = (e) => {
38855
38859
  if (hasImage || !interactive) return;
@@ -39040,8 +39044,8 @@ function ColorPresetSelect({
39040
39044
  }) {
39041
39045
  const selectedPreset = presets.find((p) => p.key === presetKey);
39042
39046
  const isCustom = !selectedPreset;
39043
- const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _803 => _803.label]), () => ( "Custom"));
39044
- const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _804 => _804.color]), () => ( value));
39047
+ const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _805 => _805.label]), () => ( "Custom"));
39048
+ const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _806 => _806.color]), () => ( value));
39045
39049
  const groups = [
39046
39050
  {
39047
39051
  items: [
@@ -39331,7 +39335,7 @@ function TicketStatusConfigRow({
39331
39335
  _chunkQJGRP2YEcjs.Input,
39332
39336
  {
39333
39337
  value: name,
39334
- onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _805 => _805(e.target.value)]),
39338
+ onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _807 => _807(e.target.value)]),
39335
39339
  disabled: isSystem,
39336
39340
  readOnly: isSystem,
39337
39341
  "aria-label": "Status name",
@@ -39704,14 +39708,14 @@ function TicketInfoSection({
39704
39708
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39705
39709
  SquareAvatar,
39706
39710
  {
39707
- src: _optionalChain([organization, 'optionalAccess', _806 => _806.imageSrc]),
39708
- alt: _optionalChain([organization, 'optionalAccess', _807 => _807.name]),
39709
- fallback: _optionalChain([organization, 'optionalAccess', _808 => _808.name]) || "Org",
39711
+ src: _optionalChain([organization, 'optionalAccess', _808 => _808.imageSrc]),
39712
+ alt: _optionalChain([organization, 'optionalAccess', _809 => _809.name]),
39713
+ fallback: _optionalChain([organization, 'optionalAccess', _810 => _810.name]) || "Org",
39710
39714
  size: "md",
39711
39715
  className: "shrink-0"
39712
39716
  }
39713
39717
  ),
39714
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _809 => _809.name]) || "Unassigned", label: "Organization" })
39718
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _811 => _811.name]) || "Unassigned", label: "Organization" })
39715
39719
  ] }),
39716
39720
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: assigned ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39717
39721
  AssigneeDropdown,
@@ -39732,10 +39736,10 @@ function TicketInfoSection({
39732
39736
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39733
39737
  InfoCell2,
39734
39738
  {
39735
- value: _optionalChain([device, 'optionalAccess', _810 => _810.name]) || "Unassigned",
39739
+ value: _optionalChain([device, 'optionalAccess', _812 => _812.name]) || "Unassigned",
39736
39740
  label: "Device",
39737
- icon: _optionalChain([device, 'optionalAccess', _811 => _811.icon]),
39738
- onClick: _optionalChain([device, 'optionalAccess', _812 => _812.onClick])
39741
+ icon: _optionalChain([device, 'optionalAccess', _813 => _813.icon]),
39742
+ onClick: _optionalChain([device, 'optionalAccess', _814 => _814.onClick])
39739
39743
  }
39740
39744
  ),
39741
39745
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4 min-w-0", children: [
@@ -40065,7 +40069,7 @@ function RoadmapCard({
40065
40069
  const compactHref = safeHref(_nullishCoalesce(href, () => ( null)));
40066
40070
  const hasVotes = (_nullishCoalesce(item.upvotes, () => ( 0))) > 0 || (_nullishCoalesce(item.downvotes, () => ( 0))) > 0;
40067
40071
  const hasFigma = !!item.figmaUrl;
40068
- const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _813 => _813.screenshots, 'optionalAccess', _814 => _814.length]), () => ( 0))) > 0;
40072
+ const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _815 => _815.screenshots, 'optionalAccess', _816 => _816.length]), () => ( 0))) > 0;
40069
40073
  const typeLabel = getTaskTypeLabel(item.customItemId);
40070
40074
  const useTypeIcon = cardType === "internal_task" || !iconSrc && item.customItemId != null;
40071
40075
  const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
@@ -40084,7 +40088,7 @@ function RoadmapCard({
40084
40088
  unoptimized: true,
40085
40089
  className: "h-8 w-8 object-contain"
40086
40090
  }
40087
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _815 => _815.title, 'optionalAccess', _816 => _816.substring, 'call', _817 => _817(0, 2)]) || "??" })
40091
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _817 => _817.title, 'optionalAccess', _818 => _818.substring, 'call', _819 => _819(0, 2)]) || "??" })
40088
40092
  }
40089
40093
  ),
40090
40094
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
@@ -40159,7 +40163,7 @@ function RoadmapCard({
40159
40163
  unoptimized: true,
40160
40164
  className: "object-contain p-1"
40161
40165
  }
40162
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _818 => _818.title, 'optionalAccess', _819 => _819.substring, 'call', _820 => _820(0, 2)]) || "??" }) }),
40166
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _820 => _820.title, 'optionalAccess', _821 => _821.substring, 'call', _822 => _822(0, 2)]) || "??" }) }),
40163
40167
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 min-w-0 flex flex-col", children: [
40164
40168
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[48px] flex items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-h3 text-ods-text-primary tracking-[-0.36px] flex-1 line-clamp-2", children: item.title }) }),
40165
40169
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[20px] flex items-center", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-h5 text-ods-text-secondary uppercase tracking-[-0.28px] truncate", children: [
@@ -40669,7 +40673,7 @@ function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
40669
40673
  ] }) : null,
40670
40674
  item.preview ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "line-clamp-2 whitespace-pre-wrap break-words text-[13px] leading-5 text-ods-text-secondary", children: item.preview }) }) : null
40671
40675
  ] }),
40672
- _optionalChain([anchorProps, 'optionalAccess', _821 => _821.href]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex shrink-0 items-center self-start h-5 text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "w-3.5 h-3.5" }) }) : null
40676
+ _optionalChain([anchorProps, 'optionalAccess', _823 => _823.href]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex shrink-0 items-center self-start h-5 text-ods-text-secondary", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ExternalLink, { className: "w-3.5 h-3.5" }) }) : null
40673
40677
  ] });
40674
40678
  if (!anchorProps) {
40675
40679
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
@@ -40739,7 +40743,7 @@ function getDefaultOptions() {
40739
40743
  // node_modules/date-fns/startOfWeek.mjs
40740
40744
  function startOfWeek(date, options) {
40741
40745
  const defaultOptions2 = getDefaultOptions();
40742
- const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _822 => _822.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _823 => _823.locale, 'optionalAccess', _824 => _824.options, 'optionalAccess', _825 => _825.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _826 => _826.locale, 'optionalAccess', _827 => _827.options, 'optionalAccess', _828 => _828.weekStartsOn]))), () => ( 0));
40746
+ const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _824 => _824.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _825 => _825.locale, 'optionalAccess', _826 => _826.options, 'optionalAccess', _827 => _827.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _828 => _828.locale, 'optionalAccess', _829 => _829.options, 'optionalAccess', _830 => _830.weekStartsOn]))), () => ( 0));
40743
40747
  const _date = toDate(date);
40744
40748
  const day = _date.getDay();
40745
40749
  const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
@@ -40914,7 +40918,7 @@ var formatDistance = (token, count, options) => {
40914
40918
  } else {
40915
40919
  result = tokenValue.other.replace("{{count}}", count.toString());
40916
40920
  }
40917
- if (_optionalChain([options, 'optionalAccess', _829 => _829.addSuffix])) {
40921
+ if (_optionalChain([options, 'optionalAccess', _831 => _831.addSuffix])) {
40918
40922
  if (options.comparison && options.comparison > 0) {
40919
40923
  return "in " + result;
40920
40924
  } else {
@@ -40981,15 +40985,15 @@ var formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale
40981
40985
  // node_modules/date-fns/locale/_lib/buildLocalizeFn.mjs
40982
40986
  function buildLocalizeFn(args) {
40983
40987
  return (value, options) => {
40984
- const context = _optionalChain([options, 'optionalAccess', _830 => _830.context]) ? String(options.context) : "standalone";
40988
+ const context = _optionalChain([options, 'optionalAccess', _832 => _832.context]) ? String(options.context) : "standalone";
40985
40989
  let valuesArray;
40986
40990
  if (context === "formatting" && args.formattingValues) {
40987
40991
  const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
40988
- const width = _optionalChain([options, 'optionalAccess', _831 => _831.width]) ? String(options.width) : defaultWidth;
40992
+ const width = _optionalChain([options, 'optionalAccess', _833 => _833.width]) ? String(options.width) : defaultWidth;
40989
40993
  valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
40990
40994
  } else {
40991
40995
  const defaultWidth = args.defaultWidth;
40992
- const width = _optionalChain([options, 'optionalAccess', _832 => _832.width]) ? String(options.width) : args.defaultWidth;
40996
+ const width = _optionalChain([options, 'optionalAccess', _834 => _834.width]) ? String(options.width) : args.defaultWidth;
40993
40997
  valuesArray = args.values[width] || args.values[defaultWidth];
40994
40998
  }
40995
40999
  const index = args.argumentCallback ? args.argumentCallback(value) : value;
@@ -41369,7 +41373,7 @@ function getWeekYear(date, options) {
41369
41373
  const _date = toDate(date);
41370
41374
  const year = _date.getFullYear();
41371
41375
  const defaultOptions2 = getDefaultOptions();
41372
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _833 => _833.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _834 => _834.locale, 'optionalAccess', _835 => _835.options, 'optionalAccess', _836 => _836.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _837 => _837.locale, 'optionalAccess', _838 => _838.options, 'optionalAccess', _839 => _839.firstWeekContainsDate]))), () => ( 1));
41376
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _835 => _835.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _836 => _836.locale, 'optionalAccess', _837 => _837.options, 'optionalAccess', _838 => _838.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _839 => _839.locale, 'optionalAccess', _840 => _840.options, 'optionalAccess', _841 => _841.firstWeekContainsDate]))), () => ( 1));
41373
41377
  const firstWeekOfNextYear = constructFrom(date, 0);
41374
41378
  firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate);
41375
41379
  firstWeekOfNextYear.setHours(0, 0, 0, 0);
@@ -41390,7 +41394,7 @@ function getWeekYear(date, options) {
41390
41394
  // node_modules/date-fns/startOfWeekYear.mjs
41391
41395
  function startOfWeekYear(date, options) {
41392
41396
  const defaultOptions2 = getDefaultOptions();
41393
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _840 => _840.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _841 => _841.locale, 'optionalAccess', _842 => _842.options, 'optionalAccess', _843 => _843.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _844 => _844.locale, 'optionalAccess', _845 => _845.options, 'optionalAccess', _846 => _846.firstWeekContainsDate]))), () => ( 1));
41397
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _842 => _842.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _843 => _843.locale, 'optionalAccess', _844 => _844.options, 'optionalAccess', _845 => _845.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _846 => _846.locale, 'optionalAccess', _847 => _847.options, 'optionalAccess', _848 => _848.firstWeekContainsDate]))), () => ( 1));
41394
41398
  const year = getWeekYear(date, options);
41395
41399
  const firstWeek = constructFrom(date, 0);
41396
41400
  firstWeek.setFullYear(year, 0, firstWeekContainsDate);
@@ -42205,9 +42209,9 @@ var doubleQuoteRegExp = /''/g;
42205
42209
  var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
42206
42210
  function format(date, formatStr, options) {
42207
42211
  const defaultOptions2 = getDefaultOptions();
42208
- const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _847 => _847.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
42209
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _848 => _848.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _849 => _849.locale, 'optionalAccess', _850 => _850.options, 'optionalAccess', _851 => _851.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _852 => _852.locale, 'optionalAccess', _853 => _853.options, 'optionalAccess', _854 => _854.firstWeekContainsDate]))), () => ( 1));
42210
- const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _855 => _855.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _856 => _856.locale, 'optionalAccess', _857 => _857.options, 'optionalAccess', _858 => _858.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _859 => _859.locale, 'optionalAccess', _860 => _860.options, 'optionalAccess', _861 => _861.weekStartsOn]))), () => ( 0));
42212
+ const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _849 => _849.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
42213
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _850 => _850.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _851 => _851.locale, 'optionalAccess', _852 => _852.options, 'optionalAccess', _853 => _853.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _854 => _854.locale, 'optionalAccess', _855 => _855.options, 'optionalAccess', _856 => _856.firstWeekContainsDate]))), () => ( 1));
42214
+ const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _857 => _857.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _858 => _858.locale, 'optionalAccess', _859 => _859.options, 'optionalAccess', _860 => _860.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _861 => _861.locale, 'optionalAccess', _862 => _862.options, 'optionalAccess', _863 => _863.weekStartsOn]))), () => ( 0));
42211
42215
  const originalDate = toDate(date);
42212
42216
  if (!isValid(originalDate)) {
42213
42217
  throw new RangeError("Invalid time value");
@@ -42248,7 +42252,7 @@ function format(date, formatStr, options) {
42248
42252
  return parts.map((part) => {
42249
42253
  if (!part.isToken) return part.value;
42250
42254
  const token = part.value;
42251
- if (!_optionalChain([options, 'optionalAccess', _862 => _862.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _863 => _863.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
42255
+ if (!_optionalChain([options, 'optionalAccess', _864 => _864.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _865 => _865.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
42252
42256
  warnOrThrowProtectedError(token, formatStr, String(date));
42253
42257
  }
42254
42258
  const formatter = formatters[token[0]];
@@ -42429,7 +42433,7 @@ function ProgramCard({
42429
42433
  const dur = formatDurationFromRange(w.start_at, w.end_at);
42430
42434
  typeMeta = dur ? `${time} \xB7 ${dur}` : time;
42431
42435
  }
42432
- const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _864 => _864.labels, 'optionalAccess', _865 => _865.singular])].filter(
42436
+ const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _866 => _866.labels, 'optionalAccess', _867 => _867.singular])].filter(
42433
42437
  (s) => typeof s === "string" && s.length > 0
42434
42438
  );
42435
42439
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "a", { href, target, rel, className: _chunkFIG2RKZFcjs.cn.call(void 0, COMPACT_CARD_OUTER, className), children: [
@@ -42586,7 +42590,7 @@ function ProgramCard({
42586
42590
 
42587
42591
 
42588
42592
  function CampaignCardAdmin({ campaign, className, anchorProps }) {
42589
- const goalsCount = _optionalChain([campaign, 'access', _866 => _866.goals, 'optionalAccess', _867 => _867.length]) || 0;
42593
+ const goalsCount = _optionalChain([campaign, 'access', _868 => _868.goals, 'optionalAccess', _869 => _869.length]) || 0;
42590
42594
  const innerChildren = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
42591
42595
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Megaphone, { className: "h-5 w-5" }) }),
42592
42596
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
@@ -42748,7 +42752,7 @@ function resolveSourceRowCTA(row, ctx = {}) {
42748
42752
  if (row.path && shouldFallbackToPathNav(row) && !row.externalUrl) {
42749
42753
  const safePath = sanitizePath(row.path);
42750
42754
  if (safePath) {
42751
- const docTarget = row.documentType ? _optionalChain([ctx, 'access', _868 => _868.docPlatformTargets, 'optionalAccess', _869 => _869[row.documentType]]) : void 0;
42755
+ const docTarget = row.documentType ? _optionalChain([ctx, 'access', _870 => _870.docPlatformTargets, 'optionalAccess', _871 => _871[row.documentType]]) : void 0;
42752
42756
  if (docTarget) {
42753
42757
  const seg = docTarget.basePath.split("/").filter(Boolean).join("/");
42754
42758
  const base = `${_chunkFIG2RKZFcjs.getBaseUrl.call(void 0, docTarget.platform)}${seg ? `/${seg}` : ""}/`;
@@ -42963,8 +42967,8 @@ function cardMenuGroups(href, discuss, openDetails) {
42963
42967
  if (href) {
42964
42968
  items.push({
42965
42969
  id: "open-details",
42966
- label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _870 => _870.label]), () => ( "Open Details")),
42967
- icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _871 => _871.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.EyeIcon, { size: 20 }))),
42970
+ label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _872 => _872.label]), () => ( "Open Details")),
42971
+ icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _873 => _873.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.EyeIcon, { size: 20 }))),
42968
42972
  // Main row → open the entity (same tab, soft Link nav).
42969
42973
  href,
42970
42974
  // Trailing 40px ↗ side-button → open in a new tab.
@@ -42994,8 +42998,8 @@ function HubspotTicketChatCard({
42994
42998
  isNewTab,
42995
42999
  discuss
42996
43000
  }) {
42997
- const status = typeof _optionalChain([chatRef, 'access', _872 => _872.metadata, 'optionalAccess', _873 => _873.status]) === "string" ? chatRef.metadata.status : void 0;
42998
- const statusLabel = typeof _optionalChain([chatRef, 'access', _874 => _874.metadata, 'optionalAccess', _875 => _875.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
43001
+ const status = typeof _optionalChain([chatRef, 'access', _874 => _874.metadata, 'optionalAccess', _875 => _875.status]) === "string" ? chatRef.metadata.status : void 0;
43002
+ const statusLabel = typeof _optionalChain([chatRef, 'access', _876 => _876.metadata, 'optionalAccess', _877 => _877.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
42999
43003
  const statusText = _nullishCoalesce(statusLabel, () => ( formatStatusToken(status)));
43000
43004
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43001
43005
  MingoInfoCard,
@@ -43018,7 +43022,7 @@ function FaqChatCard({
43018
43022
  isNewTab,
43019
43023
  discuss
43020
43024
  }) {
43021
- const section = typeof _optionalChain([chatRef, 'access', _876 => _876.metadata, 'optionalAccess', _877 => _877.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
43025
+ const section = typeof _optionalChain([chatRef, 'access', _878 => _878.metadata, 'optionalAccess', _879 => _879.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
43022
43026
  const statusLabel = section && section.length > 0 ? section : "FAQ";
43023
43027
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43024
43028
  MingoInfoCard,
@@ -43038,7 +43042,7 @@ function SlackChatCard({
43038
43042
  isNewTab,
43039
43043
  discuss
43040
43044
  }) {
43041
- const channelName = typeof _optionalChain([chatRef, 'access', _878 => _878.metadata, 'optionalAccess', _879 => _879.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
43045
+ const channelName = typeof _optionalChain([chatRef, 'access', _880 => _880.metadata, 'optionalAccess', _881 => _881.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
43042
43046
  const channelPretty = channelName ? channelName.startsWith("#") ? channelName : `#${channelName}` : void 0;
43043
43047
  const title = channelPretty ? `${chatRef.title} \xB7 ${channelPretty}` : chatRef.title;
43044
43048
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -43078,7 +43082,7 @@ function GenericFinancialChatCard({
43078
43082
  isNewTab,
43079
43083
  discuss
43080
43084
  }) {
43081
- const subtitle = typeof _optionalChain([chatRef, 'access', _880 => _880.metadata, 'optionalAccess', _881 => _881.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
43085
+ const subtitle = typeof _optionalChain([chatRef, 'access', _882 => _882.metadata, 'optionalAccess', _883 => _883.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
43082
43086
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43083
43087
  MingoInfoCard,
43084
43088
  {
@@ -43147,12 +43151,12 @@ function ProductReleaseChatCard({
43147
43151
  discuss
43148
43152
  }) {
43149
43153
  const releaseProps = buildProps(item);
43150
- const status = _optionalChain([item, 'optionalAccess', _882 => _882.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
43154
+ const status = _optionalChain([item, 'optionalAccess', _884 => _884.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
43151
43155
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43152
43156
  EntityMingoCard,
43153
43157
  {
43154
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _883 => _883.title]), () => ( "")),
43155
- description: _optionalChain([item, 'optionalAccess', _884 => _884.summary]) || releaseProps.formattedDate || void 0,
43158
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _885 => _885.title]), () => ( "")),
43159
+ description: _optionalChain([item, 'optionalAccess', _886 => _886.summary]) || releaseProps.formattedDate || void 0,
43156
43160
  cover: releaseProps.coverImage || void 0,
43157
43161
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.Rocket02Icon, { size: 24 }),
43158
43162
  status,
@@ -43169,17 +43173,17 @@ function CampaignChatCard({
43169
43173
  isNewTab,
43170
43174
  discuss
43171
43175
  }) {
43172
- const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _885 => _885.goals])) ? item.goals.length : 0;
43176
+ const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _887 => _887.goals])) ? item.goals.length : 0;
43173
43177
  const meta = [
43174
- _optionalChain([item, 'optionalAccess', _886 => _886.start_date]) ? formatDateShort(item.start_date) : null,
43178
+ _optionalChain([item, 'optionalAccess', _888 => _888.start_date]) ? formatDateShort(item.start_date) : null,
43175
43179
  goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
43176
43180
  "Marketing campaign"
43177
43181
  ].filter(Boolean).join(" \xB7 ");
43178
43182
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43179
43183
  EntityMingoCard,
43180
43184
  {
43181
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _887 => _887.name]), () => ( "")),
43182
- description: meta || _optionalChain([item, 'optionalAccess', _888 => _888.description]) || void 0,
43185
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _889 => _889.name]), () => ( "")),
43186
+ description: meta || _optionalChain([item, 'optionalAccess', _890 => _890.description]) || void 0,
43183
43187
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.Megaphone01Icon, { size: 24 }),
43184
43188
  chatRef,
43185
43189
  isNewTab,
@@ -43232,14 +43236,14 @@ function BlogChatCard({
43232
43236
  hasEmbeddedVideo,
43233
43237
  discuss
43234
43238
  }) {
43235
- const category = Array.isArray(_optionalChain([item, 'optionalAccess', _889 => _889.categories])) ? _optionalChain([item, 'access', _890 => _890.categories, 'access', _891 => _891.find, 'call', _892 => _892((c) => c && c.name), 'optionalAccess', _893 => _893.name]) : void 0;
43239
+ const category = Array.isArray(_optionalChain([item, 'optionalAccess', _891 => _891.categories])) ? _optionalChain([item, 'access', _892 => _892.categories, 'access', _893 => _893.find, 'call', _894 => _894((c) => c && c.name), 'optionalAccess', _895 => _895.name]) : void 0;
43236
43240
  const status = hasEmbeddedVideo ? { label: "Video", variant: "primary" } : category ? { label: category, variant: "grey" } : void 0;
43237
43241
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43238
43242
  EntityMingoCard,
43239
43243
  {
43240
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _894 => _894.title]), () => ( "")),
43241
- description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _895 => _895.summary]), () => ( void 0)),
43242
- cover: entityCover(_optionalChain([item, 'optionalAccess', _896 => _896.featured_image]), ogPlaceholder),
43244
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _896 => _896.title]), () => ( "")),
43245
+ description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _897 => _897.summary]), () => ( void 0)),
43246
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _898 => _898.featured_image]), ogPlaceholder),
43243
43247
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.NewspaperIcon, { size: 24 }),
43244
43248
  status,
43245
43249
  chatRef,
@@ -43256,13 +43260,13 @@ function CaseStudyChatCard({
43256
43260
  ogPlaceholder,
43257
43261
  discuss
43258
43262
  }) {
43259
- const meta = [_optionalChain([item, 'optionalAccess', _897 => _897.msp, 'optionalAccess', _898 => _898.name]), _optionalChain([item, 'optionalAccess', _899 => _899.user, 'optionalAccess', _900 => _900.full_name])].filter(Boolean).join(" \xB7 ");
43263
+ const meta = [_optionalChain([item, 'optionalAccess', _899 => _899.msp, 'optionalAccess', _900 => _900.name]), _optionalChain([item, 'optionalAccess', _901 => _901.user, 'optionalAccess', _902 => _902.full_name])].filter(Boolean).join(" \xB7 ");
43260
43264
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43261
43265
  EntityMingoCard,
43262
43266
  {
43263
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _901 => _901.title]), () => ( "")),
43264
- description: _optionalChain([item, 'optionalAccess', _902 => _902.summary]) || meta || void 0,
43265
- cover: entityCover(_optionalChain([item, 'optionalAccess', _903 => _903.featured_image]), ogPlaceholder),
43267
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _903 => _903.title]), () => ( "")),
43268
+ description: _optionalChain([item, 'optionalAccess', _904 => _904.summary]) || meta || void 0,
43269
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _905 => _905.featured_image]), ogPlaceholder),
43266
43270
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.TrophyIcon, { size: 24 }),
43267
43271
  status: { label: "Case study", variant: "grey" },
43268
43272
  chatRef,
@@ -43279,13 +43283,13 @@ function CustomerInterviewChatCard({
43279
43283
  ogPlaceholder,
43280
43284
  discuss
43281
43285
  }) {
43282
- const meta = [_optionalChain([item, 'optionalAccess', _904 => _904.user, 'optionalAccess', _905 => _905.full_name]), _optionalChain([item, 'optionalAccess', _906 => _906.msp, 'optionalAccess', _907 => _907.name])].filter(Boolean).join(" \xB7 ");
43286
+ const meta = [_optionalChain([item, 'optionalAccess', _906 => _906.user, 'optionalAccess', _907 => _907.full_name]), _optionalChain([item, 'optionalAccess', _908 => _908.msp, 'optionalAccess', _909 => _909.name])].filter(Boolean).join(" \xB7 ");
43283
43287
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43284
43288
  EntityMingoCard,
43285
43289
  {
43286
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _908 => _908.title]), () => ( "")),
43287
- description: _optionalChain([item, 'optionalAccess', _909 => _909.video_summary]) || meta || void 0,
43288
- cover: entityCover(_optionalChain([item, 'optionalAccess', _910 => _910.featured_image]), ogPlaceholder),
43290
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _910 => _910.title]), () => ( "")),
43291
+ description: _optionalChain([item, 'optionalAccess', _911 => _911.video_summary]) || meta || void 0,
43292
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _912 => _912.featured_image]), ogPlaceholder),
43289
43293
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.MicrophoneIcon, { size: 24 }),
43290
43294
  status: { label: "Interview", variant: "grey" },
43291
43295
  chatRef,
@@ -43302,13 +43306,13 @@ function InvestorUpdateChatCard({
43302
43306
  ogPlaceholder,
43303
43307
  discuss
43304
43308
  }) {
43305
- const title = _optionalChain([item, 'optionalAccess', _911 => _911.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _912 => _912.update_number]), () => ( "?"))}`;
43309
+ const title = _optionalChain([item, 'optionalAccess', _913 => _913.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _914 => _914.update_number]), () => ( "?"))}`;
43306
43310
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43307
43311
  EntityMingoCard,
43308
43312
  {
43309
43313
  title,
43310
- description: _optionalChain([item, 'optionalAccess', _913 => _913.strategic_update]) || _optionalChain([item, 'optionalAccess', _914 => _914.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _915 => _915.period_start]), _optionalChain([item, 'optionalAccess', _916 => _916.period_end])) || void 0,
43311
- cover: entityCover(_optionalChain([item, 'optionalAccess', _917 => _917.featured_image]), ogPlaceholder),
43314
+ description: _optionalChain([item, 'optionalAccess', _915 => _915.strategic_update]) || _optionalChain([item, 'optionalAccess', _916 => _916.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _917 => _917.period_start]), _optionalChain([item, 'optionalAccess', _918 => _918.period_end])) || void 0,
43315
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _919 => _919.featured_image]), ogPlaceholder),
43312
43316
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.PresentationLineIcon, { size: 24 }),
43313
43317
  status: { label: "Investor update", variant: "grey" },
43314
43318
  chatRef,
@@ -43325,12 +43329,12 @@ function OnboardingGuideChatCard({
43325
43329
  ogPlaceholder,
43326
43330
  discuss
43327
43331
  }) {
43328
- const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _918 => _918.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _919 => _919.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _920 => _920.og_image_url]), ogPlaceholder)));
43332
+ const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _920 => _920.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _921 => _921.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _922 => _922.og_image_url]), ogPlaceholder)));
43329
43333
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43330
43334
  EntityMingoCard,
43331
43335
  {
43332
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _921 => _921.title]), () => ( "")),
43333
- description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _922 => _922.summary]), () => ( _optionalChain([item, 'optionalAccess', _923 => _923.description]))), () => ( void 0)),
43336
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _923 => _923.title]), () => ( "")),
43337
+ description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _924 => _924.summary]), () => ( _optionalChain([item, 'optionalAccess', _925 => _925.description]))), () => ( void 0)),
43334
43338
  cover,
43335
43339
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.CompassIcon, { size: 24 }),
43336
43340
  status: { label: "Guide", variant: "grey" },
@@ -43351,25 +43355,25 @@ function ProgramChatCard({
43351
43355
  discuss
43352
43356
  }) {
43353
43357
  const icon = configKey === "webinar" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.PresentationBarIcon, { size: 24 }) : configKey === "event" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.CalendarIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.MicrophoneIcon, { size: 24 });
43354
- const isScheduled = _optionalChain([item, 'optionalAccess', _924 => _924.status]) === "scheduled";
43358
+ const isScheduled = _optionalChain([item, 'optionalAccess', _926 => _926.status]) === "scheduled";
43355
43359
  let typeMeta;
43356
- if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _925 => _925.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
43360
+ if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _927 => _927.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
43357
43361
  typeMeta = formatDurationCompact(item.duration_seconds);
43358
- } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _926 => _926.location_name]) === "string" && item.location_name.trim().length > 0) {
43362
+ } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _928 => _928.location_name]) === "string" && item.location_name.trim().length > 0) {
43359
43363
  typeMeta = item.location_name;
43360
- } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _927 => _927.start_at])) {
43364
+ } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _929 => _929.start_at])) {
43361
43365
  const time = formatTimeWithTimezone(item.start_at, _nullishCoalesce(item.timezone, () => ( null)));
43362
43366
  const dur = formatDurationFromRange(item.start_at, item.end_at);
43363
43367
  typeMeta = dur ? `${time} \xB7 ${dur}` : time;
43364
43368
  }
43365
- const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _928 => _928.date]), () => ( null)), { fallback: "", timezone: "local" });
43369
+ const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _930 => _930.date]), () => ( null)), { fallback: "", timezone: "local" });
43366
43370
  const meta = [itemDate, typeMeta].filter(Boolean).join(" \xB7 ");
43367
43371
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43368
43372
  EntityMingoCard,
43369
43373
  {
43370
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _929 => _929.title]), () => ( "")),
43371
- description: meta || _optionalChain([item, 'optionalAccess', _930 => _930.description]) || void 0,
43372
- cover: entityCover(_optionalChain([item, 'optionalAccess', _931 => _931.cover_url]), ogPlaceholder),
43374
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _931 => _931.title]), () => ( "")),
43375
+ description: meta || _optionalChain([item, 'optionalAccess', _932 => _932.description]) || void 0,
43376
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _933 => _933.cover_url]), ogPlaceholder),
43373
43377
  fallbackIcon: icon,
43374
43378
  status: { label, variant: "grey" },
43375
43379
  chatRef,
@@ -43386,10 +43390,10 @@ function RoadmapChatCard({
43386
43390
  cardType,
43387
43391
  discuss
43388
43392
  }) {
43389
- const logoUrl = typeof _optionalChain([item, 'optionalAccess', _932 => _932.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
43390
- const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _933 => _933.customItemId]) != null;
43393
+ const logoUrl = typeof _optionalChain([item, 'optionalAccess', _934 => _934.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
43394
+ const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _935 => _935.customItemId]) != null;
43391
43395
  const defaultIcon = cardType === "delivery_item" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.TruckFastIcon, { size: 24 }) : cardType === "internal_task" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.CheckSquareIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkCCG4DARMcjs.MapIcon, { size: 24 });
43392
- const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _934 => _934.customItemId]), className: "size-6" }) : logoUrl ? (
43396
+ const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _936 => _936.customItemId]), className: "size-6" }) : logoUrl ? (
43393
43397
  // Contained (not full-bleed) so the integration logo keeps its aspect
43394
43398
  // ratio inside the bordered icon box — matches RoadmapCard.
43395
43399
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: logoUrl, alt: "", className: "size-6 object-contain" })
@@ -43397,10 +43401,10 @@ function RoadmapChatCard({
43397
43401
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43398
43402
  EntityMingoCard,
43399
43403
  {
43400
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _935 => _935.title]), () => ( "")),
43401
- description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _936 => _936.description]), () => ( void 0)),
43404
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _937 => _937.title]), () => ( "")),
43405
+ description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _938 => _938.description]), () => ( void 0)),
43402
43406
  fallbackIcon: icon,
43403
- status: statusPill(_optionalChain([item, 'optionalAccess', _937 => _937.status])),
43407
+ status: statusPill(_optionalChain([item, 'optionalAccess', _939 => _939.status])),
43404
43408
  chatRef,
43405
43409
  isNewTab,
43406
43410
  discuss,
@@ -43486,7 +43490,7 @@ function programRegistryEntries() {
43486
43490
  discuss: opts.discuss,
43487
43491
  configKey: cfg.configKey,
43488
43492
  label: cfg.configKey.charAt(0).toUpperCase() + cfg.configKey.slice(1),
43489
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _938 => _938.extras, 'optionalAccess', _939 => _939.buildOgPlaceholderUrl, 'optionalCall', _940 => _940(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _941 => _941.title]), () => ( "")))]), () => ( null))
43493
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _940 => _940.extras, 'optionalAccess', _941 => _941.buildOgPlaceholderUrl, 'optionalCall', _942 => _942(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _943 => _943.title]), () => ( "")))]), () => ( null))
43490
43494
  }
43491
43495
  )
43492
43496
  };
@@ -43638,8 +43642,8 @@ var CHAT_CARD_REGISTRY = {
43638
43642
  chatRef,
43639
43643
  isNewTab: opts.isNewTab,
43640
43644
  discuss: opts.discuss,
43641
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _942 => _942.extras, 'optionalAccess', _943 => _943.buildOgPlaceholderUrl, 'optionalCall', _944 => _944(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _945 => _945.title]), () => ( "")))]), () => ( null)),
43642
- hasEmbeddedVideo: _optionalChain([chatRef, 'access', _946 => _946.metadata, 'optionalAccess', _947 => _947.hasEmbeddedVideo]) === true
43645
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _944 => _944.extras, 'optionalAccess', _945 => _945.buildOgPlaceholderUrl, 'optionalCall', _946 => _946(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _947 => _947.title]), () => ( "")))]), () => ( null)),
43646
+ hasEmbeddedVideo: _optionalChain([chatRef, 'access', _948 => _948.metadata, 'optionalAccess', _949 => _949.hasEmbeddedVideo]) === true
43643
43647
  }
43644
43648
  )
43645
43649
  },
@@ -43656,7 +43660,7 @@ var CHAT_CARD_REGISTRY = {
43656
43660
  chatRef,
43657
43661
  isNewTab: opts.isNewTab,
43658
43662
  discuss: opts.discuss,
43659
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _948 => _948.extras, 'optionalAccess', _949 => _949.buildOgPlaceholderUrl, 'optionalCall', _950 => _950(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _951 => _951.title]), () => ( "")))]), () => ( null))
43663
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _950 => _950.extras, 'optionalAccess', _951 => _951.buildOgPlaceholderUrl, 'optionalCall', _952 => _952(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _953 => _953.title]), () => ( "")))]), () => ( null))
43660
43664
  }
43661
43665
  )
43662
43666
  },
@@ -43673,7 +43677,7 @@ var CHAT_CARD_REGISTRY = {
43673
43677
  chatRef,
43674
43678
  isNewTab: opts.isNewTab,
43675
43679
  discuss: opts.discuss,
43676
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _952 => _952.extras, 'optionalAccess', _953 => _953.buildOgPlaceholderUrl, 'optionalCall', _954 => _954(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _955 => _955.title]), () => ( "")))]), () => ( null))
43680
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _954 => _954.extras, 'optionalAccess', _955 => _955.buildOgPlaceholderUrl, 'optionalCall', _956 => _956(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _957 => _957.title]), () => ( "")))]), () => ( null))
43677
43681
  }
43678
43682
  )
43679
43683
  },
@@ -43684,7 +43688,7 @@ var CHAT_CARD_REGISTRY = {
43684
43688
  bareInline: true,
43685
43689
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ProductReleaseCardSkeleton, { size: "sm" }),
43686
43690
  render: (item, chatRef, opts) => {
43687
- const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _956 => _956.extras, 'optionalAccess', _957 => _957.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
43691
+ const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _958 => _958.extras, 'optionalAccess', _959 => _959.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
43688
43692
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43689
43693
  ProductReleaseChatCard,
43690
43694
  {
@@ -43711,7 +43715,7 @@ var CHAT_CARD_REGISTRY = {
43711
43715
  chatRef,
43712
43716
  isNewTab: opts.isNewTab,
43713
43717
  discuss: opts.discuss,
43714
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _958 => _958.extras, 'optionalAccess', _959 => _959.buildOgPlaceholderUrl, 'optionalCall', _960 => _960(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _961 => _961.title]), () => ( "")))]), () => ( null))
43718
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _960 => _960.extras, 'optionalAccess', _961 => _961.buildOgPlaceholderUrl, 'optionalCall', _962 => _962(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _963 => _963.title]), () => ( "")))]), () => ( null))
43715
43719
  }
43716
43720
  )
43717
43721
  },
@@ -43730,7 +43734,7 @@ var CHAT_CARD_REGISTRY = {
43730
43734
  chatRef,
43731
43735
  isNewTab: opts.isNewTab,
43732
43736
  discuss: opts.discuss,
43733
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _962 => _962.extras, 'optionalAccess', _963 => _963.buildOgPlaceholderUrl, 'optionalCall', _964 => _964(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _965 => _965.title]), () => ( "")))]), () => ( null))
43737
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _964 => _964.extras, 'optionalAccess', _965 => _965.buildOgPlaceholderUrl, 'optionalCall', _966 => _966(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _967 => _967.title]), () => ( "")))]), () => ( null))
43734
43738
  }
43735
43739
  )
43736
43740
  },
@@ -43742,7 +43746,7 @@ var CHAT_CARD_REGISTRY = {
43742
43746
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, {}),
43743
43747
  // No public viewer — synthesize the hub-internal admin URL post-fetch
43744
43748
  // so the wrapper + isNewTab computation see the actual destination.
43745
- fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _966 => _966.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
43749
+ fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _968 => _968.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
43746
43750
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43747
43751
  CampaignChatCard,
43748
43752
  {
@@ -43768,12 +43772,12 @@ function ChatCardNavWrap({
43768
43772
  const onClickCapture = (e) => {
43769
43773
  if (!href) return;
43770
43774
  const targetEl = e.target;
43771
- if (_optionalChain([targetEl, 'optionalAccess', _967 => _967.closest, 'optionalCall', _968 => _968("button")])) return;
43772
- if (!_optionalChain([targetEl, 'optionalAccess', _969 => _969.closest, 'optionalCall', _970 => _970("a")])) return;
43775
+ if (_optionalChain([targetEl, 'optionalAccess', _969 => _969.closest, 'optionalCall', _970 => _970("button")])) return;
43776
+ if (!_optionalChain([targetEl, 'optionalAccess', _971 => _971.closest, 'optionalCall', _972 => _972("a")])) return;
43773
43777
  const handled = handleChatNavClick(e, runtime, { href, path, targetPlatform }, router.push);
43774
43778
  if (!handled) return;
43775
43779
  e.stopPropagation();
43776
- if (!isNewTab && _optionalChain([panel, 'optionalAccess', _971 => _971.closeChat])) panel.closeChat();
43780
+ if (!isNewTab && _optionalChain([panel, 'optionalAccess', _973 => _973.closeChat])) panel.closeChat();
43777
43781
  };
43778
43782
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "contents", onClickCapture, children });
43779
43783
  }
@@ -43795,7 +43799,7 @@ function ChatCardLoader({
43795
43799
  title: chatRef.title,
43796
43800
  externalUrl: chatRef.url,
43797
43801
  targetPlatform: chatRef.targetPlatform,
43798
- path: typeof _optionalChain([chatRef, 'access', _972 => _972.metadata, 'optionalAccess', _973 => _973.path]) === "string" ? chatRef.metadata.path : null
43802
+ path: typeof _optionalChain([chatRef, 'access', _974 => _974.metadata, 'optionalAccess', _975 => _975.path]) === "string" ? chatRef.metadata.path : null
43799
43803
  },
43800
43804
  sourceRowCtxFromRuntime(runtime, { baseRoute, chipBasePlatform })
43801
43805
  );
@@ -43809,7 +43813,7 @@ function ChatCardLoader({
43809
43813
  const entry = CHAT_CARD_REGISTRY[resolvedChatRef.type];
43810
43814
  const fetchEntry = entry && entry.mode === "fetch" ? entry : null;
43811
43815
  const { item, isLoading } = useChatCardItem(
43812
- _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _974 => _974.contentRefType]), () => ( "")),
43816
+ _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _976 => _976.contentRefType]), () => ( "")),
43813
43817
  fetchEntry ? resolvedChatRef.id : ""
43814
43818
  );
43815
43819
  if (!entry) return null;
@@ -43840,7 +43844,7 @@ function ChatCardLoader({
43840
43844
  isNewTab,
43841
43845
  discuss
43842
43846
  };
43843
- const path = typeof _optionalChain([finalChatRef, 'access', _975 => _975.metadata, 'optionalAccess', _976 => _976.path]) === "string" ? finalChatRef.metadata.path : null;
43847
+ const path = typeof _optionalChain([finalChatRef, 'access', _977 => _977.metadata, 'optionalAccess', _978 => _978.path]) === "string" ? finalChatRef.metadata.path : null;
43844
43848
  const navWrap = (children) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
43845
43849
  ChatCardNavWrap,
43846
43850
  {
@@ -44226,7 +44230,7 @@ function useJetStreamDialogSubscription({
44226
44230
  const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
44227
44231
  conn: sharedConn,
44228
44232
  wsUrl,
44229
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _977 => _977.current, 'optionalCall', _978 => _978()]),
44233
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _979 => _979.current, 'optionalCall', _980 => _980()]),
44230
44234
  backoff: reconnectionBackoffRef.current,
44231
44235
  getFreshUrl: () => getNatsWsUrlRef.current(),
44232
44236
  // JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
@@ -44241,7 +44245,7 @@ function useJetStreamDialogSubscription({
44241
44245
  setReconnectionCount((c) => c + 1);
44242
44246
  }
44243
44247
  hadConnectionBeforeRef.current = true;
44244
- _optionalChain([onConnectRef, 'access', _979 => _979.current, 'optionalCall', _980 => _980()]);
44248
+ _optionalChain([onConnectRef, 'access', _981 => _981.current, 'optionalCall', _982 => _982()]);
44245
44249
  }
44246
44250
  if (status === "error") {
44247
44251
  console.warn("[JetStream] NATS protocol error:", evt.data);
@@ -44251,7 +44255,7 @@ function useJetStreamDialogSubscription({
44251
44255
  setIsConnected(false);
44252
44256
  setIsSubscribed(false);
44253
44257
  tearDownSubscription();
44254
- _optionalChain([onDisconnectRef, 'access', _981 => _981.current, 'optionalCall', _982 => _982()]);
44258
+ _optionalChain([onDisconnectRef, 'access', _983 => _983.current, 'optionalCall', _984 => _984()]);
44255
44259
  }
44256
44260
  }
44257
44261
  });
@@ -44330,7 +44334,7 @@ function useJetStreamDialogSubscription({
44330
44334
  }
44331
44335
  subscriptionRef.current = handle;
44332
44336
  setIsSubscribed(true);
44333
- _optionalChain([onSubscribedRef, 'access', _983 => _983.current, 'optionalCall', _984 => _984()]);
44337
+ _optionalChain([onSubscribedRef, 'access', _985 => _985.current, 'optionalCall', _986 => _986()]);
44334
44338
  } catch (e44) {
44335
44339
  if (!cancelled) {
44336
44340
  setIsSubscribed(false);
@@ -44443,20 +44447,20 @@ function useNatsDialogSubscription({
44443
44447
  const tearDownSubscriptions = () => {
44444
44448
  subscriptionRefs.current.forEach((sub) => {
44445
44449
  try {
44446
- _optionalChain([sub, 'optionalAccess', _985 => _985.unsubscribe, 'call', _986 => _986()]);
44450
+ _optionalChain([sub, 'optionalAccess', _987 => _987.unsubscribe, 'call', _988 => _988()]);
44447
44451
  } catch (e46) {
44448
44452
  }
44449
44453
  });
44450
44454
  subscriptionRefs.current.clear();
44451
44455
  lastSubscribedDialogIdRef.current = null;
44452
- _optionalChain([abortControllerRef, 'access', _987 => _987.current, 'optionalAccess', _988 => _988.abort, 'call', _989 => _989()]);
44456
+ _optionalChain([abortControllerRef, 'access', _989 => _989.current, 'optionalAccess', _990 => _990.abort, 'call', _991 => _991()]);
44453
44457
  abortControllerRef.current = null;
44454
44458
  };
44455
44459
  const isDisconnectStatus = (status) => status === "closed" || status === "disconnected";
44456
44460
  const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
44457
44461
  conn: sharedConn,
44458
44462
  wsUrl,
44459
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _990 => _990.current, 'optionalCall', _991 => _991()]),
44463
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _992 => _992.current, 'optionalCall', _993 => _993()]),
44460
44464
  backoff: reconnectionBackoffRef.current,
44461
44465
  getFreshUrl: () => getNatsWsUrlRef.current(),
44462
44466
  shouldRetryOn: isDisconnectStatus,
@@ -44467,7 +44471,7 @@ function useNatsDialogSubscription({
44467
44471
  setReconnectionCount((c) => c + 1);
44468
44472
  }
44469
44473
  hadConnectionBeforeRef.current = true;
44470
- _optionalChain([onConnectRef, 'access', _992 => _992.current, 'optionalCall', _993 => _993()]);
44474
+ _optionalChain([onConnectRef, 'access', _994 => _994.current, 'optionalCall', _995 => _995()]);
44471
44475
  }
44472
44476
  if (status === "error") {
44473
44477
  console.warn("[NATS] protocol error:", evt.data);
@@ -44477,7 +44481,7 @@ function useNatsDialogSubscription({
44477
44481
  setIsConnected(false);
44478
44482
  setIsSubscribed(false);
44479
44483
  tearDownSubscriptions();
44480
- _optionalChain([onDisconnectRef, 'access', _994 => _994.current, 'optionalCall', _995 => _995()]);
44484
+ _optionalChain([onDisconnectRef, 'access', _996 => _996.current, 'optionalCall', _997 => _997()]);
44481
44485
  }
44482
44486
  }
44483
44487
  });
@@ -44508,13 +44512,13 @@ function useNatsDialogSubscription({
44508
44512
  setIsSubscribed(false);
44509
44513
  subscriptionRefs.current.forEach((sub) => {
44510
44514
  try {
44511
- _optionalChain([sub, 'optionalAccess', _996 => _996.unsubscribe, 'call', _997 => _997()]);
44515
+ _optionalChain([sub, 'optionalAccess', _998 => _998.unsubscribe, 'call', _999 => _999()]);
44512
44516
  } catch (e47) {
44513
44517
  }
44514
44518
  });
44515
44519
  subscriptionRefs.current.clear();
44516
44520
  lastSubscribedDialogIdRef.current = null;
44517
- _optionalChain([abortControllerRef, 'access', _998 => _998.current, 'optionalAccess', _999 => _999.abort, 'call', _1000 => _1000()]);
44521
+ _optionalChain([abortControllerRef, 'access', _1000 => _1000.current, 'optionalAccess', _1001 => _1001.abort, 'call', _1002 => _1002()]);
44518
44522
  abortControllerRef.current = null;
44519
44523
  }
44520
44524
  return;
@@ -44526,12 +44530,12 @@ function useNatsDialogSubscription({
44526
44530
  if (subscriptionRefs.current.size > 0) {
44527
44531
  subscriptionRefs.current.forEach((sub) => {
44528
44532
  try {
44529
- _optionalChain([sub, 'optionalAccess', _1001 => _1001.unsubscribe, 'call', _1002 => _1002()]);
44533
+ _optionalChain([sub, 'optionalAccess', _1003 => _1003.unsubscribe, 'call', _1004 => _1004()]);
44530
44534
  } catch (e48) {
44531
44535
  }
44532
44536
  });
44533
44537
  subscriptionRefs.current.clear();
44534
- _optionalChain([abortControllerRef, 'access', _1003 => _1003.current, 'optionalAccess', _1004 => _1004.abort, 'call', _1005 => _1005()]);
44538
+ _optionalChain([abortControllerRef, 'access', _1005 => _1005.current, 'optionalAccess', _1006 => _1006.abort, 'call', _1007 => _1007()]);
44535
44539
  }
44536
44540
  abortControllerRef.current = new AbortController();
44537
44541
  const abort = abortControllerRef.current;
@@ -44563,7 +44567,7 @@ function useNatsDialogSubscription({
44563
44567
  });
44564
44568
  lastSubscribedDialogIdRef.current = dialogId;
44565
44569
  setIsSubscribed(true);
44566
- _optionalChain([onSubscribedRef, 'access', _1006 => _1006.current, 'optionalCall', _1007 => _1007()]);
44570
+ _optionalChain([onSubscribedRef, 'access', _1008 => _1008.current, 'optionalCall', _1009 => _1009()]);
44567
44571
  };
44568
44572
  if (isConnectedRef.current) {
44569
44573
  createSubscriptions();
@@ -44573,7 +44577,7 @@ function useNatsDialogSubscription({
44573
44577
  abort.abort();
44574
44578
  subscriptionRefs.current.forEach((sub) => {
44575
44579
  try {
44576
- _optionalChain([sub, 'optionalAccess', _1008 => _1008.unsubscribe, 'call', _1009 => _1009()]);
44580
+ _optionalChain([sub, 'optionalAccess', _1010 => _1010.unsubscribe, 'call', _1011 => _1011()]);
44577
44581
  } catch (e50) {
44578
44582
  }
44579
44583
  });
@@ -44614,7 +44618,7 @@ function useNatsDialogSubscription({
44614
44618
  });
44615
44619
  lastSubscribedDialogIdRef.current = dialogId2;
44616
44620
  setIsSubscribed(true);
44617
- _optionalChain([onSubscribedRef, 'access', _1010 => _1010.current, 'optionalCall', _1011 => _1011()]);
44621
+ _optionalChain([onSubscribedRef, 'access', _1012 => _1012.current, 'optionalCall', _1013 => _1013()]);
44618
44622
  } else if (subscriptionRefs.current.size > 0) {
44619
44623
  setIsSubscribed(true);
44620
44624
  }
@@ -44622,10 +44626,10 @@ function useNatsDialogSubscription({
44622
44626
  return { isConnected, isSubscribed, reconnectionCount };
44623
44627
  }
44624
44628
  function buildNatsWsUrl(apiBaseUrl, options) {
44625
- const path = _optionalChain([options, 'optionalAccess', _1012 => _1012.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
44629
+ const path = _optionalChain([options, 'optionalAccess', _1014 => _1014.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
44626
44630
  const u = new URL(path, apiBaseUrl);
44627
44631
  u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
44628
- if (_optionalChain([options, 'optionalAccess', _1013 => _1013.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _1014 => _1014.token])) {
44632
+ if (_optionalChain([options, 'optionalAccess', _1015 => _1015.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _1016 => _1016.token])) {
44629
44633
  u.searchParams.set("authorization", options.token);
44630
44634
  }
44631
44635
  return u.toString();
@@ -44761,7 +44765,7 @@ function parseChunkToAction(chunk) {
44761
44765
  // is REQUIRED on `ChatContextItem`, so fall back to the id (same as the
44762
44766
  // historical path in `process-historical-messages.ts`) — keeps both
44763
44767
  // message sources producing an identical shape.
44764
- contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1015 => _1015.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1016 => _1016.id]) === "string").map((it) => ({ type: it.type, id: it.id, label: it.id })) : void 0
44768
+ contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1017 => _1017.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1018 => _1018.id]) === "string").map((it) => ({ type: it.type, id: it.id, label: it.id })) : void 0
44765
44769
  };
44766
44770
  case MESSAGE_TYPE.TOKEN_USAGE:
44767
44771
  return {
@@ -44953,8 +44957,8 @@ var MessageSegmentAccumulator = class {
44953
44957
  type: "tool_execution",
44954
44958
  data: {
44955
44959
  ...toolData,
44956
- toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1017 => _1017.data, 'access', _1018 => _1018.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1019 => _1019.toolTitle]))),
44957
- parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1020 => _1020.parameters])
44960
+ toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1019 => _1019.data, 'access', _1020 => _1020.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1021 => _1021.toolTitle]))),
44961
+ parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1022 => _1022.parameters])
44958
44962
  }
44959
44963
  };
44960
44964
  if (existingIndex !== -1) {
@@ -44978,8 +44982,8 @@ var MessageSegmentAccumulator = class {
44978
44982
  if (seg.type !== "approval_batch") return seg;
44979
44983
  const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
44980
44984
  if (!hasCall) return seg;
44981
- const prev = _optionalChain([seg, 'access', _1021 => _1021.data, 'access', _1022 => _1022.executions, 'optionalAccess', _1023 => _1023[execId]]);
44982
- const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _1024 => _1024.result]), success: _optionalChain([prev, 'optionalAccess', _1025 => _1025.success]) };
44985
+ const prev = _optionalChain([seg, 'access', _1023 => _1023.data, 'access', _1024 => _1024.executions, 'optionalAccess', _1025 => _1025[execId]]);
44986
+ const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _1026 => _1026.result]), success: _optionalChain([prev, 'optionalAccess', _1027 => _1027.success]) };
44983
44987
  matched = true;
44984
44988
  return {
44985
44989
  ...seg,
@@ -45101,10 +45105,10 @@ var MessageSegmentAccumulator = class {
45101
45105
  const segment = {
45102
45106
  type: "approval_request",
45103
45107
  data: {
45104
- command: _optionalChain([pendingApproval, 'optionalAccess', _1026 => _1026.command]) || "",
45105
- explanation: _optionalChain([pendingApproval, 'optionalAccess', _1027 => _1027.explanation]),
45108
+ command: _optionalChain([pendingApproval, 'optionalAccess', _1028 => _1028.command]) || "",
45109
+ explanation: _optionalChain([pendingApproval, 'optionalAccess', _1029 => _1029.explanation]),
45106
45110
  requestId,
45107
- approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1028 => _1028.approvalType]) || approvalType
45111
+ approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1030 => _1030.approvalType]) || approvalType
45108
45112
  },
45109
45113
  status,
45110
45114
  onApprove: this.callbacks.onApprove,
@@ -45296,7 +45300,7 @@ function useRealtimeChunkProcessor(options) {
45296
45300
  if (initialState.escalatedApprovals) {
45297
45301
  pendingEscalatedRef.current = new Map(initialState.escalatedApprovals);
45298
45302
  initialState.escalatedApprovals.forEach((data, requestId) => {
45299
- _optionalChain([callbacks, 'access', _1029 => _1029.onEscalatedApproval, 'optionalCall', _1030 => _1030(requestId, data)]);
45303
+ _optionalChain([callbacks, 'access', _1031 => _1031.onEscalatedApproval, 'optionalCall', _1032 => _1032(requestId, data)]);
45300
45304
  });
45301
45305
  }
45302
45306
  hasEverStreamedRef.current = true;
@@ -45317,12 +45321,12 @@ function useRealtimeChunkProcessor(options) {
45317
45321
  if (!action) return;
45318
45322
  const accumulator = accumulatorRef.current;
45319
45323
  const streamSeq = chunk && typeof chunk === "object" && typeof chunk.streamSeq === "number" ? chunk.streamSeq : void 0;
45320
- const emitSegments = (s, meta) => _optionalChain([callbacks, 'access', _1031 => _1031.onSegmentsUpdate, 'optionalCall', _1032 => _1032(s, streamSeq != null ? { ...meta, streamSeq } : meta)]);
45324
+ const emitSegments = (s, meta) => _optionalChain([callbacks, 'access', _1033 => _1033.onSegmentsUpdate, 'optionalCall', _1034 => _1034(s, streamSeq != null ? { ...meta, streamSeq } : meta)]);
45321
45325
  if (action.action === "direct_message") sawDirectMessageRef.current = true;
45322
45326
  if ((directModeFlagRef.current || sawDirectMessageRef.current) && !DIRECT_MODE_ALLOWED.has(action.action)) {
45323
45327
  if (isInStreamRef.current) {
45324
45328
  isInStreamRef.current = false;
45325
- _optionalChain([callbacks, 'access', _1033 => _1033.onStreamEnd, 'optionalCall', _1034 => _1034()]);
45329
+ _optionalChain([callbacks, 'access', _1035 => _1035.onStreamEnd, 'optionalCall', _1036 => _1036()]);
45326
45330
  accumulator.resetSegments();
45327
45331
  }
45328
45332
  return;
@@ -45331,16 +45335,16 @@ function useRealtimeChunkProcessor(options) {
45331
45335
  case "message_start":
45332
45336
  isInStreamRef.current = true;
45333
45337
  hasEverStreamedRef.current = true;
45334
- _optionalChain([callbacks, 'access', _1035 => _1035.onStreamStart, 'optionalCall', _1036 => _1036()]);
45338
+ _optionalChain([callbacks, 'access', _1037 => _1037.onStreamStart, 'optionalCall', _1038 => _1038()]);
45335
45339
  accumulator.resetSegments();
45336
45340
  break;
45337
45341
  case "message_end":
45338
45342
  isInStreamRef.current = false;
45339
- _optionalChain([callbacks, 'access', _1037 => _1037.onStreamEnd, 'optionalCall', _1038 => _1038()]);
45343
+ _optionalChain([callbacks, 'access', _1039 => _1039.onStreamEnd, 'optionalCall', _1040 => _1040()]);
45340
45344
  accumulator.resetSegments();
45341
45345
  break;
45342
45346
  case "metadata":
45343
- _optionalChain([callbacks, 'access', _1039 => _1039.onMetadata, 'optionalCall', _1040 => _1040(action)]);
45347
+ _optionalChain([callbacks, 'access', _1041 => _1041.onMetadata, 'optionalCall', _1042 => _1042(action)]);
45344
45348
  break;
45345
45349
  case "text": {
45346
45350
  const segments = accumulator.appendText(action.text);
@@ -45383,7 +45387,7 @@ function useRealtimeChunkProcessor(options) {
45383
45387
  emitSegments(segments);
45384
45388
  } else {
45385
45389
  pendingEscalatedRef.current.set(requestId, { command, explanation, approvalType });
45386
- _optionalChain([callbacks, 'access', _1041 => _1041.onEscalatedApproval, 'optionalCall', _1042 => _1042(requestId, { command, explanation, approvalType })]);
45390
+ _optionalChain([callbacks, 'access', _1043 => _1043.onEscalatedApproval, 'optionalCall', _1044 => _1044(requestId, { command, explanation, approvalType })]);
45387
45391
  }
45388
45392
  break;
45389
45393
  }
@@ -45395,13 +45399,13 @@ function useRealtimeChunkProcessor(options) {
45395
45399
  const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
45396
45400
  pendingEscalatedRef.current.set(requestId, {
45397
45401
  command: summary,
45398
- explanation: _optionalChain([required, 'optionalAccess', _1043 => _1043.toolExplanation]),
45402
+ explanation: _optionalChain([required, 'optionalAccess', _1045 => _1045.toolExplanation]),
45399
45403
  approvalType,
45400
45404
  toolCalls
45401
45405
  });
45402
- _optionalChain([callbacks, 'access', _1044 => _1044.onEscalatedApproval, 'optionalCall', _1045 => _1045(requestId, {
45406
+ _optionalChain([callbacks, 'access', _1046 => _1046.onEscalatedApproval, 'optionalCall', _1047 => _1047(requestId, {
45403
45407
  command: summary,
45404
- explanation: _optionalChain([required, 'optionalAccess', _1046 => _1046.toolExplanation]),
45408
+ explanation: _optionalChain([required, 'optionalAccess', _1048 => _1048.toolExplanation]),
45405
45409
  approvalType
45406
45410
  })]);
45407
45411
  break;
@@ -45431,7 +45435,7 @@ function useRealtimeChunkProcessor(options) {
45431
45435
  const status = approved ? "approved" : "rejected";
45432
45436
  if (escalatedData) {
45433
45437
  pendingEscalatedRef.current.delete(requestId);
45434
- _optionalChain([callbacks, 'access', _1047 => _1047.onEscalatedApprovalResult, 'optionalCall', _1048 => _1048(requestId, approved, {
45438
+ _optionalChain([callbacks, 'access', _1049 => _1049.onEscalatedApprovalResult, 'optionalCall', _1050 => _1050(requestId, approved, {
45435
45439
  command: escalatedData.command,
45436
45440
  explanation: escalatedData.explanation,
45437
45441
  approvalType: escalatedData.approvalType
@@ -45477,29 +45481,29 @@ function useRealtimeChunkProcessor(options) {
45477
45481
  emitSegments(accumulator.getSegments());
45478
45482
  }
45479
45483
  }
45480
- _optionalChain([callbacks, 'access', _1049 => _1049.onApprovalResolved, 'optionalCall', _1050 => _1050(requestId, status, approvalType, resolvedByName)]);
45484
+ _optionalChain([callbacks, 'access', _1051 => _1051.onApprovalResolved, 'optionalCall', _1052 => _1052(requestId, status, approvalType, resolvedByName)]);
45481
45485
  break;
45482
45486
  }
45483
45487
  case "error": {
45484
45488
  let message2;
45485
- if ("details" in action && _optionalChain([action, 'optionalAccess', _1051 => _1051.details])) {
45489
+ if ("details" in action && _optionalChain([action, 'optionalAccess', _1053 => _1053.details])) {
45486
45490
  try {
45487
- message2 = _optionalChain([JSON, 'access', _1052 => _1052.parse, 'call', _1053 => _1053(action.details), 'optionalAccess', _1054 => _1054.error, 'optionalAccess', _1055 => _1055.message]);
45491
+ message2 = _optionalChain([JSON, 'access', _1054 => _1054.parse, 'call', _1055 => _1055(action.details), 'optionalAccess', _1056 => _1056.error, 'optionalAccess', _1057 => _1057.message]);
45488
45492
  } catch (e52) {
45489
45493
  message2 = action.details;
45490
45494
  }
45491
45495
  }
45492
45496
  const segments = accumulator.addError(action.error, message2);
45493
45497
  emitSegments(segments);
45494
- _optionalChain([callbacks, 'access', _1056 => _1056.onError, 'optionalCall', _1057 => _1057(action.error, message2)]);
45498
+ _optionalChain([callbacks, 'access', _1058 => _1058.onError, 'optionalCall', _1059 => _1059(action.error, message2)]);
45495
45499
  break;
45496
45500
  }
45497
45501
  case "system": {
45498
- _optionalChain([callbacks, 'access', _1058 => _1058.onSystemMessage, 'optionalCall', _1059 => _1059(action.text, { streamSeq })]);
45502
+ _optionalChain([callbacks, 'access', _1060 => _1060.onSystemMessage, 'optionalCall', _1061 => _1061(action.text, { streamSeq })]);
45499
45503
  break;
45500
45504
  }
45501
45505
  case "direct_message": {
45502
- _optionalChain([callbacks, 'access', _1060 => _1060.onDirectMessage, 'optionalCall', _1061 => _1061(action.text, {
45506
+ _optionalChain([callbacks, 'access', _1062 => _1062.onDirectMessage, 'optionalCall', _1063 => _1063(action.text, {
45503
45507
  ownerType: action.ownerType,
45504
45508
  displayName: action.displayName,
45505
45509
  userId: action.userId,
@@ -45508,7 +45512,7 @@ function useRealtimeChunkProcessor(options) {
45508
45512
  break;
45509
45513
  }
45510
45514
  case "message_request":
45511
- _optionalChain([callbacks, 'access', _1062 => _1062.onUserMessage, 'optionalCall', _1063 => _1063(action.text, {
45515
+ _optionalChain([callbacks, 'access', _1064 => _1064.onUserMessage, 'optionalCall', _1065 => _1065(action.text, {
45512
45516
  ownerType: action.ownerType,
45513
45517
  displayName: action.displayName,
45514
45518
  userId: action.userId,
@@ -45517,7 +45521,7 @@ function useRealtimeChunkProcessor(options) {
45517
45521
  })]);
45518
45522
  break;
45519
45523
  case "token_usage":
45520
- _optionalChain([callbacks, 'access', _1064 => _1064.onTokenUsage, 'optionalCall', _1065 => _1065(action.data)]);
45524
+ _optionalChain([callbacks, 'access', _1066 => _1066.onTokenUsage, 'optionalCall', _1067 => _1067(action.data)]);
45521
45525
  break;
45522
45526
  case "context_compaction_start": {
45523
45527
  const standalone = !isInStreamRef.current;
@@ -45532,7 +45536,7 @@ function useRealtimeChunkProcessor(options) {
45532
45536
  break;
45533
45537
  }
45534
45538
  case "dialog_closed":
45535
- _optionalChain([callbacks, 'access', _1066 => _1066.onDialogClosed, 'optionalCall', _1067 => _1067()]);
45539
+ _optionalChain([callbacks, 'access', _1068 => _1068.onDialogClosed, 'optionalCall', _1069 => _1069()]);
45536
45540
  break;
45537
45541
  default:
45538
45542
  break;
@@ -45579,7 +45583,7 @@ async function fetchSlashCommands(prefix, signal, commandsUrl) {
45579
45583
  const data = await res.json();
45580
45584
  return _nullishCoalesce(data.commands, () => ( []));
45581
45585
  } catch (err) {
45582
- if (_optionalChain([err, 'optionalAccess', _1068 => _1068.name]) === "AbortError") throw err;
45586
+ if (_optionalChain([err, 'optionalAccess', _1070 => _1070.name]) === "AbortError") throw err;
45583
45587
  console.warn("[chat] slash-commands fetch failed, showing none:", err);
45584
45588
  return [];
45585
45589
  }
@@ -45600,7 +45604,7 @@ function useSlashCommands(prefix, commandsUrl) {
45600
45604
  const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
45601
45605
  if (!cancelled) setCommands(next);
45602
45606
  } catch (err) {
45603
- if (!cancelled && _optionalChain([err, 'optionalAccess', _1069 => _1069.name]) !== "AbortError") {
45607
+ if (!cancelled && _optionalChain([err, 'optionalAccess', _1071 => _1071.name]) !== "AbortError") {
45604
45608
  console.warn("[use-slash-commands] fetch failed:", err);
45605
45609
  }
45606
45610
  } finally {
@@ -45619,7 +45623,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
45619
45623
  const query = _reactquery.useQuery.call(void 0, {
45620
45624
  queryKey: ["chat-slash-commands", commandsUrl],
45621
45625
  queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
45622
- enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1070 => _1070.enabled]), () => ( true)),
45626
+ enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1072 => _1072.enabled]), () => ( true)),
45623
45627
  staleTime: Infinity,
45624
45628
  gcTime: Infinity,
45625
45629
  // The commands registry is non-critical chrome — a failure degrades to an
@@ -45658,21 +45662,21 @@ async function fetchEmptyStateConfig(signal, emptyStateUrl) {
45658
45662
  }
45659
45663
  const data = await res.json();
45660
45664
  return {
45661
- name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1071 => _1071.name]), () => ( null)),
45662
- icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1072 => _1072.icon]), () => ( null)),
45663
- greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1073 => _1073.greeting]), () => ( null)),
45664
- enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1074 => _1074.enabledRagTableIds]), () => ( [])),
45665
- quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1075 => _1075.quickActions]), () => ( [])),
45666
- suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1076 => _1076.suggestedQueries]), () => ( []))
45665
+ name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1073 => _1073.name]), () => ( null)),
45666
+ icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1074 => _1074.icon]), () => ( null)),
45667
+ greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1075 => _1075.greeting]), () => ( null)),
45668
+ enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1076 => _1076.enabledRagTableIds]), () => ( [])),
45669
+ quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1077 => _1077.quickActions]), () => ( [])),
45670
+ suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1078 => _1078.suggestedQueries]), () => ( []))
45667
45671
  };
45668
45672
  } catch (err) {
45669
- if (_optionalChain([err, 'optionalAccess', _1077 => _1077.name]) === "AbortError") throw err;
45673
+ if (_optionalChain([err, 'optionalAccess', _1079 => _1079.name]) === "AbortError") throw err;
45670
45674
  console.warn("[chat] empty-state config fetch failed, using neutral defaults:", err);
45671
45675
  return EMPTY_STATE_FALLBACK;
45672
45676
  }
45673
45677
  }
45674
45678
  function useEmptyStateConfig(emptyStateUrl, options) {
45675
- const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1078 => _1078.enabled]), () => ( true))) && !!emptyStateUrl;
45679
+ const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1080 => _1080.enabled]), () => ( true))) && !!emptyStateUrl;
45676
45680
  const query = _reactquery.useQuery.call(void 0, {
45677
45681
  queryKey: ["chat-empty-state", emptyStateUrl],
45678
45682
  queryFn: ({ signal }) => fetchEmptyStateConfig(signal, emptyStateUrl),
@@ -45701,7 +45705,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
45701
45705
  var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
45702
45706
  function uploadWithProgress(url, file, token, onProgress, signal) {
45703
45707
  return new Promise((resolve, reject) => {
45704
- if (_optionalChain([signal, 'optionalAccess', _1079 => _1079.aborted])) {
45708
+ if (_optionalChain([signal, 'optionalAccess', _1081 => _1081.aborted])) {
45705
45709
  reject(new Error("Upload cancelled"));
45706
45710
  return;
45707
45711
  }
@@ -45715,7 +45719,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
45715
45719
  xhr.removeEventListener("error", handleError);
45716
45720
  xhr.removeEventListener("abort", handleAbort);
45717
45721
  xhr.removeEventListener("timeout", handleTimeout);
45718
- _optionalChain([signal, 'optionalAccess', _1080 => _1080.removeEventListener, 'call', _1081 => _1081("abort", handleSignalAbort)]);
45722
+ _optionalChain([signal, 'optionalAccess', _1082 => _1082.removeEventListener, 'call', _1083 => _1083("abort", handleSignalAbort)]);
45719
45723
  if (xhr.readyState !== XMLHttpRequest.DONE) xhr.abort();
45720
45724
  };
45721
45725
  const handleProgress = (event) => {
@@ -45751,7 +45755,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
45751
45755
  const handleSignalAbort = () => {
45752
45756
  xhr.abort();
45753
45757
  };
45754
- _optionalChain([signal, 'optionalAccess', _1082 => _1082.addEventListener, 'call', _1083 => _1083("abort", handleSignalAbort, { once: true })]);
45758
+ _optionalChain([signal, 'optionalAccess', _1084 => _1084.addEventListener, 'call', _1085 => _1085("abort", handleSignalAbort, { once: true })]);
45755
45759
  xhr.upload.addEventListener("progress", handleProgress);
45756
45760
  xhr.addEventListener("load", handleLoad);
45757
45761
  xhr.addEventListener("error", handleError);
@@ -45795,12 +45799,12 @@ function useChatAttachments() {
45795
45799
  try {
45796
45800
  sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
45797
45801
  } catch (err) {
45798
- if (_optionalChain([ctrl, 'optionalAccess', _1084 => _1084.signal, 'access', _1085 => _1085.aborted])) return;
45802
+ if (_optionalChain([ctrl, 'optionalAccess', _1086 => _1086.signal, 'access', _1087 => _1087.aborted])) return;
45799
45803
  throw new Error(
45800
45804
  `Could not read file content: ${err instanceof Error ? err.message : String(err)}`
45801
45805
  );
45802
45806
  }
45803
- if (_optionalChain([ctrl, 'optionalAccess', _1086 => _1086.signal, 'access', _1087 => _1087.aborted])) return;
45807
+ if (_optionalChain([ctrl, 'optionalAccess', _1088 => _1088.signal, 'access', _1089 => _1089.aborted])) return;
45804
45808
  if (!sniffed) {
45805
45809
  throw new Error("Unrecognized file format");
45806
45810
  }
@@ -45814,7 +45818,7 @@ function useChatAttachments() {
45814
45818
  const urlResp = await _chunkB7NOIJR3cjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
45815
45819
  method: "POST",
45816
45820
  headers: { "Content-Type": "application/json" },
45817
- signal: _optionalChain([ctrl, 'optionalAccess', _1088 => _1088.signal]),
45821
+ signal: _optionalChain([ctrl, 'optionalAccess', _1090 => _1090.signal]),
45818
45822
  body: JSON.stringify({
45819
45823
  fileName: att.file.name,
45820
45824
  // Pass the SNIFFED MIME (not `file.type`, which can be a
@@ -45840,9 +45844,9 @@ function useChatAttachments() {
45840
45844
  (pct) => {
45841
45845
  updateOne(att.id, { progress: pct });
45842
45846
  },
45843
- _optionalChain([ctrl, 'optionalAccess', _1089 => _1089.signal])
45847
+ _optionalChain([ctrl, 'optionalAccess', _1091 => _1091.signal])
45844
45848
  );
45845
- if (_optionalChain([ctrl, 'optionalAccess', _1090 => _1090.signal, 'access', _1091 => _1091.aborted])) return;
45849
+ if (_optionalChain([ctrl, 'optionalAccess', _1092 => _1092.signal, 'access', _1093 => _1093.aborted])) return;
45846
45850
  updateOne(att.id, {
45847
45851
  status: "ready",
45848
45852
  progress: 100,
@@ -45850,7 +45854,7 @@ function useChatAttachments() {
45850
45854
  viewToken: mintData.viewToken
45851
45855
  });
45852
45856
  } catch (err) {
45853
- if (_optionalChain([ctrl, 'optionalAccess', _1092 => _1092.signal, 'access', _1093 => _1093.aborted])) return;
45857
+ if (_optionalChain([ctrl, 'optionalAccess', _1094 => _1094.signal, 'access', _1095 => _1095.aborted])) return;
45854
45858
  const message2 = err instanceof Error ? err.message : String(err);
45855
45859
  updateOne(att.id, { status: "error", progress: 0, errorMessage: message2 });
45856
45860
  } finally {
@@ -46001,7 +46005,7 @@ var ANON_DEFAULTS = {
46001
46005
  function useResolveChatIdentity(enabled) {
46002
46006
  const runtime = _chunk3KEBI6TPcjs.useRequiredChatRuntime.call(void 0, );
46003
46007
  const url = runtime.endpoints.identityUrl;
46004
- const proxyEmail = _nullishCoalesce(_optionalChain([_chunkB7NOIJR3cjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1094 => _1094.email]), () => ( null));
46008
+ const proxyEmail = _nullishCoalesce(_optionalChain([_chunkB7NOIJR3cjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1096 => _1096.email]), () => ( null));
46005
46009
  const [data, setData] = _react.useState.call(void 0, ANON_DEFAULTS);
46006
46010
  const [isLoading, setIsLoading] = _react.useState.call(void 0, enabled);
46007
46011
  _react.useEffect.call(void 0, () => {
@@ -46092,7 +46096,7 @@ function useSSE({ useMock = true, debugMode = false, streamFn } = {}) {
46092
46096
  yield chunk;
46093
46097
  }
46094
46098
  } catch (err) {
46095
- if (_optionalChain([err, 'optionalAccess', _1095 => _1095.name]) === "AbortError" || ctrl.signal.aborted) {
46099
+ if (_optionalChain([err, 'optionalAccess', _1097 => _1097.name]) === "AbortError" || ctrl.signal.aborted) {
46096
46100
  return;
46097
46101
  }
46098
46102
  const errorMessage = err instanceof Error ? err.message : "An error occurred";
@@ -46143,7 +46147,7 @@ function useChat({
46143
46147
  const onMessagesChangeRef = _react.useRef.call(void 0, onMessagesChange);
46144
46148
  onMessagesChangeRef.current = onMessagesChange;
46145
46149
  _react.useEffect.call(void 0, () => {
46146
- _optionalChain([onMessagesChangeRef, 'access', _1096 => _1096.current, 'optionalCall', _1097 => _1097(messages)]);
46150
+ _optionalChain([onMessagesChangeRef, 'access', _1098 => _1098.current, 'optionalCall', _1099 => _1099(messages)]);
46147
46151
  }, [messages]);
46148
46152
  const {
46149
46153
  streamMessage,
@@ -46180,7 +46184,7 @@ function useChat({
46180
46184
  name: "You",
46181
46185
  content: text,
46182
46186
  timestamp: /* @__PURE__ */ new Date(),
46183
- ..._optionalChain([options, 'optionalAccess', _1098 => _1098.hidden]) ? { hidden: true } : {}
46187
+ ..._optionalChain([options, 'optionalAccess', _1100 => _1100.hidden]) ? { hidden: true } : {}
46184
46188
  };
46185
46189
  addMessage(userMessage);
46186
46190
  setIsTyping(true);
@@ -46242,7 +46246,7 @@ function useChat({
46242
46246
  currentTextSegment = "";
46243
46247
  }
46244
46248
  const seg = segment;
46245
- const proposalId = _optionalChain([seg, 'access', _1099 => _1099.data, 'optionalAccess', _1100 => _1100.requestId]);
46249
+ const proposalId = _optionalChain([seg, 'access', _1101 => _1101.data, 'optionalAccess', _1102 => _1102.requestId]);
46246
46250
  const updateApprovalMessage = (transform) => {
46247
46251
  setMessages((prev) => {
46248
46252
  for (let i = prev.length - 1; i >= 0; i--) {
@@ -46251,7 +46255,7 @@ function useChat({
46251
46255
  if (!Array.isArray(m.content)) continue;
46252
46256
  const segments = m.content;
46253
46257
  const hasMatch = segments.some(
46254
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1101 => _1101.data, 'optionalAccess', _1102 => _1102.requestId]) === proposalId
46258
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1103 => _1103.data, 'optionalAccess', _1104 => _1104.requestId]) === proposalId
46255
46259
  );
46256
46260
  if (!hasMatch) continue;
46257
46261
  const next = [...prev];
@@ -46293,11 +46297,11 @@ function useChat({
46293
46297
  if (!Array.isArray(m.content)) continue;
46294
46298
  const segments = m.content;
46295
46299
  const hasMatch = segments.some(
46296
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1103 => _1103.data, 'optionalAccess', _1104 => _1104.requestId]) === decision.proposalId
46300
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1105 => _1105.data, 'optionalAccess', _1106 => _1106.requestId]) === decision.proposalId
46297
46301
  );
46298
46302
  if (!hasMatch) continue;
46299
46303
  const flipped = segments.map(
46300
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1105 => _1105.data, 'optionalAccess', _1106 => _1106.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
46304
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1107 => _1107.data, 'optionalAccess', _1108 => _1108.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
46301
46305
  );
46302
46306
  const next = [...prev];
46303
46307
  next[i] = { ...m, content: flipped };
@@ -46459,8 +46463,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
46459
46463
  })),
46460
46464
  { role: "user", content: message2 }
46461
46465
  ];
46462
- const targetPath = _optionalChain([extra, 'optionalAccess', _1107 => _1107.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
46463
- const requestBody = _optionalChain([extra, 'optionalAccess', _1108 => _1108.approvalAction]) ? {
46466
+ const targetPath = _optionalChain([extra, 'optionalAccess', _1109 => _1109.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
46467
+ const requestBody = _optionalChain([extra, 'optionalAccess', _1110 => _1110.approvalAction]) ? {
46464
46468
  proposal_id: extra.approvalAction.proposalId,
46465
46469
  action: extra.approvalAction.action,
46466
46470
  messages: currentMessages.filter((m) => (m.role === "user" || m.role === "assistant") && !m.hidden).map((m) => ({
@@ -46469,8 +46473,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
46469
46473
  }))
46470
46474
  } : {
46471
46475
  messages: apiMessages,
46472
- ..._optionalChain([extra, 'optionalAccess', _1109 => _1109.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
46473
- ..._optionalChain([extra, 'optionalAccess', _1110 => _1110.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
46476
+ ..._optionalChain([extra, 'optionalAccess', _1111 => _1111.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
46477
+ ..._optionalChain([extra, 'optionalAccess', _1112 => _1112.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
46474
46478
  };
46475
46479
  const response = await _chunkB7NOIJR3cjs.embedAuthedFetch.call(void 0, targetPath, {
46476
46480
  method: "POST",
@@ -46480,7 +46484,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
46480
46484
  if (!response.ok) {
46481
46485
  throw new Error(`Chat request failed: ${response.status}`);
46482
46486
  }
46483
- const reader = _optionalChain([response, 'access', _1111 => _1111.body, 'optionalAccess', _1112 => _1112.getReader, 'call', _1113 => _1113()]);
46487
+ const reader = _optionalChain([response, 'access', _1113 => _1113.body, 'optionalAccess', _1114 => _1114.getReader, 'call', _1115 => _1115()]);
46484
46488
  if (!reader) throw new Error("No response body");
46485
46489
  const decoder = new TextDecoder();
46486
46490
  let buffer = "";
@@ -46563,7 +46567,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
46563
46567
  const toolName = typeof meta.tool_name === "string" ? meta.tool_name : void 0;
46564
46568
  const result = _nullishCoalesce(meta.result, () => ( null));
46565
46569
  const card = _nullishCoalesce(meta.card, () => ( null));
46566
- if (_optionalChain([card, 'optionalAccess', _1114 => _1114.ref, 'optionalAccess', _1115 => _1115.id]) && _optionalChain([card, 'optionalAccess', _1116 => _1116.type])) {
46570
+ if (_optionalChain([card, 'optionalAccess', _1116 => _1116.ref, 'optionalAccess', _1117 => _1117.id]) && _optionalChain([card, 'optionalAccess', _1118 => _1118.type])) {
46567
46571
  const existing = _nullishCoalesce(refsMapRef.current.get(sendIdx), () => ( {}));
46568
46572
  const key = buildChatRefKey(card.type, card.ref.id);
46569
46573
  refsMapRef.current.set(sendIdx, { ...existing, [key]: card.ref });
@@ -46576,8 +46580,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
46576
46580
  willAutoContinue: meta.willAutoContinue === true,
46577
46581
  ...toolName ? { toolName } : {},
46578
46582
  ...result ? { result } : {},
46579
- ..._optionalChain([card, 'optionalAccess', _1117 => _1117.marker]) ? { marker: card.marker } : {},
46580
- ..._optionalChain([card, 'optionalAccess', _1118 => _1118.ref]) ? { cardRef: card.ref } : {},
46583
+ ..._optionalChain([card, 'optionalAccess', _1119 => _1119.marker]) ? { marker: card.marker } : {},
46584
+ ..._optionalChain([card, 'optionalAccess', _1120 => _1120.ref]) ? { cardRef: card.ref } : {},
46581
46585
  ...typeof meta.receiptText === "string" ? { receiptText: meta.receiptText } : {},
46582
46586
  proposalId: typeof meta.proposalId === "string" ? meta.proposalId : void 0
46583
46587
  };
@@ -46696,7 +46700,7 @@ var DEFAULT_CHAT_SOURCE = "embed";
46696
46700
  var chatStorageKey = (source) => {
46697
46701
  const base = `mingo-chat-${source}-v${CHAT_STORAGE_VERSION}`;
46698
46702
  const auth = _chunkB7NOIJR3cjs.getEmbedProxyAuth.call(void 0, );
46699
- if (_optionalChain([auth, 'optionalAccess', _1119 => _1119.email])) {
46703
+ if (_optionalChain([auth, 'optionalAccess', _1121 => _1121.email])) {
46700
46704
  return `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}`;
46701
46705
  }
46702
46706
  return base;
@@ -46751,7 +46755,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
46751
46755
  const { active = true } = runtimeOptions;
46752
46756
  const runtime = _chunk3KEBI6TPcjs.useRequiredChatRuntime.call(void 0, );
46753
46757
  const source = runtime.source || DEFAULT_CHAT_SOURCE;
46754
- const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1120 => _1120.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
46758
+ const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1122 => _1122.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
46755
46759
  const persistedRef = _react.useRef.call(void 0, null);
46756
46760
  if (persistedRef.current === null) {
46757
46761
  pruneStaleChatStorage(source);
@@ -46856,7 +46860,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
46856
46860
  const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
46857
46861
  sources = sourcesMapRef.current.get(lookupIdx);
46858
46862
  chatRefs = _nullishCoalesce(m.chatRefs, () => ( refsMapRef.current.get(lookupIdx)));
46859
- scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1121 => _1121.current, 'access', _1122 => _1122.get, 'call', _1123 => _1123(lookupIdx), 'optionalAccess', _1124 => _1124.scrollAnchor]), () => ( void 0));
46863
+ scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1123 => _1123.current, 'access', _1124 => _1124.get, 'call', _1125 => _1125(lookupIdx), 'optionalAccess', _1126 => _1126.scrollAnchor]), () => ( void 0));
46860
46864
  }
46861
46865
  return {
46862
46866
  id: m.id,
@@ -46904,7 +46908,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
46904
46908
  );
46905
46909
  return;
46906
46910
  }
46907
- const refSlug = typeof _optionalChain([reference, 'access', _1125 => _1125.metadata, 'optionalAccess', _1126 => _1126.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
46911
+ const refSlug = typeof _optionalChain([reference, 'access', _1127 => _1127.metadata, 'optionalAccess', _1128 => _1128.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
46908
46912
  const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
46909
46913
  const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
46910
46914
  const text = `/${cmdId} display "${escaped}"`;
@@ -46976,18 +46980,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
46976
46980
  clearMessages,
46977
46981
  streamingPhase,
46978
46982
  /** Provider key for the lib's `<ModelDisplay>` icon. */
46979
- currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1127 => _1127.provider]), () => ( null)),
46980
- currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1128 => _1128.modelLabel]), () => ( null)),
46981
- currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1129 => _1129.contextWindowMaxTokens]), () => ( null)),
46983
+ currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1129 => _1129.provider]), () => ( null)),
46984
+ currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1130 => _1130.modelLabel]), () => ( null)),
46985
+ currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1131 => _1131.contextWindowMaxTokens]), () => ( null)),
46982
46986
  /** Input tokens (known after server's message_start frame; null until). */
46983
- currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1130 => _1130.inputTokens]), () => ( null)),
46987
+ currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1132 => _1132.inputTokens]), () => ( null)),
46984
46988
  /** Output tokens (known only after server's trailing usage frame). */
46985
- currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1131 => _1131.outputTokens]), () => ( null)),
46989
+ currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1133 => _1133.outputTokens]), () => ( null)),
46986
46990
  /** Cache hit % (read / total-input × 100). null during streaming. */
46987
- currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1132 => _1132.cacheHitRatePct]), () => ( null)),
46991
+ currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1134 => _1134.cacheHitRatePct]), () => ( null)),
46988
46992
  /** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
46989
46993
  * token counts). null until the trailing usage frame lands. */
46990
- currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1133 => _1133.breakdown]), () => ( null)),
46994
+ currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1135 => _1135.breakdown]), () => ( null)),
46991
46995
  // ─── Dialog management — stubs for v1 ────────────────────────────────
46992
46996
  // Guide mode currently keeps its history in `localStorage` opaquely
46993
46997
  // under the hood (`runtime.source` namespaced key). Surfacing that
@@ -47045,15 +47049,15 @@ var noopRejectRequest = async (_id, _reason) => {
47045
47049
 
47046
47050
  // src/components/chat/utils/process-historical-messages.ts
47047
47051
  function getOwnerDisplayName(owner) {
47048
- if (_optionalChain([owner, 'optionalAccess', _1134 => _1134.type]) === OWNER_TYPE.ADMIN && owner.user) {
47052
+ if (_optionalChain([owner, 'optionalAccess', _1136 => _1136.type]) === OWNER_TYPE.ADMIN && owner.user) {
47049
47053
  const { firstName, lastName } = owner.user;
47050
47054
  const name = [firstName, lastName].filter(Boolean).join(" ");
47051
47055
  if (name) return name;
47052
47056
  }
47053
- return _optionalChain([owner, 'optionalAccess', _1135 => _1135.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
47057
+ return _optionalChain([owner, 'optionalAccess', _1137 => _1137.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
47054
47058
  }
47055
47059
  function getOwnerAvatar(owner) {
47056
- return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1136 => _1136.user, 'optionalAccess', _1137 => _1137.image, 'optionalAccess', _1138 => _1138.imageUrl]), () => ( void 0));
47060
+ return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1138 => _1138.user, 'optionalAccess', _1139 => _1139.image, 'optionalAccess', _1140 => _1140.imageUrl]), () => ( void 0));
47057
47061
  }
47058
47062
  function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
47059
47063
  messageDataArray.forEach((data) => {
@@ -47116,14 +47120,14 @@ function processHistoricalMessages(messages, options = {}) {
47116
47120
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
47117
47121
  return;
47118
47122
  }
47119
- const isUserMessage = _optionalChain([msg, 'access', _1139 => _1139.owner, 'optionalAccess', _1140 => _1140.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1141 => _1141.owner, 'optionalAccess', _1142 => _1142.type]) === OWNER_TYPE.ADMIN;
47123
+ const isUserMessage = _optionalChain([msg, 'access', _1141 => _1141.owner, 'optionalAccess', _1142 => _1142.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1143 => _1143.owner, 'optionalAccess', _1144 => _1144.type]) === OWNER_TYPE.ADMIN;
47120
47124
  if (isUserMessage) {
47121
47125
  flushAssistantMessage();
47122
- const userAuthorType = _optionalChain([msg, 'access', _1143 => _1143.owner, 'optionalAccess', _1144 => _1144.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
47126
+ const userAuthorType = _optionalChain([msg, 'access', _1145 => _1145.owner, 'optionalAccess', _1146 => _1146.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
47123
47127
  messageDataArray.forEach((data) => {
47124
47128
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
47125
47129
  const rawContext = data.contextItems;
47126
- const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1145 => _1145.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1146 => _1146.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
47130
+ const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1147 => _1147.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1148 => _1148.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
47127
47131
  processedMessages.push({
47128
47132
  id: msg.id,
47129
47133
  role: "user",
@@ -47147,7 +47151,7 @@ function processHistoricalMessages(messages, options = {}) {
47147
47151
  });
47148
47152
  const nextMsg = messages[index + 1];
47149
47153
  const isLastMessage = index === messages.length - 1;
47150
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1147 => _1147.owner, 'optionalAccess', _1148 => _1148.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1149 => _1149.owner, 'optionalAccess', _1150 => _1150.type]) === OWNER_TYPE.ADMIN);
47154
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1149 => _1149.owner, 'optionalAccess', _1150 => _1150.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1151 => _1151.owner, 'optionalAccess', _1152 => _1152.type]) === OWNER_TYPE.ADMIN);
47151
47155
  if (isLastMessage || nextIsFromUser) {
47152
47156
  flushAssistantMessage();
47153
47157
  }
@@ -47257,7 +47261,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
47257
47261
  }
47258
47262
  }
47259
47263
  } else {
47260
- _optionalChain([escalatedApprovals, 'optionalAccess', _1151 => _1151.set, 'call', _1152 => _1152(data.approvalRequestId, {
47264
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1153 => _1153.set, 'call', _1154 => _1154(data.approvalRequestId, {
47261
47265
  command: data.command || "",
47262
47266
  explanation: data.explanation,
47263
47267
  approvalType,
@@ -47271,8 +47275,8 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
47271
47275
  const existingStatus = approvalStatuses[data.approvalRequestId];
47272
47276
  const status = existingStatus || (data.approved ? "approved" : "rejected");
47273
47277
  const resolvedByName = "resolvedByName" in data ? data.resolvedByName : void 0;
47274
- const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1153 => _1153.get, 'call', _1154 => _1154(data.approvalRequestId)]);
47275
- if (_optionalChain([escalatedData, 'optionalAccess', _1155 => _1155.toolCalls]) && escalatedData.toolCalls.length > 0) {
47278
+ const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1155 => _1155.get, 'call', _1156 => _1156(data.approvalRequestId)]);
47279
+ if (_optionalChain([escalatedData, 'optionalAccess', _1157 => _1157.toolCalls]) && escalatedData.toolCalls.length > 0) {
47276
47280
  if (batchApprovalsEnabled) {
47277
47281
  accumulator.addApprovalBatch(
47278
47282
  data.approvalRequestId,
@@ -47294,7 +47298,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
47294
47298
  );
47295
47299
  }
47296
47300
  }
47297
- _optionalChain([escalatedApprovals, 'optionalAccess', _1156 => _1156.delete, 'call', _1157 => _1157(data.approvalRequestId)]);
47301
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1158 => _1158.delete, 'call', _1159 => _1159(data.approvalRequestId)]);
47298
47302
  break;
47299
47303
  }
47300
47304
  if (escalatedData) {
@@ -47303,7 +47307,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
47303
47307
  explanation: escalatedData.explanation,
47304
47308
  approvalType: escalatedData.approvalType
47305
47309
  });
47306
- _optionalChain([escalatedApprovals, 'optionalAccess', _1158 => _1158.delete, 'call', _1159 => _1159(data.approvalRequestId)]);
47310
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1160 => _1160.delete, 'call', _1161 => _1161(data.approvalRequestId)]);
47307
47311
  }
47308
47312
  const before = accumulator.getSegments();
47309
47313
  const after = accumulator.updateApprovalStatus(data.approvalRequestId, status, resolvedByName);
@@ -47319,9 +47323,9 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
47319
47323
  case MESSAGE_TYPE.ERROR:
47320
47324
  if ("error" in data) {
47321
47325
  let message2;
47322
- if ("details" in data && _optionalChain([data, 'optionalAccess', _1160 => _1160.details])) {
47326
+ if ("details" in data && _optionalChain([data, 'optionalAccess', _1162 => _1162.details])) {
47323
47327
  try {
47324
- message2 = _optionalChain([JSON, 'access', _1161 => _1161.parse, 'call', _1162 => _1162(data.details), 'optionalAccess', _1163 => _1163.error, 'optionalAccess', _1164 => _1164.message]);
47328
+ message2 = _optionalChain([JSON, 'access', _1163 => _1163.parse, 'call', _1164 => _1164(data.details), 'optionalAccess', _1165 => _1165.error, 'optionalAccess', _1166 => _1166.message]);
47325
47329
  } catch (e59) {
47326
47330
  message2 = data.details;
47327
47331
  }
@@ -47404,14 +47408,14 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
47404
47408
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
47405
47409
  return;
47406
47410
  }
47407
- const isUserMessage = _optionalChain([msg, 'access', _1165 => _1165.owner, 'optionalAccess', _1166 => _1166.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1167 => _1167.owner, 'optionalAccess', _1168 => _1168.type]) === OWNER_TYPE.ADMIN;
47411
+ const isUserMessage = _optionalChain([msg, 'access', _1167 => _1167.owner, 'optionalAccess', _1168 => _1168.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1169 => _1169.owner, 'optionalAccess', _1170 => _1170.type]) === OWNER_TYPE.ADMIN;
47408
47412
  if (isUserMessage) {
47409
47413
  flushAssistantMessage();
47410
- const userAuthorType = _optionalChain([msg, 'access', _1169 => _1169.owner, 'optionalAccess', _1170 => _1170.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
47414
+ const userAuthorType = _optionalChain([msg, 'access', _1171 => _1171.owner, 'optionalAccess', _1172 => _1172.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
47411
47415
  messageDataArray.forEach((data) => {
47412
47416
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
47413
47417
  const rawContext = data.contextItems;
47414
- const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1171 => _1171.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1172 => _1172.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
47418
+ const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1173 => _1173.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1174 => _1174.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
47415
47419
  processedMessages.push({
47416
47420
  id: msg.id,
47417
47421
  role: "user",
@@ -47435,7 +47439,7 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
47435
47439
  });
47436
47440
  const nextMsg = messages[index + 1];
47437
47441
  const isLastMessage = index === messages.length - 1;
47438
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1173 => _1173.owner, 'optionalAccess', _1174 => _1174.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1175 => _1175.owner, 'optionalAccess', _1176 => _1176.type]) === OWNER_TYPE.ADMIN);
47442
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1175 => _1175.owner, 'optionalAccess', _1176 => _1176.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1177 => _1177.owner, 'optionalAccess', _1178 => _1178.type]) === OWNER_TYPE.ADMIN);
47439
47443
  if (isLastMessage || nextIsFromUser) {
47440
47444
  flushAssistantMessage();
47441
47445
  }
@@ -47771,7 +47775,7 @@ function useNatsChatAdapter(config, options = {}) {
47771
47775
  }, [active, fetchDialogs, loadDialogsPage]);
47772
47776
  const sendMessage = _react.useCallback.call(void 0,
47773
47777
  async (text, sendOptions) => {
47774
- const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1177 => _1177.hidden]), () => ( false));
47778
+ const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1179 => _1179.hidden]), () => ( false));
47775
47779
  setMessages((prev) => [
47776
47780
  ...prev,
47777
47781
  {
@@ -47935,11 +47939,11 @@ function useNatsChatAdapter(config, options = {}) {
47935
47939
  // Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
47936
47940
  // contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
47937
47941
  // matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
47938
- currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1178 => _1178.provider]), () => ( modelProvider)), () => ( null)),
47939
- currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1179 => _1179.modelLabel]), () => ( modelLabel)), () => ( null)),
47940
- currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1180 => _1180.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1181 => _1181.contextWindowMaxTokens]))), () => ( null)),
47941
- currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1182 => _1182.inputTokensSize]), () => ( null)),
47942
- currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1183 => _1183.outputTokensSize]), () => ( null)),
47942
+ currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1180 => _1180.provider]), () => ( modelProvider)), () => ( null)),
47943
+ currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1181 => _1181.modelLabel]), () => ( modelLabel)), () => ( null)),
47944
+ currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1182 => _1182.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1183 => _1183.contextWindowMaxTokens]))), () => ( null)),
47945
+ currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1184 => _1184.inputTokensSize]), () => ( null)),
47946
+ currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1185 => _1185.outputTokensSize]), () => ( null)),
47943
47947
  currentCacheHitRatePct: null,
47944
47948
  currentUsageBreakdown: null,
47945
47949
  // Dialog management
@@ -48187,7 +48191,7 @@ function extractIncompleteMessageState(lastMessage) {
48187
48191
  break;
48188
48192
  case "approval_batch": {
48189
48193
  const allDone = !!segment.data.executions && segment.data.toolCalls.every(
48190
- (c) => _optionalChain([segment, 'access', _1184 => _1184.data, 'access', _1185 => _1185.executions, 'optionalAccess', _1186 => _1186[c.toolExecutionRequestId], 'optionalAccess', _1187 => _1187.status]) === "done"
48194
+ (c) => _optionalChain([segment, 'access', _1186 => _1186.data, 'access', _1187 => _1187.executions, 'optionalAccess', _1188 => _1188[c.toolExecutionRequestId], 'optionalAccess', _1189 => _1189.status]) === "done"
48191
48195
  );
48192
48196
  if (segment.status !== "rejected" && !allDone) {
48193
48197
  hasIncompleteState = true;
@@ -48255,20 +48259,20 @@ function mergeHistoryWithRealtime(input) {
48255
48259
  const seqCoverageKnown = realtimeSeenStreamSeq > 0 && historyMaxStreamSeq > 0;
48256
48260
  const historyCoversRealtime = seqCoverageKnown ? historyMaxStreamSeq >= realtimeSeenStreamSeq : null;
48257
48261
  const trailing = processedHistory[processedHistory.length - 1];
48258
- const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1188 => _1188.role]) === "assistant" ? trailing : null;
48259
- const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1189 => _1189.content, 'access', _1190 => _1190.find, 'call', _1191 => _1191((s) => s.type === "approval_batch"), 'optionalAccess', _1192 => _1192.data, 'optionalAccess', _1193 => _1193.approvalRequestId]), () => ( null)) : null;
48262
+ const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1190 => _1190.role]) === "assistant" ? trailing : null;
48263
+ const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1191 => _1191.content, 'access', _1192 => _1192.find, 'call', _1193 => _1193((s) => s.type === "approval_batch"), 'optionalAccess', _1194 => _1194.data, 'optionalAccess', _1195 => _1195.approvalRequestId]), () => ( null)) : null;
48260
48264
  let processedToUse = processedHistory;
48261
48265
  const pinnedSyntheticIds = /* @__PURE__ */ new Set();
48262
48266
  const droppedSyntheticIds = /* @__PURE__ */ new Set();
48263
48267
  if (historyBatchId) {
48264
48268
  const batchTwins = existingMessages.filter(
48265
48269
  (m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some(
48266
- (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1194 => _1194.data, 'optionalAccess', _1195 => _1195.approvalRequestId]) === historyBatchId
48270
+ (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1196 => _1196.data, 'optionalAccess', _1197 => _1197.approvalRequestId]) === historyBatchId
48267
48271
  )
48268
48272
  );
48269
48273
  const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
48270
48274
  if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
48271
- const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1196 => _1196.content])) ? historyTrailingAssistant.content.length : 0;
48275
+ const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1198 => _1198.content])) ? historyTrailingAssistant.content.length : 0;
48272
48276
  const realtimeSize = existingWithSameBatch.content.length;
48273
48277
  if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
48274
48278
  processedToUse = processedHistory.slice(0, -1);
@@ -48284,16 +48288,16 @@ function mergeHistoryWithRealtime(input) {
48284
48288
  if (pinnedSyntheticIds.has(m.id)) return true;
48285
48289
  if (droppedSyntheticIds.has(m.id)) return false;
48286
48290
  if (processedIds.has(m.id)) return false;
48287
- if (_optionalChain([rawHistoryIds, 'optionalAccess', _1197 => _1197.has, 'call', _1198 => _1198(m.id)])) return false;
48291
+ if (_optionalChain([rawHistoryIds, 'optionalAccess', _1199 => _1199.has, 'call', _1200 => _1200(m.id)])) return false;
48288
48292
  if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
48289
- const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1199 => _1199.timestamp, 'optionalAccess', _1200 => _1200.getTime, 'call', _1201 => _1201()]), () => ( 0))) <= historyFetchedAt;
48293
+ const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1201 => _1201.timestamp, 'optionalAccess', _1202 => _1202.getTime, 'call', _1203 => _1203()]), () => ( 0))) <= historyFetchedAt;
48290
48294
  return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
48291
48295
  }
48292
48296
  if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
48293
48297
  if (m.role === "assistant" && trailingAssistantText && assistantAnswerText(m.content) === trailingAssistantText) {
48294
48298
  return false;
48295
48299
  }
48296
- const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1202 => _1202.timestamp, 'optionalAccess', _1203 => _1203.getTime, 'call', _1204 => _1204()]), () => ( 0))) <= historyFetchedAt;
48300
+ const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1204 => _1204.timestamp, 'optionalAccess', _1205 => _1205.getTime, 'call', _1206 => _1206()]), () => ( 0))) <= historyFetchedAt;
48297
48301
  if (covered) return false;
48298
48302
  }
48299
48303
  return true;
@@ -48513,7 +48517,7 @@ function useChatDialogManager({
48513
48517
  const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
48514
48518
  if (restoreTarget) {
48515
48519
  try {
48516
- await _optionalChain([unarchiveDialog, 'optionalCall', _1205 => _1205(restoreTarget.id)]);
48520
+ await _optionalChain([unarchiveDialog, 'optionalCall', _1207 => _1207(restoreTarget.id)]);
48517
48521
  } catch (err) {
48518
48522
  console.error("[useChatDialogManager] unarchive failed:", err);
48519
48523
  return;
@@ -48930,7 +48934,7 @@ function EmbeddableChatInner({
48930
48934
  }),
48931
48935
  [commandsUrl]
48932
48936
  );
48933
- const userName = _optionalChain([identityUser, 'optionalAccess', _1206 => _1206.firstName, 'optionalAccess', _1207 => _1207.trim, 'call', _1208 => _1208()]) || _optionalChain([identityUser, 'optionalAccess', _1209 => _1209.name, 'optionalAccess', _1210 => _1210.split, 'call', _1211 => _1211(" "), 'access', _1212 => _1212[0], 'optionalAccess', _1213 => _1213.trim, 'call', _1214 => _1214()]) || void 0;
48937
+ const userName = _optionalChain([identityUser, 'optionalAccess', _1208 => _1208.firstName, 'optionalAccess', _1209 => _1209.trim, 'call', _1210 => _1210()]) || _optionalChain([identityUser, 'optionalAccess', _1211 => _1211.name, 'optionalAccess', _1212 => _1212.split, 'call', _1213 => _1213(" "), 'access', _1214 => _1214[0], 'optionalAccess', _1215 => _1215.trim, 'call', _1216 => _1216()]) || void 0;
48934
48938
  const effectiveModes = _react.useMemo.call(void 0, () => {
48935
48939
  if (modes) return modes;
48936
48940
  const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
@@ -48939,19 +48943,19 @@ function EmbeddableChatInner({
48939
48943
  const mingoCaps = _react.useMemo.call(void 0, () => {
48940
48944
  if (mingoState) {
48941
48945
  return {
48942
- canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1215 => _1215.canRename]), () => ( false)),
48943
- canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1216 => _1216.canArchive]), () => ( false)),
48944
- fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1217 => _1217.fetchArchivedDialogs]),
48945
- unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1218 => _1218.unarchiveDialog]),
48946
- searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1219 => _1219.searchQuery]),
48947
- onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1220 => _1220.onSearchChange])
48946
+ canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1217 => _1217.canRename]), () => ( false)),
48947
+ canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1218 => _1218.canArchive]), () => ( false)),
48948
+ fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1219 => _1219.fetchArchivedDialogs]),
48949
+ unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1220 => _1220.unarchiveDialog]),
48950
+ searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1221 => _1221.searchQuery]),
48951
+ onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1222 => _1222.onSearchChange])
48948
48952
  };
48949
48953
  }
48950
48954
  return {
48951
- canRename: !!_optionalChain([effectiveModes, 'access', _1221 => _1221.mingo, 'optionalAccess', _1222 => _1222.renameDialog]),
48952
- canArchive: !!_optionalChain([effectiveModes, 'access', _1223 => _1223.mingo, 'optionalAccess', _1224 => _1224.archiveDialog]),
48953
- fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1225 => _1225.mingo, 'optionalAccess', _1226 => _1226.fetchArchivedDialogs]),
48954
- unarchiveDialog: _optionalChain([effectiveModes, 'access', _1227 => _1227.mingo, 'optionalAccess', _1228 => _1228.unarchiveDialog]),
48955
+ canRename: !!_optionalChain([effectiveModes, 'access', _1223 => _1223.mingo, 'optionalAccess', _1224 => _1224.renameDialog]),
48956
+ canArchive: !!_optionalChain([effectiveModes, 'access', _1225 => _1225.mingo, 'optionalAccess', _1226 => _1226.archiveDialog]),
48957
+ fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1227 => _1227.mingo, 'optionalAccess', _1228 => _1228.fetchArchivedDialogs]),
48958
+ unarchiveDialog: _optionalChain([effectiveModes, 'access', _1229 => _1229.mingo, 'optionalAccess', _1230 => _1230.unarchiveDialog]),
48955
48959
  searchQuery: void 0,
48956
48960
  onSearchChange: void 0
48957
48961
  };
@@ -48965,7 +48969,7 @@ function EmbeddableChatInner({
48965
48969
  if (controlledActiveMode === void 0) {
48966
48970
  setUncontrolledActiveMode(next);
48967
48971
  }
48968
- _optionalChain([onActiveModeChange, 'optionalCall', _1229 => _1229(next)]);
48972
+ _optionalChain([onActiveModeChange, 'optionalCall', _1231 => _1231(next)]);
48969
48973
  },
48970
48974
  [controlledActiveMode, onActiveModeChange]
48971
48975
  );
@@ -48987,7 +48991,7 @@ function EmbeddableChatInner({
48987
48991
  const effectiveQuickActions = emptyStateUrl ? emptyStateConfig.quickActions : [];
48988
48992
  const effectiveAssistantName = emptyStateConfig.name;
48989
48993
  const effectiveAssistantIcon = emptyStateConfig.icon;
48990
- const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1230 => _1230.title]) === "string" ? guideWelcome.title : null)));
48994
+ const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1232 => _1232.title]) === "string" ? guideWelcome.title : null)));
48991
48995
  const {
48992
48996
  messages: rawMessages,
48993
48997
  isLoading: chatLoading,
@@ -49027,7 +49031,7 @@ function EmbeddableChatInner({
49027
49031
  if (activeMode !== "guide" || guidePromptSentRef.current) return;
49028
49032
  guidePromptSentRef.current = true;
49029
49033
  void sendMessage(guidePendingPrompt);
49030
- _optionalChain([onGuidePromptConsumed, 'optionalCall', _1231 => _1231()]);
49034
+ _optionalChain([onGuidePromptConsumed, 'optionalCall', _1233 => _1233()]);
49031
49035
  }, [guidePendingPrompt, activeMode, sendMessage, onGuidePromptConsumed]);
49032
49036
  const {
49033
49037
  attachments: stagedAttachments,
@@ -49038,7 +49042,7 @@ function EmbeddableChatInner({
49038
49042
  clear: clearAttachments
49039
49043
  } = useChatAttachments();
49040
49044
  const { panelRef: galleryPanelRef, modal: galleryModal } = useChatAttachmentImageGallery();
49041
- const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1232 => _1232.maxItems]), () => ( 10));
49045
+ const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1234 => _1234.maxItems]), () => ( 10));
49042
49046
  const contextPickerForMode = activeMode === "mingo" ? contextPicker : void 0;
49043
49047
  const [contextItems, setContextItems] = _react.useState.call(void 0, []);
49044
49048
  const [contextPickerOpen, setContextPickerOpen] = _react.useState.call(void 0, false);
@@ -49055,10 +49059,10 @@ function EmbeddableChatInner({
49055
49059
  }, [activeDialogId, activeMode]);
49056
49060
  const mentionMarkerByType = _react.useMemo.call(void 0, () => {
49057
49061
  const m = /* @__PURE__ */ new Map();
49058
- for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1233 => _1233.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
49062
+ for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1235 => _1235.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
49059
49063
  return m;
49060
- }, [_optionalChain([contextPicker, 'optionalAccess', _1234 => _1234.entityTypes])]);
49061
- const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1235 => _1235.entityTypes]);
49064
+ }, [_optionalChain([contextPicker, 'optionalAccess', _1236 => _1236.entityTypes])]);
49065
+ const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1237 => _1237.entityTypes]);
49062
49066
  const resolveContextIcon = _react.useMemo.call(void 0, () => {
49063
49067
  const byType = /* @__PURE__ */ new Map();
49064
49068
  for (const t of _nullishCoalesce(contextEntityTypes, () => ( []))) byType.set(t.type, t.icon);
@@ -49070,7 +49074,7 @@ function EmbeddableChatInner({
49070
49074
  if (mentionActiveRef.current) {
49071
49075
  if (contextItems.some((p) => `${p.type}:${p.id}` === key)) return;
49072
49076
  if (contextItems.length >= contextMaxItems) return;
49073
- _optionalChain([chatInputRef, 'access', _1236 => _1236.current, 'optionalAccess', _1237 => _1237.commitMention, 'call', _1238 => _1238(mentionTokenOf(key, mentionMarkerByType), {
49077
+ _optionalChain([chatInputRef, 'access', _1238 => _1238.current, 'optionalAccess', _1239 => _1239.commitMention, 'call', _1240 => _1240(mentionTokenOf(key, mentionMarkerByType), {
49074
49078
  label: item.label,
49075
49079
  icon: resolveContextIcon(item)
49076
49080
  })]);
@@ -49092,9 +49096,9 @@ function EmbeddableChatInner({
49092
49096
  setContextItems((prev) => prev.filter((p) => `${p.type}:${p.id}` !== key));
49093
49097
  if (mentionKeysRef.current.has(key)) {
49094
49098
  mentionKeysRef.current.delete(key);
49095
- const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1239 => _1239.current, 'optionalAccess', _1240 => _1240.getValue, 'call', _1241 => _1241()]), () => ( ""));
49099
+ const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1241 => _1241.current, 'optionalAccess', _1242 => _1242.getValue, 'call', _1243 => _1243()]), () => ( ""));
49096
49100
  const next = cur.replace(`@${mentionTokenOf(key, mentionMarkerByType)}`, "").replace(/\s{2,}/g, " ").trimStart();
49097
- _optionalChain([chatInputRef, 'access', _1242 => _1242.current, 'optionalAccess', _1243 => _1243.setValue, 'call', _1244 => _1244(next)]);
49101
+ _optionalChain([chatInputRef, 'access', _1244 => _1244.current, 'optionalAccess', _1245 => _1245.setValue, 'call', _1246 => _1246(next)]);
49098
49102
  }
49099
49103
  }, [mentionMarkerByType]);
49100
49104
  const handleContextValueChange = _react.useCallback.call(void 0, (value) => {
@@ -49111,7 +49115,7 @@ function EmbeddableChatInner({
49111
49115
  }, []);
49112
49116
  const closeContextPicker = _react.useCallback.call(void 0, () => {
49113
49117
  if (mentionActiveRef.current) {
49114
- _optionalChain([chatInputRef, 'access', _1245 => _1245.current, 'optionalAccess', _1246 => _1246.removeMentionTrigger, 'call', _1247 => _1247()]);
49118
+ _optionalChain([chatInputRef, 'access', _1247 => _1247.current, 'optionalAccess', _1248 => _1248.removeMentionTrigger, 'call', _1249 => _1249()]);
49115
49119
  }
49116
49120
  setContextPickerOpen(false);
49117
49121
  setMentionQuery(null);
@@ -49145,8 +49149,8 @@ function EmbeddableChatInner({
49145
49149
  []
49146
49150
  );
49147
49151
  const timestampCacheRef = _react.useRef.call(void 0, /* @__PURE__ */ new Map());
49148
- const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1248 => _1248.firstName]), _optionalChain([identityUser, 'optionalAccess', _1249 => _1249.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1250 => _1250.name, 'optionalAccess', _1251 => _1251.trim, 'call', _1252 => _1252()]) || void 0 : void 0;
49149
- const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1253 => _1253.avatarUrl, 'optionalAccess', _1254 => _1254.trim, 'call', _1255 => _1255()]) || void 0 : void 0;
49152
+ const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1250 => _1250.firstName]), _optionalChain([identityUser, 'optionalAccess', _1251 => _1251.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1252 => _1252.name, 'optionalAccess', _1253 => _1253.trim, 'call', _1254 => _1254()]) || void 0 : void 0;
49153
+ const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1255 => _1255.avatarUrl, 'optionalAccess', _1256 => _1256.trim, 'call', _1257 => _1257()]) || void 0 : void 0;
49150
49154
  const messages = _react.useMemo.call(void 0, () => {
49151
49155
  const cache = timestampCacheRef.current;
49152
49156
  const seenIds = /* @__PURE__ */ new Set();
@@ -49281,9 +49285,10 @@ function EmbeddableChatInner({
49281
49285
  const messagesInitialLoading = isMessagesLoading && !hasMessages;
49282
49286
  const contentViewKey = hasConversation ? "conversation" : activeMode;
49283
49287
  const isGuideEmpty = !hasConversation && activeMode === "guide";
49288
+ const isQuickActionEmpty = !hasConversation && (activeMode === "guide" || activeMode === "mingo");
49284
49289
  _react.useEffect.call(void 0, () => {
49285
- if (!isGuideEmpty) setQuickActionPreview(null);
49286
- }, [isGuideEmpty]);
49290
+ if (!isQuickActionEmpty) setQuickActionPreview(null);
49291
+ }, [isQuickActionEmpty]);
49287
49292
  const guideCanReturnToMingo = isGuideEmpty && hasMingoMode;
49288
49293
  const sourceLabel = source === "flamingo" ? "Knowledge Base" : "Data Room";
49289
49294
  const enabledSet = _react.useMemo.call(void 0,
@@ -49309,9 +49314,9 @@ function EmbeddableChatInner({
49309
49314
  const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
49310
49315
  const lastSources = _react.useMemo.call(void 0, () => {
49311
49316
  if (chatLoading) return void 0;
49312
- const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1256 => _1256.sources]);
49317
+ const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1258 => _1258.sources]);
49313
49318
  if (!sources || sources.length === 0) return void 0;
49314
- const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1257 => _1257.content]) || "";
49319
+ const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1259 => _1259.content]) || "";
49315
49320
  const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
49316
49321
  (m) => parseInt(m[1], 10)
49317
49322
  );
@@ -49358,7 +49363,7 @@ function EmbeddableChatInner({
49358
49363
  ChatPanelHeader,
49359
49364
  {
49360
49365
  showBack: hasConversation || guideCanReturnToMingo,
49361
- title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1258 => _1258.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats",
49366
+ title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1260 => _1260.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats",
49362
49367
  backAriaLabel: hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo",
49363
49368
  isArchivedView: isViewingArchived,
49364
49369
  onBack: hasConversation ? handleBack : () => handleActiveModeChange("mingo"),
@@ -49442,6 +49447,8 @@ function EmbeddableChatInner({
49442
49447
  loadError: dialogsLoadError,
49443
49448
  onRetry: reloadDialogs,
49444
49449
  historySearchable: !!mingoCaps.onSearchChange,
49450
+ onQuickActionHover: (action) => setQuickActionPreview(_nullishCoalesce(action.prompt, () => ( action.label))),
49451
+ onQuickActionHoverEnd: () => setQuickActionPreview(null),
49445
49452
  dialogHistory: (
49446
49453
  // Keep the history (and its search bar) mounted during an
49447
49454
  // active search even at 0 results — otherwise a no-match
@@ -49477,9 +49484,9 @@ function EmbeddableChatInner({
49477
49484
  subtitle: _nullishCoalesce(effectiveGreeting, () => ( void 0)),
49478
49485
  subtitleLoading: emptyStateLoading,
49479
49486
  ...guideWelcome,
49480
- title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1259 => _1259.title]))),
49481
- icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1260 => _1260.icon]))),
49482
- quickActions: _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1261 => _1261.quickActions]), () => ( guideSuggestedActions)),
49487
+ title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1261 => _1261.title]))),
49488
+ icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1262 => _1262.icon]))),
49489
+ quickActions: _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1263 => _1263.quickActions]), () => ( guideSuggestedActions)),
49483
49490
  onQuickAction: (action) => {
49484
49491
  setQuickActionPreview(null);
49485
49492
  handleSend(_nullishCoalesce(action.prompt, () => ( action.label)));
@@ -50563,4 +50570,4 @@ function EmbeddableChatInner({
50563
50570
 
50564
50571
 
50565
50572
  exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; exports.Autocomplete = Autocomplete; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.CardHorizontal = CardHorizontal; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.HoneypotField = HoneypotField; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.formatDate = formatDate; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatFileSize = formatFileSize; exports.formatLargeNumber = formatLargeNumber; exports.formatAbbreviatedNumber = formatAbbreviatedNumber; exports.getFirstLastInitials = getFirstLastInitials; exports.nameInitials = nameInitials; exports.formatDurationMMSS = formatDurationMMSS; exports.formatDurationCompact = formatDurationCompact; exports.formatTimeWithTimezone = formatTimeWithTimezone; exports.formatDurationFromRange = formatDurationFromRange; exports.formatDateUTC = formatDateUTC; exports.formatEntryMonthUTC = formatEntryMonthUTC; exports.formatLegalDate = formatLegalDate; exports.formatCurrency = formatCurrency; exports.formatPercent = formatPercent; exports.formatWholeDollars = formatWholeDollars; exports.formatCompactMetric = formatCompactMetric; exports.getTrendColors = getTrendColors; exports.formatDateRange = formatDateRange; exports.formatDateTimeAt = formatDateTimeAt; exports.formatDurationFromMs = formatDurationFromMs; exports.formatDuration = formatDuration; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.SquareAvatar = SquareAvatar; exports.AssigneeDropdown = AssigneeDropdown; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.getReadableTextColor = getReadableTextColor; exports.HEX_PATTERN = HEX_PATTERN; exports.hexToRgb = hexToRgb; exports.rgbToHex = rgbToHex; exports.deriveHoverColor = deriveHoverColor; exports.deriveActiveColor = deriveActiveColor; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.InfoSection = InfoSection; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataMessage = NoDataMessage; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.Switch = Switch; exports.TagSelectDropdown = TagSelectDropdown; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.ImageGalleryModal = ImageGalleryModal; exports.Modal = Modal2; exports.ModalContent = ModalContent2; exports.ModalHeader = ModalHeader2; exports.ModalTitle = ModalTitle2; exports.ModalFooter = ModalFooter2; exports.Modal2 = Modal; exports.ModalContent2 = ModalContent; exports.ModalHeader2 = ModalHeader; exports.ModalTitle2 = ModalTitle; exports.ModalFooter2 = ModalFooter; exports.Separator = Separator2; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerClose = DrawerClose; exports.DrawerPortal = DrawerPortal; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DrawerBody = DrawerBody; exports.DrawerFooter = DrawerFooter; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.Progress = Progress; exports.fetchPriorityProp = fetchPriorityProp; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video2; exports.MediaCarousel = MediaCarousel; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.toGoogleSheetsEmbedUrl = toGoogleSheetsEmbedUrl; exports.toGoogleSheetsOriginalUrl = toGoogleSheetsOriginalUrl; exports.toFigmaEmbedUrl = toFigmaEmbedUrl; exports.isFigmaSlidesUrl = isFigmaSlidesUrl; exports.toFigmaOriginalUrl = toFigmaOriginalUrl; exports.EmbedIframe = EmbedIframe; exports.FigmaEmbed = FigmaEmbed; exports.MarkdownImage = MarkdownImage; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StackedRowsPanel = StackedRowsPanel; exports.statusBadgeVariants = statusBadgeVariants; exports.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.CommandBlock = CommandBlock; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.ThinkingDisplay = ThinkingDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.ChatTypingIndicator = ChatTypingIndicator; exports.MingoOnboardingCard = MingoOnboardingCard; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.ICON_ALIASES = ICON_ALIASES; exports.resolveIcon = resolveIcon; exports.ICON_OPTIONS = ICON_OPTIONS; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.remarkMentionChips = remarkMentionChips; exports.BlockCard = BlockCard; exports.CONTEXT_ROW_CLASS = CONTEXT_ROW_CLASS; exports.CONTEXT_ICON_CLASS = CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = CONTEXT_LABEL_CLASS; exports.CONTEXT_BACK_CLASS = CONTEXT_BACK_CLASS; exports.CONTEXT_STATE_CLASS = CONTEXT_STATE_CLASS; exports.ContextMenuRow = ContextMenuRow; exports.ContextItemsSkeleton = ContextItemsSkeleton; exports.ContextItemsList = ContextItemsList; exports.ContextErrorBoundary = ContextErrorBoundary; exports.CHAT_CONTEXT_ITEMS_DEFAULT_MAX = CHAT_CONTEXT_ITEMS_DEFAULT_MAX; exports.ChatComposerPlusMenu = ChatComposerPlusMenu; exports.ChatContextPicker = ChatContextPicker; exports.ChatContextChipStrip = ChatContextChipStrip; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageSkeleton = ChatMessageSkeleton; exports.ChatMessageListSkeleton = ChatMessageListSkeleton; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.SCROLL_ANCHOR = SCROLL_ANCHOR; exports.ChatMessageList = ChatMessageList; exports.getProxiedImageUrl = getProxiedImageUrl; exports.urlPathLooksLikeSvg = urlPathLooksLikeSvg; exports.shouldProxyImage = shouldProxyImage; exports.generateImageSizes = generateImageSizes; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.ChatQuickAction = ChatQuickAction; exports.ChatQuickActionRow = ChatQuickActionRow; exports.ChatQuickActionRowSkeleton = ChatQuickActionRowSkeleton; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.FAE_AVATAR_DATA_URI = FAE_AVATAR_DATA_URI; exports.AgentMark = AgentMark; exports.EntityIcon = EntityIcon; exports.GuideWelcome = GuideWelcome; exports.MspOrganizationCard = MspOrganizationCard; exports.MspOrganizationCardSkeleton = MspOrganizationCardSkeleton; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.GuideModeBanner = GuideModeBanner; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.COMPACT_HEADER_BUTTON = COMPACT_HEADER_BUTTON; exports.ChatPanelHeader = ChatPanelHeader; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX = CHAT_ATTACHMENT_VIEW_URL_PREFIX; exports.CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM = CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM; exports.ANTHROPIC_SUPPORTED_IMAGE_MIME = ANTHROPIC_SUPPORTED_IMAGE_MIME; exports.buildChatAttachmentViewUrl = buildChatAttachmentViewUrl; exports.escapeMarkdownInline = escapeMarkdownInline; exports.formatChatAttachmentMarkdownForBubble = formatChatAttachmentMarkdownForBubble; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED; exports.CHAT_ATTACHMENT_MARKDOWN_PATTERN = CHAT_ATTACHMENT_MARKDOWN_PATTERN; exports.stripChatAttachmentMarkdown = stripChatAttachmentMarkdown; exports.CHAT_ATTACHMENT_MIME_TYPES = CHAT_ATTACHMENT_MIME_TYPES; exports.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER = CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER; exports.ChatAttachmentAddButton = ChatAttachmentAddButton; exports.ChatAttachmentChipStrip = ChatAttachmentChipStrip; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.ModelDisplaySkeleton = ModelDisplaySkeleton; exports.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.isCrossOriginUrl = isCrossOriginUrl; exports.decideNewTab = decideNewTab; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.NEW_TAB_FEATURES = NEW_TAB_FEATURES; exports.isModifierClick = isModifierClick; exports.stripSameOriginToPath = stripSameOriginToPath; exports.resolveExternalNavigation = resolveExternalNavigation; exports.executeNavigation = executeNavigation; exports.executeNavigationImperative = executeNavigationImperative; exports.handleChatNavClick = handleChatNavClick; exports.NavLinkAnchorViaRuntime = NavLinkAnchorViaRuntime; exports.SourceActionButton = SourceActionButton; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.FlamingoLogo = FlamingoLogo2; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.getProxiedImageUrl2 = getProxiedImageUrl2; exports.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.SECTION_HEADING_CLASS = SECTION_HEADING_CLASS; exports.PageHeading = PageHeading; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_DISPLAY_GRID_CLASS = RATIO_DISPLAY_GRID_CLASS; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.VideoBitesDisplay = VideoBitesDisplay; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.ChatVideoEntityCard = ChatVideoEntityCard; exports.ProductReleaseCard = ProductReleaseCard; exports.ProductReleaseCardSkeleton = ProductReleaseCardSkeleton; exports.formatReleaseDate = formatReleaseDate; exports.formatDateShort = formatDateShort; exports.formatDateSlashUTC = formatDateSlashUTC; exports.resolveReleaseCover = resolveReleaseCover; exports.releaseTypeToBadgeColor = releaseTypeToBadgeColor; exports.defaultBuildProductReleaseCardProps = defaultBuildProductReleaseCardProps; exports.buildProductReleaseCardProps = buildProductReleaseCardProps; exports.useEntityCardLink = useEntityCardLink; exports.COMPACT_CARD_OUTER = COMPACT_CARD_OUTER; exports.COMPACT_CARD_OUTER_STATIC = COMPACT_CARD_OUTER_STATIC; exports.COMPACT_CARD_SKELETON_OUTER = COMPACT_CARD_SKELETON_OUTER; exports.COMPACT_CARD_IMAGE_SLOT = COMPACT_CARD_IMAGE_SLOT; exports.COMPACT_CARD_SKELETON_IMAGE_SLOT = COMPACT_CARD_SKELETON_IMAGE_SLOT; exports.COMPACT_CARD_ICON_SLOT = COMPACT_CARD_ICON_SLOT; exports.COMPACT_CARD_TEXT_COL = COMPACT_CARD_TEXT_COL; exports.COMPACT_CARD_TITLE_ROW = COMPACT_CARD_TITLE_ROW; exports.COMPACT_CARD_META_ROW_BOX = COMPACT_CARD_META_ROW_BOX; exports.COMPACT_CARD_TITLE = COMPACT_CARD_TITLE; exports.COMPACT_CARD_SUBTITLE = COMPACT_CARD_SUBTITLE; exports.COMPACT_CARD_SUMMARY = COMPACT_CARD_SUMMARY; exports.COMPACT_CARD_META_ROW = COMPACT_CARD_META_ROW; exports.COMPACT_CARD_ROW_FILLER = COMPACT_CARD_ROW_FILLER; exports.safeHref = safeHref; exports.BlogCardSkeleton = BlogCardSkeleton; exports.BlogCard = BlogCard; exports.CaseStudyCardSkeleton = CaseStudyCardSkeleton; exports.CaseStudyCard = CaseStudyCard; exports.CustomerInterviewCardSkeleton = CustomerInterviewCardSkeleton; exports.CustomerInterviewCard = CustomerInterviewCard; exports.formatInvestorUpdatePeriod = formatInvestorUpdatePeriod; exports.InvestorUpdateCardSkeleton = InvestorUpdateCardSkeleton; exports.InvestorUpdateCard = InvestorUpdateCard; exports.OnboardingGuideCardSkeleton = OnboardingGuideCardSkeleton; exports.OnboardingGuideCard = OnboardingGuideCard; exports.RoadmapVoteButton = RoadmapVoteButton; exports.getStatusColorScheme = getStatusColorScheme; exports.CUSTOM_ITEM_ID = CUSTOM_ITEM_ID; exports.getTaskTypeLabel = getTaskTypeLabel; exports.TaskTypeIcon = TaskTypeIcon; exports.RoadmapCardSkeleton = RoadmapCardSkeleton; exports.RoadmapCard = RoadmapCard; exports.GitHubActivityCard = GitHubActivityCard; exports.GitHubActivityCardSkeleton = GitHubActivityCardSkeleton; exports.SlackMessageCard = SlackMessageCard; exports.SlackMessageCardSkeleton = SlackMessageCardSkeleton; exports.HubspotTicketCard = HubspotTicketCard; exports.HubspotTicketCardSkeleton = HubspotTicketCardSkeleton; exports.DataRoomDocCard = DataRoomDocCard; exports.DataRoomDocCardSkeleton = DataRoomDocCardSkeleton; exports.ProgramCardSkeleton = ProgramCardSkeleton; exports.ProgramCard = ProgramCard; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.extractItems = extractItems; exports.extractItemId = extractItemId; exports.useChatCardItem = useChatCardItem; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.ChatCardLoader = ChatCardLoader; exports.renderChatInlineEntityCard = renderChatInlineEntityCard; exports.CHAT_TYPE = CHAT_TYPE; exports.OWNER_TYPE = OWNER_TYPE; exports.MESSAGE_ROLE = MESSAGE_ROLE; exports.ASSISTANT_TYPE = ASSISTANT_TYPE; exports.AUTHOR_TYPE = AUTHOR_TYPE; exports.APPROVAL_STATUS = APPROVAL_STATUS; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.buildChatRefKey = buildChatRefKey; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; exports.useChunkCatchup = useChunkCatchup; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.parseChunkToAction = parseChunkToAction; exports.isControlChunk = isControlChunk; exports.isErrorChunk = isErrorChunk; exports.isMetadataChunk = isMetadataChunk; exports.extractTextFromChunk = extractTextFromChunk; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.useRealtimeChunkProcessor = useRealtimeChunkProcessor; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.fetchEmptyStateConfig = fetchEmptyStateConfig; exports.useEmptyStateConfig = useEmptyStateConfig; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useSSE = useSSE; exports.useChat = useChat; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.flattenAssistantContent = flattenAssistantContent; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.useSseChatAdapter = useSseChatAdapter; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.SYNTHETIC_REALTIME_ID_PREFIXES = SYNTHETIC_REALTIME_ID_PREFIXES; exports.flattenMessagePagesChronological = flattenMessagePagesChronological; exports.maxPersistedStreamSeq = maxPersistedStreamSeq; exports.mergeHistoryWithRealtime = mergeHistoryWithRealtime; exports.computeHistoryPrepend = computeHistoryPrepend; exports.CHIP_ACTION_BUTTON_CLASS = CHIP_ACTION_BUTTON_CLASS; exports.chatChipClass = chatChipClass; exports.clickupTaskUrl = clickupTaskUrl; exports.EmbeddableChat = EmbeddableChat; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.EntityImage = EntityImage; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.serializeJsonLd = serializeJsonLd; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.BRAND_MARK_SVGS = BRAND_MARK_SVGS; exports.brandMarkDataUri = brandMarkDataUri; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.devSectionAnchorId = devSectionAnchorId; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.DESIGN_PALETTE = DESIGN_PALETTE; exports.getContrastRatio = getContrastRatio; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.formatTicketRelativeTime = formatTicketRelativeTime; exports.formatTicketFullTimestamp = formatTicketFullTimestamp; exports.formatRelativeTime = formatRelativeTime; exports.formatAbsoluteDate = formatAbsoluteDate; exports.formatDateTime = formatDateTime; exports.getDetailedTimeDifference = getDetailedTimeDifference; exports.isToday = isToday; exports.isWithinMinutes = isWithinMinutes; exports.createUTCTimestamp = createUTCTimestamp; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.AVAILABLE_SVG_ICONS = AVAILABLE_SVG_ICONS; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.TASK_TYPE_LABELS = TASK_TYPE_LABELS; exports.TASK_TYPE_TEXT_COLORS = TASK_TYPE_TEXT_COLORS; exports.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.TMCG_SOCIAL_PLATFORMS = TMCG_SOCIAL_PLATFORMS; exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS; exports.DELIVERY_TASK_TYPE_OPTIONS = DELIVERY_TASK_TYPE_OPTIONS; exports.TICKET_STATUS_OPTIONS = TICKET_STATUS_OPTIONS; exports.OPENFRAME_DEV_SECTIONS = OPENFRAME_DEV_SECTIONS; exports.canonicalContentRefType = canonicalContentRefType; exports.buildListUrl = buildListUrl; exports.faqSectionSlug = faqSectionSlug; exports.faqItemAnchor = faqItemAnchor; exports.parseFaqHash = parseFaqHash; exports.CONTENT_REF_GROUPS = CONTENT_REF_GROUPS; exports.getContentRefLabel = getContentRefLabel; exports.getContentRefLabelOrTitleCase = getContentRefLabelOrTitleCase; exports.orderContentRefTypes = orderContentRefTypes; exports.buildSuggestionUrl = buildSuggestionUrl; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.stripInlineMarkdown = stripInlineMarkdown; exports.markdownToPlainText = markdownToPlainText; exports.extractSections = extractSections; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.FloatingTooltip = FloatingTooltip; exports.DashboardInfoCard = DashboardInfoCard; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.TruncateText = TruncateText; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.TabSelector = TabSelector; exports.TitleContentBlock = TitleContentBlock; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.Pagination = Pagination; exports.PaginationContent = PaginationContent; exports.PaginationItem = PaginationItem; exports.PaginationLink = PaginationLink; exports.PaginationEllipsis = PaginationEllipsis; exports.PaginationPrevious = PaginationPrevious; exports.PaginationNext = PaginationNext; exports.init_pagination = init_pagination; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.TableEmptyState = TableEmptyState; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY; exports.THEME_ATTRIBUTE = THEME_ATTRIBUTE; exports.DEFAULT_THEME = DEFAULT_THEME; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme; exports.useThemeToggle = useThemeToggle; exports.ArrayEntryManager = ArrayEntryManager; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; exports.EntityTagBadges = EntityTagBadges; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.OPENFRAME_DOCTOR_COMMANDS = OPENFRAME_DOCTOR_COMMANDS; exports.getOpenFrameDoctorCommand = getOpenFrameDoctorCommand; exports.PlatformFilterComponent = PlatformFilterComponent; exports.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.SEOEditorPreview = SEOEditorPreview; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.WarningBlock = WarningBlock; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.getCaptionsUrl = getCaptionsUrl; exports.VideoSourceSelector = VideoSourceSelector; exports.ConfidenceBadge = ConfidenceBadge; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.TicketStatusConfigList = TicketStatusConfigList; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.DataTableHeader = DataTableHeader; exports.DataTableEmpty = DataTableEmpty; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.TICKET_STATUS_COLOR_PRESETS = TICKET_STATUS_COLOR_PRESETS; exports.CUSTOM_PRESET_KEY = CUSTOM_PRESET_KEY; exports.DEFAULT_CUSTOM_STATUS_COLOR = DEFAULT_CUSTOM_STATUS_COLOR; exports.ColorPresetSelect = ColorPresetSelect; exports.ColorPickerInput = ColorPickerInput; exports.TicketStatusConfigRow = TicketStatusConfigRow; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.FilterPillRow = FilterPillRow; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.MobileNavPanel = MobileNavPanel; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NavigationSidebar = NavigationSidebar; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderMingoButton = HeaderMingoButton; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayout = AppLayout; exports.AppLayoutDrawerRoot = AppLayoutDrawerRoot; exports.AppLayoutDrawerTrigger = AppLayoutDrawerTrigger; exports.AppLayoutDrawerClose = AppLayoutDrawerClose; exports.AppLayoutDrawerContent = AppLayoutDrawerContent; exports.AppLayoutDrawerHeader = AppLayoutDrawerHeader; exports.AppLayoutDrawerTitle = AppLayoutDrawerTitle; exports.AppLayoutDrawerDescription = AppLayoutDrawerDescription; exports.AppLayoutDrawerBody = AppLayoutDrawerBody; exports.AppLayoutDrawerFooter = AppLayoutDrawerFooter; exports.MultiLevelNavigation = MultiLevelNavigation; exports.MobileNavigationDropdown = MobileNavigationDropdown; exports.SoftwareInfo = SoftwareInfo; exports.SoftwareSourceBadge = SoftwareSourceBadge; exports.CveLink = CveLink; exports.ToolBadge = ToolBadge; exports.ShellTypeBadge = ShellTypeBadge; exports.ScriptInfoSection = ScriptInfoSection; exports.ScriptArguments = ScriptArguments; exports.OnboardingStepCard = OnboardingStepCard; exports.OnboardingWalkthrough = OnboardingWalkthrough; exports.LOG_SEVERITY_COLORS = LOG_SEVERITY_COLORS; exports.LOG_SEVERITY_LABELS = LOG_SEVERITY_LABELS; exports.LogSeverityDot = LogSeverityDot; exports.LogsList = LogsList; exports.assets = assets;
50566
- //# sourceMappingURL=chunk-C6XEJALZ.cjs.map
50573
+ //# sourceMappingURL=chunk-MGQVVGQV.cjs.map