@flamingo-stack/openframe-frontend-core 0.0.445 → 0.0.446

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 (83) hide show
  1. package/dist/{chunk-MPSA6YAM.cjs → chunk-3AFV2YIC.cjs} +37 -37
  2. package/dist/{chunk-MPSA6YAM.cjs.map → chunk-3AFV2YIC.cjs.map} +1 -1
  3. package/dist/{chunk-RXLMN6B5.cjs → chunk-5WX2V6CY.cjs} +9 -9
  4. package/dist/{chunk-RXLMN6B5.cjs.map → chunk-5WX2V6CY.cjs.map} +1 -1
  5. package/dist/{chunk-H352AZJN.js → chunk-5YQSRQHP.js} +4 -4
  6. package/dist/{chunk-5FUQTSTT.cjs → chunk-6XZNIPXP.cjs} +11 -11
  7. package/dist/{chunk-5FUQTSTT.cjs.map → chunk-6XZNIPXP.cjs.map} +1 -1
  8. package/dist/{chunk-R6WGCJBB.cjs → chunk-7IC2QCOL.cjs} +59 -59
  9. package/dist/{chunk-R6WGCJBB.cjs.map → chunk-7IC2QCOL.cjs.map} +1 -1
  10. package/dist/{chunk-QL2EI56X.cjs → chunk-BAUWT7PV.cjs} +486 -505
  11. package/dist/chunk-BAUWT7PV.cjs.map +1 -0
  12. package/dist/{chunk-XPZLIONZ.js → chunk-BNYI2FVM.js} +2 -2
  13. package/dist/{chunk-DTLNCOSG.cjs → chunk-DH3DUY6Q.cjs} +26 -26
  14. package/dist/{chunk-DTLNCOSG.cjs.map → chunk-DH3DUY6Q.cjs.map} +1 -1
  15. package/dist/{chunk-3DQ5BFPM.js → chunk-GTHA2SYB.js} +4 -4
  16. package/dist/{chunk-7R256DKK.js → chunk-I7IOEXRJ.js} +2 -2
  17. package/dist/{chunk-H2DYCT6M.js → chunk-K6JIBV3X.js} +2 -2
  18. package/dist/{chunk-5DWPXK37.cjs → chunk-L276GOMD.cjs} +31 -31
  19. package/dist/{chunk-5DWPXK37.cjs.map → chunk-L276GOMD.cjs.map} +1 -1
  20. package/dist/{chunk-3BHV2QAH.js → chunk-MAB4TQCO.js} +187 -206
  21. package/dist/{chunk-3BHV2QAH.js.map → chunk-MAB4TQCO.js.map} +1 -1
  22. package/dist/{chunk-MQUS6BFR.js → chunk-MR7BMJHI.js} +4 -4
  23. package/dist/{chunk-YCLSV2H6.cjs → chunk-MS5CEBBQ.cjs} +5 -5
  24. package/dist/{chunk-YCLSV2H6.cjs.map → chunk-MS5CEBBQ.cjs.map} +1 -1
  25. package/dist/{chunk-3HYSD7NR.cjs → chunk-N3Y6JYH5.cjs} +15 -15
  26. package/dist/{chunk-3HYSD7NR.cjs.map → chunk-N3Y6JYH5.cjs.map} +1 -1
  27. package/dist/{chunk-K4RASNQM.js → chunk-N4CCB33C.js} +2 -2
  28. package/dist/{chunk-KISQUH33.cjs → chunk-NQLY27GH.cjs} +62 -62
  29. package/dist/{chunk-KISQUH33.cjs.map → chunk-NQLY27GH.cjs.map} +1 -1
  30. package/dist/{chunk-N64VTHZ5.cjs → chunk-SA7AHDS6.cjs} +7 -7
  31. package/dist/{chunk-N64VTHZ5.cjs.map → chunk-SA7AHDS6.cjs.map} +1 -1
  32. package/dist/{chunk-TCEBFMLQ.js → chunk-SAV4U37G.js} +2 -2
  33. package/dist/{chunk-FIAXFNAA.js → chunk-SCKAD2MY.js} +4 -4
  34. package/dist/{chunk-Z4N7XLFG.js → chunk-XB6D7B3I.js} +2 -2
  35. package/dist/{chunk-22NSWMI6.js → chunk-YLMD4UFA.js} +2 -2
  36. package/dist/{chunk-P3FN4NAE.cjs → chunk-ZKYEMGMD.cjs} +26 -26
  37. package/dist/{chunk-P3FN4NAE.cjs.map → chunk-ZKYEMGMD.cjs.map} +1 -1
  38. package/dist/components/case-studies/index.cjs +8 -8
  39. package/dist/components/case-studies/index.js +2 -2
  40. package/dist/components/chat/index.cjs +2 -2
  41. package/dist/components/chat/index.js +1 -1
  42. package/dist/components/contact/index.cjs +3 -3
  43. package/dist/components/contact/index.js +2 -2
  44. package/dist/components/docs/index.cjs +5 -5
  45. package/dist/components/docs/index.js +4 -4
  46. package/dist/components/embeds/index.cjs +3 -3
  47. package/dist/components/embeds/index.js +2 -2
  48. package/dist/components/faq/index.cjs +3 -3
  49. package/dist/components/faq/index.js +2 -2
  50. package/dist/components/features/index.cjs +2 -2
  51. package/dist/components/features/index.js +1 -1
  52. package/dist/components/features/policy-configuration-panel.d.ts.map +1 -1
  53. package/dist/components/help-center-pages/index.cjs +20 -20
  54. package/dist/components/help-center-pages/index.js +11 -11
  55. package/dist/components/index.cjs +129 -129
  56. package/dist/components/index.js +9 -9
  57. package/dist/components/navigation/index.cjs +2 -2
  58. package/dist/components/navigation/index.js +1 -1
  59. package/dist/components/onboarding-guides/index.cjs +5 -5
  60. package/dist/components/onboarding-guides/index.js +4 -4
  61. package/dist/components/related-content/index.cjs +3 -3
  62. package/dist/components/related-content/index.js +2 -2
  63. package/dist/components/tickets/index.cjs +5 -5
  64. package/dist/components/tickets/index.js +4 -4
  65. package/dist/components/ui/index.cjs +2 -2
  66. package/dist/components/ui/index.js +1 -1
  67. package/dist/index.cjs +2 -2
  68. package/dist/index.js +1 -1
  69. package/package.json +1 -1
  70. package/src/components/features/policy-configuration-panel.tsx +34 -49
  71. package/src/stories/PolicyConfigurationPanel.stories.tsx +8 -6
  72. package/dist/chunk-QL2EI56X.cjs.map +0 -1
  73. /package/dist/{chunk-H352AZJN.js.map → chunk-5YQSRQHP.js.map} +0 -0
  74. /package/dist/{chunk-XPZLIONZ.js.map → chunk-BNYI2FVM.js.map} +0 -0
  75. /package/dist/{chunk-3DQ5BFPM.js.map → chunk-GTHA2SYB.js.map} +0 -0
  76. /package/dist/{chunk-7R256DKK.js.map → chunk-I7IOEXRJ.js.map} +0 -0
  77. /package/dist/{chunk-H2DYCT6M.js.map → chunk-K6JIBV3X.js.map} +0 -0
  78. /package/dist/{chunk-MQUS6BFR.js.map → chunk-MR7BMJHI.js.map} +0 -0
  79. /package/dist/{chunk-K4RASNQM.js.map → chunk-N4CCB33C.js.map} +0 -0
  80. /package/dist/{chunk-TCEBFMLQ.js.map → chunk-SAV4U37G.js.map} +0 -0
  81. /package/dist/{chunk-FIAXFNAA.js.map → chunk-SCKAD2MY.js.map} +0 -0
  82. /package/dist/{chunk-Z4N7XLFG.js.map → chunk-XB6D7B3I.js.map} +0 -0
  83. /package/dist/{chunk-22NSWMI6.js.map → chunk-YLMD4UFA.js.map} +0 -0
@@ -31943,19 +31943,18 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
31943
31943
 
31944
31944
  _chunkPYR4LVAFcjs.init_button2.call(void 0, );
31945
31945
 
31946
- var approvalLevelOptions = [
31947
- { value: "ALLOW", label: "Allow" },
31948
- { value: "ASK_USER", label: "Ask User" },
31949
- { value: "ASK_TECHNICIAN", label: "Ask Technician" },
31950
- { value: "DENY", label: "Restrict" }
31951
- ];
31952
- var getApprovalLevelLabel = (level, editMode = false) => {
31953
- if (!level) {
31954
- return editMode ? "Set Global Permission" : "";
31955
- }
31956
- const option = approvalLevelOptions.find((opt) => opt.value === level);
31957
- return _optionalChain([option, 'optionalAccess', _615 => _615.label]) || level;
31946
+ var approvalLevelLabels = {
31947
+ ALLOW: "Allow",
31948
+ ASK_USER: "Ask User",
31949
+ ASK_TECHNICIAN: "Ask Technician",
31950
+ DENY: "Restrict"
31958
31951
  };
31952
+ var approvalLevelOptions = Object.keys(approvalLevelLabels).map(
31953
+ (value) => ({ value, label: approvalLevelLabels[value] })
31954
+ );
31955
+ var POLICY_LEVEL_WIDTH = "w-[180px]";
31956
+ var CATEGORY_LEVEL_WIDTH = "w-[256px]";
31957
+ var getApprovalLevelLabel = (level) => _nullishCoalesce(approvalLevelLabels[level], () => ( level));
31959
31958
  var ApprovalLevelDropdown = ({ value, onChange, allowClear = false, triggerClassName, contentClassName }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkPYR4LVAFcjs.DropdownMenu, { children: [
31960
31959
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPYR4LVAFcjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31961
31960
  _chunkPYR4LVAFcjs.Button,
@@ -31967,7 +31966,7 @@ var ApprovalLevelDropdown = ({ value, onChange, allowClear = false, triggerClass
31967
31966
  value ? "text-ods-text-primary" : "text-ods-text-secondary",
31968
31967
  triggerClassName
31969
31968
  ),
31970
- children: getApprovalLevelLabel(value, true)
31969
+ children: value ? getApprovalLevelLabel(value) : "Set Global Permission"
31971
31970
  }
31972
31971
  ) }),
31973
31972
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkPYR4LVAFcjs.DropdownMenuContent, { align: "end", className: contentClassName, children: [
@@ -31998,7 +31997,7 @@ var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
31998
31997
  value: policy.approvalLevel,
31999
31998
  onChange: handleChange,
32000
31999
  triggerClassName: "w-full",
32001
- contentClassName: "w-[180px]"
32000
+ contentClassName: POLICY_LEVEL_WIDTH
32002
32001
  }
32003
32002
  ) }) : policy.approvalLevel ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "md:hidden text-h4 text-ods-text-primary", children: getApprovalLevelLabel(policy.approvalLevel) }) : null
32004
32003
  ] }),
@@ -32007,23 +32006,12 @@ var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
32007
32006
  {
32008
32007
  value: policy.approvalLevel,
32009
32008
  onChange: handleChange,
32010
- triggerClassName: "w-[180px]",
32011
- contentClassName: "w-[180px]"
32009
+ triggerClassName: POLICY_LEVEL_WIDTH,
32010
+ contentClassName: POLICY_LEVEL_WIDTH
32012
32011
  }
32013
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-[var(--spacing-system-sf)] py-[var(--spacing-system-xsf)] w-[180px]", children: policy.approvalLevel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h4 text-ods-text-primary", children: getApprovalLevelLabel(policy.approvalLevel) }) }) })
32012
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "px-[var(--spacing-system-sf)] py-[var(--spacing-system-xsf)]", POLICY_LEVEL_WIDTH), children: policy.approvalLevel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h4 text-ods-text-primary", children: getApprovalLevelLabel(policy.approvalLevel) }) }) })
32014
32013
  ] });
32015
32014
  };
32016
- var useAnimatedHeight = (isExpanded) => {
32017
- const [height, setHeight] = _react.useState.call(void 0, 0);
32018
- const contentRef = _react.useRef.call(void 0, null);
32019
- _react.useEffect.call(void 0, () => {
32020
- if (contentRef.current) {
32021
- const contentHeight = contentRef.current.scrollHeight;
32022
- setHeight(isExpanded ? contentHeight : 0);
32023
- }
32024
- }, [isExpanded]);
32025
- return { contentRef, height };
32026
- };
32027
32015
  var CategorySection = ({
32028
32016
  category,
32029
32017
  editMode,
@@ -32033,7 +32021,7 @@ var CategorySection = ({
32033
32021
  onBulkLevelChange,
32034
32022
  onPolicyPermissionChange
32035
32023
  }) => {
32036
- const { contentRef, height } = useAnimatedHeight(isExpanded);
32024
+ const { innerRef, containerStyle } = useCollapsible({ expanded: isExpanded, durationMs: 300 });
32037
32025
  const handleBulkChange = (level) => onBulkLevelChange(category.id, level);
32038
32026
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
32039
32027
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -32056,7 +32044,7 @@ var CategorySection = ({
32056
32044
  onChange: handleBulkChange,
32057
32045
  allowClear: true,
32058
32046
  triggerClassName: "w-full",
32059
- contentClassName: "w-[256px]"
32047
+ contentClassName: CATEGORY_LEVEL_WIDTH
32060
32048
  }
32061
32049
  ) })
32062
32050
  ] }),
@@ -32066,16 +32054,10 @@ var CategorySection = ({
32066
32054
  value: bulkLevel,
32067
32055
  onChange: handleBulkChange,
32068
32056
  allowClear: true,
32069
- triggerClassName: "w-[256px]",
32070
- contentClassName: "w-[256px]"
32057
+ triggerClassName: CATEGORY_LEVEL_WIDTH,
32058
+ contentClassName: CATEGORY_LEVEL_WIDTH
32071
32059
  }
32072
- ) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32073
- "div",
32074
- {
32075
- className: "hidden md:block px-[var(--spacing-system-sf)] py-[var(--spacing-system-xsf)] w-[256px] shrink-0",
32076
- onClick: (e) => e.stopPropagation()
32077
- }
32078
- ),
32060
+ ) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "hidden md:block px-[var(--spacing-system-sf)] py-[var(--spacing-system-xsf)] shrink-0", CATEGORY_LEVEL_WIDTH) }),
32079
32061
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32080
32062
  _chunkPYR4LVAFcjs.Button,
32081
32063
  {
@@ -32104,16 +32086,15 @@ var CategorySection = ({
32104
32086
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32105
32087
  "div",
32106
32088
  {
32107
- ref: contentRef,
32108
32089
  style: {
32109
- height: height === "auto" ? "auto" : `${height}px`,
32110
- transition: "height 300ms ease-in-out, opacity 300ms ease-in-out"
32090
+ ...containerStyle,
32091
+ transition: `${containerStyle.transition}, opacity 300ms ease-in-out, visibility 300ms`,
32092
+ // visibility drops collapsed content from the tab order and a11y
32093
+ // tree; its discrete transition delays hiding until the fade ends.
32094
+ visibility: isExpanded ? "visible" : "hidden"
32111
32095
  },
32112
- className: _chunkFIG2RKZFcjs.cn.call(void 0,
32113
- "overflow-hidden",
32114
- isExpanded ? "opacity-100" : "opacity-0"
32115
- ),
32116
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "px-[var(--spacing-system-mf)] pb-[var(--spacing-system-mf)] pt-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border border-ods-border rounded-md overflow-hidden", children: category.policies.map((policy) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32096
+ className: isExpanded ? "opacity-100" : "opacity-0",
32097
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: innerRef, className: "px-[var(--spacing-system-mf)] pb-[var(--spacing-system-mf)] pt-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "border border-ods-border rounded-md overflow-hidden", children: category.policies.map((policy) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32117
32098
  PolicyRow,
32118
32099
  {
32119
32100
  policy,
@@ -32199,12 +32180,12 @@ function PhoneInput({
32199
32180
  const runValidation = _react.useCallback.call(void 0, (phone) => {
32200
32181
  if (!phone || digitCount(phone) === 0) {
32201
32182
  setIsInvalid(false);
32202
- _optionalChain([onValidationChange, 'optionalCall', _616 => _616(false)]);
32183
+ _optionalChain([onValidationChange, 'optionalCall', _615 => _615(false)]);
32203
32184
  return;
32204
32185
  }
32205
32186
  const invalid = !validatePhoneNumber(phone, countryCode);
32206
32187
  setIsInvalid(invalid);
32207
- _optionalChain([onValidationChange, 'optionalCall', _617 => _617(invalid)]);
32188
+ _optionalChain([onValidationChange, 'optionalCall', _616 => _616(invalid)]);
32208
32189
  }, [countryCode, digitCount, onValidationChange]);
32209
32190
  const debouncedValidation = _react.useCallback.call(void 0, (phone) => {
32210
32191
  if (debounceRef.current) clearTimeout(debounceRef.current);
@@ -32253,7 +32234,7 @@ function PhoneInput({
32253
32234
  debouncedValidation(val);
32254
32235
  } else if (digitCount(val) === 0) {
32255
32236
  setIsInvalid(false);
32256
- _optionalChain([onValidationChange, 'optionalCall', _618 => _618(false)]);
32237
+ _optionalChain([onValidationChange, 'optionalCall', _617 => _617(false)]);
32257
32238
  }
32258
32239
  }
32259
32240
  },
@@ -32594,19 +32575,19 @@ function NotificationsProvider({
32594
32575
  }, []);
32595
32576
  const markRead = React98.useCallback((id) => {
32596
32577
  dispatch({ type: "markRead", id });
32597
- void _optionalChain([actionsRef, 'access', _619 => _619.current, 'optionalAccess', _620 => _620.onMarkRead, 'optionalCall', _621 => _621(id)]);
32578
+ void _optionalChain([actionsRef, 'access', _618 => _618.current, 'optionalAccess', _619 => _619.onMarkRead, 'optionalCall', _620 => _620(id)]);
32598
32579
  }, []);
32599
32580
  const markAllRead = React98.useCallback(() => {
32600
32581
  dispatch({ type: "markAllRead" });
32601
- void _optionalChain([actionsRef, 'access', _622 => _622.current, 'optionalAccess', _623 => _623.onMarkAllRead, 'optionalCall', _624 => _624()]);
32582
+ void _optionalChain([actionsRef, 'access', _621 => _621.current, 'optionalAccess', _622 => _622.onMarkAllRead, 'optionalCall', _623 => _623()]);
32602
32583
  }, []);
32603
32584
  const markSettled = React98.useCallback((id) => {
32604
32585
  dispatch({ type: "markSettled", id });
32605
- void _optionalChain([actionsRef, 'access', _625 => _625.current, 'optionalAccess', _626 => _626.onMarkSettled, 'optionalCall', _627 => _627(id)]);
32586
+ void _optionalChain([actionsRef, 'access', _624 => _624.current, 'optionalAccess', _625 => _625.onMarkSettled, 'optionalCall', _626 => _626(id)]);
32606
32587
  }, []);
32607
32588
  const remove = React98.useCallback((id) => {
32608
32589
  dispatch({ type: "remove", id });
32609
- void _optionalChain([actionsRef, 'access', _628 => _628.current, 'optionalAccess', _629 => _629.onRemove, 'optionalCall', _630 => _630(id)]);
32590
+ void _optionalChain([actionsRef, 'access', _627 => _627.current, 'optionalAccess', _628 => _628.onRemove, 'optionalCall', _629 => _629(id)]);
32610
32591
  }, []);
32611
32592
  const clear = React98.useCallback(() => dispatch({ type: "clear" }), []);
32612
32593
  const open = React98.useCallback(() => setIsOpen(true), []);
@@ -32615,14 +32596,14 @@ function NotificationsProvider({
32615
32596
  const setShowPopups = React98.useCallback(
32616
32597
  (value2) => {
32617
32598
  setShowPopupsState(value2);
32618
- _optionalChain([onShowPopupsChange, 'optionalCall', _631 => _631(value2)]);
32599
+ _optionalChain([onShowPopupsChange, 'optionalCall', _630 => _630(value2)]);
32619
32600
  },
32620
32601
  [onShowPopupsChange]
32621
32602
  );
32622
32603
  const setShowDesktopPopups = React98.useCallback(
32623
32604
  (value2) => {
32624
32605
  setShowDesktopPopupsState(value2);
32625
- _optionalChain([onShowDesktopPopupsChange, 'optionalCall', _632 => _632(value2)]);
32606
+ _optionalChain([onShowDesktopPopupsChange, 'optionalCall', _631 => _631(value2)]);
32626
32607
  },
32627
32608
  [onShowDesktopPopupsChange]
32628
32609
  );
@@ -32734,7 +32715,7 @@ var AppLayoutDrawerRoot = ({
32734
32715
  const handleOpenChange = React99.useCallback(
32735
32716
  (next) => {
32736
32717
  if (!isControlled) setInternalOpen(next);
32737
- _optionalChain([onOpenChange, 'optionalCall', _633 => _633(next)]);
32718
+ _optionalChain([onOpenChange, 'optionalCall', _632 => _632(next)]);
32738
32719
  },
32739
32720
  [isControlled, onOpenChange]
32740
32721
  );
@@ -32752,11 +32733,11 @@ var AppLayoutDrawerRoot = ({
32752
32733
  };
32753
32734
  }
32754
32735
  React99.useEffect(() => {
32755
- if (open) _optionalChain([coordination, 'optionalAccess', _634 => _634.notifyDrawerDidOpen, 'call', _635 => _635(_nullishCoalesce(selfHandleRef.current, () => ( void 0)))]);
32736
+ if (open) _optionalChain([coordination, 'optionalAccess', _633 => _633.notifyDrawerDidOpen, 'call', _634 => _634(_nullishCoalesce(selfHandleRef.current, () => ( void 0)))]);
32756
32737
  }, [open, coordination]);
32757
32738
  React99.useEffect(() => {
32758
32739
  if (!selfHandleRef.current) return;
32759
- return _optionalChain([coordination, 'optionalAccess', _636 => _636.registerDrawer, 'call', _637 => _637(selfHandleRef.current)]);
32740
+ return _optionalChain([coordination, 'optionalAccess', _635 => _635.registerDrawer, 'call', _636 => _636(selfHandleRef.current)]);
32760
32741
  }, [coordination]);
32761
32742
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DrawerOpenContext.Provider, { value: open, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32762
32743
  DialogPrimitive3.Root,
@@ -33136,10 +33117,10 @@ var AppLayoutDrawerContent = React99.forwardRef(
33136
33117
  ),
33137
33118
  style,
33138
33119
  onInteractOutside: (event) => {
33139
- _optionalChain([onInteractOutside, 'optionalCall', _638 => _638(event)]);
33120
+ _optionalChain([onInteractOutside, 'optionalCall', _637 => _637(event)]);
33140
33121
  if (event.defaultPrevented) return;
33141
33122
  const target = event.target;
33142
- const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _639 => _639.contains, 'call', _640 => _640(target)]);
33123
+ const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _638 => _638.contains, 'call', _639 => _639(target)]);
33143
33124
  if (!isInsideContainer) {
33144
33125
  event.preventDefault();
33145
33126
  return;
@@ -33247,7 +33228,7 @@ function NotificationTile({
33247
33228
  if (!counting) return;
33248
33229
  const remaining = Math.max(0, liveDurationMs - initialElapsed);
33249
33230
  const timer = window.setTimeout(() => {
33250
- _optionalChain([onSettle, 'optionalCall', _641 => _641(id)]);
33231
+ _optionalChain([onSettle, 'optionalCall', _640 => _640(id)]);
33251
33232
  }, remaining);
33252
33233
  return () => window.clearTimeout(timer);
33253
33234
  }, [id, counting, initialElapsed, liveDurationMs, onSettle]);
@@ -33303,7 +33284,7 @@ function NotificationTile({
33303
33284
  }
33304
33285
  ) : null,
33305
33286
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "relative size-4 shrink-0", children: [
33306
- { active: isLive, label: "Dismiss notification", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.XmarkIcon, { size: 16 }), onClick: () => _optionalChain([onSettle, 'optionalCall', _642 => _642(id)]) },
33287
+ { active: isLive, label: "Dismiss notification", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.XmarkIcon, { size: 16 }), onClick: () => _optionalChain([onSettle, 'optionalCall', _641 => _641(id)]) },
33307
33288
  { active: !isLive, label: "Mark notification complete", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.CheckCircleIcon, { size: 16 }), onClick: () => onComplete(id) }
33308
33289
  ].map(({ active, label, icon: icon2, onClick }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33309
33290
  "button",
@@ -33479,7 +33460,7 @@ function DrawerScrollList({
33479
33460
  if (!sentinel || !root) return;
33480
33461
  const observer = new IntersectionObserver(
33481
33462
  (entries) => {
33482
- if (_optionalChain([entries, 'access', _643 => _643[0], 'optionalAccess', _644 => _644.isIntersecting])) _optionalChain([loadMoreRef, 'access', _645 => _645.current, 'optionalCall', _646 => _646()]);
33463
+ if (_optionalChain([entries, 'access', _642 => _642[0], 'optionalAccess', _643 => _643.isIntersecting])) _optionalChain([loadMoreRef, 'access', _644 => _644.current, 'optionalCall', _645 => _645()]);
33483
33464
  },
33484
33465
  { root, rootMargin: loadMoreRootMargin }
33485
33466
  );
@@ -33494,7 +33475,7 @@ function DrawerScrollList({
33494
33475
  className: "flex flex-1 flex-col gap-[var(--spacing-system-xs)] overflow-y-auto px-[var(--spacing-system-m)]",
33495
33476
  children: isEmpty && !isLoadingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyState, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
33496
33477
  unreadNotifications.map((n) => {
33497
- const custom = _optionalChain([renderTile, 'optionalCall', _647 => _647(n, { onComplete, onSettle, liveDurationMs })]);
33478
+ const custom = _optionalChain([renderTile, 'optionalCall', _646 => _646(n, { onComplete, onSettle, liveDurationMs })]);
33498
33479
  if (custom) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: custom }, n.id);
33499
33480
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33500
33481
  NotificationTile,
@@ -33658,7 +33639,7 @@ function NotificationPopups({
33658
33639
  className
33659
33640
  ),
33660
33641
  children: live.map((n) => {
33661
- const custom = _optionalChain([renderTile, 'optionalCall', _648 => _648(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
33642
+ const custom = _optionalChain([renderTile, 'optionalCall', _647 => _647(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
33662
33643
  if (custom) {
33663
33644
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-auto", children: custom }, n.id);
33664
33645
  }
@@ -33771,7 +33752,7 @@ function programItemToStripProfile(item) {
33771
33752
  const fromAuthor = toStripProfile(item.author);
33772
33753
  if (fromAuthor) return fromAuthor;
33773
33754
  const host = Array.isArray(item.hosts) ? item.hosts[0] : null;
33774
- if (!_optionalChain([host, 'optionalAccess', _649 => _649.name])) return null;
33755
+ if (!_optionalChain([host, 'optionalAccess', _648 => _648.name])) return null;
33775
33756
  return toStripProfile({ full_name: host.name, avatar_url: _nullishCoalesce(host.avatar_url, () => ( null)) });
33776
33757
  }
33777
33758
  function transformEventToProgram(event) {
@@ -33849,21 +33830,21 @@ function transformWebinarToProgram(webinar) {
33849
33830
  // src/components/features/notifications/types.ts
33850
33831
  var ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = "ADMIN_APPROVAL_REQUEST";
33851
33832
  function isApprovalNotification(notification) {
33852
- return _optionalChain([notification, 'access', _650 => _650.meta, 'optionalAccess', _651 => _651.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
33833
+ return _optionalChain([notification, 'access', _649 => _649.meta, 'optionalAccess', _650 => _650.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
33853
33834
  }
33854
33835
  function getApprovalMeta(notification) {
33855
33836
  if (!isApprovalNotification(notification)) return null;
33856
33837
  const meta = notification.meta;
33857
- const approvalRequestId = _optionalChain([meta, 'optionalAccess', _652 => _652.approvalRequestId]);
33858
- const toolCalls = _optionalChain([meta, 'optionalAccess', _653 => _653.toolCalls]);
33838
+ const approvalRequestId = _optionalChain([meta, 'optionalAccess', _651 => _651.approvalRequestId]);
33839
+ const toolCalls = _optionalChain([meta, 'optionalAccess', _652 => _652.toolCalls]);
33859
33840
  if (typeof approvalRequestId !== "string" || !Array.isArray(toolCalls)) return null;
33860
33841
  return {
33861
33842
  approvalRequestId,
33862
- dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _654 => _654.dialogId]), () => ( null)),
33863
- ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _655 => _655.ticketId]), () => ( null)),
33864
- approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _656 => _656.approvalType]), () => ( null)),
33865
- resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _657 => _657.resolution]), () => ( null)),
33866
- resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _658 => _658.resolvedByName]), () => ( null)),
33843
+ dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _653 => _653.dialogId]), () => ( null)),
33844
+ ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _654 => _654.ticketId]), () => ( null)),
33845
+ approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _655 => _655.approvalType]), () => ( null)),
33846
+ resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _656 => _656.resolution]), () => ( null)),
33847
+ resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _657 => _657.resolvedByName]), () => ( null)),
33867
33848
  toolCalls
33868
33849
  };
33869
33850
  }
@@ -33913,7 +33894,7 @@ function ApprovalRequestNotificationTile({
33913
33894
  const [processing, setProcessing] = _react.useState.call(void 0, false);
33914
33895
  const [localStatus, setLocalStatus] = _react.useState.call(void 0, null);
33915
33896
  const approval = getApprovalMeta(notification);
33916
- const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _659 => _659.resolution]));
33897
+ const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _658 => _658.resolution]));
33917
33898
  const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
33918
33899
  const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
33919
33900
  const { innerRef, containerStyle } = useCollapsible({ expanded });
@@ -34217,7 +34198,7 @@ function TimeTrackerPanel({
34217
34198
  error: showFieldError ? "Required if no notes added" : void 0,
34218
34199
  disableClientFilter: !!onTicketSearch,
34219
34200
  onInputChange: (value, reason) => {
34220
- if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _660 => _660(value)]);
34201
+ if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _659 => _659(value)]);
34221
34202
  }
34222
34203
  }
34223
34204
  ),
@@ -34232,7 +34213,7 @@ function TimeTrackerPanel({
34232
34213
  disabled: customerLocked,
34233
34214
  disableClientFilter: !!onCustomerSearch,
34234
34215
  onInputChange: (value, reason) => {
34235
- if (reason === "input") _optionalChain([onCustomerSearch, 'optionalCall', _661 => _661(value)]);
34216
+ if (reason === "input") _optionalChain([onCustomerSearch, 'optionalCall', _660 => _660(value)]);
34236
34217
  },
34237
34218
  startAdornment: customerStartAdornment,
34238
34219
  renderOption: renderCustomerOption
@@ -34326,7 +34307,7 @@ function LastEntryRow({ entry, onClick }) {
34326
34307
  {
34327
34308
  variant: "outline",
34328
34309
  size: "icon",
34329
- onClick: () => _optionalChain([onClick, 'optionalCall', _662 => _662(entry)]),
34310
+ onClick: () => _optionalChain([onClick, 'optionalCall', _661 => _661(entry)]),
34330
34311
  disabled: !onClick,
34331
34312
  "aria-label": `Open entry: ${entry.title}`,
34332
34313
  className: "h-12 w-12 shrink-0 [&_svg]:!size-6",
@@ -34371,31 +34352,31 @@ function HeaderButton({
34371
34352
  function TimeTrackerHeaderButton({ className, disabled }) {
34372
34353
  const ctx = useOptionalTimeTracker();
34373
34354
  const elapsedLabel = useTrackerClock({
34374
- status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _663 => _663.status]), () => ( "ready")),
34375
- runningSince: _optionalChain([ctx, 'optionalAccess', _664 => _664.runningSince]),
34376
- accumulatedMs: _optionalChain([ctx, 'optionalAccess', _665 => _665.accumulatedMs])
34355
+ status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _662 => _662.status]), () => ( "ready")),
34356
+ runningSince: _optionalChain([ctx, 'optionalAccess', _663 => _663.runningSince]),
34357
+ accumulatedMs: _optionalChain([ctx, 'optionalAccess', _664 => _664.accumulatedMs])
34377
34358
  });
34378
34359
  const layoutContainer = useAppLayoutDrawerContainer();
34379
34360
  const coordination = useAppLayoutDrawerCoordination();
34380
- const isOpen = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _666 => _666.isOpen]), () => ( false));
34361
+ const isOpen = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _665 => _665.isOpen]), () => ( false));
34381
34362
  const isOpenRef = _react.useRef.call(void 0, isOpen);
34382
34363
  isOpenRef.current = isOpen;
34383
- const closeRef = _react.useRef.call(void 0, _optionalChain([ctx, 'optionalAccess', _667 => _667.close]));
34384
- closeRef.current = _optionalChain([ctx, 'optionalAccess', _668 => _668.close]);
34364
+ const closeRef = _react.useRef.call(void 0, _optionalChain([ctx, 'optionalAccess', _666 => _666.close]));
34365
+ closeRef.current = _optionalChain([ctx, 'optionalAccess', _667 => _667.close]);
34385
34366
  const selfHandleRef = _react.useRef.call(void 0, null);
34386
34367
  if (!selfHandleRef.current) {
34387
34368
  selfHandleRef.current = {
34388
34369
  close: () => {
34389
- if (isOpenRef.current) _optionalChain([closeRef, 'access', _669 => _669.current, 'optionalCall', _670 => _670()]);
34370
+ if (isOpenRef.current) _optionalChain([closeRef, 'access', _668 => _668.current, 'optionalCall', _669 => _669()]);
34390
34371
  }
34391
34372
  };
34392
34373
  }
34393
34374
  _react.useEffect.call(void 0, () => {
34394
- if (isOpen) _optionalChain([coordination, 'optionalAccess', _671 => _671.notifyDrawerDidOpen, 'call', _672 => _672(_nullishCoalesce(selfHandleRef.current, () => ( void 0)))]);
34375
+ if (isOpen) _optionalChain([coordination, 'optionalAccess', _670 => _670.notifyDrawerDidOpen, 'call', _671 => _671(_nullishCoalesce(selfHandleRef.current, () => ( void 0)))]);
34395
34376
  }, [isOpen, coordination]);
34396
34377
  _react.useEffect.call(void 0, () => {
34397
34378
  if (!selfHandleRef.current) return;
34398
- return _optionalChain([coordination, 'optionalAccess', _673 => _673.registerDrawer, 'call', _674 => _674(selfHandleRef.current)]);
34379
+ return _optionalChain([coordination, 'optionalAccess', _672 => _672.registerDrawer, 'call', _673 => _673(selfHandleRef.current)]);
34399
34380
  }, [coordination]);
34400
34381
  if (!ctx) return null;
34401
34382
  const { open, close, status } = ctx;
@@ -34668,9 +34649,9 @@ var TICKET_CARD_SHELL = "relative flex flex-col gap-[var(--spacing-system-sf)] r
34668
34649
  function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onReject }) {
34669
34650
  const showNewMessage = !!ticket.hasNewMessage && !!columnColor;
34670
34651
  const newMessageTextColor = columnColor ? getReadableTextColor(columnColor) : void 0;
34671
- const showDeviceRow = !!(_optionalChain([ticket, 'access', _675 => _675.deviceHostnames, 'optionalAccess', _676 => _676.length]) || ticket.organizationName);
34672
- const deviceText = [_optionalChain([ticket, 'access', _677 => _677.deviceHostnames, 'optionalAccess', _678 => _678.join, 'call', _679 => _679(", ")]), ticket.organizationName].filter(Boolean).join(", ");
34673
- const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _680 => _680.assignees, 'optionalAccess', _681 => _681.length]) || renderAssignSlot);
34652
+ const showDeviceRow = !!(_optionalChain([ticket, 'access', _674 => _674.deviceHostnames, 'optionalAccess', _675 => _675.length]) || ticket.organizationName);
34653
+ const deviceText = [_optionalChain([ticket, 'access', _676 => _676.deviceHostnames, 'optionalAccess', _677 => _677.join, 'call', _678 => _678(", ")]), ticket.organizationName].filter(Boolean).join(", ");
34654
+ const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _679 => _679.assignees, 'optionalAccess', _680 => _680.length]) || renderAssignSlot);
34674
34655
  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: [
34675
34656
  ticket.priority && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34676
34657
  _chunkBGD345ZVcjs.Flag02Icon,
@@ -34679,7 +34660,7 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
34679
34660
  "aria-label": `Priority: ${ticket.priority}`
34680
34661
  }
34681
34662
  ),
34682
- renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _682 => _682.assignees, 'optionalAccess', _683 => _683.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
34663
+ renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _681 => _681.assignees, 'optionalAccess', _682 => _682.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
34683
34664
  ticket.assignees.slice(0, MAX_VISIBLE_ASSIGNEES).map((a) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34684
34665
  SquareAvatar,
34685
34666
  {
@@ -34710,7 +34691,7 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
34710
34691
  ] }),
34711
34692
  rightSection
34712
34693
  ] }),
34713
- _optionalChain([ticket, 'access', _684 => _684.tags, 'optionalAccess', _685 => _685.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
34694
+ _optionalChain([ticket, 'access', _683 => _683.tags, 'optionalAccess', _684 => _684.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
34714
34695
  timestampLabel && tooltipLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Tooltip, { children: [
34715
34696
  /* @__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 }) }),
34716
34697
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipContent, { children: tooltipLabel })
@@ -34948,7 +34929,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
34948
34929
  const observer = new IntersectionObserver(
34949
34930
  (entries) => {
34950
34931
  if (entries.some((e) => e.isIntersecting)) {
34951
- _optionalChain([loadMoreRef, 'access', _686 => _686.current, 'optionalCall', _687 => _687(columnIdRef.current)]);
34932
+ _optionalChain([loadMoreRef, 'access', _685 => _685.current, 'optionalCall', _686 => _686(columnIdRef.current)]);
34952
34933
  }
34953
34934
  },
34954
34935
  { root, rootMargin: loadMoreRootMargin }
@@ -34978,7 +34959,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
34978
34959
  ticket: t,
34979
34960
  columnId: column.id,
34980
34961
  columnColor: column.color,
34981
- href: _optionalChain([getTicketHref, 'optionalCall', _688 => _688(t.id)]),
34962
+ href: _optionalChain([getTicketHref, 'optionalCall', _687 => _687(t.id)]),
34982
34963
  renderAssignSlot,
34983
34964
  onApprove,
34984
34965
  onReject,
@@ -35078,17 +35059,17 @@ function Board({
35078
35059
  const pointer = _core.pointerWithin.call(void 0, args);
35079
35060
  const intersections = pointer.length > 0 ? pointer : _core.rectIntersection.call(void 0, args);
35080
35061
  const ticketHit = intersections.find(
35081
- (c) => _optionalChain([c, 'access', _689 => _689.data, 'optionalAccess', _690 => _690.droppableContainer, 'optionalAccess', _691 => _691.data, 'optionalAccess', _692 => _692.current, 'optionalAccess', _693 => _693.type]) === "ticket"
35062
+ (c) => _optionalChain([c, 'access', _688 => _688.data, 'optionalAccess', _689 => _689.droppableContainer, 'optionalAccess', _690 => _690.data, 'optionalAccess', _691 => _691.current, 'optionalAccess', _692 => _692.type]) === "ticket"
35082
35063
  );
35083
35064
  if (ticketHit) return [ticketHit];
35084
35065
  const columnHit = intersections.find(
35085
- (c) => _optionalChain([c, 'access', _694 => _694.data, 'optionalAccess', _695 => _695.droppableContainer, 'optionalAccess', _696 => _696.data, 'optionalAccess', _697 => _697.current, 'optionalAccess', _698 => _698.type]) === "column"
35066
+ (c) => _optionalChain([c, 'access', _693 => _693.data, 'optionalAccess', _694 => _694.droppableContainer, 'optionalAccess', _695 => _695.data, 'optionalAccess', _696 => _696.current, 'optionalAccess', _697 => _697.type]) === "column"
35086
35067
  );
35087
35068
  if (columnHit) {
35088
- const columnId = _optionalChain([columnHit, 'access', _699 => _699.data, 'optionalAccess', _700 => _700.droppableContainer, 'optionalAccess', _701 => _701.data, 'optionalAccess', _702 => _702.current, 'optionalAccess', _703 => _703.columnId]);
35069
+ const columnId = _optionalChain([columnHit, 'access', _698 => _698.data, 'optionalAccess', _699 => _699.droppableContainer, 'optionalAccess', _700 => _700.data, 'optionalAccess', _701 => _701.current, 'optionalAccess', _702 => _702.columnId]);
35089
35070
  const ticketsInColumn = args.droppableContainers.filter((c) => {
35090
35071
  const d = c.data.current;
35091
- return _optionalChain([d, 'optionalAccess', _704 => _704.type]) === "ticket" && d.columnId === columnId;
35072
+ return _optionalChain([d, 'optionalAccess', _703 => _703.type]) === "ticket" && d.columnId === columnId;
35092
35073
  });
35093
35074
  if (ticketsInColumn.length > 0) {
35094
35075
  const closest = _core.closestCorners.call(void 0, { ...args, droppableContainers: ticketsInColumn });
@@ -35113,20 +35094,20 @@ function Board({
35113
35094
  const overId = String(over.id);
35114
35095
  if (activeId === overId) return;
35115
35096
  const overData = over.data.current;
35116
- const fromColumnId = _optionalChain([locate, 'call', _705 => _705(items, activeId), 'optionalAccess', _706 => _706.columnId]);
35117
- const toColumnId = _optionalChain([overData, 'optionalAccess', _707 => _707.columnId]);
35097
+ const fromColumnId = _optionalChain([locate, 'call', _704 => _704(items, activeId), 'optionalAccess', _705 => _705.columnId]);
35098
+ const toColumnId = _optionalChain([overData, 'optionalAccess', _706 => _706.columnId]);
35118
35099
  if (!fromColumnId || !toColumnId || fromColumnId === toColumnId) return;
35119
35100
  const origin = dragOriginRef.current;
35120
- const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _708 => _708.fromColumnId]) === toColumnId;
35101
+ const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _707 => _707.fromColumnId]) === toColumnId;
35121
35102
  const targetCol = items.find((c) => c.id === toColumnId);
35122
- const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _709 => _709.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
35123
- if (_optionalChain([targetCol, 'optionalAccess', _710 => _710.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
35103
+ const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _708 => _708.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
35104
+ if (_optionalChain([targetCol, 'optionalAccess', _709 => _709.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
35124
35105
  setItems((prev) => {
35125
35106
  const fromIndex = findIndexInColumn(prev, fromColumnId, activeId);
35126
35107
  const toCol = prev.find((c) => c.id === toColumnId);
35127
35108
  if (fromIndex < 0 || !toCol) return prev;
35128
35109
  let toIndex;
35129
- if (_optionalChain([overData, 'optionalAccess', _711 => _711.type]) === "column") {
35110
+ if (_optionalChain([overData, 'optionalAccess', _710 => _710.type]) === "column") {
35130
35111
  toIndex = toCol.tickets.length;
35131
35112
  } else {
35132
35113
  const overIndex = toCol.tickets.findIndex((t) => t.id === overId);
@@ -35168,14 +35149,14 @@ function Board({
35168
35149
  const toColumnId = located.columnId;
35169
35150
  const isCrossColumn = origin.fromColumnId !== toColumnId;
35170
35151
  const targetCol = items.find((c) => c.id === toColumnId);
35171
- if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _712 => _712.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _713 => _713.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
35152
+ if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _711 => _711.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _712 => _712.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
35172
35153
  setItems(columns);
35173
35154
  return;
35174
35155
  }
35175
35156
  let finalIndex = located.index;
35176
- let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _714 => _714.find, 'call', _715 => _715((c) => c.id === toColumnId), 'optionalAccess', _716 => _716.tickets]), () => ( []));
35157
+ let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _713 => _713.find, 'call', _714 => _714((c) => c.id === toColumnId), 'optionalAccess', _715 => _715.tickets]), () => ( []));
35177
35158
  const overData = over.data.current;
35178
- if (_optionalChain([overData, 'optionalAccess', _717 => _717.type]) === "ticket") {
35159
+ if (_optionalChain([overData, 'optionalAccess', _716 => _716.type]) === "ticket") {
35179
35160
  const overIndex = findIndexInColumn(items, toColumnId, String(over.id));
35180
35161
  if (overIndex >= 0 && overIndex !== located.index) {
35181
35162
  finalColumnTickets = _sortable.arrayMove.call(void 0, finalColumnTickets, located.index, overIndex);
@@ -35195,8 +35176,8 @@ function Board({
35195
35176
  ticketId: origin.ticketId,
35196
35177
  fromColumnId: origin.fromColumnId,
35197
35178
  toColumnId,
35198
- afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _718 => _718[finalIndex - 1], 'optionalAccess', _719 => _719.id]), () => ( null)),
35199
- beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _720 => _720[finalIndex + 1], 'optionalAccess', _721 => _721.id]), () => ( null))
35179
+ afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _717 => _717[finalIndex - 1], 'optionalAccess', _718 => _718.id]), () => ( null)),
35180
+ beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _719 => _719[finalIndex + 1], 'optionalAccess', _720 => _720.id]), () => ( null))
35200
35181
  });
35201
35182
  };
35202
35183
  const handleDragCancel = () => {
@@ -35225,8 +35206,8 @@ function Board({
35225
35206
  children: items.map((column, i) => {
35226
35207
  const prev = items[i - 1];
35227
35208
  const next = items[i + 1];
35228
- const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _722 => _722.system]));
35229
- const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _723 => _723.system]));
35209
+ const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _721 => _721.system]));
35210
+ const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _722 => _722.system]));
35230
35211
  const showGap = i > 0 && !joinLeft;
35231
35212
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React105.Fragment, { children: [
35232
35213
  showGap && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "w-[var(--spacing-system-mf)] shrink-0" }),
@@ -35279,7 +35260,7 @@ function Board({
35279
35260
  {
35280
35261
  ticket: activeTicket.ticket,
35281
35262
  columnId: activeTicket.columnId,
35282
- columnColor: _optionalChain([items, 'access', _724 => _724.find, 'call', _725 => _725((c) => c.id === activeTicket.columnId), 'optionalAccess', _726 => _726.color]),
35263
+ columnColor: _optionalChain([items, 'access', _723 => _723.find, 'call', _724 => _724((c) => c.id === activeTicket.columnId), 'optionalAccess', _725 => _725.color]),
35283
35264
  isOverlay: true
35284
35265
  }
35285
35266
  ) : null })
@@ -35295,7 +35276,7 @@ function locate(cols, ticketId) {
35295
35276
  return null;
35296
35277
  }
35297
35278
  function findIndexInColumn(cols, columnId, ticketId) {
35298
- return _nullishCoalesce(_optionalChain([cols, 'access', _727 => _727.find, 'call', _728 => _728((c) => c.id === columnId), 'optionalAccess', _729 => _729.tickets, 'access', _730 => _730.findIndex, 'call', _731 => _731((t) => t.id === ticketId)]), () => ( -1));
35279
+ return _nullishCoalesce(_optionalChain([cols, 'access', _726 => _726.find, 'call', _727 => _727((c) => c.id === columnId), 'optionalAccess', _728 => _728.tickets, 'access', _729 => _729.findIndex, 'call', _730 => _730((t) => t.id === ticketId)]), () => ( -1));
35299
35280
  }
35300
35281
 
35301
35282
  // src/components/features/board/types.ts
@@ -35431,7 +35412,7 @@ function MobileNavPanel({ isOpen, config }) {
35431
35412
  if (item.onClick) {
35432
35413
  item.onClick();
35433
35414
  }
35434
- _optionalChain([config, 'access', _732 => _732.onClose, 'optionalCall', _733 => _733()]);
35415
+ _optionalChain([config, 'access', _731 => _731.onClose, 'optionalCall', _732 => _732()]);
35435
35416
  };
35436
35417
  if (item.href) {
35437
35418
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -35539,7 +35520,7 @@ function MingoAiButton({ source, icon, label = "Mingo AI", className, onClick, .
35539
35520
  "aria-label": label,
35540
35521
  onClick: (e) => {
35541
35522
  window.dispatchEvent(new CustomEvent("ask-ai:open", { detail: { source: _nullishCoalesce(source, () => ( "")) } }));
35542
- _optionalChain([onClick, 'optionalCall', _734 => _734(e)]);
35523
+ _optionalChain([onClick, 'optionalCall', _733 => _733(e)]);
35543
35524
  },
35544
35525
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
35545
35526
  // `--spacing-system-l` is itself responsive (16px, 24px from 800px):
@@ -35708,7 +35689,7 @@ function Header2({ config, platform }) {
35708
35689
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
35709
35690
  "flex justify-start w-full",
35710
35691
  "text-h6 font-bold",
35711
- index < (_nullishCoalesce(_optionalChain([item, 'access', _735 => _735.children, 'optionalAccess', _736 => _736.length]), () => ( 0))) - 1 && "mb-1",
35692
+ index < (_nullishCoalesce(_optionalChain([item, 'access', _734 => _734.children, 'optionalAccess', _735 => _735.length]), () => ( 0))) - 1 && "mb-1",
35712
35693
  "text-ods-text-primary",
35713
35694
  // All dropdown items use primary text color
35714
35695
  child.isActive && "bg-ods-bg-hover"
@@ -35795,7 +35776,7 @@ function Header2({ config, platform }) {
35795
35776
  "w-full h-[72px] flex items-center justify-between",
35796
35777
  "border-b border-ods-border backdrop-blur-sm",
35797
35778
  "pl-6",
35798
- !_optionalChain([config, 'access', _737 => _737.mingo, 'optionalAccess', _738 => _738.enabled]) && "pr-6",
35779
+ !_optionalChain([config, 'access', _736 => _736.mingo, 'optionalAccess', _737 => _737.enabled]) && "pr-6",
35799
35780
  // Background color (configurable via backgroundColor prop)
35800
35781
  config.backgroundColor || "bg-ods-card",
35801
35782
  config.className
@@ -35803,7 +35784,7 @@ function Header2({ config, platform }) {
35803
35784
  style: config.style,
35804
35785
  children: [
35805
35786
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
35806
- _optionalChain([config, 'access', _739 => _739.actions, 'optionalAccess', _740 => _740.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
35787
+ _optionalChain([config, 'access', _738 => _738.actions, 'optionalAccess', _739 => _739.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
35807
35788
  /* @__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 })
35808
35789
  ] }),
35809
35790
  config.navigation && config.navigation.items.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -35820,8 +35801,8 @@ function Header2({ config, platform }) {
35820
35801
  }
35821
35802
  ),
35822
35803
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-end gap-3 flex-shrink-0 self-stretch", children: [
35823
- _optionalChain([config, 'access', _741 => _741.actions, 'optionalAccess', _742 => _742.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden lg:flex items-center gap-3", children: config.actions.right }),
35824
- _optionalChain([config, 'access', _743 => _743.actions, 'optionalAccess', _744 => _744.persistent]) && config.actions.persistent.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.persistent }),
35804
+ _optionalChain([config, 'access', _740 => _740.actions, 'optionalAccess', _741 => _741.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden lg:flex items-center gap-3", children: config.actions.right }),
35805
+ _optionalChain([config, 'access', _742 => _742.actions, 'optionalAccess', _743 => _743.persistent]) && config.actions.persistent.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.persistent }),
35825
35806
  config.mobile && config.mobile.enabled && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35826
35807
  _chunkPYR4LVAFcjs.Button,
35827
35808
  {
@@ -35829,15 +35810,15 @@ function Header2({ config, platform }) {
35829
35810
  size: "icon",
35830
35811
  className: "flex lg:hidden",
35831
35812
  onClick: () => {
35832
- _optionalChain([config, 'access', _745 => _745.mobile, 'optionalAccess', _746 => _746.onToggle, 'optionalCall', _747 => _747()]);
35813
+ _optionalChain([config, 'access', _744 => _744.mobile, 'optionalAccess', _745 => _745.onToggle, 'optionalCall', _746 => _746()]);
35833
35814
  },
35834
- "aria-label": _optionalChain([config, 'access', _748 => _748.mobile, 'optionalAccess', _749 => _749.isOpen]) ? "Close menu" : "Open menu",
35835
- "aria-expanded": _nullishCoalesce(_optionalChain([config, 'access', _750 => _750.mobile, 'optionalAccess', _751 => _751.isOpen]), () => ( false)),
35836
- "aria-controls": _optionalChain([config, 'access', _752 => _752.mobile, 'optionalAccess', _753 => _753.isOpen]) ? MOBILE_NAV_PANEL_ID : void 0,
35837
- leftIcon: _optionalChain([config, 'access', _754 => _754.mobile, 'optionalAccess', _755 => _755.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.Menu01Icon, {})
35815
+ "aria-label": _optionalChain([config, 'access', _747 => _747.mobile, 'optionalAccess', _748 => _748.isOpen]) ? "Close menu" : "Open menu",
35816
+ "aria-expanded": _nullishCoalesce(_optionalChain([config, 'access', _749 => _749.mobile, 'optionalAccess', _750 => _750.isOpen]), () => ( false)),
35817
+ "aria-controls": _optionalChain([config, 'access', _751 => _751.mobile, 'optionalAccess', _752 => _752.isOpen]) ? MOBILE_NAV_PANEL_ID : void 0,
35818
+ leftIcon: _optionalChain([config, 'access', _753 => _753.mobile, 'optionalAccess', _754 => _754.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.Menu01Icon, {})
35838
35819
  }
35839
35820
  ),
35840
- _optionalChain([config, 'access', _756 => _756.mingo, 'optionalAccess', _757 => _757.enabled]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoAiButton, { source: config.mingo.source, icon: config.mingo.icon, label: config.mingo.label, className: config.mingo.className })
35821
+ _optionalChain([config, 'access', _755 => _755.mingo, 'optionalAccess', _756 => _756.enabled]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoAiButton, { source: config.mingo.source, icon: config.mingo.icon, label: config.mingo.label, className: config.mingo.className })
35841
35822
  ] })
35842
35823
  ]
35843
35824
  }
@@ -35852,10 +35833,10 @@ function Header2({ config, platform }) {
35852
35833
  // src/components/navigation/header-skeleton.tsx
35853
35834
 
35854
35835
  function HeaderSkeleton({ config }) {
35855
- const showNavigation = _optionalChain([config, 'optionalAccess', _758 => _758.navigation]) && config.navigation.items.length > 0;
35856
- const showActions = _optionalChain([config, 'optionalAccess', _759 => _759.actions, 'optionalAccess', _760 => _760.right]) && config.actions.right.length > 0;
35857
- const showMobileMenu = _optionalChain([config, 'optionalAccess', _761 => _761.mobile, 'optionalAccess', _762 => _762.enabled]);
35858
- const isAdminHeader = _optionalChain([config, 'optionalAccess', _763 => _763.className, 'optionalAccess', _764 => _764.includes, 'call', _765 => _765("admin")]);
35836
+ const showNavigation = _optionalChain([config, 'optionalAccess', _757 => _757.navigation]) && config.navigation.items.length > 0;
35837
+ const showActions = _optionalChain([config, 'optionalAccess', _758 => _758.actions, 'optionalAccess', _759 => _759.right]) && config.actions.right.length > 0;
35838
+ const showMobileMenu = _optionalChain([config, 'optionalAccess', _760 => _760.mobile, 'optionalAccess', _761 => _761.enabled]);
35839
+ const isAdminHeader = _optionalChain([config, 'optionalAccess', _762 => _762.className, 'optionalAccess', _763 => _763.includes, 'call', _764 => _764("admin")]);
35859
35840
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky top-0 z-40 w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
35860
35841
  "header",
35861
35842
  {
@@ -35864,11 +35845,11 @@ function HeaderSkeleton({ config }) {
35864
35845
  "bg-ods-card border-b border-ods-border backdrop-blur-sm",
35865
35846
  "px-6 py-3",
35866
35847
  "transition-opacity duration-300 ease-in-out",
35867
- _optionalChain([config, 'optionalAccess', _766 => _766.className])
35848
+ _optionalChain([config, 'optionalAccess', _765 => _765.className])
35868
35849
  ),
35869
35850
  children: [
35870
35851
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
35871
- isAdminHeader && _optionalChain([config, 'optionalAccess', _767 => _767.actions, 'optionalAccess', _768 => _768.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" }) }),
35852
+ isAdminHeader && _optionalChain([config, 'optionalAccess', _766 => _766.actions, 'optionalAccess', _767 => _767.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" }) }),
35872
35853
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
35873
35854
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-8 bg-ods-border rounded animate-pulse" }),
35874
35855
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-6 w-24 bg-ods-border rounded animate-pulse" })
@@ -35876,8 +35857,8 @@ function HeaderSkeleton({ config }) {
35876
35857
  ] }),
35877
35858
  showNavigation && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "nav", { className: _chunkFIG2RKZFcjs.cn.call(void 0,
35878
35859
  "hidden md:flex items-center gap-2",
35879
- _optionalChain([config, 'optionalAccess', _769 => _769.navigation, 'optionalAccess', _770 => _770.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
35880
- _optionalChain([config, 'optionalAccess', _771 => _771.navigation, 'optionalAccess', _772 => _772.position]) === "right" && "ml-auto mr-4"
35860
+ _optionalChain([config, 'optionalAccess', _768 => _768.navigation, 'optionalAccess', _769 => _769.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
35861
+ _optionalChain([config, 'optionalAccess', _770 => _770.navigation, 'optionalAccess', _771 => _771.position]) === "right" && "ml-auto mr-4"
35881
35862
  ), children: [
35882
35863
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-20 bg-ods-border rounded animate-pulse" }),
35883
35864
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-28 bg-ods-border rounded animate-pulse" }),
@@ -35993,7 +35974,7 @@ function SlidingSidebar({ config }) {
35993
35974
  variant: "transparent",
35994
35975
  size: "default",
35995
35976
  onClick: () => {
35996
- _optionalChain([item, 'access', _773 => _773.onClick, 'optionalCall', _774 => _774()]);
35977
+ _optionalChain([item, 'access', _772 => _772.onClick, 'optionalCall', _773 => _773()]);
35997
35978
  config.onClose();
35998
35979
  },
35999
35980
  leftIcon: item.icon,
@@ -36016,7 +35997,7 @@ function SlidingSidebar({ config }) {
36016
35997
  variant: "transparent",
36017
35998
  size: "default",
36018
35999
  onClick: () => {
36019
- _optionalChain([item, 'access', _775 => _775.onClick, 'optionalCall', _776 => _776()]);
36000
+ _optionalChain([item, 'access', _774 => _774.onClick, 'optionalCall', _775 => _775()]);
36020
36001
  config.onClose();
36021
36002
  },
36022
36003
  leftIcon: item.icon,
@@ -36148,7 +36129,7 @@ function StickySectionNav({
36148
36129
  ] });
36149
36130
  }
36150
36131
  function useSectionNavigation(sections, options) {
36151
- const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _777 => _777[0], 'optionalAccess', _778 => _778.id]) || "");
36132
+ const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _776 => _776[0], 'optionalAccess', _777 => _777.id]) || "");
36152
36133
  const isScrollingFromClick = _react.useRef.call(void 0, false);
36153
36134
  const { offset: offset2 = 100 } = options || {};
36154
36135
  const handleSectionClick = _react.useCallback.call(void 0, (sectionId) => {
@@ -36172,7 +36153,7 @@ function useSectionNavigation(sections, options) {
36172
36153
  const handleScroll = () => {
36173
36154
  if (isScrollingFromClick.current) return;
36174
36155
  const scrollPosition = window.scrollY + offset2 + 50;
36175
- let currentSection = _optionalChain([sections, 'access', _779 => _779[0], 'optionalAccess', _780 => _780.id]) || "";
36156
+ let currentSection = _optionalChain([sections, 'access', _778 => _778[0], 'optionalAccess', _779 => _779.id]) || "";
36176
36157
  for (let i = sections.length - 1; i >= 0; i--) {
36177
36158
  const element = document.getElementById(sections[i].id);
36178
36159
  if (element && scrollPosition >= element.offsetTop) {
@@ -36363,7 +36344,7 @@ function NavigationSidebar({ config, disabled = false }) {
36363
36344
  } else {
36364
36345
  setDesktopMinimized((prev) => !prev);
36365
36346
  }
36366
- _optionalChain([config, 'access', _781 => _781.onToggleMinimized, 'optionalCall', _782 => _782()]);
36347
+ _optionalChain([config, 'access', _780 => _780.onToggleMinimized, 'optionalCall', _781 => _781()]);
36367
36348
  }, [isTablet, setDesktopMinimized, config]);
36368
36349
  const closeOverlay = _react.useCallback.call(void 0, () => {
36369
36350
  setTabletMinimized(true);
@@ -36377,11 +36358,11 @@ function NavigationSidebar({ config, disabled = false }) {
36377
36358
  return () => document.removeEventListener("keydown", handleKeyDown);
36378
36359
  }, [isOverlayOpen, closeOverlay]);
36379
36360
  const handleItemClick = _react.useCallback.call(void 0, (item, event) => {
36380
- _optionalChain([event, 'optionalAccess', _783 => _783.stopPropagation, 'call', _784 => _784()]);
36361
+ _optionalChain([event, 'optionalAccess', _782 => _782.stopPropagation, 'call', _783 => _783()]);
36381
36362
  if (item.onClick) {
36382
36363
  item.onClick();
36383
36364
  } else if (item.path) {
36384
- _optionalChain([config, 'access', _785 => _785.onNavigate, 'optionalCall', _786 => _786(item.path)]);
36365
+ _optionalChain([config, 'access', _784 => _784.onNavigate, 'optionalCall', _785 => _785(item.path)]);
36385
36366
  }
36386
36367
  if (isTablet) setTabletMinimized(true);
36387
36368
  }, [config, isTablet]);
@@ -36506,11 +36487,11 @@ function HeaderGlobalSearch({
36506
36487
  };
36507
36488
  const handleSubmit = (e) => {
36508
36489
  e.preventDefault();
36509
- _optionalChain([onSubmit, 'optionalCall', _787 => _787(currentValue)]);
36490
+ _optionalChain([onSubmit, 'optionalCall', _786 => _786(currentValue)]);
36510
36491
  };
36511
36492
  const handleKeyDown = (e) => {
36512
36493
  if (e.key === "Enter") {
36513
- _optionalChain([onSubmit, 'optionalCall', _788 => _788(currentValue)]);
36494
+ _optionalChain([onSubmit, 'optionalCall', _787 => _787(currentValue)]);
36514
36495
  }
36515
36496
  };
36516
36497
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -36604,8 +36585,8 @@ function HeaderOrganizationFilter({
36604
36585
  className
36605
36586
  }) {
36606
36587
  const selectedOrg = organizations.find((o) => o.id === selectedOrgId);
36607
- const displayName = _optionalChain([selectedOrg, 'optionalAccess', _789 => _789.name]) || "All Organizations";
36608
- const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _790 => _790.deviceCount]), () => ( totalDeviceCount));
36588
+ const displayName = _optionalChain([selectedOrg, 'optionalAccess', _788 => _788.name]) || "All Organizations";
36589
+ const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _789 => _789.deviceCount]), () => ( totalDeviceCount));
36609
36590
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkPYR4LVAFcjs.DropdownMenu, { children: [
36610
36591
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPYR4LVAFcjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
36611
36592
  "button",
@@ -36630,11 +36611,11 @@ function HeaderOrganizationFilter({
36630
36611
  }
36631
36612
  ) }),
36632
36613
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkPYR4LVAFcjs.DropdownMenuContent, { align: "end", className: "min-w-[240px]", children: [
36633
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPYR4LVAFcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _791 => _791("")]), children: "All Organizations" }),
36614
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkPYR4LVAFcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _790 => _790("")]), children: "All Organizations" }),
36634
36615
  organizations.map((org) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36635
36616
  _chunkPYR4LVAFcjs.DropdownMenuItem,
36636
36617
  {
36637
- onClick: () => _optionalChain([onOrgChange, 'optionalCall', _792 => _792(org.id)]),
36618
+ onClick: () => _optionalChain([onOrgChange, 'optionalCall', _791 => _791(org.id)]),
36638
36619
  children: org.name
36639
36620
  },
36640
36621
  org.id
@@ -36824,9 +36805,9 @@ function NotificationsHeaderButton({
36824
36805
  dimmedClass
36825
36806
  }) {
36826
36807
  const ctx = useOptionalNotifications();
36827
- const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _793 => _793.unreadCount]), () => ( fallbackUnreadCount))) > 0;
36828
- const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _794 => _794.isOpen]), () => ( false));
36829
- const onClick = _optionalChain([ctx, 'optionalAccess', _795 => _795.toggle]);
36808
+ const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _792 => _792.unreadCount]), () => ( fallbackUnreadCount))) > 0;
36809
+ const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _793 => _793.isOpen]), () => ( false));
36810
+ const onClick = _optionalChain([ctx, 'optionalAccess', _794 => _794.toggle]);
36830
36811
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36831
36812
  HeaderButton,
36832
36813
  {
@@ -36873,7 +36854,7 @@ var MobileBurgerMenu = React120.default.memo(function MobileBurgerMenu2({
36873
36854
  if (item.onClick) {
36874
36855
  item.onClick();
36875
36856
  } else if (item.path) {
36876
- _optionalChain([config, 'access', _796 => _796.onNavigate, 'optionalCall', _797 => _797(item.path)]);
36857
+ _optionalChain([config, 'access', _795 => _795.onNavigate, 'optionalCall', _796 => _796(item.path)]);
36877
36858
  }
36878
36859
  onClose();
36879
36860
  }, [config, onClose]);
@@ -37479,7 +37460,7 @@ var ShellTypeBadge = ({
37479
37460
  className,
37480
37461
  iconClassName
37481
37462
  }) => {
37482
- const normalizedType = _optionalChain([shellType, 'optionalAccess', _798 => _798.toUpperCase, 'call', _799 => _799()]);
37463
+ const normalizedType = _optionalChain([shellType, 'optionalAccess', _797 => _797.toUpperCase, 'call', _798 => _798()]);
37483
37464
  const label = getShellLabel(normalizedType);
37484
37465
  const { icon: IconComponent, props: iconProps } = _nullishCoalesce(shellIconMap[normalizedType], () => ( defaultIconConfig));
37485
37466
  const defaultIconClassName = "className" in iconProps ? iconProps.className : void 0;
@@ -37866,12 +37847,12 @@ function OnboardingWalkthrough({
37866
37847
  }
37867
37848
  }, [state.completedSteps, markComplete]);
37868
37849
  const handleStepSkip = (step) => {
37869
- _optionalChain([step, 'access', _800 => _800.onSkip, 'optionalCall', _801 => _801()]);
37850
+ _optionalChain([step, 'access', _799 => _799.onSkip, 'optionalCall', _800 => _800()]);
37870
37851
  markSkipped(step.id);
37871
37852
  };
37872
37853
  const handleDismiss = () => {
37873
37854
  dismissOnboarding();
37874
- _optionalChain([onDismiss, 'optionalCall', _802 => _802()]);
37855
+ _optionalChain([onDismiss, 'optionalCall', _801 => _801()]);
37875
37856
  };
37876
37857
  if (state.dismissed) {
37877
37858
  return null;
@@ -38001,7 +37982,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
38001
37982
  onKeyDown: (e) => {
38002
37983
  if (e.key === "Enter" || e.key === " ") {
38003
37984
  e.preventDefault();
38004
- _optionalChain([onClick, 'optionalCall', _803 => _803()]);
37985
+ _optionalChain([onClick, 'optionalCall', _802 => _802()]);
38005
37986
  }
38006
37987
  },
38007
37988
  children: [
@@ -38102,7 +38083,7 @@ var LogsList = React117.forwardRef(({
38102
38083
  log,
38103
38084
  isLast: index === logs.length - 1,
38104
38085
  showConnector,
38105
- onClick: () => _optionalChain([onLogClick, 'optionalCall', _804 => _804(log)])
38086
+ onClick: () => _optionalChain([onLogClick, 'optionalCall', _803 => _803(log)])
38106
38087
  },
38107
38088
  log.id
38108
38089
  ))
@@ -38203,7 +38184,7 @@ var Slider = React119.forwardRef(
38203
38184
  ({ className, value = [0], onValueChange, min = 0, max = 100, step = 1, ...props }, ref) => {
38204
38185
  const handleChange = (e) => {
38205
38186
  const newValue = [Number(e.target.value)];
38206
- _optionalChain([onValueChange, 'optionalCall', _805 => _805(newValue)]);
38187
+ _optionalChain([onValueChange, 'optionalCall', _804 => _804(newValue)]);
38207
38188
  };
38208
38189
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38209
38190
  "input",
@@ -38637,7 +38618,7 @@ function CursorPaginationSimple({
38637
38618
  {
38638
38619
  variant: "transparent",
38639
38620
  size: "icon",
38640
- onClick: () => _optionalChain([onPrevious, 'optionalCall', _806 => _806("")]),
38621
+ onClick: () => _optionalChain([onPrevious, 'optionalCall', _805 => _805("")]),
38641
38622
  disabled: !hasPreviousPage || loading,
38642
38623
  className: "h-8 w-8",
38643
38624
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" }),
@@ -38649,7 +38630,7 @@ function CursorPaginationSimple({
38649
38630
  {
38650
38631
  variant: "transparent",
38651
38632
  size: "icon",
38652
- onClick: () => _optionalChain([onNext, 'optionalCall', _807 => _807("")]),
38633
+ onClick: () => _optionalChain([onNext, 'optionalCall', _806 => _806("")]),
38653
38634
  disabled: !hasNextPage || loading,
38654
38635
  className: "h-8 w-8",
38655
38636
  rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
@@ -38669,8 +38650,8 @@ function TableEmptyState({ message: message2, icon, action, className }) {
38669
38650
  icon: _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, {}))),
38670
38651
  title: _nullishCoalesce(message2, () => ( "No results found")),
38671
38652
  description: message2 == null ? "Try adjusting your search or filters" : void 0,
38672
- buttonLabel: _optionalChain([action, 'optionalAccess', _808 => _808.label]),
38673
- onButtonClick: _optionalChain([action, 'optionalAccess', _809 => _809.onClick]),
38653
+ buttonLabel: _optionalChain([action, 'optionalAccess', _807 => _807.label]),
38654
+ onButtonClick: _optionalChain([action, 'optionalAccess', _808 => _808.onClick]),
38674
38655
  className: _chunkFIG2RKZFcjs.cn.call(void 0, "py-[var(--spacing-system-xxl)]", className)
38675
38656
  }
38676
38657
  );
@@ -38691,7 +38672,7 @@ function TableColumnFilterDropdown({
38691
38672
  placement = "bottom-start",
38692
38673
  dropdownClassName = "min-w-[240px]"
38693
38674
  }) {
38694
- const activeCount = _optionalChain([filters, 'optionalAccess', _810 => _810[columnKey], 'optionalAccess', _811 => _811.length]) || 0;
38675
+ const activeCount = _optionalChain([filters, 'optionalAccess', _809 => _809[columnKey], 'optionalAccess', _810 => _810.length]) || 0;
38695
38676
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38696
38677
  FiltersDropdown,
38697
38678
  {
@@ -38734,7 +38715,7 @@ function TableColumnFilterDropdown({
38734
38715
  delete newFilters[columnKey];
38735
38716
  onFilterChange(newFilters);
38736
38717
  },
38737
- currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _812 => _812[columnKey]]) || [] },
38718
+ currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _811 => _811[columnKey]]) || [] },
38738
38719
  placement,
38739
38720
  dropdownClassName
38740
38721
  }
@@ -38944,7 +38925,7 @@ function TableCardSkeleton({
38944
38925
  className,
38945
38926
  rowClassName
38946
38927
  }) {
38947
- const primaryKey = _optionalChain([(_nullishCoalesce(columns.find((c) => /flex-(1|\[)/.test(c.width || "")), () => ( columns[0]))), 'optionalAccess', _813 => _813.key]);
38928
+ const primaryKey = _optionalChain([(_nullishCoalesce(columns.find((c) => /flex-(1|\[)/.test(c.width || "")), () => ( columns[0]))), 'optionalAccess', _812 => _812.key]);
38948
38929
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
38949
38930
  "div",
38950
38931
  {
@@ -39037,7 +39018,7 @@ function TableRow({
39037
39018
  const keys = column.key.split(".");
39038
39019
  let value = item;
39039
39020
  for (const key of keys) {
39040
- value = _optionalChain([value, 'optionalAccess', _814 => _814[key]]);
39021
+ value = _optionalChain([value, 'optionalAccess', _813 => _813[key]]);
39041
39022
  }
39042
39023
  if (value === null || value === void 0) {
39043
39024
  return "-";
@@ -39126,7 +39107,7 @@ function useTableMotion(enabled) {
39126
39107
  // src/components/ui/table/table.tsx
39127
39108
 
39128
39109
  function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref) {
39129
- const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _815 => _815.length])) || Boolean(renderRowActions);
39110
+ const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _814 => _814.length])) || Boolean(renderRowActions);
39130
39111
  const result = [...columns];
39131
39112
  if (hasActions) {
39132
39113
  const actionsColumn = {
@@ -39222,7 +39203,7 @@ function Table({
39222
39203
  return rowKey(item);
39223
39204
  }
39224
39205
  const key = item[rowKey];
39225
- return _optionalChain([key, 'optionalAccess', _816 => _816.toString, 'call', _817 => _817()]) || index.toString();
39206
+ return _optionalChain([key, 'optionalAccess', _815 => _815.toString, 'call', _816 => _816()]) || index.toString();
39226
39207
  };
39227
39208
  const getRowClassName = (item, index) => {
39228
39209
  if (typeof rowClassName === "function") {
@@ -39256,23 +39237,23 @@ function Table({
39256
39237
  const allSelected = selectedRows.length > 0 && selectedRows.length === data.length;
39257
39238
  const someSelected = selectedRows.length > 0 && selectedRows.length < data.length;
39258
39239
  const sentinelRef = _react.useRef.call(void 0, null);
39259
- const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _818 => _818.onLoadMore]));
39260
- onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _819 => _819.onLoadMore]);
39240
+ const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _817 => _817.onLoadMore]));
39241
+ onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _818 => _818.onLoadMore]);
39261
39242
  _react.useEffect.call(void 0, () => {
39262
- if (!_optionalChain([infiniteScroll, 'optionalAccess', _820 => _820.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
39243
+ if (!_optionalChain([infiniteScroll, 'optionalAccess', _819 => _819.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
39263
39244
  const sentinel = sentinelRef.current;
39264
39245
  if (!sentinel) return;
39265
39246
  const observer = new IntersectionObserver(
39266
39247
  (entries) => {
39267
- if (_optionalChain([entries, 'access', _821 => _821[0], 'optionalAccess', _822 => _822.isIntersecting])) {
39268
- _optionalChain([onLoadMoreRef, 'access', _823 => _823.current, 'optionalCall', _824 => _824()]);
39248
+ if (_optionalChain([entries, 'access', _820 => _820[0], 'optionalAccess', _821 => _821.isIntersecting])) {
39249
+ _optionalChain([onLoadMoreRef, 'access', _822 => _822.current, 'optionalCall', _823 => _823()]);
39269
39250
  }
39270
39251
  },
39271
39252
  { rootMargin: "200px" }
39272
39253
  );
39273
39254
  observer.observe(sentinel);
39274
39255
  return () => observer.disconnect();
39275
- }, [_optionalChain([infiniteScroll, 'optionalAccess', _825 => _825.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _826 => _826.isFetchingNextPage])]);
39256
+ }, [_optionalChain([infiniteScroll, 'optionalAccess', _824 => _824.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _825 => _825.isFetchingNextPage])]);
39276
39257
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-1 w-full", containerClassName), children: [
39277
39258
  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: [
39278
39259
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary text-h6", children: [
@@ -39342,14 +39323,14 @@ function Table({
39342
39323
  selected: isRowSelected(item),
39343
39324
  onSelect: handleSelectRow,
39344
39325
  animateRowReorder,
39345
- motionDiv: _optionalChain([tableMotion, 'optionalAccess', _827 => _827.motionDiv])
39326
+ motionDiv: _optionalChain([tableMotion, 'optionalAccess', _826 => _826.motionDiv])
39346
39327
  },
39347
39328
  getRowKey(item, index)
39348
39329
  ));
39349
- const LayoutGroup = _optionalChain([tableMotion, 'optionalAccess', _828 => _828.LayoutGroup]);
39330
+ const LayoutGroup = _optionalChain([tableMotion, 'optionalAccess', _827 => _827.LayoutGroup]);
39350
39331
  return animateRowReorder && LayoutGroup ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, LayoutGroup, { children: rows }) : rows;
39351
39332
  })(),
39352
- _optionalChain([infiniteScroll, 'optionalAccess', _829 => _829.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39333
+ _optionalChain([infiniteScroll, 'optionalAccess', _828 => _828.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39353
39334
  TableCardSkeleton,
39354
39335
  {
39355
39336
  columns,
@@ -39358,7 +39339,7 @@ function Table({
39358
39339
  hasChevron: Boolean(rowHref)
39359
39340
  }
39360
39341
  ),
39361
- _optionalChain([infiniteScroll, 'optionalAccess', _830 => _830.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
39342
+ _optionalChain([infiniteScroll, 'optionalAccess', _829 => _829.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
39362
39343
  !infiniteScroll && Array.from({ length: Math.max(0, skeletonRows - data.length) }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
39363
39344
  "div",
39364
39345
  {
@@ -39716,7 +39697,7 @@ function QueryReportTable({
39716
39697
  );
39717
39698
  const handleExport = () => {
39718
39699
  exportToCSV(data, columns, exportFilename);
39719
- _optionalChain([onExport, 'optionalCall', _831 => _831()]);
39700
+ _optionalChain([onExport, 'optionalCall', _830 => _830()]);
39720
39701
  };
39721
39702
  const tableMinWidth = columns.length * (columnWidth + 16);
39722
39703
  const {
@@ -39889,7 +39870,7 @@ function DataTableColumnFilter({
39889
39870
  align = "left"
39890
39871
  }) {
39891
39872
  const currentValue = column.getFilterValue();
39892
- const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _832 => _832.length]), () => ( 0));
39873
+ const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _831 => _831.length]), () => ( 0));
39893
39874
  const sections = _react.useMemo.call(void 0,
39894
39875
  () => [
39895
39876
  {
@@ -39970,7 +39951,7 @@ function DataTableHeader({
39970
39951
  if (header.isPlaceholder) return false;
39971
39952
  if (isLgUp) return true;
39972
39953
  const meta = header.column.columnDef.meta;
39973
- return Boolean(_optionalChain([meta, 'optionalAccess', _833 => _833.filter])) || _optionalChain([meta, 'optionalAccess', _834 => _834.alwaysShowHeader]) === true;
39954
+ return Boolean(_optionalChain([meta, 'optionalAccess', _832 => _832.filter])) || _optionalChain([meta, 'optionalAccess', _833 => _833.alwaysShowHeader]) === true;
39974
39955
  });
39975
39956
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39976
39957
  "div",
@@ -40000,21 +39981,21 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
40000
39981
  if (header.isPlaceholder) return null;
40001
39982
  const column = header.column;
40002
39983
  const meta = column.columnDef.meta;
40003
- const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _835 => _835.filter]));
40004
- const keepOnTablet = hasFilter || _optionalChain([meta, 'optionalAccess', _836 => _836.alwaysShowHeader]) === true;
40005
- const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _837 => _837.align]), () => ( "left"));
40006
- const canSort = _optionalChain([meta, 'optionalAccess', _838 => _838.sortable]) === true;
40007
- const sortDir = _optionalChain([sort, 'optionalAccess', _839 => _839.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
39984
+ const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _834 => _834.filter]));
39985
+ const keepOnTablet = hasFilter || _optionalChain([meta, 'optionalAccess', _835 => _835.alwaysShowHeader]) === true;
39986
+ const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _836 => _836.align]), () => ( "left"));
39987
+ const canSort = _optionalChain([meta, 'optionalAccess', _837 => _837.sortable]) === true;
39988
+ const sortDir = _optionalChain([sort, 'optionalAccess', _838 => _838.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
40008
39989
  if (!isLgUp && !keepOnTablet) return null;
40009
39990
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
40010
39991
  "div",
40011
39992
  {
40012
39993
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
40013
39994
  "flex items-stretch",
40014
- isLgUp && (_optionalChain([meta, 'optionalAccess', _840 => _840.width]) || "flex-1 min-w-0"),
40015
- _optionalChain([meta, 'optionalAccess', _841 => _841.headerClassName]),
39995
+ isLgUp && (_optionalChain([meta, 'optionalAccess', _839 => _839.width]) || "flex-1 min-w-0"),
39996
+ _optionalChain([meta, 'optionalAccess', _840 => _840.headerClassName]),
40016
39997
  // Don't apply hide classes if column is filterable on tablet (keep filter accessible)
40017
- !(keepOnTablet && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _842 => _842.hideAt]))
39998
+ !(keepOnTablet && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _841 => _841.hideAt]))
40018
39999
  ),
40019
40000
  children: hasFilter ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
40020
40001
  DataTableColumnFilter,
@@ -40033,7 +40014,7 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
40033
40014
  isLgUp && alignJustify(align),
40034
40015
  canSort && "group cursor-pointer"
40035
40016
  ),
40036
- onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _843 => _843(column.id)]) : void 0,
40017
+ onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _842 => _842(column.id)]) : void 0,
40037
40018
  children: [
40038
40019
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
40039
40020
  canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
@@ -40098,7 +40079,7 @@ function DataTableSkeleton({
40098
40079
  }) {
40099
40080
  const table = useDataTableContext();
40100
40081
  const columns = table.getVisibleFlatColumns();
40101
- const firstColumnId = _optionalChain([columns, 'access', _844 => _844[0], 'optionalAccess', _845 => _845.id]);
40082
+ const firstColumnId = _optionalChain([columns, 'access', _843 => _843[0], 'optionalAccess', _844 => _844.id]);
40102
40083
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
40103
40084
  "div",
40104
40085
  {
@@ -40122,7 +40103,7 @@ function DataTableSkeleton({
40122
40103
  {
40123
40104
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
40124
40105
  "flex flex-col justify-center shrink-0",
40125
- _optionalChain([meta, 'optionalAccess', _846 => _846.width]) || "flex-1"
40106
+ _optionalChain([meta, 'optionalAccess', _845 => _845.width]) || "flex-1"
40126
40107
  ),
40127
40108
  children: [
40128
40109
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 bg-ods-bg-surface rounded-sm w-3/4 mb-[var(--spacing-system-xxs)]" }),
@@ -40172,7 +40153,7 @@ function DataTableRowImpl({
40172
40153
  const handleClick = _react.useCallback.call(void 0,
40173
40154
  (e) => {
40174
40155
  const target = e.target;
40175
- if (!_optionalChain([containerRef, 'access', _847 => _847.current, 'optionalAccess', _848 => _848.contains, 'call', _849 => _849(target)])) {
40156
+ if (!_optionalChain([containerRef, 'access', _846 => _846.current, 'optionalAccess', _847 => _847.contains, 'call', _848 => _848(target)])) {
40176
40157
  if (isLinkMode) e.preventDefault();
40177
40158
  return;
40178
40159
  }
@@ -40180,7 +40161,7 @@ function DataTableRowImpl({
40180
40161
  if (isLinkMode) e.preventDefault();
40181
40162
  return;
40182
40163
  }
40183
- _optionalChain([onClick, 'optionalCall', _850 => _850(row.original)]);
40164
+ _optionalChain([onClick, 'optionalCall', _849 => _849(row.original)]);
40184
40165
  },
40185
40166
  [onClick, row.original, isLinkMode]
40186
40167
  );
@@ -40205,10 +40186,10 @@ function DataTableRowImpl({
40205
40186
  {
40206
40187
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
40207
40188
  "flex flex-col overflow-hidden",
40208
- alignJustify(_optionalChain([meta, 'optionalAccess', _851 => _851.align])),
40209
- _optionalChain([meta, 'optionalAccess', _852 => _852.width]) || "flex-1 min-w-0",
40210
- _optionalChain([meta, 'optionalAccess', _853 => _853.cellClassName]),
40211
- getHideClasses2(_optionalChain([meta, 'optionalAccess', _854 => _854.hideAt]))
40189
+ alignJustify(_optionalChain([meta, 'optionalAccess', _850 => _850.align])),
40190
+ _optionalChain([meta, 'optionalAccess', _851 => _851.width]) || "flex-1 min-w-0",
40191
+ _optionalChain([meta, 'optionalAccess', _852 => _852.cellClassName]),
40192
+ getHideClasses2(_optionalChain([meta, 'optionalAccess', _853 => _853.hideAt]))
40212
40193
  ),
40213
40194
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CellContent, { children: _reacttable.flexRender.call(void 0, cell.column.columnDef.cell, cell.getContext()) })
40214
40195
  },
@@ -40288,7 +40269,7 @@ function DataTableBody({
40288
40269
  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: [
40289
40270
  rows.map((row, index) => {
40290
40271
  const item = row.original;
40291
- const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _855 => _855(item)]), () => ( void 0));
40272
+ const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _854 => _854(item)]), () => ( void 0));
40292
40273
  const cls = typeof rowClassName === "function" ? rowClassName(item, index) : rowClassName;
40293
40274
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
40294
40275
  DataTableRow,
@@ -40299,7 +40280,7 @@ function DataTableBody({
40299
40280
  compact,
40300
40281
  autoHeight,
40301
40282
  className: cls,
40302
- subRow: _optionalChain([renderSubRow, 'optionalCall', _856 => _856(item)])
40283
+ subRow: _optionalChain([renderSubRow, 'optionalCall', _855 => _855(item)])
40303
40284
  },
40304
40285
  row.id
40305
40286
  );
@@ -40354,7 +40335,7 @@ function DataTableInfiniteFooter({
40354
40335
  if (!sentinel) return;
40355
40336
  const observer = new IntersectionObserver(
40356
40337
  (entries) => {
40357
- if (_optionalChain([entries, 'access', _857 => _857[0], 'optionalAccess', _858 => _858.isIntersecting])) onLoadMoreRef.current();
40338
+ if (_optionalChain([entries, 'access', _856 => _856[0], 'optionalAccess', _857 => _857.isIntersecting])) onLoadMoreRef.current();
40358
40339
  },
40359
40340
  { rootMargin }
40360
40341
  );
@@ -40402,7 +40383,7 @@ function DataTableRowCount({
40402
40383
  const table = useDataTableContext();
40403
40384
  const count = _nullishCoalesce(totalCount, () => ( table.getRowModel().rows.length));
40404
40385
  if (hideWhenEmpty && count === 0) return null;
40405
- const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _859 => _859(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
40386
+ const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _858 => _858(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
40406
40387
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
40407
40388
  "span",
40408
40389
  {
@@ -40561,7 +40542,7 @@ function SearchInput({
40561
40542
  if (!showHiddenTags) return;
40562
40543
  const handleClick = (e) => {
40563
40544
  const target = e.target;
40564
- if (!_optionalChain([hiddenTagsRef, 'access', _860 => _860.current, 'optionalAccess', _861 => _861.contains, 'call', _862 => _862(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _863 => _863.current, 'optionalAccess', _864 => _864.contains, 'call', _865 => _865(target)])) {
40545
+ if (!_optionalChain([hiddenTagsRef, 'access', _859 => _859.current, 'optionalAccess', _860 => _860.contains, 'call', _861 => _861(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _862 => _862.current, 'optionalAccess', _863 => _863.contains, 'call', _864 => _864(target)])) {
40565
40546
  setShowHiddenTags(false);
40566
40547
  }
40567
40548
  };
@@ -40609,10 +40590,10 @@ function SearchInput({
40609
40590
  } else {
40610
40591
  setInternalValue("");
40611
40592
  }
40612
- _optionalChain([inputRef, 'access', _866 => _866.current, 'optionalAccess', _867 => _867.focus, 'call', _868 => _868()]);
40593
+ _optionalChain([inputRef, 'access', _865 => _865.current, 'optionalAccess', _866 => _866.focus, 'call', _867 => _867()]);
40613
40594
  };
40614
40595
  const handleResultClick = (result, e) => {
40615
- _optionalChain([onResultSelect, 'optionalCall', _869 => _869(
40596
+ _optionalChain([onResultSelect, 'optionalCall', _868 => _868(
40616
40597
  result,
40617
40598
  e ? {
40618
40599
  metaKey: e.metaKey,
@@ -40644,7 +40625,7 @@ function SearchInput({
40644
40625
  if (highlightedIndex >= 0 && flatResults[highlightedIndex]) {
40645
40626
  handleResultClick(flatResults[highlightedIndex]);
40646
40627
  } else {
40647
- _optionalChain([onSubmit, 'optionalCall', _870 => _870(currentValue)]);
40628
+ _optionalChain([onSubmit, 'optionalCall', _869 => _869(currentValue)]);
40648
40629
  }
40649
40630
  break;
40650
40631
  case "Escape":
@@ -40722,7 +40703,7 @@ function SearchInput({
40722
40703
  dropdownVisible && "!border-ods-accent"
40723
40704
  ),
40724
40705
  onClick: () => {
40725
- _optionalChain([inputRef, 'access', _871 => _871.current, 'optionalAccess', _872 => _872.focus, 'call', _873 => _873()]);
40706
+ _optionalChain([inputRef, 'access', _870 => _870.current, 'optionalAccess', _871 => _871.focus, 'call', _872 => _872()]);
40726
40707
  setIsOpen(true);
40727
40708
  },
40728
40709
  children: [
@@ -40806,10 +40787,10 @@ function SearchInput({
40806
40787
  align: "start",
40807
40788
  onOpenAutoFocus: (e) => {
40808
40789
  e.preventDefault();
40809
- _optionalChain([inputRef, 'access', _874 => _874.current, 'optionalAccess', _875 => _875.focus, 'call', _876 => _876()]);
40790
+ _optionalChain([inputRef, 'access', _873 => _873.current, 'optionalAccess', _874 => _874.focus, 'call', _875 => _875()]);
40810
40791
  },
40811
40792
  onInteractOutside: (e) => {
40812
- if (_optionalChain([containerRef, 'access', _877 => _877.current, 'optionalAccess', _878 => _878.contains, 'call', _879 => _879(e.target)])) {
40793
+ if (_optionalChain([containerRef, 'access', _876 => _876.current, 'optionalAccess', _877 => _877.contains, 'call', _878 => _878(e.target)])) {
40813
40794
  e.preventDefault();
40814
40795
  }
40815
40796
  },
@@ -40826,10 +40807,10 @@ function SearchInput({
40826
40807
  ref: hiddenTagsPopupRef,
40827
40808
  items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
40828
40809
  style: {
40829
- left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _880 => _880.current, 'optionalAccess', _881 => _881.getBoundingClientRect, 'call', _882 => _882(), 'access', _883 => _883.left]), () => ( 0))) : 0
40810
+ left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _879 => _879.current, 'optionalAccess', _880 => _880.getBoundingClientRect, 'call', _881 => _881(), 'access', _882 => _882.left]), () => ( 0))) : 0
40830
40811
  },
40831
40812
  onRemove: (value2) => {
40832
- _optionalChain([onFilterRemove, 'optionalCall', _884 => _884(value2)]);
40813
+ _optionalChain([onFilterRemove, 'optionalCall', _883 => _883(value2)]);
40833
40814
  if (hiddenCount <= 1) setShowHiddenTags(false);
40834
40815
  }
40835
40816
  }
@@ -40880,7 +40861,7 @@ function FilterListItem({
40880
40861
  }) {
40881
40862
  const handleToggle = () => {
40882
40863
  if (disabled) return;
40883
- _optionalChain([onToggle, 'optionalCall', _885 => _885(!selected)]);
40864
+ _optionalChain([onToggle, 'optionalCall', _884 => _884(!selected)]);
40884
40865
  };
40885
40866
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
40886
40867
  "div",
@@ -40927,7 +40908,7 @@ function FilterListItem({
40927
40908
  CheckboxPrimitive4.Root,
40928
40909
  {
40929
40910
  checked: selected,
40930
- onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _886 => _886(c === true)]),
40911
+ onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _885 => _885(c === true)]),
40931
40912
  onClick: (e) => e.stopPropagation(),
40932
40913
  disabled,
40933
40914
  "aria-label": title,
@@ -41026,7 +41007,7 @@ function TagSearchInput({
41026
41007
  if (!showHiddenTags) return;
41027
41008
  const handleClick = (e) => {
41028
41009
  const target = e.target;
41029
- if (!_optionalChain([hiddenTagsRef, 'access', _887 => _887.current, 'optionalAccess', _888 => _888.contains, 'call', _889 => _889(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _890 => _890.current, 'optionalAccess', _891 => _891.contains, 'call', _892 => _892(target)])) {
41010
+ if (!_optionalChain([hiddenTagsRef, 'access', _886 => _886.current, 'optionalAccess', _887 => _887.contains, 'call', _888 => _888(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _889 => _889.current, 'optionalAccess', _890 => _890.contains, 'call', _891 => _891(target)])) {
41030
41011
  setShowHiddenTags(false);
41031
41012
  }
41032
41013
  };
@@ -41042,13 +41023,13 @@ function TagSearchInput({
41042
41023
  e.preventDefault();
41043
41024
  onSubmit(searchValue);
41044
41025
  }
41045
- _optionalChain([onKeyDown, 'optionalCall', _893 => _893(e)]);
41026
+ _optionalChain([onKeyDown, 'optionalCall', _892 => _892(e)]);
41046
41027
  };
41047
41028
  const handleClearAll = (e) => {
41048
41029
  e.stopPropagation();
41049
41030
  e.preventDefault();
41050
- _optionalChain([onClearAll, 'optionalCall', _894 => _894()]);
41051
- _optionalChain([inputRef, 'access', _895 => _895.current, 'optionalAccess', _896 => _896.focus, 'call', _897 => _897()]);
41031
+ _optionalChain([onClearAll, 'optionalCall', _893 => _893()]);
41032
+ _optionalChain([inputRef, 'access', _894 => _894.current, 'optionalAccess', _895 => _895.focus, 'call', _896 => _896()]);
41052
41033
  };
41053
41034
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: wrapperRef, className: "relative", children: [
41054
41035
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -41065,7 +41046,7 @@ function TagSearchInput({
41065
41046
  className
41066
41047
  ),
41067
41048
  onClick: () => {
41068
- if (!disabled) _optionalChain([inputRef, 'access', _898 => _898.current, 'optionalAccess', _899 => _899.focus, 'call', _900 => _900()]);
41049
+ if (!disabled) _optionalChain([inputRef, 'access', _897 => _897.current, 'optionalAccess', _898 => _898.focus, 'call', _899 => _899()]);
41069
41050
  },
41070
41051
  children: [
41071
41052
  /* @__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" }) }),
@@ -41137,7 +41118,7 @@ function TagSearchInput({
41137
41118
  items: hiddenTags,
41138
41119
  disabled,
41139
41120
  style: {
41140
- left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _901 => _901.current, 'optionalAccess', _902 => _902.getBoundingClientRect, 'call', _903 => _903(), 'access', _904 => _904.left]), () => ( 0))) : 0
41121
+ left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _900 => _900.current, 'optionalAccess', _901 => _901.getBoundingClientRect, 'call', _902 => _902(), 'access', _903 => _903.left]), () => ( 0))) : 0
41141
41122
  },
41142
41123
  onRemove: (value) => {
41143
41124
  onTagRemove(value);
@@ -41238,7 +41219,7 @@ function MarkdownEditor({
41238
41219
  const [defaultExtraCommands, setDefaultExtraCommands] = _react.useState.call(void 0, []);
41239
41220
  _react.useEffect.call(void 0, () => {
41240
41221
  Promise.resolve().then(() => _interopRequireWildcard(require("@uiw/react-md-editor"))).then((mod) => {
41241
- if (_optionalChain([mod, 'access', _905 => _905.commands, 'optionalAccess', _906 => _906.getExtraCommands])) {
41222
+ if (_optionalChain([mod, 'access', _904 => _904.commands, 'optionalAccess', _905 => _905.getExtraCommands])) {
41242
41223
  setDefaultExtraCommands(mod.commands.getExtraCommands());
41243
41224
  }
41244
41225
  });
@@ -41272,7 +41253,7 @@ function MarkdownEditor({
41272
41253
  const isImage = file.type.startsWith("image/");
41273
41254
  const markdown = isImage ? `![${file.name}](${url})` : `[${file.name}](${url})`;
41274
41255
  insertTextAtCursor(markdown);
41275
- _optionalChain([onFileUploaded, 'optionalCall', _907 => _907(url, file.name)]);
41256
+ _optionalChain([onFileUploaded, 'optionalCall', _906 => _906(url, file.name)]);
41276
41257
  } catch (error) {
41277
41258
  console.error("File upload failed:", error);
41278
41259
  setUploadProgress("Upload failed. Please try again.");
@@ -41285,7 +41266,7 @@ function MarkdownEditor({
41285
41266
  );
41286
41267
  const handleFileInputChange = _react.useCallback.call(void 0,
41287
41268
  (e) => {
41288
- const file = _optionalChain([e, 'access', _908 => _908.target, 'access', _909 => _909.files, 'optionalAccess', _910 => _910[0]]);
41269
+ const file = _optionalChain([e, 'access', _907 => _907.target, 'access', _908 => _908.files, 'optionalAccess', _909 => _909[0]]);
41289
41270
  if (file) {
41290
41271
  handleFileUpload(file);
41291
41272
  e.target.value = "";
@@ -41296,7 +41277,7 @@ function MarkdownEditor({
41296
41277
  const handlePaste = _react.useCallback.call(void 0,
41297
41278
  (e) => {
41298
41279
  if (!onUploadFile) return;
41299
- const items = _optionalChain([e, 'access', _911 => _911.clipboardData, 'optionalAccess', _912 => _912.items]);
41280
+ const items = _optionalChain([e, 'access', _910 => _910.clipboardData, 'optionalAccess', _911 => _911.items]);
41300
41281
  if (!items) return;
41301
41282
  for (const item of items) {
41302
41283
  if (item.type.startsWith("image/")) {
@@ -41321,7 +41302,7 @@ function MarkdownEditor({
41321
41302
  buttonProps: { "aria-label": "Upload file", title: "Upload file" },
41322
41303
  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" }),
41323
41304
  execute: () => {
41324
- _optionalChain([fileInputRef, 'access', _913 => _913.current, 'optionalAccess', _914 => _914.click, 'call', _915 => _915()]);
41305
+ _optionalChain([fileInputRef, 'access', _912 => _912.current, 'optionalAccess', _913 => _913.click, 'call', _914 => _914()]);
41325
41306
  }
41326
41307
  } : null;
41327
41308
  const extraCommands = uploadCommand ? [...defaultExtraCommands, uploadCommand] : defaultExtraCommands;
@@ -41333,7 +41314,7 @@ function MarkdownEditor({
41333
41314
  const EDGE_ZONE = 60;
41334
41315
  const MAX_SCROLL_SPEED = 15;
41335
41316
  const findScrollParent = _react.useCallback.call(void 0, (el) => {
41336
- let node = _optionalChain([el, 'optionalAccess', _916 => _916.parentElement]);
41317
+ let node = _optionalChain([el, 'optionalAccess', _915 => _915.parentElement]);
41337
41318
  while (node && node !== document.documentElement) {
41338
41319
  const { overflowY } = window.getComputedStyle(node);
41339
41320
  if ((overflowY === "auto" || overflowY === "scroll") && node.scrollHeight > node.clientHeight) {
@@ -41476,7 +41457,7 @@ function matchesAccept(file, accept) {
41476
41457
  });
41477
41458
  }
41478
41459
  function dragHasFiles(e) {
41479
- const types = _optionalChain([e, 'access', _917 => _917.dataTransfer, 'optionalAccess', _918 => _918.types]);
41460
+ const types = _optionalChain([e, 'access', _916 => _916.dataTransfer, 'optionalAccess', _917 => _917.types]);
41480
41461
  if (!types) return false;
41481
41462
  for (let i = 0; i < types.length; i++) {
41482
41463
  if (types[i] === "Files") return true;
@@ -41572,7 +41553,7 @@ function FileUpload({
41572
41553
  e.stopPropagation();
41573
41554
  setDragActive(false);
41574
41555
  if (disabled) return;
41575
- if (_optionalChain([e, 'access', _919 => _919.dataTransfer, 'access', _920 => _920.files, 'optionalAccess', _921 => _921.length])) {
41556
+ if (_optionalChain([e, 'access', _918 => _918.dataTransfer, 'access', _919 => _919.files, 'optionalAccess', _920 => _920.length])) {
41576
41557
  handleFiles(e.dataTransfer.files);
41577
41558
  }
41578
41559
  };
@@ -41600,7 +41581,7 @@ function FileUpload({
41600
41581
  e.preventDefault();
41601
41582
  dragCounter = 0;
41602
41583
  setDragActive(false);
41603
- if (_optionalChain([e, 'access', _922 => _922.dataTransfer, 'optionalAccess', _923 => _923.files, 'optionalAccess', _924 => _924.length])) {
41584
+ if (_optionalChain([e, 'access', _921 => _921.dataTransfer, 'optionalAccess', _922 => _922.files, 'optionalAccess', _923 => _923.length])) {
41604
41585
  handleFilesRef.current(e.dataTransfer.files);
41605
41586
  }
41606
41587
  };
@@ -41622,7 +41603,7 @@ function FileUpload({
41622
41603
  };
41623
41604
  }, [acceptWindowDrops, disabled]);
41624
41605
  const handleFileSelect = (e) => {
41625
- if (_optionalChain([e, 'access', _925 => _925.target, 'access', _926 => _926.files, 'optionalAccess', _927 => _927.length])) {
41606
+ if (_optionalChain([e, 'access', _924 => _924.target, 'access', _925 => _925.files, 'optionalAccess', _926 => _926.length])) {
41626
41607
  handleFiles(e.target.files);
41627
41608
  }
41628
41609
  };
@@ -41639,7 +41620,7 @@ function FileUpload({
41639
41620
  };
41640
41621
  const openDialog = async () => {
41641
41622
  if (disabled) return;
41642
- _optionalChain([fileInputRef, 'access', _928 => _928.current, 'optionalAccess', _929 => _929.click, 'call', _930 => _930()]);
41623
+ _optionalChain([fileInputRef, 'access', _927 => _927.current, 'optionalAccess', _928 => _928.click, 'call', _929 => _929()]);
41643
41624
  };
41644
41625
  const displayError = error || validationError || void 0;
41645
41626
  const hasFiles = isManaged ? managedFiles.length > 0 : files.length > 0;
@@ -41701,7 +41682,7 @@ function FileUpload({
41701
41682
  "button",
41702
41683
  {
41703
41684
  type: "button",
41704
- onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _931 => _931(entry.id)]),
41685
+ onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _930 => _930(entry.id)]),
41705
41686
  className: "shrink-0 text-ods-error hover:opacity-80 transition-opacity",
41706
41687
  "aria-label": `Remove ${entry.fileName}`,
41707
41688
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.TrashIcon, { className: "size-6" })
@@ -41832,7 +41813,7 @@ function ImageUploader({
41832
41813
  onChange(file);
41833
41814
  };
41834
41815
  const handleFileSelect = (e) => {
41835
- validateAndEmit(_optionalChain([e, 'access', _932 => _932.target, 'access', _933 => _933.files, 'optionalAccess', _934 => _934[0]]));
41816
+ validateAndEmit(_optionalChain([e, 'access', _931 => _931.target, 'access', _932 => _932.files, 'optionalAccess', _933 => _933[0]]));
41836
41817
  if (inputRef.current) inputRef.current.value = "";
41837
41818
  };
41838
41819
  const handleDrag = (e) => {
@@ -41847,11 +41828,11 @@ function ImageUploader({
41847
41828
  e.stopPropagation();
41848
41829
  setDragActive(false);
41849
41830
  if (!interactive) return;
41850
- validateAndEmit(_optionalChain([e, 'access', _935 => _935.dataTransfer, 'access', _936 => _936.files, 'optionalAccess', _937 => _937[0]]));
41831
+ validateAndEmit(_optionalChain([e, 'access', _934 => _934.dataTransfer, 'access', _935 => _935.files, 'optionalAccess', _936 => _936[0]]));
41851
41832
  };
41852
41833
  const openDialog = () => {
41853
41834
  if (!interactive) return;
41854
- _optionalChain([inputRef, 'access', _938 => _938.current, 'optionalAccess', _939 => _939.click, 'call', _940 => _940()]);
41835
+ _optionalChain([inputRef, 'access', _937 => _937.current, 'optionalAccess', _938 => _938.click, 'call', _939 => _939()]);
41855
41836
  };
41856
41837
  const handleRootKeyDown = (e) => {
41857
41838
  if (hasImage || !interactive) return;
@@ -42042,8 +42023,8 @@ function ColorPresetSelect({
42042
42023
  }) {
42043
42024
  const selectedPreset = presets.find((p) => p.key === presetKey);
42044
42025
  const isCustom = !selectedPreset;
42045
- const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _941 => _941.label]), () => ( "Custom"));
42046
- const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _942 => _942.color]), () => ( value));
42026
+ const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _940 => _940.label]), () => ( "Custom"));
42027
+ const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _941 => _941.color]), () => ( value));
42047
42028
  const groups = [
42048
42029
  {
42049
42030
  items: [
@@ -42333,7 +42314,7 @@ function TicketStatusConfigRow({
42333
42314
  _chunkPYR4LVAFcjs.Input,
42334
42315
  {
42335
42316
  value: name,
42336
- onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _943 => _943(e.target.value)]),
42317
+ onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _942 => _942(e.target.value)]),
42337
42318
  disabled: isSystem,
42338
42319
  readOnly: isSystem,
42339
42320
  "aria-label": "Status name",
@@ -42706,14 +42687,14 @@ function TicketInfoSection({
42706
42687
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
42707
42688
  SquareAvatar,
42708
42689
  {
42709
- src: _optionalChain([organization, 'optionalAccess', _944 => _944.imageSrc]),
42710
- alt: _optionalChain([organization, 'optionalAccess', _945 => _945.name]),
42711
- fallback: _optionalChain([organization, 'optionalAccess', _946 => _946.name]) || "Org",
42690
+ src: _optionalChain([organization, 'optionalAccess', _943 => _943.imageSrc]),
42691
+ alt: _optionalChain([organization, 'optionalAccess', _944 => _944.name]),
42692
+ fallback: _optionalChain([organization, 'optionalAccess', _945 => _945.name]) || "Org",
42712
42693
  size: "md",
42713
42694
  className: "shrink-0"
42714
42695
  }
42715
42696
  ),
42716
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _947 => _947.name]) || "Unassigned", label: "Organization" })
42697
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _946 => _946.name]) || "Unassigned", label: "Organization" })
42717
42698
  ] }),
42718
42699
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: assigned ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
42719
42700
  AssigneeDropdown,
@@ -42734,10 +42715,10 @@ function TicketInfoSection({
42734
42715
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
42735
42716
  InfoCell2,
42736
42717
  {
42737
- value: _optionalChain([device, 'optionalAccess', _948 => _948.name]) || "Unassigned",
42718
+ value: _optionalChain([device, 'optionalAccess', _947 => _947.name]) || "Unassigned",
42738
42719
  label: "Device",
42739
- icon: _optionalChain([device, 'optionalAccess', _949 => _949.icon]),
42740
- onClick: _optionalChain([device, 'optionalAccess', _950 => _950.onClick])
42720
+ icon: _optionalChain([device, 'optionalAccess', _948 => _948.icon]),
42721
+ onClick: _optionalChain([device, 'optionalAccess', _949 => _949.onClick])
42741
42722
  }
42742
42723
  ),
42743
42724
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4 min-w-0", children: [
@@ -43067,7 +43048,7 @@ function RoadmapCard({
43067
43048
  const compactHref = safeHref(_nullishCoalesce(href, () => ( null)));
43068
43049
  const hasVotes = (_nullishCoalesce(item.upvotes, () => ( 0))) > 0 || (_nullishCoalesce(item.downvotes, () => ( 0))) > 0;
43069
43050
  const hasFigma = !!item.figmaUrl;
43070
- const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _951 => _951.screenshots, 'optionalAccess', _952 => _952.length]), () => ( 0))) > 0;
43051
+ const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _950 => _950.screenshots, 'optionalAccess', _951 => _951.length]), () => ( 0))) > 0;
43071
43052
  const typeLabel = getTaskTypeLabel(item.customItemId);
43072
43053
  const useTypeIcon = cardType === "internal_task" || !iconSrc && item.customItemId != null;
43073
43054
  const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
@@ -43086,7 +43067,7 @@ function RoadmapCard({
43086
43067
  unoptimized: true,
43087
43068
  className: "h-8 w-8 object-contain"
43088
43069
  }
43089
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h6 uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _953 => _953.title, 'optionalAccess', _954 => _954.substring, 'call', _955 => _955(0, 2)]) || "??" })
43070
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h6 uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _952 => _952.title, 'optionalAccess', _953 => _953.substring, 'call', _954 => _954(0, 2)]) || "??" })
43090
43071
  }
43091
43072
  ),
43092
43073
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
@@ -43161,7 +43142,7 @@ function RoadmapCard({
43161
43142
  unoptimized: true,
43162
43143
  className: "object-contain p-1"
43163
43144
  }
43164
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _956 => _956.title, 'optionalAccess', _957 => _957.substring, 'call', _958 => _958(0, 2)]) || "??" }) }),
43145
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _955 => _955.title, 'optionalAccess', _956 => _956.substring, 'call', _957 => _957(0, 2)]) || "??" }) }),
43165
43146
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 min-w-0 flex flex-col", children: [
43166
43147
  /* @__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 flex-1 line-clamp-2", children: item.title }) }),
43167
43148
  /* @__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 truncate", children: [
@@ -43671,7 +43652,7 @@ function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
43671
43652
  ] }) : null,
43672
43653
  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-h6 text-ods-text-secondary", children: item.preview }) }) : null
43673
43654
  ] }),
43674
- _optionalChain([anchorProps, 'optionalAccess', _959 => _959.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
43655
+ _optionalChain([anchorProps, 'optionalAccess', _958 => _958.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
43675
43656
  ] });
43676
43657
  if (!anchorProps) {
43677
43658
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
@@ -43741,7 +43722,7 @@ function getDefaultOptions() {
43741
43722
  // node_modules/date-fns/startOfWeek.mjs
43742
43723
  function startOfWeek(date, options) {
43743
43724
  const defaultOptions2 = getDefaultOptions();
43744
- const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _960 => _960.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _961 => _961.locale, 'optionalAccess', _962 => _962.options, 'optionalAccess', _963 => _963.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _964 => _964.locale, 'optionalAccess', _965 => _965.options, 'optionalAccess', _966 => _966.weekStartsOn]))), () => ( 0));
43725
+ const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _959 => _959.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _960 => _960.locale, 'optionalAccess', _961 => _961.options, 'optionalAccess', _962 => _962.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _963 => _963.locale, 'optionalAccess', _964 => _964.options, 'optionalAccess', _965 => _965.weekStartsOn]))), () => ( 0));
43745
43726
  const _date = toDate2(date);
43746
43727
  const day = _date.getDay();
43747
43728
  const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
@@ -43916,7 +43897,7 @@ var formatDistance = (token, count, options) => {
43916
43897
  } else {
43917
43898
  result = tokenValue.other.replace("{{count}}", count.toString());
43918
43899
  }
43919
- if (_optionalChain([options, 'optionalAccess', _967 => _967.addSuffix])) {
43900
+ if (_optionalChain([options, 'optionalAccess', _966 => _966.addSuffix])) {
43920
43901
  if (options.comparison && options.comparison > 0) {
43921
43902
  return "in " + result;
43922
43903
  } else {
@@ -43983,15 +43964,15 @@ var formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale
43983
43964
  // node_modules/date-fns/locale/_lib/buildLocalizeFn.mjs
43984
43965
  function buildLocalizeFn(args) {
43985
43966
  return (value, options) => {
43986
- const context = _optionalChain([options, 'optionalAccess', _968 => _968.context]) ? String(options.context) : "standalone";
43967
+ const context = _optionalChain([options, 'optionalAccess', _967 => _967.context]) ? String(options.context) : "standalone";
43987
43968
  let valuesArray;
43988
43969
  if (context === "formatting" && args.formattingValues) {
43989
43970
  const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
43990
- const width = _optionalChain([options, 'optionalAccess', _969 => _969.width]) ? String(options.width) : defaultWidth;
43971
+ const width = _optionalChain([options, 'optionalAccess', _968 => _968.width]) ? String(options.width) : defaultWidth;
43991
43972
  valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
43992
43973
  } else {
43993
43974
  const defaultWidth = args.defaultWidth;
43994
- const width = _optionalChain([options, 'optionalAccess', _970 => _970.width]) ? String(options.width) : args.defaultWidth;
43975
+ const width = _optionalChain([options, 'optionalAccess', _969 => _969.width]) ? String(options.width) : args.defaultWidth;
43995
43976
  valuesArray = args.values[width] || args.values[defaultWidth];
43996
43977
  }
43997
43978
  const index = args.argumentCallback ? args.argumentCallback(value) : value;
@@ -44371,7 +44352,7 @@ function getWeekYear(date, options) {
44371
44352
  const _date = toDate2(date);
44372
44353
  const year = _date.getFullYear();
44373
44354
  const defaultOptions2 = getDefaultOptions();
44374
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _971 => _971.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _972 => _972.locale, 'optionalAccess', _973 => _973.options, 'optionalAccess', _974 => _974.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _975 => _975.locale, 'optionalAccess', _976 => _976.options, 'optionalAccess', _977 => _977.firstWeekContainsDate]))), () => ( 1));
44355
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _970 => _970.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _971 => _971.locale, 'optionalAccess', _972 => _972.options, 'optionalAccess', _973 => _973.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _974 => _974.locale, 'optionalAccess', _975 => _975.options, 'optionalAccess', _976 => _976.firstWeekContainsDate]))), () => ( 1));
44375
44356
  const firstWeekOfNextYear = constructFrom(date, 0);
44376
44357
  firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate);
44377
44358
  firstWeekOfNextYear.setHours(0, 0, 0, 0);
@@ -44392,7 +44373,7 @@ function getWeekYear(date, options) {
44392
44373
  // node_modules/date-fns/startOfWeekYear.mjs
44393
44374
  function startOfWeekYear(date, options) {
44394
44375
  const defaultOptions2 = getDefaultOptions();
44395
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _978 => _978.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _979 => _979.locale, 'optionalAccess', _980 => _980.options, 'optionalAccess', _981 => _981.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _982 => _982.locale, 'optionalAccess', _983 => _983.options, 'optionalAccess', _984 => _984.firstWeekContainsDate]))), () => ( 1));
44376
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _977 => _977.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _978 => _978.locale, 'optionalAccess', _979 => _979.options, 'optionalAccess', _980 => _980.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _981 => _981.locale, 'optionalAccess', _982 => _982.options, 'optionalAccess', _983 => _983.firstWeekContainsDate]))), () => ( 1));
44396
44377
  const year = getWeekYear(date, options);
44397
44378
  const firstWeek = constructFrom(date, 0);
44398
44379
  firstWeek.setFullYear(year, 0, firstWeekContainsDate);
@@ -45207,9 +45188,9 @@ var doubleQuoteRegExp = /''/g;
45207
45188
  var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
45208
45189
  function format2(date, formatStr, options) {
45209
45190
  const defaultOptions2 = getDefaultOptions();
45210
- const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _985 => _985.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
45211
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _986 => _986.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _987 => _987.locale, 'optionalAccess', _988 => _988.options, 'optionalAccess', _989 => _989.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _990 => _990.locale, 'optionalAccess', _991 => _991.options, 'optionalAccess', _992 => _992.firstWeekContainsDate]))), () => ( 1));
45212
- const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _993 => _993.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _994 => _994.locale, 'optionalAccess', _995 => _995.options, 'optionalAccess', _996 => _996.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _997 => _997.locale, 'optionalAccess', _998 => _998.options, 'optionalAccess', _999 => _999.weekStartsOn]))), () => ( 0));
45191
+ const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _984 => _984.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
45192
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _985 => _985.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _986 => _986.locale, 'optionalAccess', _987 => _987.options, 'optionalAccess', _988 => _988.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _989 => _989.locale, 'optionalAccess', _990 => _990.options, 'optionalAccess', _991 => _991.firstWeekContainsDate]))), () => ( 1));
45193
+ const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _992 => _992.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _993 => _993.locale, 'optionalAccess', _994 => _994.options, 'optionalAccess', _995 => _995.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _996 => _996.locale, 'optionalAccess', _997 => _997.options, 'optionalAccess', _998 => _998.weekStartsOn]))), () => ( 0));
45213
45194
  const originalDate = toDate2(date);
45214
45195
  if (!isValid(originalDate)) {
45215
45196
  throw new RangeError("Invalid time value");
@@ -45250,7 +45231,7 @@ function format2(date, formatStr, options) {
45250
45231
  return parts.map((part) => {
45251
45232
  if (!part.isToken) return part.value;
45252
45233
  const token = part.value;
45253
- if (!_optionalChain([options, 'optionalAccess', _1000 => _1000.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _1001 => _1001.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
45234
+ if (!_optionalChain([options, 'optionalAccess', _999 => _999.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _1000 => _1000.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
45254
45235
  warnOrThrowProtectedError(token, formatStr, String(date));
45255
45236
  }
45256
45237
  const formatter = formatters[token[0]];
@@ -45456,7 +45437,7 @@ function ProgramCard({
45456
45437
  const itemDate2 = compactDate;
45457
45438
  const compactCover = coverImage || placeholderUrl || null;
45458
45439
  const typeMeta = compactTypeMeta();
45459
- const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _1002 => _1002.labels, 'optionalAccess', _1003 => _1003.singular])].filter(
45440
+ const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _1001 => _1001.labels, 'optionalAccess', _1002 => _1002.singular])].filter(
45460
45441
  (s) => typeof s === "string" && s.length > 0
45461
45442
  );
45462
45443
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "a", { href, target, rel, className: _chunkFIG2RKZFcjs.cn.call(void 0, COMPACT_CARD_OUTER, className), children: [
@@ -45613,7 +45594,7 @@ function ProgramCard({
45613
45594
 
45614
45595
 
45615
45596
  function CampaignCardAdmin({ campaign, className, anchorProps }) {
45616
- const goalsCount = _optionalChain([campaign, 'access', _1004 => _1004.goals, 'optionalAccess', _1005 => _1005.length]) || 0;
45597
+ const goalsCount = _optionalChain([campaign, 'access', _1003 => _1003.goals, 'optionalAccess', _1004 => _1004.length]) || 0;
45617
45598
  const innerChildren = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
45618
45599
  /* @__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" }) }),
45619
45600
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
@@ -45775,7 +45756,7 @@ function resolveSourceRowCTA(row, ctx = {}) {
45775
45756
  if (row.path && shouldFallbackToPathNav(row) && !row.externalUrl) {
45776
45757
  const safePath = sanitizePath(row.path);
45777
45758
  if (safePath) {
45778
- const docTarget = row.documentType ? _optionalChain([ctx, 'access', _1006 => _1006.docPlatformTargets, 'optionalAccess', _1007 => _1007[row.documentType]]) : void 0;
45759
+ const docTarget = row.documentType ? _optionalChain([ctx, 'access', _1005 => _1005.docPlatformTargets, 'optionalAccess', _1006 => _1006[row.documentType]]) : void 0;
45779
45760
  if (docTarget) {
45780
45761
  const seg = docTarget.basePath.split("/").filter(Boolean).join("/");
45781
45762
  const base = `${_chunkFIG2RKZFcjs.getBaseUrl.call(void 0, docTarget.platform)}${seg ? `/${seg}` : ""}/`;
@@ -45990,8 +45971,8 @@ function cardMenuGroups(href, discuss, openDetails) {
45990
45971
  if (href) {
45991
45972
  items.push({
45992
45973
  id: "open-details",
45993
- label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _1008 => _1008.label]), () => ( "Open Details")),
45994
- icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _1009 => _1009.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.EyeIcon, { size: 20 }))),
45974
+ label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _1007 => _1007.label]), () => ( "Open Details")),
45975
+ icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _1008 => _1008.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.EyeIcon, { size: 20 }))),
45995
45976
  // Main row → open the entity (same tab, soft Link nav).
45996
45977
  href,
45997
45978
  // Trailing 40px ↗ side-button → open in a new tab.
@@ -46021,8 +46002,8 @@ function HubspotTicketChatCard({
46021
46002
  isNewTab,
46022
46003
  discuss
46023
46004
  }) {
46024
- const status = typeof _optionalChain([chatRef, 'access', _1010 => _1010.metadata, 'optionalAccess', _1011 => _1011.status]) === "string" ? chatRef.metadata.status : void 0;
46025
- const statusLabel = typeof _optionalChain([chatRef, 'access', _1012 => _1012.metadata, 'optionalAccess', _1013 => _1013.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
46005
+ const status = typeof _optionalChain([chatRef, 'access', _1009 => _1009.metadata, 'optionalAccess', _1010 => _1010.status]) === "string" ? chatRef.metadata.status : void 0;
46006
+ const statusLabel = typeof _optionalChain([chatRef, 'access', _1011 => _1011.metadata, 'optionalAccess', _1012 => _1012.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
46026
46007
  const statusText = _nullishCoalesce(statusLabel, () => ( formatStatusToken(status)));
46027
46008
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46028
46009
  MingoInfoCard,
@@ -46045,7 +46026,7 @@ function FaqChatCard({
46045
46026
  isNewTab,
46046
46027
  discuss
46047
46028
  }) {
46048
- const section = typeof _optionalChain([chatRef, 'access', _1014 => _1014.metadata, 'optionalAccess', _1015 => _1015.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
46029
+ const section = typeof _optionalChain([chatRef, 'access', _1013 => _1013.metadata, 'optionalAccess', _1014 => _1014.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
46049
46030
  const statusLabel = section && section.length > 0 ? section : "FAQ";
46050
46031
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46051
46032
  MingoInfoCard,
@@ -46065,7 +46046,7 @@ function SlackChatCard({
46065
46046
  isNewTab,
46066
46047
  discuss
46067
46048
  }) {
46068
- const channelName = typeof _optionalChain([chatRef, 'access', _1016 => _1016.metadata, 'optionalAccess', _1017 => _1017.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
46049
+ const channelName = typeof _optionalChain([chatRef, 'access', _1015 => _1015.metadata, 'optionalAccess', _1016 => _1016.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
46069
46050
  const channelPretty = channelName ? channelName.startsWith("#") ? channelName : `#${channelName}` : void 0;
46070
46051
  const title = channelPretty ? `${chatRef.title} \xB7 ${channelPretty}` : chatRef.title;
46071
46052
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -46105,7 +46086,7 @@ function GenericFinancialChatCard({
46105
46086
  isNewTab,
46106
46087
  discuss
46107
46088
  }) {
46108
- const subtitle = typeof _optionalChain([chatRef, 'access', _1018 => _1018.metadata, 'optionalAccess', _1019 => _1019.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
46089
+ const subtitle = typeof _optionalChain([chatRef, 'access', _1017 => _1017.metadata, 'optionalAccess', _1018 => _1018.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
46109
46090
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46110
46091
  MingoInfoCard,
46111
46092
  {
@@ -46174,12 +46155,12 @@ function ProductReleaseChatCard({
46174
46155
  discuss
46175
46156
  }) {
46176
46157
  const releaseProps = buildProps(item);
46177
- const status = _optionalChain([item, 'optionalAccess', _1020 => _1020.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
46158
+ const status = _optionalChain([item, 'optionalAccess', _1019 => _1019.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
46178
46159
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46179
46160
  EntityMingoCard,
46180
46161
  {
46181
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1021 => _1021.title]), () => ( "")),
46182
- description: _optionalChain([item, 'optionalAccess', _1022 => _1022.summary]) || releaseProps.formattedDate || void 0,
46162
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1020 => _1020.title]), () => ( "")),
46163
+ description: _optionalChain([item, 'optionalAccess', _1021 => _1021.summary]) || releaseProps.formattedDate || void 0,
46183
46164
  cover: releaseProps.coverImage || void 0,
46184
46165
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.Rocket02Icon, { size: 24 }),
46185
46166
  status,
@@ -46196,17 +46177,17 @@ function CampaignChatCard({
46196
46177
  isNewTab,
46197
46178
  discuss
46198
46179
  }) {
46199
- const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _1023 => _1023.goals])) ? item.goals.length : 0;
46180
+ const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _1022 => _1022.goals])) ? item.goals.length : 0;
46200
46181
  const meta = [
46201
- _optionalChain([item, 'optionalAccess', _1024 => _1024.start_date]) ? formatDateShort(item.start_date) : null,
46182
+ _optionalChain([item, 'optionalAccess', _1023 => _1023.start_date]) ? formatDateShort(item.start_date) : null,
46202
46183
  goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
46203
46184
  "Marketing campaign"
46204
46185
  ].filter(Boolean).join(" \xB7 ");
46205
46186
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46206
46187
  EntityMingoCard,
46207
46188
  {
46208
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1025 => _1025.name]), () => ( "")),
46209
- description: meta || _optionalChain([item, 'optionalAccess', _1026 => _1026.description]) || void 0,
46189
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1024 => _1024.name]), () => ( "")),
46190
+ description: meta || _optionalChain([item, 'optionalAccess', _1025 => _1025.description]) || void 0,
46210
46191
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.Megaphone01Icon, { size: 24 }),
46211
46192
  chatRef,
46212
46193
  isNewTab,
@@ -46259,14 +46240,14 @@ function BlogChatCard({
46259
46240
  hasEmbeddedVideo,
46260
46241
  discuss
46261
46242
  }) {
46262
- const category = Array.isArray(_optionalChain([item, 'optionalAccess', _1027 => _1027.categories])) ? _optionalChain([item, 'access', _1028 => _1028.categories, 'access', _1029 => _1029.find, 'call', _1030 => _1030((c) => c && c.name), 'optionalAccess', _1031 => _1031.name]) : void 0;
46243
+ const category = Array.isArray(_optionalChain([item, 'optionalAccess', _1026 => _1026.categories])) ? _optionalChain([item, 'access', _1027 => _1027.categories, 'access', _1028 => _1028.find, 'call', _1029 => _1029((c) => c && c.name), 'optionalAccess', _1030 => _1030.name]) : void 0;
46263
46244
  const status = hasEmbeddedVideo ? { label: "Video", variant: "primary" } : category ? { label: category, variant: "grey" } : void 0;
46264
46245
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46265
46246
  EntityMingoCard,
46266
46247
  {
46267
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1032 => _1032.title]), () => ( "")),
46268
- description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1033 => _1033.summary]), () => ( void 0)),
46269
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1034 => _1034.featured_image]), ogPlaceholder),
46248
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1031 => _1031.title]), () => ( "")),
46249
+ description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1032 => _1032.summary]), () => ( void 0)),
46250
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1033 => _1033.featured_image]), ogPlaceholder),
46270
46251
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.NewspaperIcon, { size: 24 }),
46271
46252
  status,
46272
46253
  chatRef,
@@ -46283,13 +46264,13 @@ function CaseStudyChatCard({
46283
46264
  ogPlaceholder,
46284
46265
  discuss
46285
46266
  }) {
46286
- const meta = [_optionalChain([item, 'optionalAccess', _1035 => _1035.msp, 'optionalAccess', _1036 => _1036.name]), _optionalChain([item, 'optionalAccess', _1037 => _1037.user, 'optionalAccess', _1038 => _1038.full_name])].filter(Boolean).join(" \xB7 ");
46267
+ const meta = [_optionalChain([item, 'optionalAccess', _1034 => _1034.msp, 'optionalAccess', _1035 => _1035.name]), _optionalChain([item, 'optionalAccess', _1036 => _1036.user, 'optionalAccess', _1037 => _1037.full_name])].filter(Boolean).join(" \xB7 ");
46287
46268
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46288
46269
  EntityMingoCard,
46289
46270
  {
46290
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1039 => _1039.title]), () => ( "")),
46291
- description: _optionalChain([item, 'optionalAccess', _1040 => _1040.summary]) || meta || void 0,
46292
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1041 => _1041.featured_image]), ogPlaceholder),
46271
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1038 => _1038.title]), () => ( "")),
46272
+ description: _optionalChain([item, 'optionalAccess', _1039 => _1039.summary]) || meta || void 0,
46273
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1040 => _1040.featured_image]), ogPlaceholder),
46293
46274
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.TrophyIcon, { size: 24 }),
46294
46275
  status: { label: "Case study", variant: "grey" },
46295
46276
  chatRef,
@@ -46306,13 +46287,13 @@ function CustomerInterviewChatCard({
46306
46287
  ogPlaceholder,
46307
46288
  discuss
46308
46289
  }) {
46309
- const meta = [_optionalChain([item, 'optionalAccess', _1042 => _1042.user, 'optionalAccess', _1043 => _1043.full_name]), _optionalChain([item, 'optionalAccess', _1044 => _1044.msp, 'optionalAccess', _1045 => _1045.name])].filter(Boolean).join(" \xB7 ");
46290
+ const meta = [_optionalChain([item, 'optionalAccess', _1041 => _1041.user, 'optionalAccess', _1042 => _1042.full_name]), _optionalChain([item, 'optionalAccess', _1043 => _1043.msp, 'optionalAccess', _1044 => _1044.name])].filter(Boolean).join(" \xB7 ");
46310
46291
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46311
46292
  EntityMingoCard,
46312
46293
  {
46313
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1046 => _1046.title]), () => ( "")),
46314
- description: _optionalChain([item, 'optionalAccess', _1047 => _1047.video_summary]) || meta || void 0,
46315
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1048 => _1048.featured_image]), ogPlaceholder),
46294
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1045 => _1045.title]), () => ( "")),
46295
+ description: _optionalChain([item, 'optionalAccess', _1046 => _1046.video_summary]) || meta || void 0,
46296
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1047 => _1047.featured_image]), ogPlaceholder),
46316
46297
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.MicrophoneIcon, { size: 24 }),
46317
46298
  status: { label: "Interview", variant: "grey" },
46318
46299
  chatRef,
@@ -46329,13 +46310,13 @@ function InvestorUpdateChatCard({
46329
46310
  ogPlaceholder,
46330
46311
  discuss
46331
46312
  }) {
46332
- const title = _optionalChain([item, 'optionalAccess', _1049 => _1049.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1050 => _1050.update_number]), () => ( "?"))}`;
46313
+ const title = _optionalChain([item, 'optionalAccess', _1048 => _1048.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1049 => _1049.update_number]), () => ( "?"))}`;
46333
46314
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46334
46315
  EntityMingoCard,
46335
46316
  {
46336
46317
  title,
46337
- description: _optionalChain([item, 'optionalAccess', _1051 => _1051.strategic_update]) || _optionalChain([item, 'optionalAccess', _1052 => _1052.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _1053 => _1053.period_start]), _optionalChain([item, 'optionalAccess', _1054 => _1054.period_end])) || void 0,
46338
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1055 => _1055.featured_image]), ogPlaceholder),
46318
+ description: _optionalChain([item, 'optionalAccess', _1050 => _1050.strategic_update]) || _optionalChain([item, 'optionalAccess', _1051 => _1051.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _1052 => _1052.period_start]), _optionalChain([item, 'optionalAccess', _1053 => _1053.period_end])) || void 0,
46319
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1054 => _1054.featured_image]), ogPlaceholder),
46339
46320
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.PresentationLineIcon, { size: 24 }),
46340
46321
  status: { label: "Investor update", variant: "grey" },
46341
46322
  chatRef,
@@ -46352,12 +46333,12 @@ function OnboardingGuideChatCard({
46352
46333
  ogPlaceholder,
46353
46334
  discuss
46354
46335
  }) {
46355
- const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _1056 => _1056.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1057 => _1057.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1058 => _1058.og_image_url]), ogPlaceholder)));
46336
+ const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _1055 => _1055.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1056 => _1056.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1057 => _1057.og_image_url]), ogPlaceholder)));
46356
46337
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46357
46338
  EntityMingoCard,
46358
46339
  {
46359
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1059 => _1059.title]), () => ( "")),
46360
- description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1060 => _1060.summary]), () => ( _optionalChain([item, 'optionalAccess', _1061 => _1061.description]))), () => ( void 0)),
46340
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1058 => _1058.title]), () => ( "")),
46341
+ description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1059 => _1059.summary]), () => ( _optionalChain([item, 'optionalAccess', _1060 => _1060.description]))), () => ( void 0)),
46361
46342
  cover,
46362
46343
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.CompassIcon, { size: 24 }),
46363
46344
  status: { label: "Guide", variant: "grey" },
@@ -46378,25 +46359,25 @@ function ProgramChatCard({
46378
46359
  discuss
46379
46360
  }) {
46380
46361
  const icon = configKey === "webinar" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.PresentationBarIcon, { size: 24 }) : configKey === "event" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.CalendarIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.MicrophoneIcon, { size: 24 });
46381
- const isScheduled = _optionalChain([item, 'optionalAccess', _1062 => _1062.status]) === "scheduled";
46362
+ const isScheduled = _optionalChain([item, 'optionalAccess', _1061 => _1061.status]) === "scheduled";
46382
46363
  let typeMeta;
46383
- if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _1063 => _1063.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
46364
+ if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _1062 => _1062.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
46384
46365
  typeMeta = formatDurationCompact(item.duration_seconds);
46385
- } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _1064 => _1064.location_name]) === "string" && item.location_name.trim().length > 0) {
46366
+ } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _1063 => _1063.location_name]) === "string" && item.location_name.trim().length > 0) {
46386
46367
  typeMeta = item.location_name;
46387
- } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _1065 => _1065.start_at])) {
46368
+ } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _1064 => _1064.start_at])) {
46388
46369
  const time = formatTimeWithTimezone(item.start_at, _nullishCoalesce(item.timezone, () => ( null)));
46389
46370
  const dur = formatDurationFromRange(item.start_at, item.end_at);
46390
46371
  typeMeta = dur ? `${time} \xB7 ${dur}` : time;
46391
46372
  }
46392
- const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1066 => _1066.date]), () => ( null)), { fallback: "", timezone: "local" });
46373
+ const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1065 => _1065.date]), () => ( null)), { fallback: "", timezone: "local" });
46393
46374
  const meta = [itemDate, typeMeta].filter(Boolean).join(" \xB7 ");
46394
46375
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46395
46376
  EntityMingoCard,
46396
46377
  {
46397
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1067 => _1067.title]), () => ( "")),
46398
- description: meta || _optionalChain([item, 'optionalAccess', _1068 => _1068.description]) || void 0,
46399
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1069 => _1069.cover_url]), ogPlaceholder),
46378
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1066 => _1066.title]), () => ( "")),
46379
+ description: meta || _optionalChain([item, 'optionalAccess', _1067 => _1067.description]) || void 0,
46380
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1068 => _1068.cover_url]), ogPlaceholder),
46400
46381
  fallbackIcon: icon,
46401
46382
  status: { label, variant: "grey" },
46402
46383
  chatRef,
@@ -46413,10 +46394,10 @@ function RoadmapChatCard({
46413
46394
  cardType,
46414
46395
  discuss
46415
46396
  }) {
46416
- const logoUrl = typeof _optionalChain([item, 'optionalAccess', _1070 => _1070.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
46417
- const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _1071 => _1071.customItemId]) != null;
46397
+ const logoUrl = typeof _optionalChain([item, 'optionalAccess', _1069 => _1069.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
46398
+ const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _1070 => _1070.customItemId]) != null;
46418
46399
  const defaultIcon = cardType === "delivery_item" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.TruckFastIcon, { size: 24 }) : cardType === "internal_task" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.CheckSquareIcon, { size: 24 }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.MapIcon, { size: 24 });
46419
- const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _1072 => _1072.customItemId]), className: "size-6" }) : logoUrl ? (
46400
+ const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _1071 => _1071.customItemId]), className: "size-6" }) : logoUrl ? (
46420
46401
  // Contained (not full-bleed) so the integration logo keeps its aspect
46421
46402
  // ratio inside the bordered icon box — matches RoadmapCard.
46422
46403
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: logoUrl, alt: "", className: "size-6 object-contain" })
@@ -46424,10 +46405,10 @@ function RoadmapChatCard({
46424
46405
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46425
46406
  EntityMingoCard,
46426
46407
  {
46427
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1073 => _1073.title]), () => ( "")),
46428
- description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1074 => _1074.description]), () => ( void 0)),
46408
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1072 => _1072.title]), () => ( "")),
46409
+ description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1073 => _1073.description]), () => ( void 0)),
46429
46410
  fallbackIcon: icon,
46430
- status: statusPill(_optionalChain([item, 'optionalAccess', _1075 => _1075.status])),
46411
+ status: statusPill(_optionalChain([item, 'optionalAccess', _1074 => _1074.status])),
46431
46412
  chatRef,
46432
46413
  isNewTab,
46433
46414
  discuss,
@@ -46513,7 +46494,7 @@ function programRegistryEntries() {
46513
46494
  discuss: opts.discuss,
46514
46495
  configKey: cfg.configKey,
46515
46496
  label: cfg.configKey.charAt(0).toUpperCase() + cfg.configKey.slice(1),
46516
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1076 => _1076.extras, 'optionalAccess', _1077 => _1077.buildOgPlaceholderUrl, 'optionalCall', _1078 => _1078(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1079 => _1079.title]), () => ( "")))]), () => ( null))
46497
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1075 => _1075.extras, 'optionalAccess', _1076 => _1076.buildOgPlaceholderUrl, 'optionalCall', _1077 => _1077(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1078 => _1078.title]), () => ( "")))]), () => ( null))
46517
46498
  }
46518
46499
  )
46519
46500
  };
@@ -46665,8 +46646,8 @@ var CHAT_CARD_REGISTRY = {
46665
46646
  chatRef,
46666
46647
  isNewTab: opts.isNewTab,
46667
46648
  discuss: opts.discuss,
46668
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1080 => _1080.extras, 'optionalAccess', _1081 => _1081.buildOgPlaceholderUrl, 'optionalCall', _1082 => _1082(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1083 => _1083.title]), () => ( "")))]), () => ( null)),
46669
- hasEmbeddedVideo: _optionalChain([chatRef, 'access', _1084 => _1084.metadata, 'optionalAccess', _1085 => _1085.hasEmbeddedVideo]) === true
46649
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1079 => _1079.extras, 'optionalAccess', _1080 => _1080.buildOgPlaceholderUrl, 'optionalCall', _1081 => _1081(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1082 => _1082.title]), () => ( "")))]), () => ( null)),
46650
+ hasEmbeddedVideo: _optionalChain([chatRef, 'access', _1083 => _1083.metadata, 'optionalAccess', _1084 => _1084.hasEmbeddedVideo]) === true
46670
46651
  }
46671
46652
  )
46672
46653
  },
@@ -46683,7 +46664,7 @@ var CHAT_CARD_REGISTRY = {
46683
46664
  chatRef,
46684
46665
  isNewTab: opts.isNewTab,
46685
46666
  discuss: opts.discuss,
46686
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1086 => _1086.extras, 'optionalAccess', _1087 => _1087.buildOgPlaceholderUrl, 'optionalCall', _1088 => _1088(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1089 => _1089.title]), () => ( "")))]), () => ( null))
46667
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1085 => _1085.extras, 'optionalAccess', _1086 => _1086.buildOgPlaceholderUrl, 'optionalCall', _1087 => _1087(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1088 => _1088.title]), () => ( "")))]), () => ( null))
46687
46668
  }
46688
46669
  )
46689
46670
  },
@@ -46700,7 +46681,7 @@ var CHAT_CARD_REGISTRY = {
46700
46681
  chatRef,
46701
46682
  isNewTab: opts.isNewTab,
46702
46683
  discuss: opts.discuss,
46703
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1090 => _1090.extras, 'optionalAccess', _1091 => _1091.buildOgPlaceholderUrl, 'optionalCall', _1092 => _1092(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1093 => _1093.title]), () => ( "")))]), () => ( null))
46684
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1089 => _1089.extras, 'optionalAccess', _1090 => _1090.buildOgPlaceholderUrl, 'optionalCall', _1091 => _1091(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1092 => _1092.title]), () => ( "")))]), () => ( null))
46704
46685
  }
46705
46686
  )
46706
46687
  },
@@ -46711,7 +46692,7 @@ var CHAT_CARD_REGISTRY = {
46711
46692
  bareInline: true,
46712
46693
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ProductReleaseCardSkeleton, { size: "sm" }),
46713
46694
  render: (item, chatRef, opts) => {
46714
- const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1094 => _1094.extras, 'optionalAccess', _1095 => _1095.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
46695
+ const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1093 => _1093.extras, 'optionalAccess', _1094 => _1094.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
46715
46696
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46716
46697
  ProductReleaseChatCard,
46717
46698
  {
@@ -46738,7 +46719,7 @@ var CHAT_CARD_REGISTRY = {
46738
46719
  chatRef,
46739
46720
  isNewTab: opts.isNewTab,
46740
46721
  discuss: opts.discuss,
46741
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1096 => _1096.extras, 'optionalAccess', _1097 => _1097.buildOgPlaceholderUrl, 'optionalCall', _1098 => _1098(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1099 => _1099.title]), () => ( "")))]), () => ( null))
46722
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1095 => _1095.extras, 'optionalAccess', _1096 => _1096.buildOgPlaceholderUrl, 'optionalCall', _1097 => _1097(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1098 => _1098.title]), () => ( "")))]), () => ( null))
46742
46723
  }
46743
46724
  )
46744
46725
  },
@@ -46757,7 +46738,7 @@ var CHAT_CARD_REGISTRY = {
46757
46738
  chatRef,
46758
46739
  isNewTab: opts.isNewTab,
46759
46740
  discuss: opts.discuss,
46760
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1100 => _1100.extras, 'optionalAccess', _1101 => _1101.buildOgPlaceholderUrl, 'optionalCall', _1102 => _1102(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1103 => _1103.title]), () => ( "")))]), () => ( null))
46741
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1099 => _1099.extras, 'optionalAccess', _1100 => _1100.buildOgPlaceholderUrl, 'optionalCall', _1101 => _1101(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1102 => _1102.title]), () => ( "")))]), () => ( null))
46761
46742
  }
46762
46743
  )
46763
46744
  },
@@ -46769,7 +46750,7 @@ var CHAT_CARD_REGISTRY = {
46769
46750
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, {}),
46770
46751
  // No public viewer — synthesize the hub-internal admin URL post-fetch
46771
46752
  // so the wrapper + isNewTab computation see the actual destination.
46772
- fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1104 => _1104.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
46753
+ fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1103 => _1103.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
46773
46754
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46774
46755
  CampaignChatCard,
46775
46756
  {
@@ -46795,12 +46776,12 @@ function ChatCardNavWrap({
46795
46776
  const onClickCapture = (e) => {
46796
46777
  if (!href) return;
46797
46778
  const targetEl = e.target;
46798
- if (_optionalChain([targetEl, 'optionalAccess', _1105 => _1105.closest, 'optionalCall', _1106 => _1106("button")])) return;
46799
- if (!_optionalChain([targetEl, 'optionalAccess', _1107 => _1107.closest, 'optionalCall', _1108 => _1108("a")])) return;
46779
+ if (_optionalChain([targetEl, 'optionalAccess', _1104 => _1104.closest, 'optionalCall', _1105 => _1105("button")])) return;
46780
+ if (!_optionalChain([targetEl, 'optionalAccess', _1106 => _1106.closest, 'optionalCall', _1107 => _1107("a")])) return;
46800
46781
  const handled = handleChatNavClick(e, runtime, { href, path, targetPlatform }, router.push);
46801
46782
  if (!handled) return;
46802
46783
  e.stopPropagation();
46803
- if (!isNewTab && _optionalChain([panel, 'optionalAccess', _1109 => _1109.closeChat])) panel.closeChat();
46784
+ if (!isNewTab && _optionalChain([panel, 'optionalAccess', _1108 => _1108.closeChat])) panel.closeChat();
46804
46785
  };
46805
46786
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "contents", onClickCapture, children });
46806
46787
  }
@@ -46822,7 +46803,7 @@ function ChatCardLoader({
46822
46803
  title: chatRef.title,
46823
46804
  externalUrl: chatRef.url,
46824
46805
  targetPlatform: chatRef.targetPlatform,
46825
- path: typeof _optionalChain([chatRef, 'access', _1110 => _1110.metadata, 'optionalAccess', _1111 => _1111.path]) === "string" ? chatRef.metadata.path : null
46806
+ path: typeof _optionalChain([chatRef, 'access', _1109 => _1109.metadata, 'optionalAccess', _1110 => _1110.path]) === "string" ? chatRef.metadata.path : null
46826
46807
  },
46827
46808
  sourceRowCtxFromRuntime(runtime, { baseRoute, chipBasePlatform })
46828
46809
  );
@@ -46836,7 +46817,7 @@ function ChatCardLoader({
46836
46817
  const entry = CHAT_CARD_REGISTRY[resolvedChatRef.type];
46837
46818
  const fetchEntry = entry && entry.mode === "fetch" ? entry : null;
46838
46819
  const { item, isLoading } = useChatCardItem(
46839
- _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _1112 => _1112.contentRefType]), () => ( "")),
46820
+ _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _1111 => _1111.contentRefType]), () => ( "")),
46840
46821
  fetchEntry ? resolvedChatRef.id : ""
46841
46822
  );
46842
46823
  if (!entry) return null;
@@ -46867,7 +46848,7 @@ function ChatCardLoader({
46867
46848
  isNewTab,
46868
46849
  discuss
46869
46850
  };
46870
- const path = typeof _optionalChain([finalChatRef, 'access', _1113 => _1113.metadata, 'optionalAccess', _1114 => _1114.path]) === "string" ? finalChatRef.metadata.path : null;
46851
+ const path = typeof _optionalChain([finalChatRef, 'access', _1112 => _1112.metadata, 'optionalAccess', _1113 => _1113.path]) === "string" ? finalChatRef.metadata.path : null;
46871
46852
  const navWrap = (children) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46872
46853
  ChatCardNavWrap,
46873
46854
  {
@@ -47136,7 +47117,7 @@ function useChunkCatchup({
47136
47117
  console.error("Error during chunk catchup:", error);
47137
47118
  } finally {
47138
47119
  if (dialogId2 !== dialogIdRef.current) {
47139
- if (_optionalChain([pendingCatchupRef, 'access', _1115 => _1115.current, 'optionalAccess', _1116 => _1116.dialogId]) === dialogId2) {
47120
+ if (_optionalChain([pendingCatchupRef, 'access', _1114 => _1114.current, 'optionalAccess', _1115 => _1115.dialogId]) === dialogId2) {
47140
47121
  pendingCatchupRef.current = null;
47141
47122
  }
47142
47123
  } else {
@@ -47149,7 +47130,7 @@ function useChunkCatchup({
47149
47130
  lastFetchParams.current = null;
47150
47131
  bufferUntilInitialCatchupComplete.current = true;
47151
47132
  try {
47152
- await _optionalChain([catchUpChunksRef, 'access', _1117 => _1117.current, 'optionalCall', _1118 => _1118(pending.fromSequenceId)]);
47133
+ await _optionalChain([catchUpChunksRef, 'access', _1116 => _1116.current, 'optionalCall', _1117 => _1117(pending.fromSequenceId)]);
47153
47134
  } catch (rerunError) {
47154
47135
  console.error("Queued catch-up re-run failed:", rerunError);
47155
47136
  }
@@ -47213,7 +47194,7 @@ function useChunkCatchup({
47213
47194
 
47214
47195
  var EMPTY_FRAME = { messages: [], phase: "idle", typing: false, delayMs: 0 };
47215
47196
  function prefersReducedMotion() {
47216
- return typeof window !== "undefined" && _optionalChain([window, 'access', _1119 => _1119.matchMedia, 'optionalCall', _1120 => _1120("(prefers-reduced-motion: reduce)"), 'access', _1121 => _1121.matches]) === true;
47197
+ return typeof window !== "undefined" && _optionalChain([window, 'access', _1118 => _1118.matchMedia, 'optionalCall', _1119 => _1119("(prefers-reduced-motion: reduce)"), 'access', _1120 => _1120.matches]) === true;
47217
47198
  }
47218
47199
  function useScriptedStream(frames, resetKey, enabled = true) {
47219
47200
  const [index, setIndex] = _react.useState.call(void 0, 0);
@@ -47225,7 +47206,7 @@ function useScriptedStream(frames, resetKey, enabled = true) {
47225
47206
  }
47226
47207
  _react.useEffect.call(void 0, () => {
47227
47208
  setReducedMotion(prefersReducedMotion());
47228
- const mq = _optionalChain([window, 'access', _1122 => _1122.matchMedia, 'optionalCall', _1123 => _1123("(prefers-reduced-motion: reduce)")]);
47209
+ const mq = _optionalChain([window, 'access', _1121 => _1121.matchMedia, 'optionalCall', _1122 => _1122("(prefers-reduced-motion: reduce)")]);
47229
47210
  if (!mq) return;
47230
47211
  const onChange = () => setReducedMotion(mq.matches);
47231
47212
  mq.addEventListener("change", onChange);
@@ -47354,7 +47335,7 @@ function useJetStreamDialogSubscription({
47354
47335
  const lifecycle = _chunkW24U7ZUVcjs.startConnectionLifecycle.call(void 0, {
47355
47336
  conn: sharedConn,
47356
47337
  wsUrl,
47357
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1124 => _1124.current, 'optionalCall', _1125 => _1125()]),
47338
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1123 => _1123.current, 'optionalCall', _1124 => _1124()]),
47358
47339
  backoff: reconnectionBackoffRef.current,
47359
47340
  getFreshUrl: () => getNatsWsUrlRef.current(),
47360
47341
  // JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
@@ -47369,7 +47350,7 @@ function useJetStreamDialogSubscription({
47369
47350
  setReconnectionCount((c) => c + 1);
47370
47351
  }
47371
47352
  hadConnectionBeforeRef.current = true;
47372
- _optionalChain([onConnectRef, 'access', _1126 => _1126.current, 'optionalCall', _1127 => _1127()]);
47353
+ _optionalChain([onConnectRef, 'access', _1125 => _1125.current, 'optionalCall', _1126 => _1126()]);
47373
47354
  }
47374
47355
  if (status === "error") {
47375
47356
  console.warn("[JetStream] NATS protocol error:", evt.data);
@@ -47379,7 +47360,7 @@ function useJetStreamDialogSubscription({
47379
47360
  setIsConnected(false);
47380
47361
  setIsSubscribed(false);
47381
47362
  tearDownSubscription();
47382
- _optionalChain([onDisconnectRef, 'access', _1128 => _1128.current, 'optionalCall', _1129 => _1129()]);
47363
+ _optionalChain([onDisconnectRef, 'access', _1127 => _1127.current, 'optionalCall', _1128 => _1128()]);
47383
47364
  }
47384
47365
  }
47385
47366
  });
@@ -47462,7 +47443,7 @@ function useJetStreamDialogSubscription({
47462
47443
  }
47463
47444
  subscriptionRef.current = handle;
47464
47445
  setIsSubscribed(true);
47465
- _optionalChain([onSubscribedRef, 'access', _1130 => _1130.current, 'optionalCall', _1131 => _1131()]);
47446
+ _optionalChain([onSubscribedRef, 'access', _1129 => _1129.current, 'optionalCall', _1130 => _1130()]);
47466
47447
  } catch (e52) {
47467
47448
  if (!cancelled) {
47468
47449
  setIsSubscribed(false);
@@ -47571,20 +47552,20 @@ function useNatsDialogSubscription({
47571
47552
  const tearDownSubscriptions = () => {
47572
47553
  subscriptionRefs.current.forEach((sub) => {
47573
47554
  try {
47574
- _optionalChain([sub, 'optionalAccess', _1132 => _1132.unsubscribe, 'call', _1133 => _1133()]);
47555
+ _optionalChain([sub, 'optionalAccess', _1131 => _1131.unsubscribe, 'call', _1132 => _1132()]);
47575
47556
  } catch (e54) {
47576
47557
  }
47577
47558
  });
47578
47559
  subscriptionRefs.current.clear();
47579
47560
  lastSubscribedDialogIdRef.current = null;
47580
- _optionalChain([abortControllerRef, 'access', _1134 => _1134.current, 'optionalAccess', _1135 => _1135.abort, 'call', _1136 => _1136()]);
47561
+ _optionalChain([abortControllerRef, 'access', _1133 => _1133.current, 'optionalAccess', _1134 => _1134.abort, 'call', _1135 => _1135()]);
47581
47562
  abortControllerRef.current = null;
47582
47563
  };
47583
47564
  const isDisconnectStatus = (status) => status === "closed" || status === "disconnected";
47584
47565
  const lifecycle = _chunkW24U7ZUVcjs.startConnectionLifecycle.call(void 0, {
47585
47566
  conn: sharedConn,
47586
47567
  wsUrl,
47587
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1137 => _1137.current, 'optionalCall', _1138 => _1138()]),
47568
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1136 => _1136.current, 'optionalCall', _1137 => _1137()]),
47588
47569
  backoff: reconnectionBackoffRef.current,
47589
47570
  getFreshUrl: () => getNatsWsUrlRef.current(),
47590
47571
  shouldRetryOn: isDisconnectStatus,
@@ -47595,7 +47576,7 @@ function useNatsDialogSubscription({
47595
47576
  setReconnectionCount((c) => c + 1);
47596
47577
  }
47597
47578
  hadConnectionBeforeRef.current = true;
47598
- _optionalChain([onConnectRef, 'access', _1139 => _1139.current, 'optionalCall', _1140 => _1140()]);
47579
+ _optionalChain([onConnectRef, 'access', _1138 => _1138.current, 'optionalCall', _1139 => _1139()]);
47599
47580
  }
47600
47581
  if (status === "error") {
47601
47582
  console.warn("[NATS] protocol error:", evt.data);
@@ -47605,7 +47586,7 @@ function useNatsDialogSubscription({
47605
47586
  setIsConnected(false);
47606
47587
  setIsSubscribed(false);
47607
47588
  tearDownSubscriptions();
47608
- _optionalChain([onDisconnectRef, 'access', _1141 => _1141.current, 'optionalCall', _1142 => _1142()]);
47589
+ _optionalChain([onDisconnectRef, 'access', _1140 => _1140.current, 'optionalCall', _1141 => _1141()]);
47609
47590
  }
47610
47591
  }
47611
47592
  });
@@ -47638,13 +47619,13 @@ function useNatsDialogSubscription({
47638
47619
  setIsSubscribed(false);
47639
47620
  subscriptionRefs.current.forEach((sub) => {
47640
47621
  try {
47641
- _optionalChain([sub, 'optionalAccess', _1143 => _1143.unsubscribe, 'call', _1144 => _1144()]);
47622
+ _optionalChain([sub, 'optionalAccess', _1142 => _1142.unsubscribe, 'call', _1143 => _1143()]);
47642
47623
  } catch (e55) {
47643
47624
  }
47644
47625
  });
47645
47626
  subscriptionRefs.current.clear();
47646
47627
  lastSubscribedDialogIdRef.current = null;
47647
- _optionalChain([abortControllerRef, 'access', _1145 => _1145.current, 'optionalAccess', _1146 => _1146.abort, 'call', _1147 => _1147()]);
47628
+ _optionalChain([abortControllerRef, 'access', _1144 => _1144.current, 'optionalAccess', _1145 => _1145.abort, 'call', _1146 => _1146()]);
47648
47629
  abortControllerRef.current = null;
47649
47630
  }
47650
47631
  return;
@@ -47656,12 +47637,12 @@ function useNatsDialogSubscription({
47656
47637
  if (subscriptionRefs.current.size > 0) {
47657
47638
  subscriptionRefs.current.forEach((sub) => {
47658
47639
  try {
47659
- _optionalChain([sub, 'optionalAccess', _1148 => _1148.unsubscribe, 'call', _1149 => _1149()]);
47640
+ _optionalChain([sub, 'optionalAccess', _1147 => _1147.unsubscribe, 'call', _1148 => _1148()]);
47660
47641
  } catch (e56) {
47661
47642
  }
47662
47643
  });
47663
47644
  subscriptionRefs.current.clear();
47664
- _optionalChain([abortControllerRef, 'access', _1150 => _1150.current, 'optionalAccess', _1151 => _1151.abort, 'call', _1152 => _1152()]);
47645
+ _optionalChain([abortControllerRef, 'access', _1149 => _1149.current, 'optionalAccess', _1150 => _1150.abort, 'call', _1151 => _1151()]);
47665
47646
  }
47666
47647
  abortControllerRef.current = new AbortController();
47667
47648
  const abort = abortControllerRef.current;
@@ -47693,7 +47674,7 @@ function useNatsDialogSubscription({
47693
47674
  });
47694
47675
  lastSubscribedDialogIdRef.current = dialogId;
47695
47676
  setIsSubscribed(true);
47696
- _optionalChain([onSubscribedRef, 'access', _1153 => _1153.current, 'optionalCall', _1154 => _1154()]);
47677
+ _optionalChain([onSubscribedRef, 'access', _1152 => _1152.current, 'optionalCall', _1153 => _1153()]);
47697
47678
  };
47698
47679
  if (isConnectedRef.current) {
47699
47680
  createSubscriptions();
@@ -47703,7 +47684,7 @@ function useNatsDialogSubscription({
47703
47684
  abort.abort();
47704
47685
  subscriptionRefs.current.forEach((sub) => {
47705
47686
  try {
47706
- _optionalChain([sub, 'optionalAccess', _1155 => _1155.unsubscribe, 'call', _1156 => _1156()]);
47687
+ _optionalChain([sub, 'optionalAccess', _1154 => _1154.unsubscribe, 'call', _1155 => _1155()]);
47707
47688
  } catch (e58) {
47708
47689
  }
47709
47690
  });
@@ -47744,7 +47725,7 @@ function useNatsDialogSubscription({
47744
47725
  });
47745
47726
  lastSubscribedDialogIdRef.current = dialogId2;
47746
47727
  setIsSubscribed(true);
47747
- _optionalChain([onSubscribedRef, 'access', _1157 => _1157.current, 'optionalCall', _1158 => _1158()]);
47728
+ _optionalChain([onSubscribedRef, 'access', _1156 => _1156.current, 'optionalCall', _1157 => _1157()]);
47748
47729
  } else if (subscriptionRefs.current.size > 0) {
47749
47730
  setIsSubscribed(true);
47750
47731
  }
@@ -47752,10 +47733,10 @@ function useNatsDialogSubscription({
47752
47733
  return { isConnected, isSubscribed, reconnectionCount };
47753
47734
  }
47754
47735
  function buildNatsWsUrl(apiBaseUrl, options) {
47755
- const path = _optionalChain([options, 'optionalAccess', _1159 => _1159.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
47736
+ const path = _optionalChain([options, 'optionalAccess', _1158 => _1158.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
47756
47737
  const u = new URL(path, apiBaseUrl);
47757
47738
  u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
47758
- if (_optionalChain([options, 'optionalAccess', _1160 => _1160.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _1161 => _1161.token])) {
47739
+ if (_optionalChain([options, 'optionalAccess', _1159 => _1159.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _1160 => _1160.token])) {
47759
47740
  u.searchParams.set("authorization", options.token);
47760
47741
  }
47761
47742
  return u.toString();
@@ -47891,7 +47872,7 @@ function parseChunkToAction(chunk) {
47891
47872
  // is REQUIRED on `ChatContextItem`, so fall back to the id (same as the
47892
47873
  // historical path in `process-historical-messages.ts`) — keeps both
47893
47874
  // message sources producing an identical shape.
47894
- contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1162 => _1162.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1163 => _1163.id]) === "string").map((it) => ({ type: it.type, id: it.id, label: it.id })) : void 0
47875
+ contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1161 => _1161.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1162 => _1162.id]) === "string").map((it) => ({ type: it.type, id: it.id, label: it.id })) : void 0
47895
47876
  };
47896
47877
  case MESSAGE_TYPE.TOKEN_USAGE:
47897
47878
  return {
@@ -48083,8 +48064,8 @@ var MessageSegmentAccumulator = class {
48083
48064
  type: "tool_execution",
48084
48065
  data: {
48085
48066
  ...toolData,
48086
- toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1164 => _1164.data, 'access', _1165 => _1165.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1166 => _1166.toolTitle]))),
48087
- parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1167 => _1167.parameters])
48067
+ toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1163 => _1163.data, 'access', _1164 => _1164.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1165 => _1165.toolTitle]))),
48068
+ parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1166 => _1166.parameters])
48088
48069
  }
48089
48070
  };
48090
48071
  if (existingIndex !== -1) {
@@ -48108,12 +48089,12 @@ var MessageSegmentAccumulator = class {
48108
48089
  if (seg.type !== "approval_batch") return seg;
48109
48090
  const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
48110
48091
  if (!hasCall) return seg;
48111
- const prev = _optionalChain([seg, 'access', _1168 => _1168.data, 'access', _1169 => _1169.executions, 'optionalAccess', _1170 => _1170[execId]]);
48112
- if (toolData.type === "EXECUTING_TOOL" && _optionalChain([prev, 'optionalAccess', _1171 => _1171.status]) === "done") {
48092
+ const prev = _optionalChain([seg, 'access', _1167 => _1167.data, 'access', _1168 => _1168.executions, 'optionalAccess', _1169 => _1169[execId]]);
48093
+ if (toolData.type === "EXECUTING_TOOL" && _optionalChain([prev, 'optionalAccess', _1170 => _1170.status]) === "done") {
48113
48094
  matched = true;
48114
48095
  return seg;
48115
48096
  }
48116
- const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _1172 => _1172.result]), success: _optionalChain([prev, 'optionalAccess', _1173 => _1173.success]) };
48097
+ const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _1171 => _1171.result]), success: _optionalChain([prev, 'optionalAccess', _1172 => _1172.success]) };
48117
48098
  matched = true;
48118
48099
  return {
48119
48100
  ...seg,
@@ -48235,10 +48216,10 @@ var MessageSegmentAccumulator = class {
48235
48216
  const segment = {
48236
48217
  type: "approval_request",
48237
48218
  data: {
48238
- command: _optionalChain([pendingApproval, 'optionalAccess', _1174 => _1174.command]) || "",
48239
- explanation: _optionalChain([pendingApproval, 'optionalAccess', _1175 => _1175.explanation]),
48219
+ command: _optionalChain([pendingApproval, 'optionalAccess', _1173 => _1173.command]) || "",
48220
+ explanation: _optionalChain([pendingApproval, 'optionalAccess', _1174 => _1174.explanation]),
48240
48221
  requestId,
48241
- approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1176 => _1176.approvalType]) || approvalType
48222
+ approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1175 => _1175.approvalType]) || approvalType
48242
48223
  },
48243
48224
  status,
48244
48225
  onApprove: this.callbacks.onApprove,
@@ -48430,7 +48411,7 @@ function useRealtimeChunkProcessor(options) {
48430
48411
  if (initialState.escalatedApprovals) {
48431
48412
  pendingEscalatedRef.current = new Map(initialState.escalatedApprovals);
48432
48413
  initialState.escalatedApprovals.forEach((data, requestId) => {
48433
- _optionalChain([callbacks, 'access', _1177 => _1177.onEscalatedApproval, 'optionalCall', _1178 => _1178(requestId, data)]);
48414
+ _optionalChain([callbacks, 'access', _1176 => _1176.onEscalatedApproval, 'optionalCall', _1177 => _1177(requestId, data)]);
48434
48415
  });
48435
48416
  }
48436
48417
  hasEverStreamedRef.current = true;
@@ -48452,13 +48433,13 @@ function useRealtimeChunkProcessor(options) {
48452
48433
  if (!action) return;
48453
48434
  const accumulator = accumulatorRef.current;
48454
48435
  const streamSeq = chunk && typeof chunk === "object" && typeof chunk.streamSeq === "number" ? chunk.streamSeq : void 0;
48455
- const emitSegments = (s, meta) => _optionalChain([callbacks, 'access', _1179 => _1179.onSegmentsUpdate, 'optionalCall', _1180 => _1180(s, streamSeq != null ? { ...meta, streamSeq } : meta)]);
48436
+ const emitSegments = (s, meta) => _optionalChain([callbacks, 'access', _1178 => _1178.onSegmentsUpdate, 'optionalCall', _1179 => _1179(s, streamSeq != null ? { ...meta, streamSeq } : meta)]);
48456
48437
  if (action.action === "direct_message") sawDirectMessageRef.current = true;
48457
48438
  if ((directModeFlagRef.current || sawDirectMessageRef.current) && !DIRECT_MODE_ALLOWED.has(action.action)) {
48458
48439
  if (isInStreamRef.current || !directTeardownFiredRef.current) {
48459
48440
  isInStreamRef.current = false;
48460
48441
  directTeardownFiredRef.current = true;
48461
- _optionalChain([callbacks, 'access', _1181 => _1181.onStreamEnd, 'optionalCall', _1182 => _1182()]);
48442
+ _optionalChain([callbacks, 'access', _1180 => _1180.onStreamEnd, 'optionalCall', _1181 => _1181()]);
48462
48443
  accumulator.resetSegments();
48463
48444
  }
48464
48445
  return;
@@ -48467,16 +48448,16 @@ function useRealtimeChunkProcessor(options) {
48467
48448
  case "message_start":
48468
48449
  isInStreamRef.current = true;
48469
48450
  hasEverStreamedRef.current = true;
48470
- _optionalChain([callbacks, 'access', _1183 => _1183.onStreamStart, 'optionalCall', _1184 => _1184()]);
48451
+ _optionalChain([callbacks, 'access', _1182 => _1182.onStreamStart, 'optionalCall', _1183 => _1183()]);
48471
48452
  accumulator.resetSegments();
48472
48453
  break;
48473
48454
  case "message_end":
48474
48455
  isInStreamRef.current = false;
48475
- _optionalChain([callbacks, 'access', _1185 => _1185.onStreamEnd, 'optionalCall', _1186 => _1186()]);
48456
+ _optionalChain([callbacks, 'access', _1184 => _1184.onStreamEnd, 'optionalCall', _1185 => _1185()]);
48476
48457
  accumulator.resetSegments();
48477
48458
  break;
48478
48459
  case "metadata":
48479
- _optionalChain([callbacks, 'access', _1187 => _1187.onMetadata, 'optionalCall', _1188 => _1188(action)]);
48460
+ _optionalChain([callbacks, 'access', _1186 => _1186.onMetadata, 'optionalCall', _1187 => _1187(action)]);
48480
48461
  break;
48481
48462
  case "text": {
48482
48463
  const segments = accumulator.appendText(action.text);
@@ -48498,7 +48479,7 @@ function useRealtimeChunkProcessor(options) {
48498
48479
  }
48499
48480
  case "tool_execution": {
48500
48481
  if (action.segment.data.type === "EXECUTING_TOOL") {
48501
- _optionalChain([callbacks, 'access', _1189 => _1189.onAgentBusy, 'optionalCall', _1190 => _1190()]);
48482
+ _optionalChain([callbacks, 'access', _1188 => _1188.onAgentBusy, 'optionalCall', _1189 => _1189()]);
48502
48483
  }
48503
48484
  if (!isInStreamRef.current && callbacks.onToolExecuted) {
48504
48485
  callbacks.onToolExecuted(action.segment);
@@ -48522,7 +48503,7 @@ function useRealtimeChunkProcessor(options) {
48522
48503
  emitSegments(segments);
48523
48504
  } else {
48524
48505
  pendingEscalatedRef.current.set(requestId, { command, explanation, approvalType });
48525
- _optionalChain([callbacks, 'access', _1191 => _1191.onEscalatedApproval, 'optionalCall', _1192 => _1192(requestId, { command, explanation, approvalType })]);
48506
+ _optionalChain([callbacks, 'access', _1190 => _1190.onEscalatedApproval, 'optionalCall', _1191 => _1191(requestId, { command, explanation, approvalType })]);
48526
48507
  }
48527
48508
  break;
48528
48509
  }
@@ -48534,13 +48515,13 @@ function useRealtimeChunkProcessor(options) {
48534
48515
  const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
48535
48516
  pendingEscalatedRef.current.set(requestId, {
48536
48517
  command: summary,
48537
- explanation: _optionalChain([required, 'optionalAccess', _1193 => _1193.toolExplanation]),
48518
+ explanation: _optionalChain([required, 'optionalAccess', _1192 => _1192.toolExplanation]),
48538
48519
  approvalType,
48539
48520
  toolCalls
48540
48521
  });
48541
- _optionalChain([callbacks, 'access', _1194 => _1194.onEscalatedApproval, 'optionalCall', _1195 => _1195(requestId, {
48522
+ _optionalChain([callbacks, 'access', _1193 => _1193.onEscalatedApproval, 'optionalCall', _1194 => _1194(requestId, {
48542
48523
  command: summary,
48543
- explanation: _optionalChain([required, 'optionalAccess', _1196 => _1196.toolExplanation]),
48524
+ explanation: _optionalChain([required, 'optionalAccess', _1195 => _1195.toolExplanation]),
48544
48525
  approvalType
48545
48526
  })]);
48546
48527
  break;
@@ -48566,12 +48547,12 @@ function useRealtimeChunkProcessor(options) {
48566
48547
  }
48567
48548
  case "approval_result": {
48568
48549
  const { requestId, approved, approvalType, resolvedByName } = action;
48569
- if (approved) _optionalChain([callbacks, 'access', _1197 => _1197.onAgentBusy, 'optionalCall', _1198 => _1198()]);
48550
+ if (approved) _optionalChain([callbacks, 'access', _1196 => _1196.onAgentBusy, 'optionalCall', _1197 => _1197()]);
48570
48551
  const escalatedData = pendingEscalatedRef.current.get(requestId);
48571
48552
  const status = approved ? "approved" : "rejected";
48572
48553
  if (escalatedData) {
48573
48554
  pendingEscalatedRef.current.delete(requestId);
48574
- _optionalChain([callbacks, 'access', _1199 => _1199.onEscalatedApprovalResult, 'optionalCall', _1200 => _1200(requestId, approved, {
48555
+ _optionalChain([callbacks, 'access', _1198 => _1198.onEscalatedApprovalResult, 'optionalCall', _1199 => _1199(requestId, approved, {
48575
48556
  command: escalatedData.command,
48576
48557
  explanation: escalatedData.explanation,
48577
48558
  approvalType: escalatedData.approvalType
@@ -48627,29 +48608,29 @@ function useRealtimeChunkProcessor(options) {
48627
48608
  emitSegments(accumulator.getSegments());
48628
48609
  }
48629
48610
  }
48630
- _optionalChain([callbacks, 'access', _1201 => _1201.onApprovalResolved, 'optionalCall', _1202 => _1202(requestId, status, approvalType, resolvedByName)]);
48611
+ _optionalChain([callbacks, 'access', _1200 => _1200.onApprovalResolved, 'optionalCall', _1201 => _1201(requestId, status, approvalType, resolvedByName)]);
48631
48612
  break;
48632
48613
  }
48633
48614
  case "error": {
48634
48615
  let message2;
48635
- if ("details" in action && _optionalChain([action, 'optionalAccess', _1203 => _1203.details])) {
48616
+ if ("details" in action && _optionalChain([action, 'optionalAccess', _1202 => _1202.details])) {
48636
48617
  try {
48637
- message2 = _optionalChain([JSON, 'access', _1204 => _1204.parse, 'call', _1205 => _1205(action.details), 'optionalAccess', _1206 => _1206.error, 'optionalAccess', _1207 => _1207.message]);
48618
+ message2 = _optionalChain([JSON, 'access', _1203 => _1203.parse, 'call', _1204 => _1204(action.details), 'optionalAccess', _1205 => _1205.error, 'optionalAccess', _1206 => _1206.message]);
48638
48619
  } catch (e60) {
48639
48620
  message2 = action.details;
48640
48621
  }
48641
48622
  }
48642
48623
  const segments = accumulator.addError(action.error, message2);
48643
48624
  emitSegments(segments);
48644
- _optionalChain([callbacks, 'access', _1208 => _1208.onError, 'optionalCall', _1209 => _1209(action.error, message2)]);
48625
+ _optionalChain([callbacks, 'access', _1207 => _1207.onError, 'optionalCall', _1208 => _1208(action.error, message2)]);
48645
48626
  break;
48646
48627
  }
48647
48628
  case "system": {
48648
- _optionalChain([callbacks, 'access', _1210 => _1210.onSystemMessage, 'optionalCall', _1211 => _1211(action.text, { streamSeq })]);
48629
+ _optionalChain([callbacks, 'access', _1209 => _1209.onSystemMessage, 'optionalCall', _1210 => _1210(action.text, { streamSeq })]);
48649
48630
  break;
48650
48631
  }
48651
48632
  case "direct_message": {
48652
- _optionalChain([callbacks, 'access', _1212 => _1212.onDirectMessage, 'optionalCall', _1213 => _1213(action.text, {
48633
+ _optionalChain([callbacks, 'access', _1211 => _1211.onDirectMessage, 'optionalCall', _1212 => _1212(action.text, {
48653
48634
  ownerType: action.ownerType,
48654
48635
  displayName: action.displayName,
48655
48636
  userId: action.userId,
@@ -48658,7 +48639,7 @@ function useRealtimeChunkProcessor(options) {
48658
48639
  break;
48659
48640
  }
48660
48641
  case "message_request":
48661
- _optionalChain([callbacks, 'access', _1214 => _1214.onUserMessage, 'optionalCall', _1215 => _1215(action.text, {
48642
+ _optionalChain([callbacks, 'access', _1213 => _1213.onUserMessage, 'optionalCall', _1214 => _1214(action.text, {
48662
48643
  ownerType: action.ownerType,
48663
48644
  displayName: action.displayName,
48664
48645
  userId: action.userId,
@@ -48667,7 +48648,7 @@ function useRealtimeChunkProcessor(options) {
48667
48648
  })]);
48668
48649
  break;
48669
48650
  case "token_usage":
48670
- _optionalChain([callbacks, 'access', _1216 => _1216.onTokenUsage, 'optionalCall', _1217 => _1217(action.data)]);
48651
+ _optionalChain([callbacks, 'access', _1215 => _1215.onTokenUsage, 'optionalCall', _1216 => _1216(action.data)]);
48671
48652
  break;
48672
48653
  case "context_compaction_start": {
48673
48654
  const standalone = !isInStreamRef.current;
@@ -48682,7 +48663,7 @@ function useRealtimeChunkProcessor(options) {
48682
48663
  break;
48683
48664
  }
48684
48665
  case "dialog_closed":
48685
- _optionalChain([callbacks, 'access', _1218 => _1218.onDialogClosed, 'optionalCall', _1219 => _1219()]);
48666
+ _optionalChain([callbacks, 'access', _1217 => _1217.onDialogClosed, 'optionalCall', _1218 => _1218()]);
48686
48667
  break;
48687
48668
  default:
48688
48669
  break;
@@ -48732,7 +48713,7 @@ async function fetchSlashCommands(prefix, signal, commandsUrl) {
48732
48713
  const data = await res.json();
48733
48714
  return _nullishCoalesce(data.commands, () => ( []));
48734
48715
  } catch (err) {
48735
- if (_optionalChain([err, 'optionalAccess', _1220 => _1220.name]) === "AbortError") throw err;
48716
+ if (_optionalChain([err, 'optionalAccess', _1219 => _1219.name]) === "AbortError") throw err;
48736
48717
  console.warn("[chat] slash-commands fetch failed, showing none:", err);
48737
48718
  return [];
48738
48719
  }
@@ -48753,7 +48734,7 @@ function useSlashCommands(prefix, commandsUrl) {
48753
48734
  const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
48754
48735
  if (!cancelled) setCommands(next);
48755
48736
  } catch (err) {
48756
- if (!cancelled && _optionalChain([err, 'optionalAccess', _1221 => _1221.name]) !== "AbortError") {
48737
+ if (!cancelled && _optionalChain([err, 'optionalAccess', _1220 => _1220.name]) !== "AbortError") {
48757
48738
  console.warn("[use-slash-commands] fetch failed:", err);
48758
48739
  }
48759
48740
  } finally {
@@ -48772,7 +48753,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
48772
48753
  const query = _reactquery.useQuery.call(void 0, {
48773
48754
  queryKey: ["chat-slash-commands", commandsUrl],
48774
48755
  queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
48775
- enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1222 => _1222.enabled]), () => ( true)),
48756
+ enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1221 => _1221.enabled]), () => ( true)),
48776
48757
  staleTime: Infinity,
48777
48758
  gcTime: Infinity,
48778
48759
  // The commands registry is non-critical chrome — a failure degrades to an
@@ -48811,21 +48792,21 @@ async function fetchEmptyStateConfig(signal, emptyStateUrl) {
48811
48792
  }
48812
48793
  const data = await res.json();
48813
48794
  return {
48814
- name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1223 => _1223.name]), () => ( null)),
48815
- icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1224 => _1224.icon]), () => ( null)),
48816
- greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1225 => _1225.greeting]), () => ( null)),
48817
- enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1226 => _1226.enabledRagTableIds]), () => ( [])),
48818
- quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1227 => _1227.quickActions]), () => ( [])),
48819
- suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1228 => _1228.suggestedQueries]), () => ( []))
48795
+ name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1222 => _1222.name]), () => ( null)),
48796
+ icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1223 => _1223.icon]), () => ( null)),
48797
+ greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1224 => _1224.greeting]), () => ( null)),
48798
+ enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1225 => _1225.enabledRagTableIds]), () => ( [])),
48799
+ quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1226 => _1226.quickActions]), () => ( [])),
48800
+ suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1227 => _1227.suggestedQueries]), () => ( []))
48820
48801
  };
48821
48802
  } catch (err) {
48822
- if (_optionalChain([err, 'optionalAccess', _1229 => _1229.name]) === "AbortError") throw err;
48803
+ if (_optionalChain([err, 'optionalAccess', _1228 => _1228.name]) === "AbortError") throw err;
48823
48804
  console.warn("[chat] empty-state config fetch failed, using neutral defaults:", err);
48824
48805
  return EMPTY_STATE_FALLBACK;
48825
48806
  }
48826
48807
  }
48827
48808
  function useEmptyStateConfig(emptyStateUrl, options) {
48828
- const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1230 => _1230.enabled]), () => ( true))) && !!emptyStateUrl;
48809
+ const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1229 => _1229.enabled]), () => ( true))) && !!emptyStateUrl;
48829
48810
  const query = _reactquery.useQuery.call(void 0, {
48830
48811
  queryKey: ["chat-empty-state", emptyStateUrl],
48831
48812
  queryFn: ({ signal }) => fetchEmptyStateConfig(signal, emptyStateUrl),
@@ -48854,7 +48835,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
48854
48835
  var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
48855
48836
  function uploadWithProgress(url, file, token, onProgress, signal) {
48856
48837
  return new Promise((resolve, reject) => {
48857
- if (_optionalChain([signal, 'optionalAccess', _1231 => _1231.aborted])) {
48838
+ if (_optionalChain([signal, 'optionalAccess', _1230 => _1230.aborted])) {
48858
48839
  reject(new Error("Upload cancelled"));
48859
48840
  return;
48860
48841
  }
@@ -48868,7 +48849,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
48868
48849
  xhr.removeEventListener("error", handleError);
48869
48850
  xhr.removeEventListener("abort", handleAbort);
48870
48851
  xhr.removeEventListener("timeout", handleTimeout);
48871
- _optionalChain([signal, 'optionalAccess', _1232 => _1232.removeEventListener, 'call', _1233 => _1233("abort", handleSignalAbort)]);
48852
+ _optionalChain([signal, 'optionalAccess', _1231 => _1231.removeEventListener, 'call', _1232 => _1232("abort", handleSignalAbort)]);
48872
48853
  if (xhr.readyState !== XMLHttpRequest.DONE) xhr.abort();
48873
48854
  };
48874
48855
  const handleProgress = (event) => {
@@ -48904,7 +48885,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
48904
48885
  const handleSignalAbort = () => {
48905
48886
  xhr.abort();
48906
48887
  };
48907
- _optionalChain([signal, 'optionalAccess', _1234 => _1234.addEventListener, 'call', _1235 => _1235("abort", handleSignalAbort, { once: true })]);
48888
+ _optionalChain([signal, 'optionalAccess', _1233 => _1233.addEventListener, 'call', _1234 => _1234("abort", handleSignalAbort, { once: true })]);
48908
48889
  xhr.upload.addEventListener("progress", handleProgress);
48909
48890
  xhr.addEventListener("load", handleLoad);
48910
48891
  xhr.addEventListener("error", handleError);
@@ -48948,12 +48929,12 @@ function useChatAttachments() {
48948
48929
  try {
48949
48930
  sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
48950
48931
  } catch (err) {
48951
- if (_optionalChain([ctrl, 'optionalAccess', _1236 => _1236.signal, 'access', _1237 => _1237.aborted])) return;
48932
+ if (_optionalChain([ctrl, 'optionalAccess', _1235 => _1235.signal, 'access', _1236 => _1236.aborted])) return;
48952
48933
  throw new Error(
48953
48934
  `Could not read file content: ${err instanceof Error ? err.message : String(err)}`
48954
48935
  );
48955
48936
  }
48956
- if (_optionalChain([ctrl, 'optionalAccess', _1238 => _1238.signal, 'access', _1239 => _1239.aborted])) return;
48937
+ if (_optionalChain([ctrl, 'optionalAccess', _1237 => _1237.signal, 'access', _1238 => _1238.aborted])) return;
48957
48938
  if (!sniffed) {
48958
48939
  throw new Error("Unrecognized file format");
48959
48940
  }
@@ -48967,7 +48948,7 @@ function useChatAttachments() {
48967
48948
  const urlResp = await _chunkVIJARDBMcjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
48968
48949
  method: "POST",
48969
48950
  headers: { "Content-Type": "application/json" },
48970
- signal: _optionalChain([ctrl, 'optionalAccess', _1240 => _1240.signal]),
48951
+ signal: _optionalChain([ctrl, 'optionalAccess', _1239 => _1239.signal]),
48971
48952
  body: JSON.stringify({
48972
48953
  fileName: att.file.name,
48973
48954
  // Pass the SNIFFED MIME (not `file.type`, which can be a
@@ -48993,9 +48974,9 @@ function useChatAttachments() {
48993
48974
  (pct) => {
48994
48975
  updateOne(att.id, { progress: pct });
48995
48976
  },
48996
- _optionalChain([ctrl, 'optionalAccess', _1241 => _1241.signal])
48977
+ _optionalChain([ctrl, 'optionalAccess', _1240 => _1240.signal])
48997
48978
  );
48998
- if (_optionalChain([ctrl, 'optionalAccess', _1242 => _1242.signal, 'access', _1243 => _1243.aborted])) return;
48979
+ if (_optionalChain([ctrl, 'optionalAccess', _1241 => _1241.signal, 'access', _1242 => _1242.aborted])) return;
48999
48980
  updateOne(att.id, {
49000
48981
  status: "ready",
49001
48982
  progress: 100,
@@ -49003,7 +48984,7 @@ function useChatAttachments() {
49003
48984
  viewToken: mintData.viewToken
49004
48985
  });
49005
48986
  } catch (err) {
49006
- if (_optionalChain([ctrl, 'optionalAccess', _1244 => _1244.signal, 'access', _1245 => _1245.aborted])) return;
48987
+ if (_optionalChain([ctrl, 'optionalAccess', _1243 => _1243.signal, 'access', _1244 => _1244.aborted])) return;
49007
48988
  const message2 = err instanceof Error ? err.message : String(err);
49008
48989
  updateOne(att.id, { status: "error", progress: 0, errorMessage: message2 });
49009
48990
  } finally {
@@ -49154,7 +49135,7 @@ var ANON_DEFAULTS = {
49154
49135
  function useResolveChatIdentity(enabled) {
49155
49136
  const runtime = _chunk2B6773QMcjs.useRequiredChatRuntime.call(void 0, );
49156
49137
  const url = runtime.endpoints.identityUrl;
49157
- const proxyEmail = _nullishCoalesce(_optionalChain([_chunkVIJARDBMcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1246 => _1246.email]), () => ( null));
49138
+ const proxyEmail = _nullishCoalesce(_optionalChain([_chunkVIJARDBMcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1245 => _1245.email]), () => ( null));
49158
49139
  const [data, setData] = _react.useState.call(void 0, ANON_DEFAULTS);
49159
49140
  const [isLoading, setIsLoading] = _react.useState.call(void 0, enabled);
49160
49141
  _react.useEffect.call(void 0, () => {
@@ -49245,7 +49226,7 @@ function useSSE({ useMock = true, debugMode = false, streamFn } = {}) {
49245
49226
  yield chunk;
49246
49227
  }
49247
49228
  } catch (err) {
49248
- if (_optionalChain([err, 'optionalAccess', _1247 => _1247.name]) === "AbortError" || ctrl.signal.aborted) {
49229
+ if (_optionalChain([err, 'optionalAccess', _1246 => _1246.name]) === "AbortError" || ctrl.signal.aborted) {
49249
49230
  return;
49250
49231
  }
49251
49232
  const errorMessage = err instanceof Error ? err.message : "An error occurred";
@@ -49296,7 +49277,7 @@ function useChat({
49296
49277
  const onMessagesChangeRef = _react.useRef.call(void 0, onMessagesChange);
49297
49278
  onMessagesChangeRef.current = onMessagesChange;
49298
49279
  _react.useEffect.call(void 0, () => {
49299
- _optionalChain([onMessagesChangeRef, 'access', _1248 => _1248.current, 'optionalCall', _1249 => _1249(messages)]);
49280
+ _optionalChain([onMessagesChangeRef, 'access', _1247 => _1247.current, 'optionalCall', _1248 => _1248(messages)]);
49300
49281
  }, [messages]);
49301
49282
  const {
49302
49283
  streamMessage,
@@ -49333,7 +49314,7 @@ function useChat({
49333
49314
  name: "You",
49334
49315
  content: text,
49335
49316
  timestamp: /* @__PURE__ */ new Date(),
49336
- ..._optionalChain([options, 'optionalAccess', _1250 => _1250.hidden]) ? { hidden: true } : {}
49317
+ ..._optionalChain([options, 'optionalAccess', _1249 => _1249.hidden]) ? { hidden: true } : {}
49337
49318
  };
49338
49319
  addMessage(userMessage);
49339
49320
  setIsTyping(true);
@@ -49395,7 +49376,7 @@ function useChat({
49395
49376
  currentTextSegment = "";
49396
49377
  }
49397
49378
  const seg = segment;
49398
- const proposalId = _optionalChain([seg, 'access', _1251 => _1251.data, 'optionalAccess', _1252 => _1252.requestId]);
49379
+ const proposalId = _optionalChain([seg, 'access', _1250 => _1250.data, 'optionalAccess', _1251 => _1251.requestId]);
49399
49380
  const updateApprovalMessage = (transform) => {
49400
49381
  setMessages((prev) => {
49401
49382
  for (let i = prev.length - 1; i >= 0; i--) {
@@ -49404,7 +49385,7 @@ function useChat({
49404
49385
  if (!Array.isArray(m.content)) continue;
49405
49386
  const segments = m.content;
49406
49387
  const hasMatch = segments.some(
49407
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1253 => _1253.data, 'optionalAccess', _1254 => _1254.requestId]) === proposalId
49388
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1252 => _1252.data, 'optionalAccess', _1253 => _1253.requestId]) === proposalId
49408
49389
  );
49409
49390
  if (!hasMatch) continue;
49410
49391
  const next = [...prev];
@@ -49446,11 +49427,11 @@ function useChat({
49446
49427
  if (!Array.isArray(m.content)) continue;
49447
49428
  const segments = m.content;
49448
49429
  const hasMatch = segments.some(
49449
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1255 => _1255.data, 'optionalAccess', _1256 => _1256.requestId]) === decision.proposalId
49430
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1254 => _1254.data, 'optionalAccess', _1255 => _1255.requestId]) === decision.proposalId
49450
49431
  );
49451
49432
  if (!hasMatch) continue;
49452
49433
  const flipped = segments.map(
49453
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1257 => _1257.data, 'optionalAccess', _1258 => _1258.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
49434
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1256 => _1256.data, 'optionalAccess', _1257 => _1257.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
49454
49435
  );
49455
49436
  const next = [...prev];
49456
49437
  next[i] = { ...m, content: flipped };
@@ -49612,8 +49593,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
49612
49593
  })),
49613
49594
  { role: "user", content: message2 }
49614
49595
  ];
49615
- const targetPath = _optionalChain([extra, 'optionalAccess', _1259 => _1259.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
49616
- const requestBody = _optionalChain([extra, 'optionalAccess', _1260 => _1260.approvalAction]) ? {
49596
+ const targetPath = _optionalChain([extra, 'optionalAccess', _1258 => _1258.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
49597
+ const requestBody = _optionalChain([extra, 'optionalAccess', _1259 => _1259.approvalAction]) ? {
49617
49598
  proposal_id: extra.approvalAction.proposalId,
49618
49599
  action: extra.approvalAction.action,
49619
49600
  messages: currentMessages.filter((m) => (m.role === "user" || m.role === "assistant") && !m.hidden).map((m) => ({
@@ -49622,8 +49603,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
49622
49603
  }))
49623
49604
  } : {
49624
49605
  messages: apiMessages,
49625
- ..._optionalChain([extra, 'optionalAccess', _1261 => _1261.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
49626
- ..._optionalChain([extra, 'optionalAccess', _1262 => _1262.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
49606
+ ..._optionalChain([extra, 'optionalAccess', _1260 => _1260.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
49607
+ ..._optionalChain([extra, 'optionalAccess', _1261 => _1261.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
49627
49608
  };
49628
49609
  const response = await _chunkVIJARDBMcjs.embedAuthedFetch.call(void 0, targetPath, {
49629
49610
  method: "POST",
@@ -49633,7 +49614,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
49633
49614
  if (!response.ok) {
49634
49615
  throw new Error(`Chat request failed: ${response.status}`);
49635
49616
  }
49636
- const reader = _optionalChain([response, 'access', _1263 => _1263.body, 'optionalAccess', _1264 => _1264.getReader, 'call', _1265 => _1265()]);
49617
+ const reader = _optionalChain([response, 'access', _1262 => _1262.body, 'optionalAccess', _1263 => _1263.getReader, 'call', _1264 => _1264()]);
49637
49618
  if (!reader) throw new Error("No response body");
49638
49619
  const decoder = new TextDecoder();
49639
49620
  let buffer = "";
@@ -49716,7 +49697,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
49716
49697
  const toolName = typeof meta.tool_name === "string" ? meta.tool_name : void 0;
49717
49698
  const result = _nullishCoalesce(meta.result, () => ( null));
49718
49699
  const card = _nullishCoalesce(meta.card, () => ( null));
49719
- if (_optionalChain([card, 'optionalAccess', _1266 => _1266.ref, 'optionalAccess', _1267 => _1267.id]) && _optionalChain([card, 'optionalAccess', _1268 => _1268.type])) {
49700
+ if (_optionalChain([card, 'optionalAccess', _1265 => _1265.ref, 'optionalAccess', _1266 => _1266.id]) && _optionalChain([card, 'optionalAccess', _1267 => _1267.type])) {
49720
49701
  const existing = _nullishCoalesce(refsMapRef.current.get(sendIdx), () => ( {}));
49721
49702
  const key = buildChatRefKey(card.type, card.ref.id);
49722
49703
  refsMapRef.current.set(sendIdx, { ...existing, [key]: card.ref });
@@ -49729,8 +49710,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
49729
49710
  willAutoContinue: meta.willAutoContinue === true,
49730
49711
  ...toolName ? { toolName } : {},
49731
49712
  ...result ? { result } : {},
49732
- ..._optionalChain([card, 'optionalAccess', _1269 => _1269.marker]) ? { marker: card.marker } : {},
49733
- ..._optionalChain([card, 'optionalAccess', _1270 => _1270.ref]) ? { cardRef: card.ref } : {},
49713
+ ..._optionalChain([card, 'optionalAccess', _1268 => _1268.marker]) ? { marker: card.marker } : {},
49714
+ ..._optionalChain([card, 'optionalAccess', _1269 => _1269.ref]) ? { cardRef: card.ref } : {},
49734
49715
  ...typeof meta.receiptText === "string" ? { receiptText: meta.receiptText } : {},
49735
49716
  proposalId: typeof meta.proposalId === "string" ? meta.proposalId : void 0
49736
49717
  };
@@ -49849,7 +49830,7 @@ var DEFAULT_CHAT_SOURCE = "embed";
49849
49830
  var chatStorageKey = (source) => {
49850
49831
  const base = `mingo-chat-${source}-v${CHAT_STORAGE_VERSION}`;
49851
49832
  const auth = _chunkVIJARDBMcjs.getEmbedProxyAuth.call(void 0, );
49852
- if (_optionalChain([auth, 'optionalAccess', _1271 => _1271.email])) {
49833
+ if (_optionalChain([auth, 'optionalAccess', _1270 => _1270.email])) {
49853
49834
  return `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}`;
49854
49835
  }
49855
49836
  return base;
@@ -49904,7 +49885,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
49904
49885
  const { active = true } = runtimeOptions;
49905
49886
  const runtime = _chunk2B6773QMcjs.useRequiredChatRuntime.call(void 0, );
49906
49887
  const source = runtime.source || DEFAULT_CHAT_SOURCE;
49907
- const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1272 => _1272.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
49888
+ const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1271 => _1271.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
49908
49889
  const persistedRef = _react.useRef.call(void 0, null);
49909
49890
  if (persistedRef.current === null) {
49910
49891
  pruneStaleChatStorage(source);
@@ -50009,7 +49990,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
50009
49990
  const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
50010
49991
  sources = sourcesMapRef.current.get(lookupIdx);
50011
49992
  chatRefs = _nullishCoalesce(m.chatRefs, () => ( refsMapRef.current.get(lookupIdx)));
50012
- scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1273 => _1273.current, 'access', _1274 => _1274.get, 'call', _1275 => _1275(lookupIdx), 'optionalAccess', _1276 => _1276.scrollAnchor]), () => ( void 0));
49993
+ scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1272 => _1272.current, 'access', _1273 => _1273.get, 'call', _1274 => _1274(lookupIdx), 'optionalAccess', _1275 => _1275.scrollAnchor]), () => ( void 0));
50013
49994
  }
50014
49995
  return {
50015
49996
  id: m.id,
@@ -50057,7 +50038,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
50057
50038
  );
50058
50039
  return;
50059
50040
  }
50060
- const refSlug = typeof _optionalChain([reference, 'access', _1277 => _1277.metadata, 'optionalAccess', _1278 => _1278.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
50041
+ const refSlug = typeof _optionalChain([reference, 'access', _1276 => _1276.metadata, 'optionalAccess', _1277 => _1277.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
50061
50042
  const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
50062
50043
  const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
50063
50044
  const text = `/${cmdId} display "${escaped}"`;
@@ -50129,18 +50110,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
50129
50110
  clearMessages,
50130
50111
  streamingPhase,
50131
50112
  /** Provider key for the lib's `<ModelDisplay>` icon. */
50132
- currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1279 => _1279.provider]), () => ( null)),
50133
- currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1280 => _1280.modelLabel]), () => ( null)),
50134
- currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1281 => _1281.contextWindowMaxTokens]), () => ( null)),
50113
+ currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1278 => _1278.provider]), () => ( null)),
50114
+ currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1279 => _1279.modelLabel]), () => ( null)),
50115
+ currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1280 => _1280.contextWindowMaxTokens]), () => ( null)),
50135
50116
  /** Input tokens (known after server's message_start frame; null until). */
50136
- currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1282 => _1282.inputTokens]), () => ( null)),
50117
+ currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1281 => _1281.inputTokens]), () => ( null)),
50137
50118
  /** Output tokens (known only after server's trailing usage frame). */
50138
- currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1283 => _1283.outputTokens]), () => ( null)),
50119
+ currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1282 => _1282.outputTokens]), () => ( null)),
50139
50120
  /** Cache hit % (read / total-input × 100). null during streaming. */
50140
- currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1284 => _1284.cacheHitRatePct]), () => ( null)),
50121
+ currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1283 => _1283.cacheHitRatePct]), () => ( null)),
50141
50122
  /** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
50142
50123
  * token counts). null until the trailing usage frame lands. */
50143
- currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1285 => _1285.breakdown]), () => ( null)),
50124
+ currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1284 => _1284.breakdown]), () => ( null)),
50144
50125
  // ─── Dialog management — stubs for v1 ────────────────────────────────
50145
50126
  // Guide mode currently keeps its history in `localStorage` opaquely
50146
50127
  // under the hood (`runtime.source` namespaced key). Surfacing that
@@ -50198,15 +50179,15 @@ var noopRejectRequest = async (_id, _reason) => {
50198
50179
 
50199
50180
  // src/components/chat/utils/process-historical-messages.ts
50200
50181
  function getOwnerDisplayName(owner) {
50201
- if (_optionalChain([owner, 'optionalAccess', _1286 => _1286.type]) === OWNER_TYPE.ADMIN && owner.user) {
50182
+ if (_optionalChain([owner, 'optionalAccess', _1285 => _1285.type]) === OWNER_TYPE.ADMIN && owner.user) {
50202
50183
  const { firstName, lastName } = owner.user;
50203
50184
  const name = [firstName, lastName].filter(Boolean).join(" ");
50204
50185
  if (name) return name;
50205
50186
  }
50206
- return _optionalChain([owner, 'optionalAccess', _1287 => _1287.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
50187
+ return _optionalChain([owner, 'optionalAccess', _1286 => _1286.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
50207
50188
  }
50208
50189
  function getOwnerAvatar(owner) {
50209
- return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1288 => _1288.user, 'optionalAccess', _1289 => _1289.image, 'optionalAccess', _1290 => _1290.imageUrl]), () => ( void 0));
50190
+ return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1287 => _1287.user, 'optionalAccess', _1288 => _1288.image, 'optionalAccess', _1289 => _1289.imageUrl]), () => ( void 0));
50210
50191
  }
50211
50192
  function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
50212
50193
  messageDataArray.forEach((data) => {
@@ -50277,14 +50258,14 @@ function processHistoricalMessages(messages, options = {}) {
50277
50258
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
50278
50259
  return;
50279
50260
  }
50280
- const isUserMessage = _optionalChain([msg, 'access', _1291 => _1291.owner, 'optionalAccess', _1292 => _1292.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1293 => _1293.owner, 'optionalAccess', _1294 => _1294.type]) === OWNER_TYPE.ADMIN;
50261
+ const isUserMessage = _optionalChain([msg, 'access', _1290 => _1290.owner, 'optionalAccess', _1291 => _1291.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1292 => _1292.owner, 'optionalAccess', _1293 => _1293.type]) === OWNER_TYPE.ADMIN;
50281
50262
  if (isUserMessage) {
50282
50263
  flushAssistantMessage();
50283
- const userAuthorType = _optionalChain([msg, 'access', _1295 => _1295.owner, 'optionalAccess', _1296 => _1296.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
50264
+ const userAuthorType = _optionalChain([msg, 'access', _1294 => _1294.owner, 'optionalAccess', _1295 => _1295.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
50284
50265
  messageDataArray.forEach((data) => {
50285
50266
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
50286
50267
  const rawContext = data.contextItems;
50287
- const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1297 => _1297.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1298 => _1298.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
50268
+ const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1296 => _1296.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1297 => _1297.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
50288
50269
  processedMessages.push({
50289
50270
  id: msg.id,
50290
50271
  role: "user",
@@ -50314,7 +50295,7 @@ function processHistoricalMessages(messages, options = {}) {
50314
50295
  });
50315
50296
  const nextMsg = messages[index + 1];
50316
50297
  const isLastMessage = index === messages.length - 1;
50317
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1299 => _1299.owner, 'optionalAccess', _1300 => _1300.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1301 => _1301.owner, 'optionalAccess', _1302 => _1302.type]) === OWNER_TYPE.ADMIN);
50298
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1298 => _1298.owner, 'optionalAccess', _1299 => _1299.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1300 => _1300.owner, 'optionalAccess', _1301 => _1301.type]) === OWNER_TYPE.ADMIN);
50318
50299
  if (isLastMessage || nextIsFromUser) {
50319
50300
  flushAssistantMessage();
50320
50301
  }
@@ -50424,7 +50405,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
50424
50405
  }
50425
50406
  }
50426
50407
  } else {
50427
- _optionalChain([escalatedApprovals, 'optionalAccess', _1303 => _1303.set, 'call', _1304 => _1304(data.approvalRequestId, {
50408
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1302 => _1302.set, 'call', _1303 => _1303(data.approvalRequestId, {
50428
50409
  command: data.command || "",
50429
50410
  explanation: data.explanation,
50430
50411
  approvalType,
@@ -50438,8 +50419,8 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
50438
50419
  const existingStatus = approvalStatuses[data.approvalRequestId];
50439
50420
  const status = existingStatus || (data.approved ? "approved" : "rejected");
50440
50421
  const resolvedByName = "resolvedByName" in data ? data.resolvedByName : void 0;
50441
- const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1305 => _1305.get, 'call', _1306 => _1306(data.approvalRequestId)]);
50442
- if (_optionalChain([escalatedData, 'optionalAccess', _1307 => _1307.toolCalls]) && escalatedData.toolCalls.length > 0) {
50422
+ const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1304 => _1304.get, 'call', _1305 => _1305(data.approvalRequestId)]);
50423
+ if (_optionalChain([escalatedData, 'optionalAccess', _1306 => _1306.toolCalls]) && escalatedData.toolCalls.length > 0) {
50443
50424
  if (batchApprovalsEnabled) {
50444
50425
  accumulator.addApprovalBatch(
50445
50426
  data.approvalRequestId,
@@ -50461,7 +50442,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
50461
50442
  );
50462
50443
  }
50463
50444
  }
50464
- _optionalChain([escalatedApprovals, 'optionalAccess', _1308 => _1308.delete, 'call', _1309 => _1309(data.approvalRequestId)]);
50445
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1307 => _1307.delete, 'call', _1308 => _1308(data.approvalRequestId)]);
50465
50446
  break;
50466
50447
  }
50467
50448
  if (escalatedData) {
@@ -50470,7 +50451,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
50470
50451
  explanation: escalatedData.explanation,
50471
50452
  approvalType: escalatedData.approvalType
50472
50453
  });
50473
- _optionalChain([escalatedApprovals, 'optionalAccess', _1310 => _1310.delete, 'call', _1311 => _1311(data.approvalRequestId)]);
50454
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1309 => _1309.delete, 'call', _1310 => _1310(data.approvalRequestId)]);
50474
50455
  }
50475
50456
  const before = accumulator.getSegments();
50476
50457
  const after = accumulator.updateApprovalStatus(data.approvalRequestId, status, resolvedByName);
@@ -50486,9 +50467,9 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
50486
50467
  case MESSAGE_TYPE.ERROR:
50487
50468
  if ("error" in data) {
50488
50469
  let message2;
50489
- if ("details" in data && _optionalChain([data, 'optionalAccess', _1312 => _1312.details])) {
50470
+ if ("details" in data && _optionalChain([data, 'optionalAccess', _1311 => _1311.details])) {
50490
50471
  try {
50491
- message2 = _optionalChain([JSON, 'access', _1313 => _1313.parse, 'call', _1314 => _1314(data.details), 'optionalAccess', _1315 => _1315.error, 'optionalAccess', _1316 => _1316.message]);
50472
+ message2 = _optionalChain([JSON, 'access', _1312 => _1312.parse, 'call', _1313 => _1313(data.details), 'optionalAccess', _1314 => _1314.error, 'optionalAccess', _1315 => _1315.message]);
50492
50473
  } catch (e67) {
50493
50474
  message2 = data.details;
50494
50475
  }
@@ -50571,14 +50552,14 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
50571
50552
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
50572
50553
  return;
50573
50554
  }
50574
- const isUserMessage = _optionalChain([msg, 'access', _1317 => _1317.owner, 'optionalAccess', _1318 => _1318.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1319 => _1319.owner, 'optionalAccess', _1320 => _1320.type]) === OWNER_TYPE.ADMIN;
50555
+ const isUserMessage = _optionalChain([msg, 'access', _1316 => _1316.owner, 'optionalAccess', _1317 => _1317.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1318 => _1318.owner, 'optionalAccess', _1319 => _1319.type]) === OWNER_TYPE.ADMIN;
50575
50556
  if (isUserMessage) {
50576
50557
  flushAssistantMessage();
50577
- const userAuthorType = _optionalChain([msg, 'access', _1321 => _1321.owner, 'optionalAccess', _1322 => _1322.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
50558
+ const userAuthorType = _optionalChain([msg, 'access', _1320 => _1320.owner, 'optionalAccess', _1321 => _1321.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
50578
50559
  messageDataArray.forEach((data) => {
50579
50560
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
50580
50561
  const rawContext = data.contextItems;
50581
- const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1323 => _1323.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1324 => _1324.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
50562
+ const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1322 => _1322.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1323 => _1323.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
50582
50563
  processedMessages.push({
50583
50564
  id: msg.id,
50584
50565
  role: "user",
@@ -50608,7 +50589,7 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
50608
50589
  });
50609
50590
  const nextMsg = messages[index + 1];
50610
50591
  const isLastMessage = index === messages.length - 1;
50611
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1325 => _1325.owner, 'optionalAccess', _1326 => _1326.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1327 => _1327.owner, 'optionalAccess', _1328 => _1328.type]) === OWNER_TYPE.ADMIN);
50592
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1324 => _1324.owner, 'optionalAccess', _1325 => _1325.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1326 => _1326.owner, 'optionalAccess', _1327 => _1327.type]) === OWNER_TYPE.ADMIN);
50612
50593
  if (isLastMessage || nextIsFromUser) {
50613
50594
  flushAssistantMessage();
50614
50595
  }
@@ -50668,7 +50649,7 @@ function extractIncompleteMessageState(lastMessage) {
50668
50649
  break;
50669
50650
  case "approval_batch": {
50670
50651
  const allDone = !!segment.data.executions && segment.data.toolCalls.every(
50671
- (c) => _optionalChain([segment, 'access', _1329 => _1329.data, 'access', _1330 => _1330.executions, 'optionalAccess', _1331 => _1331[c.toolExecutionRequestId], 'optionalAccess', _1332 => _1332.status]) === "done"
50652
+ (c) => _optionalChain([segment, 'access', _1328 => _1328.data, 'access', _1329 => _1329.executions, 'optionalAccess', _1330 => _1330[c.toolExecutionRequestId], 'optionalAccess', _1331 => _1331.status]) === "done"
50672
50653
  );
50673
50654
  if (segment.status !== "rejected" && !allDone) {
50674
50655
  hasIncompleteState = true;
@@ -50735,9 +50716,9 @@ function appendToTrailingAssistant(prev, segments) {
50735
50716
  const merged = [..._nullishCoalesce(last.segments, () => ( []))];
50736
50717
  for (const seg of segments) {
50737
50718
  const tail = merged[merged.length - 1];
50738
- if (seg.type === "text" && _optionalChain([tail, 'optionalAccess', _1333 => _1333.type]) === "text") {
50719
+ if (seg.type === "text" && _optionalChain([tail, 'optionalAccess', _1332 => _1332.type]) === "text") {
50739
50720
  merged[merged.length - 1] = { type: "text", text: tail.text + seg.text };
50740
- } else if (seg.type === "thinking" && _optionalChain([tail, 'optionalAccess', _1334 => _1334.type]) === "thinking") {
50721
+ } else if (seg.type === "thinking" && _optionalChain([tail, 'optionalAccess', _1333 => _1333.type]) === "thinking") {
50741
50722
  merged[merged.length - 1] = { type: "thinking", text: tail.text + seg.text };
50742
50723
  } else if (seg.type === "approval_batch") {
50743
50724
  const idx = merged.findIndex(
@@ -50781,11 +50762,11 @@ function applyToolExecutionToMessages(prev, segment) {
50781
50762
  for (let j = message2.segments.length - 1; j >= 0; j--) {
50782
50763
  const seg = message2.segments[j];
50783
50764
  if (execId && seg.type === "approval_batch" && seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId)) {
50784
- const prevExec = _optionalChain([seg, 'access', _1335 => _1335.data, 'access', _1336 => _1336.executions, 'optionalAccess', _1337 => _1337[execId]]);
50785
- if (toolData.type === "EXECUTING_TOOL" && _optionalChain([prevExec, 'optionalAccess', _1338 => _1338.status]) === "done") {
50765
+ const prevExec = _optionalChain([seg, 'access', _1334 => _1334.data, 'access', _1335 => _1335.executions, 'optionalAccess', _1336 => _1336[execId]]);
50766
+ if (toolData.type === "EXECUTING_TOOL" && _optionalChain([prevExec, 'optionalAccess', _1337 => _1337.status]) === "done") {
50786
50767
  return prev;
50787
50768
  }
50788
- const nextExec = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prevExec, 'optionalAccess', _1339 => _1339.result]), success: _optionalChain([prevExec, 'optionalAccess', _1340 => _1340.success]) };
50769
+ const nextExec = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prevExec, 'optionalAccess', _1338 => _1338.result]), success: _optionalChain([prevExec, 'optionalAccess', _1339 => _1339.success]) };
50789
50770
  const nextSegments = [...message2.segments];
50790
50771
  nextSegments[j] = {
50791
50772
  ...seg,
@@ -50954,11 +50935,11 @@ function useNatsChatAdapter(config, options = {}) {
50954
50935
  }, []);
50955
50936
  const callbacksRef = _react.useRef.call(void 0, {
50956
50937
  onSegmentsUpdate: (segments, meta) => {
50957
- if (_optionalChain([meta, 'optionalAccess', _1341 => _1341.append]) && meta.isCompacting) {
50938
+ if (_optionalChain([meta, 'optionalAccess', _1340 => _1340.append]) && meta.isCompacting) {
50958
50939
  setMessages((prev) => upsertTrailingCompaction(prev, segments));
50959
50940
  return;
50960
50941
  }
50961
- if (_optionalChain([meta, 'optionalAccess', _1342 => _1342.append])) {
50942
+ if (_optionalChain([meta, 'optionalAccess', _1341 => _1341.append])) {
50962
50943
  setMessages((prev) => appendToTrailingAssistant(prev, segments));
50963
50944
  return;
50964
50945
  }
@@ -50971,7 +50952,7 @@ function useNatsChatAdapter(config, options = {}) {
50971
50952
  setMessages((prev) => {
50972
50953
  const last = prev[prev.length - 1];
50973
50954
  if (!last || last.role !== "assistant" || adoptTail) return prev;
50974
- const hasContent = (_nullishCoalesce(_optionalChain([last, 'access', _1343 => _1343.segments, 'optionalAccess', _1344 => _1344.length]), () => ( 0))) > 0 || last.content !== "";
50955
+ const hasContent = (_nullishCoalesce(_optionalChain([last, 'access', _1342 => _1342.segments, 'optionalAccess', _1343 => _1343.length]), () => ( 0))) > 0 || last.content !== "";
50975
50956
  if (!hasContent) return prev;
50976
50957
  return [
50977
50958
  ...prev,
@@ -51043,19 +51024,19 @@ function useNatsChatAdapter(config, options = {}) {
51043
51024
  // MESSAGE_REQUEST echo — a user message from THIS or another session.
51044
51025
  onUserMessage: (text, meta) => {
51045
51026
  if (!text) return;
51046
- const seq = _optionalChain([meta, 'optionalAccess', _1345 => _1345.streamSeq]);
51027
+ const seq = _optionalChain([meta, 'optionalAccess', _1344 => _1344.streamSeq]);
51047
51028
  if (typeof seq === "number") {
51048
51029
  if (seenParticipantSeqsRef.current.has(seq)) return;
51049
51030
  seenParticipantSeqsRef.current.add(seq);
51050
51031
  }
51051
- if (_optionalChain([meta, 'optionalAccess', _1346 => _1346.ownerType]) !== "ADMIN") {
51032
+ if (_optionalChain([meta, 'optionalAccess', _1345 => _1345.ownerType]) !== "ADMIN") {
51052
51033
  const echoIdx = pendingEchoTextsRef.current.indexOf(text);
51053
51034
  if (echoIdx !== -1) {
51054
51035
  pendingEchoTextsRef.current.splice(echoIdx, 1);
51055
51036
  return;
51056
51037
  }
51057
51038
  }
51058
- const authorType = _optionalChain([meta, 'optionalAccess', _1347 => _1347.ownerType]) === "ADMIN" ? "admin" : "user";
51039
+ const authorType = _optionalChain([meta, 'optionalAccess', _1346 => _1346.ownerType]) === "ADMIN" ? "admin" : "user";
51059
51040
  setMessages((prev) => {
51060
51041
  if (typeof seq !== "number" && hasRecentMessage(
51061
51042
  prev,
@@ -51070,9 +51051,9 @@ function useNatsChatAdapter(config, options = {}) {
51070
51051
  id: nextId("user"),
51071
51052
  role: "user",
51072
51053
  content: text,
51073
- ..._optionalChain([meta, 'optionalAccess', _1348 => _1348.displayName]) ? { name: meta.displayName } : {},
51054
+ ..._optionalChain([meta, 'optionalAccess', _1347 => _1347.displayName]) ? { name: meta.displayName } : {},
51074
51055
  authorType,
51075
- ..._optionalChain([meta, 'optionalAccess', _1349 => _1349.contextItems]) && meta.contextItems.length > 0 ? {
51056
+ ..._optionalChain([meta, 'optionalAccess', _1348 => _1348.contextItems]) && meta.contextItems.length > 0 ? {
51076
51057
  contextItems: meta.contextItems.map((ci) => ({
51077
51058
  type: ci.type,
51078
51059
  id: ci.id,
@@ -51086,7 +51067,7 @@ function useNatsChatAdapter(config, options = {}) {
51086
51067
  // Technician / admin direct message into the dialog.
51087
51068
  onDirectMessage: (text, meta) => {
51088
51069
  if (!text) return;
51089
- const seq = _optionalChain([meta, 'optionalAccess', _1350 => _1350.streamSeq]);
51070
+ const seq = _optionalChain([meta, 'optionalAccess', _1349 => _1349.streamSeq]);
51090
51071
  if (typeof seq === "number") {
51091
51072
  if (seenParticipantSeqsRef.current.has(seq)) return;
51092
51073
  seenParticipantSeqsRef.current.add(seq);
@@ -51105,7 +51086,7 @@ function useNatsChatAdapter(config, options = {}) {
51105
51086
  id: `direct-${Date.now()}-${Math.random().toString(36).slice(2, 7)}`,
51106
51087
  role: "user",
51107
51088
  content: text,
51108
- name: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _1351 => _1351.displayName]), () => ( "Admin")),
51089
+ name: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _1350 => _1350.displayName]), () => ( "Admin")),
51109
51090
  authorType: "admin"
51110
51091
  }
51111
51092
  ];
@@ -51115,7 +51096,7 @@ function useNatsChatAdapter(config, options = {}) {
51115
51096
  // processor produces via `pushStandaloneMessages`).
51116
51097
  onSystemMessage: (text, meta) => {
51117
51098
  if (!text) return;
51118
- const seq = _optionalChain([meta, 'optionalAccess', _1352 => _1352.streamSeq]);
51099
+ const seq = _optionalChain([meta, 'optionalAccess', _1351 => _1351.streamSeq]);
51119
51100
  if (typeof seq === "number") {
51120
51101
  if (seenParticipantSeqsRef.current.has(seq)) return;
51121
51102
  seenParticipantSeqsRef.current.add(seq);
@@ -51347,7 +51328,7 @@ function useNatsChatAdapter(config, options = {}) {
51347
51328
  }, [active, fetchDialogs, loadDialogsPage]);
51348
51329
  const sendMessage = _react.useCallback.call(void 0,
51349
51330
  async (text, sendOptions) => {
51350
- const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1353 => _1353.hidden]), () => ( false));
51331
+ const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1352 => _1352.hidden]), () => ( false));
51351
51332
  pendingEchoTextsRef.current.push(text);
51352
51333
  if (pendingEchoTextsRef.current.length > 5) pendingEchoTextsRef.current.shift();
51353
51334
  setMessages((prev) => [
@@ -51513,11 +51494,11 @@ function useNatsChatAdapter(config, options = {}) {
51513
51494
  // Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
51514
51495
  // contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
51515
51496
  // matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
51516
- currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1354 => _1354.provider]), () => ( modelProvider)), () => ( null)),
51517
- currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1355 => _1355.modelLabel]), () => ( modelLabel)), () => ( null)),
51518
- currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1356 => _1356.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1357 => _1357.contextWindowMaxTokens]))), () => ( null)),
51519
- currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1358 => _1358.inputTokensSize]), () => ( null)),
51520
- currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1359 => _1359.outputTokensSize]), () => ( null)),
51497
+ currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1353 => _1353.provider]), () => ( modelProvider)), () => ( null)),
51498
+ currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1354 => _1354.modelLabel]), () => ( modelLabel)), () => ( null)),
51499
+ currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1355 => _1355.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1356 => _1356.contextWindowMaxTokens]))), () => ( null)),
51500
+ currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1357 => _1357.inputTokensSize]), () => ( null)),
51501
+ currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1358 => _1358.outputTokensSize]), () => ( null)),
51521
51502
  currentCacheHitRatePct: null,
51522
51503
  currentUsageBreakdown: null,
51523
51504
  // Dialog management
@@ -51774,20 +51755,20 @@ function mergeHistoryWithRealtime(input) {
51774
51755
  const seqCoverageKnown = realtimeSeenStreamSeq > 0 && historyMaxStreamSeq > 0;
51775
51756
  const historyCoversRealtime = seqCoverageKnown ? historyMaxStreamSeq >= realtimeSeenStreamSeq : null;
51776
51757
  const trailing = processedHistory[processedHistory.length - 1];
51777
- const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1360 => _1360.role]) === "assistant" ? trailing : null;
51778
- const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1361 => _1361.content, 'access', _1362 => _1362.find, 'call', _1363 => _1363((s) => s.type === "approval_batch"), 'optionalAccess', _1364 => _1364.data, 'optionalAccess', _1365 => _1365.approvalRequestId]), () => ( null)) : null;
51758
+ const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1359 => _1359.role]) === "assistant" ? trailing : null;
51759
+ const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1360 => _1360.content, 'access', _1361 => _1361.find, 'call', _1362 => _1362((s) => s.type === "approval_batch"), 'optionalAccess', _1363 => _1363.data, 'optionalAccess', _1364 => _1364.approvalRequestId]), () => ( null)) : null;
51779
51760
  let processedToUse = processedHistory;
51780
51761
  const pinnedSyntheticIds = /* @__PURE__ */ new Set();
51781
51762
  const droppedSyntheticIds = /* @__PURE__ */ new Set();
51782
51763
  if (historyBatchId) {
51783
51764
  const batchTwins = existingMessages.filter(
51784
51765
  (m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some(
51785
- (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1366 => _1366.data, 'optionalAccess', _1367 => _1367.approvalRequestId]) === historyBatchId
51766
+ (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1365 => _1365.data, 'optionalAccess', _1366 => _1366.approvalRequestId]) === historyBatchId
51786
51767
  )
51787
51768
  );
51788
51769
  const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
51789
51770
  if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
51790
- const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1368 => _1368.content])) ? historyTrailingAssistant.content.length : 0;
51771
+ const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1367 => _1367.content])) ? historyTrailingAssistant.content.length : 0;
51791
51772
  const realtimeSize = existingWithSameBatch.content.length;
51792
51773
  if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
51793
51774
  processedToUse = processedHistory.slice(0, -1);
@@ -51803,16 +51784,16 @@ function mergeHistoryWithRealtime(input) {
51803
51784
  if (pinnedSyntheticIds.has(m.id)) return true;
51804
51785
  if (droppedSyntheticIds.has(m.id)) return false;
51805
51786
  if (processedIds.has(m.id)) return false;
51806
- if (_optionalChain([rawHistoryIds, 'optionalAccess', _1369 => _1369.has, 'call', _1370 => _1370(m.id)])) return false;
51787
+ if (_optionalChain([rawHistoryIds, 'optionalAccess', _1368 => _1368.has, 'call', _1369 => _1369(m.id)])) return false;
51807
51788
  if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
51808
- const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1371 => _1371.timestamp, 'optionalAccess', _1372 => _1372.getTime, 'call', _1373 => _1373()]), () => ( 0))) <= historyFetchedAt;
51789
+ const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1370 => _1370.timestamp, 'optionalAccess', _1371 => _1371.getTime, 'call', _1372 => _1372()]), () => ( 0))) <= historyFetchedAt;
51809
51790
  return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
51810
51791
  }
51811
51792
  if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
51812
51793
  if (m.role === "assistant" && trailingAssistantText && assistantAnswerText(m.content) === trailingAssistantText) {
51813
51794
  return false;
51814
51795
  }
51815
- const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1374 => _1374.timestamp, 'optionalAccess', _1375 => _1375.getTime, 'call', _1376 => _1376()]), () => ( 0))) <= historyFetchedAt;
51796
+ const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1373 => _1373.timestamp, 'optionalAccess', _1374 => _1374.getTime, 'call', _1375 => _1375()]), () => ( 0))) <= historyFetchedAt;
51816
51797
  if (covered) return false;
51817
51798
  }
51818
51799
  return true;
@@ -51867,7 +51848,7 @@ function normalizeHistoricalMessageData(md) {
51867
51848
  function isHistoricalUserTurn(m) {
51868
51849
  return !!m.owner;
51869
51850
  }
51870
- var isTextSegment = (d) => _optionalChain([d, 'optionalAccess', _1377 => _1377.type]) === "TEXT" && typeof d.text === "string";
51851
+ var isTextSegment = (d) => _optionalChain([d, 'optionalAccess', _1376 => _1376.type]) === "TEXT" && typeof d.text === "string";
51871
51852
  var THINK_MS = 550;
51872
51853
  var TOKEN_MS = 55;
51873
51854
  var USER_MS = 480;
@@ -52108,7 +52089,7 @@ function useChatDialogManager({
52108
52089
  const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
52109
52090
  if (restoreTarget) {
52110
52091
  try {
52111
- await _optionalChain([unarchiveDialog, 'optionalCall', _1378 => _1378(restoreTarget.id)]);
52092
+ await _optionalChain([unarchiveDialog, 'optionalCall', _1377 => _1377(restoreTarget.id)]);
52112
52093
  } catch (err) {
52113
52094
  console.error("[useChatDialogManager] unarchive failed:", err);
52114
52095
  return;
@@ -52581,7 +52562,7 @@ function EmbeddableChatInner({
52581
52562
  }),
52582
52563
  [commandsUrl]
52583
52564
  );
52584
- const headerUserName = _optionalChain([identityUser, 'optionalAccess', _1379 => _1379.name, 'optionalAccess', _1380 => _1380.trim, 'call', _1381 => _1381()]) || [_optionalChain([identityUser, 'optionalAccess', _1382 => _1382.firstName]), _optionalChain([identityUser, 'optionalAccess', _1383 => _1383.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([userDisplayName, 'optionalAccess', _1384 => _1384.trim, 'call', _1385 => _1385()]) || void 0;
52565
+ const headerUserName = _optionalChain([identityUser, 'optionalAccess', _1378 => _1378.name, 'optionalAccess', _1379 => _1379.trim, 'call', _1380 => _1380()]) || [_optionalChain([identityUser, 'optionalAccess', _1381 => _1381.firstName]), _optionalChain([identityUser, 'optionalAccess', _1382 => _1382.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([userDisplayName, 'optionalAccess', _1383 => _1383.trim, 'call', _1384 => _1384()]) || void 0;
52585
52566
  const effectiveModes = _react.useMemo.call(void 0, () => {
52586
52567
  if (modes) return modes;
52587
52568
  const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
@@ -52590,19 +52571,19 @@ function EmbeddableChatInner({
52590
52571
  const mingoCaps = _react.useMemo.call(void 0, () => {
52591
52572
  if (mingoState) {
52592
52573
  return {
52593
- canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1386 => _1386.canRename]), () => ( false)),
52594
- canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1387 => _1387.canArchive]), () => ( false)),
52595
- fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1388 => _1388.fetchArchivedDialogs]),
52596
- unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1389 => _1389.unarchiveDialog]),
52597
- searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1390 => _1390.searchQuery]),
52598
- onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1391 => _1391.onSearchChange])
52574
+ canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1385 => _1385.canRename]), () => ( false)),
52575
+ canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1386 => _1386.canArchive]), () => ( false)),
52576
+ fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1387 => _1387.fetchArchivedDialogs]),
52577
+ unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1388 => _1388.unarchiveDialog]),
52578
+ searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1389 => _1389.searchQuery]),
52579
+ onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1390 => _1390.onSearchChange])
52599
52580
  };
52600
52581
  }
52601
52582
  return {
52602
- canRename: !!_optionalChain([effectiveModes, 'access', _1392 => _1392.mingo, 'optionalAccess', _1393 => _1393.renameDialog]),
52603
- canArchive: !!_optionalChain([effectiveModes, 'access', _1394 => _1394.mingo, 'optionalAccess', _1395 => _1395.archiveDialog]),
52604
- fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1396 => _1396.mingo, 'optionalAccess', _1397 => _1397.fetchArchivedDialogs]),
52605
- unarchiveDialog: _optionalChain([effectiveModes, 'access', _1398 => _1398.mingo, 'optionalAccess', _1399 => _1399.unarchiveDialog]),
52583
+ canRename: !!_optionalChain([effectiveModes, 'access', _1391 => _1391.mingo, 'optionalAccess', _1392 => _1392.renameDialog]),
52584
+ canArchive: !!_optionalChain([effectiveModes, 'access', _1393 => _1393.mingo, 'optionalAccess', _1394 => _1394.archiveDialog]),
52585
+ fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1395 => _1395.mingo, 'optionalAccess', _1396 => _1396.fetchArchivedDialogs]),
52586
+ unarchiveDialog: _optionalChain([effectiveModes, 'access', _1397 => _1397.mingo, 'optionalAccess', _1398 => _1398.unarchiveDialog]),
52606
52587
  searchQuery: void 0,
52607
52588
  onSearchChange: void 0
52608
52589
  };
@@ -52616,7 +52597,7 @@ function EmbeddableChatInner({
52616
52597
  if (controlledActiveMode === void 0) {
52617
52598
  setUncontrolledActiveMode(next);
52618
52599
  }
52619
- _optionalChain([onActiveModeChange, 'optionalCall', _1400 => _1400(next)]);
52600
+ _optionalChain([onActiveModeChange, 'optionalCall', _1399 => _1399(next)]);
52620
52601
  },
52621
52602
  [controlledActiveMode, onActiveModeChange]
52622
52603
  );
@@ -52638,7 +52619,7 @@ function EmbeddableChatInner({
52638
52619
  const effectiveQuickActions = emptyStateUrl ? emptyStateConfig.quickActions : [];
52639
52620
  const effectiveAssistantName = emptyStateConfig.name;
52640
52621
  const effectiveAssistantIcon = emptyStateConfig.icon;
52641
- const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1401 => _1401.title]) === "string" ? guideWelcome.title : null)));
52622
+ const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1400 => _1400.title]) === "string" ? guideWelcome.title : null)));
52642
52623
  const {
52643
52624
  messages: rawMessages,
52644
52625
  isLoading: chatLoading,
@@ -52678,7 +52659,7 @@ function EmbeddableChatInner({
52678
52659
  if (activeMode !== "guide" || guidePromptSentRef.current) return;
52679
52660
  guidePromptSentRef.current = true;
52680
52661
  void sendMessage(guidePendingPrompt);
52681
- _optionalChain([onGuidePromptConsumed, 'optionalCall', _1402 => _1402()]);
52662
+ _optionalChain([onGuidePromptConsumed, 'optionalCall', _1401 => _1401()]);
52682
52663
  }, [guidePendingPrompt, activeMode, sendMessage, onGuidePromptConsumed]);
52683
52664
  const {
52684
52665
  attachments: stagedAttachments,
@@ -52689,7 +52670,7 @@ function EmbeddableChatInner({
52689
52670
  clear: clearAttachments
52690
52671
  } = useChatAttachments();
52691
52672
  const { panelRef: galleryPanelRef, modal: galleryModal } = useChatAttachmentImageGallery();
52692
- const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1403 => _1403.maxItems]), () => ( 10));
52673
+ const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1402 => _1402.maxItems]), () => ( 10));
52693
52674
  const contextPickerForMode = activeMode === "mingo" ? contextPicker : void 0;
52694
52675
  const [contextItems, setContextItems] = _react.useState.call(void 0, []);
52695
52676
  const [contextPickerOpen, setContextPickerOpen] = _react.useState.call(void 0, false);
@@ -52706,10 +52687,10 @@ function EmbeddableChatInner({
52706
52687
  }, [activeDialogId, activeMode]);
52707
52688
  const mentionMarkerByType = _react.useMemo.call(void 0, () => {
52708
52689
  const m = /* @__PURE__ */ new Map();
52709
- for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1404 => _1404.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
52690
+ for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1403 => _1403.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
52710
52691
  return m;
52711
- }, [_optionalChain([contextPicker, 'optionalAccess', _1405 => _1405.entityTypes])]);
52712
- const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1406 => _1406.entityTypes]);
52692
+ }, [_optionalChain([contextPicker, 'optionalAccess', _1404 => _1404.entityTypes])]);
52693
+ const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1405 => _1405.entityTypes]);
52713
52694
  const resolveContextIcon = _react.useMemo.call(void 0, () => {
52714
52695
  const byType = /* @__PURE__ */ new Map();
52715
52696
  for (const t of _nullishCoalesce(contextEntityTypes, () => ( []))) byType.set(t.type, t.icon);
@@ -52721,7 +52702,7 @@ function EmbeddableChatInner({
52721
52702
  if (mentionActiveRef.current) {
52722
52703
  if (contextItems.some((p) => `${p.type}:${p.id}` === key)) return;
52723
52704
  if (contextItems.length >= contextMaxItems) return;
52724
- _optionalChain([chatInputRef, 'access', _1407 => _1407.current, 'optionalAccess', _1408 => _1408.commitMention, 'call', _1409 => _1409(mentionTokenOf(key, mentionMarkerByType), {
52705
+ _optionalChain([chatInputRef, 'access', _1406 => _1406.current, 'optionalAccess', _1407 => _1407.commitMention, 'call', _1408 => _1408(mentionTokenOf(key, mentionMarkerByType), {
52725
52706
  label: item.label,
52726
52707
  icon: resolveContextIcon(item)
52727
52708
  })]);
@@ -52743,9 +52724,9 @@ function EmbeddableChatInner({
52743
52724
  setContextItems((prev) => prev.filter((p) => `${p.type}:${p.id}` !== key));
52744
52725
  if (mentionKeysRef.current.has(key)) {
52745
52726
  mentionKeysRef.current.delete(key);
52746
- const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1410 => _1410.current, 'optionalAccess', _1411 => _1411.getValue, 'call', _1412 => _1412()]), () => ( ""));
52727
+ const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1409 => _1409.current, 'optionalAccess', _1410 => _1410.getValue, 'call', _1411 => _1411()]), () => ( ""));
52747
52728
  const next = cur.replace(`@${mentionTokenOf(key, mentionMarkerByType)}`, "").replace(/\s{2,}/g, " ").trimStart();
52748
- _optionalChain([chatInputRef, 'access', _1413 => _1413.current, 'optionalAccess', _1414 => _1414.setValue, 'call', _1415 => _1415(next)]);
52729
+ _optionalChain([chatInputRef, 'access', _1412 => _1412.current, 'optionalAccess', _1413 => _1413.setValue, 'call', _1414 => _1414(next)]);
52749
52730
  }
52750
52731
  }, [mentionMarkerByType]);
52751
52732
  const handleContextValueChange = _react.useCallback.call(void 0, (value) => {
@@ -52762,7 +52743,7 @@ function EmbeddableChatInner({
52762
52743
  }, []);
52763
52744
  const closeContextPicker = _react.useCallback.call(void 0, () => {
52764
52745
  if (mentionActiveRef.current) {
52765
- _optionalChain([chatInputRef, 'access', _1416 => _1416.current, 'optionalAccess', _1417 => _1417.removeMentionTrigger, 'call', _1418 => _1418()]);
52746
+ _optionalChain([chatInputRef, 'access', _1415 => _1415.current, 'optionalAccess', _1416 => _1416.removeMentionTrigger, 'call', _1417 => _1417()]);
52766
52747
  }
52767
52748
  setContextPickerOpen(false);
52768
52749
  setMentionQuery(null);
@@ -52796,8 +52777,8 @@ function EmbeddableChatInner({
52796
52777
  [effectiveAssistantIcon]
52797
52778
  );
52798
52779
  const timestampCacheRef = _react.useRef.call(void 0, /* @__PURE__ */ new Map());
52799
- const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1419 => _1419.firstName]), _optionalChain([identityUser, 'optionalAccess', _1420 => _1420.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1421 => _1421.name, 'optionalAccess', _1422 => _1422.trim, 'call', _1423 => _1423()]) || void 0 : void 0;
52800
- const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1424 => _1424.avatarUrl, 'optionalAccess', _1425 => _1425.trim, 'call', _1426 => _1426()]) || void 0 : void 0;
52780
+ const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1418 => _1418.firstName]), _optionalChain([identityUser, 'optionalAccess', _1419 => _1419.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1420 => _1420.name, 'optionalAccess', _1421 => _1421.trim, 'call', _1422 => _1422()]) || void 0 : void 0;
52781
+ const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1423 => _1423.avatarUrl, 'optionalAccess', _1424 => _1424.trim, 'call', _1425 => _1425()]) || void 0 : void 0;
52801
52782
  const messages = _react.useMemo.call(void 0, () => {
52802
52783
  const cache = timestampCacheRef.current;
52803
52784
  const seenIds = /* @__PURE__ */ new Set();
@@ -52977,9 +52958,9 @@ function EmbeddableChatInner({
52977
52958
  const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
52978
52959
  const lastSources = _react.useMemo.call(void 0, () => {
52979
52960
  if (chatLoading) return void 0;
52980
- const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1427 => _1427.sources]);
52961
+ const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1426 => _1426.sources]);
52981
52962
  if (!sources || sources.length === 0) return void 0;
52982
- const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1428 => _1428.content]) || "";
52963
+ const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1427 => _1427.content]) || "";
52983
52964
  const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
52984
52965
  (m) => parseInt(m[1], 10)
52985
52966
  );
@@ -52998,7 +52979,7 @@ function EmbeddableChatInner({
52998
52979
  const el = panelMeasureRef.current;
52999
52980
  if (!el || typeof ResizeObserver === "undefined") return;
53000
52981
  const ro = new ResizeObserver((entries) => {
53001
- const w = _optionalChain([entries, 'access', _1429 => _1429[0], 'optionalAccess', _1430 => _1430.contentRect, 'optionalAccess', _1431 => _1431.width]);
52982
+ const w = _optionalChain([entries, 'access', _1428 => _1428[0], 'optionalAccess', _1429 => _1429.contentRect, 'optionalAccess', _1430 => _1430.width]);
53002
52983
  if (typeof w === "number") setPanelWidth(w);
53003
52984
  });
53004
52985
  ro.observe(el);
@@ -53037,7 +53018,7 @@ function EmbeddableChatInner({
53037
53018
  const isMingoMode = activeMode === "mingo";
53038
53019
  const stackedListView = isMingoMode && !hasConversation && !archiveOpen && !wideMingo && !composeOpen;
53039
53020
  const headerShowBack = hasConversation || guideCanReturnToMingo;
53040
- const headerTitle = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1432 => _1432.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats";
53021
+ const headerTitle = hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1431 => _1431.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats";
53041
53022
  const headerBackAriaLabel = hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo";
53042
53023
  const headerOnBack = hasConversation ? handleBack : () => handleActiveModeChange("mingo");
53043
53024
  const headerOnRestore = isViewingArchived && unarchiveDialog && activeDialog ? () => setRestoreTarget(activeDialog) : void 0;
@@ -53376,9 +53357,9 @@ function EmbeddableChatInner({
53376
53357
  subtitle: _nullishCoalesce(effectiveGreeting, () => ( void 0)),
53377
53358
  subtitleLoading: emptyStateLoading,
53378
53359
  ...guideWelcome,
53379
- title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1433 => _1433.title]))),
53380
- icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1434 => _1434.icon]))),
53381
- quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1435 => _1435.quickActions]), () => ( guideSuggestedActions)),
53360
+ title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1432 => _1432.title]))),
53361
+ icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1433 => _1433.icon]))),
53362
+ quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1434 => _1434.quickActions]), () => ( guideSuggestedActions)),
53382
53363
  onQuickAction: (action) => {
53383
53364
  setQuickActionPreview(null);
53384
53365
  handleSend(_nullishCoalesce(action.prompt, () => ( action.label)));
@@ -54538,4 +54519,4 @@ function EmbeddableChatInner({
54538
54519
 
54539
54520
 
54540
54521
  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.DateFilterPanel = DateFilterPanel; 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.DESIGN_PALETTE = DESIGN_PALETTE; exports.getContrastRatio = getContrastRatio; exports.pickReadableTextColor = pickReadableTextColor; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.getReadableTextColor = getReadableTextColor; exports.HEX_PATTERN = HEX_PATTERN; exports.hexToRgb = hexToRgb2; 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.useScrollFade = useScrollFade; exports.ScrollFadeOverlay = ScrollFadeOverlay; 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.OVERLAY_BACKDROP_CLASS = OVERLAY_BACKDROP_CLASS; 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.CrossfadePanels = CrossfadePanels; 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.FadePreview = FadePreview; exports.Progress = Progress; exports.VideoPlayBadge = VideoPlayBadge; exports.VideoUnmuteGlyph = VideoUnmuteGlyph; 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.SlackChannelChip = SlackChannelChip; exports.statusBadgeVariants = statusBadgeVariants; exports.genBadgeBgOpacity = genBadgeBgOpacity; exports.generationTierFromLabel = generationTierFromLabel; exports.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.CommandBlock = CommandBlock; exports.ApprovalStatusTag = ApprovalStatusTag; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.ThinkingDisplay = ThinkingDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.MspOrganizationCard = MspOrganizationCard; exports.MspOrganizationCardSkeleton = MspOrganizationCardSkeleton; 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.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.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.FAE_AVATAR_DATA_URI = FAE_AVATAR_DATA_URI; exports.AgentMark = AgentMark; exports.EntityIcon = EntityIcon; exports.getAgentAccent = getAgentAccent; exports.accentFromIdentityIcon = accentFromIdentityIcon; exports.renderQuickActionIcon = renderQuickActionIcon; exports.QuickActionChipSkeleton = QuickActionChipSkeleton; exports.QuickActionChipButton = QuickActionChipButton; exports.ChatQuickActionRow = ChatQuickActionRow; exports.ChatQuickActionRowSkeleton = ChatQuickActionRowSkeleton; exports.QuickActionMarquee = QuickActionMarquee; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.GuideModeBanner = GuideModeBanner; exports.MingoHistoryRail = MingoHistoryRail; exports.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.ChatHeaderSearchField = ChatHeaderSearchField; 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.useCoverImageFallback = useCoverImageFallback; exports.hideOnError = hideOnError; exports.EntityPortraitCard = EntityPortraitCard; exports.FlamingoLogo = FlamingoLogo2; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.getProxiedImageUrl2 = getProxiedImageUrl2; exports.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_TO_CSS_ASPECT = RATIO_TO_CSS_ASPECT; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.DEFAULT_VIDEO_BITES_TITLE = DEFAULT_VIDEO_BITES_TITLE; exports.toStripProfile = toStripProfile; exports.sortBitesByCreatedAtDesc = sortBitesByCreatedAtDesc; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.SECTION_HEADING_CLASS = SECTION_HEADING_CLASS; exports.PageHeading = PageHeading; exports.STRIP_CELL_MAX_WIDTH = STRIP_CELL_MAX_WIDTH; exports.CardsStrip = CardsStrip; exports.UserDisplay = UserDisplay; exports.VideoBitesStrip = VideoBitesStrip; 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.programItemToStripProfile = programItemToStripProfile; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; 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.APPROVAL_BLOCK_VARIANT = APPROVAL_BLOCK_VARIANT; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.buildChatRefKey = buildChatRefKey; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.useChunkCatchup = useChunkCatchup; exports.useScriptedStream = useScriptedStream; 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.extractIncompleteMessageState = extractIncompleteMessageState; exports.appendToTrailingAssistant = appendToTrailingAssistant; exports.upsertTrailingCompaction = upsertTrailingCompaction; exports.applyToolExecutionToMessages = applyToolExecutionToMessages; exports.mapProcessedToUnified = mapProcessedToUnified; exports.historicalToUnified = historicalToUnified; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; 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.normalizeHistoricalMessageData = normalizeHistoricalMessageData; exports.isHistoricalUserTurn = isHistoricalUserTurn; exports.buildStreamFrames = buildStreamFrames; 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.SEO_DESCRIPTION_MAX_LENGTH = SEO_DESCRIPTION_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.BITE_ID_RE = BITE_ID_RE; exports.generateBiteId = generateBiteId; exports.ensureBiteIds = ensureBiteIds; exports.matchBiteElement = matchBiteElement; 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.announcementDismissCookieName = announcementDismissCookieName; exports.isDismissedCookieValue = isDismissedCookieValue; exports.dismissAnnouncement = dismissAnnouncement; exports.isAnnouncementDismissed = isAnnouncementDismissed; exports.clearAnnouncementDismissals = clearAnnouncementDismissals; exports.clearLegacyAnnouncementCache = clearLegacyAnnouncementCache; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.ANNOUNCEMENT_CTA_DEFAULTS = ANNOUNCEMENT_CTA_DEFAULTS; 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.InfoCardRow = InfoCardRow; 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.AuthBenefitsPanel = AuthBenefitsPanel; exports.OpenFrameWordmark = OpenFrameWordmark; exports.PoweredByFlamingo = PoweredByFlamingo; exports.AuthShell = AuthShell; exports.BackToLoginLink = BackToLoginLink; exports.PasswordInput = PasswordInput; exports.PROVIDER_META = PROVIDER_META; exports.SsoProviderButtons = SsoProviderButtons; exports.CompleteAccountForm = CompleteAccountForm; exports.TermsAgreementLabel = TermsAgreementLabel; exports.CreateOrganizationForm = CreateOrganizationForm; exports.InviteLinkInvalidModal = InviteLinkInvalidModal; exports.LoginForm = LoginForm; exports.OpenFrameSsoLoginForm = OpenFrameSsoLoginForm; exports.OpenFrameSsoSignUpForm = OpenFrameSsoSignUpForm; exports.PasswordResetForm = PasswordResetForm; exports.SsoAuthShell = SsoAuthShell; 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.VideoBitesDisplay = VideoBitesDisplay; 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.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; 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.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.TicketCardBody = TicketCardBody; exports.TicketCardView = TicketCardView; 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.MOBILE_NAV_PANEL_ID = MOBILE_NAV_PANEL_ID; exports.MobileNavPanel = MobileNavPanel; exports.MingoAiButton = MingoAiButton; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; 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.AppLayout = AppLayout; 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;
54541
- //# sourceMappingURL=chunk-QL2EI56X.cjs.map
54522
+ //# sourceMappingURL=chunk-BAUWT7PV.cjs.map