@flamingo-stack/openframe-frontend-core 0.0.386-snapshot.20260708181552 → 0.0.386

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 (91) hide show
  1. package/dist/{chunk-SGULN3RX.cjs → chunk-2KDXNL7M.cjs} +7 -7
  2. package/dist/{chunk-SGULN3RX.cjs.map → chunk-2KDXNL7M.cjs.map} +1 -1
  3. package/dist/{chunk-EULRZYQH.js → chunk-53R2NLYW.js} +4 -4
  4. package/dist/{chunk-RUHE3RJK.cjs → chunk-5I4ERVP4.cjs} +57 -57
  5. package/dist/{chunk-RUHE3RJK.cjs.map → chunk-5I4ERVP4.cjs.map} +1 -1
  6. package/dist/{chunk-POJRURML.cjs → chunk-5O2QED4E.cjs} +37 -37
  7. package/dist/{chunk-POJRURML.cjs.map → chunk-5O2QED4E.cjs.map} +1 -1
  8. package/dist/{chunk-OX75ZFN6.js → chunk-7DVZECFW.js} +2 -2
  9. package/dist/{chunk-N2LW5NHS.js → chunk-ACKCFE7D.js} +2 -2
  10. package/dist/{chunk-MVY4ZKQR.js → chunk-ACYF5YVM.js} +2 -2
  11. package/dist/{chunk-44ENRZZJ.cjs → chunk-CIBBHSCP.cjs} +12 -12
  12. package/dist/{chunk-44ENRZZJ.cjs.map → chunk-CIBBHSCP.cjs.map} +1 -1
  13. package/dist/{chunk-DO7LOWFE.cjs → chunk-DN5AIYP4.cjs} +9 -9
  14. package/dist/{chunk-DO7LOWFE.cjs.map → chunk-DN5AIYP4.cjs.map} +1 -1
  15. package/dist/{chunk-EHVRW3WB.js → chunk-IDF4BZHL.js} +2 -2
  16. package/dist/{chunk-3BPVTHOW.js → chunk-K557GA5G.js} +4 -4
  17. package/dist/{chunk-GPTS2NXW.js → chunk-L5FDBXYI.js} +4 -4
  18. package/dist/{chunk-CIH2LZI7.cjs → chunk-LDOEIJIA.cjs} +62 -62
  19. package/dist/{chunk-CIH2LZI7.cjs.map → chunk-LDOEIJIA.cjs.map} +1 -1
  20. package/dist/{chunk-ADEP6E3Z.cjs → chunk-LFAEFMYA.cjs} +26 -26
  21. package/dist/{chunk-ADEP6E3Z.cjs.map → chunk-LFAEFMYA.cjs.map} +1 -1
  22. package/dist/{chunk-OLCNA32C.cjs → chunk-LRLY7VFQ.cjs} +15 -15
  23. package/dist/{chunk-OLCNA32C.cjs.map → chunk-LRLY7VFQ.cjs.map} +1 -1
  24. package/dist/{chunk-XGLZK25V.js → chunk-NTHZI6VG.js} +2 -2
  25. package/dist/{chunk-OGNKGDHT.js → chunk-PNJXI4NZ.js} +4 -4
  26. package/dist/{chunk-SOAWTQXO.cjs → chunk-QXKQ2WZF.cjs} +25 -25
  27. package/dist/{chunk-SOAWTQXO.cjs.map → chunk-QXKQ2WZF.cjs.map} +1 -1
  28. package/dist/{chunk-3KA5L7LC.js → chunk-UPHZGPXZ.js} +2 -2
  29. package/dist/{chunk-DKN425XR.cjs → chunk-VZHEFPPH.cjs} +481 -488
  30. package/dist/chunk-VZHEFPPH.cjs.map +1 -0
  31. package/dist/{chunk-3L4B7MBD.cjs → chunk-X5DBARHE.cjs} +31 -31
  32. package/dist/{chunk-3L4B7MBD.cjs.map → chunk-X5DBARHE.cjs.map} +1 -1
  33. package/dist/{chunk-ANPV7GZT.js → chunk-XQ77CK5C.js} +25 -32
  34. package/dist/{chunk-ANPV7GZT.js.map → chunk-XQ77CK5C.js.map} +1 -1
  35. package/dist/{chunk-DU2X2MH2.js → chunk-YDYO7DRL.js} +2 -2
  36. package/dist/{chunk-SECF2KWQ.cjs → chunk-ZRVWRNVJ.cjs} +5 -5
  37. package/dist/{chunk-SECF2KWQ.cjs.map → chunk-ZRVWRNVJ.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/auth/login-form.d.ts +1 -4
  51. package/dist/components/features/auth/login-form.d.ts.map +1 -1
  52. package/dist/components/features/auth/openframe-sso-login-form.d.ts.map +1 -1
  53. package/dist/components/features/auth/openframe-sso-signup-form.d.ts +7 -4
  54. package/dist/components/features/auth/openframe-sso-signup-form.d.ts.map +1 -1
  55. package/dist/components/features/index.cjs +2 -2
  56. package/dist/components/features/index.js +1 -1
  57. package/dist/components/help-center-pages/index.cjs +20 -20
  58. package/dist/components/help-center-pages/index.js +11 -11
  59. package/dist/components/index.cjs +120 -120
  60. package/dist/components/index.js +9 -9
  61. package/dist/components/navigation/index.cjs +2 -2
  62. package/dist/components/navigation/index.js +1 -1
  63. package/dist/components/onboarding-guides/index.cjs +5 -5
  64. package/dist/components/onboarding-guides/index.js +4 -4
  65. package/dist/components/related-content/index.cjs +3 -3
  66. package/dist/components/related-content/index.js +2 -2
  67. package/dist/components/tickets/index.cjs +5 -5
  68. package/dist/components/tickets/index.js +4 -4
  69. package/dist/components/ui/index.cjs +2 -2
  70. package/dist/components/ui/index.js +1 -1
  71. package/dist/index.cjs +2 -2
  72. package/dist/index.js +1 -1
  73. package/package.json +1 -1
  74. package/src/components/features/auth/auth-benefits-panel.tsx +1 -1
  75. package/src/components/features/auth/login-form.tsx +3 -21
  76. package/src/components/features/auth/openframe-sso-login-form.tsx +3 -6
  77. package/src/components/features/auth/openframe-sso-signup-form.tsx +27 -11
  78. package/src/stories/auth/Login.stories.tsx +0 -1
  79. package/src/stories/auth/OpenFrameSso.stories.tsx +7 -1
  80. package/dist/chunk-DKN425XR.cjs.map +0 -1
  81. /package/dist/{chunk-EULRZYQH.js.map → chunk-53R2NLYW.js.map} +0 -0
  82. /package/dist/{chunk-OX75ZFN6.js.map → chunk-7DVZECFW.js.map} +0 -0
  83. /package/dist/{chunk-N2LW5NHS.js.map → chunk-ACKCFE7D.js.map} +0 -0
  84. /package/dist/{chunk-MVY4ZKQR.js.map → chunk-ACYF5YVM.js.map} +0 -0
  85. /package/dist/{chunk-EHVRW3WB.js.map → chunk-IDF4BZHL.js.map} +0 -0
  86. /package/dist/{chunk-3BPVTHOW.js.map → chunk-K557GA5G.js.map} +0 -0
  87. /package/dist/{chunk-GPTS2NXW.js.map → chunk-L5FDBXYI.js.map} +0 -0
  88. /package/dist/{chunk-XGLZK25V.js.map → chunk-NTHZI6VG.js.map} +0 -0
  89. /package/dist/{chunk-OGNKGDHT.js.map → chunk-PNJXI4NZ.js.map} +0 -0
  90. /package/dist/{chunk-3KA5L7LC.js.map → chunk-UPHZGPXZ.js.map} +0 -0
  91. /package/dist/{chunk-DU2X2MH2.js.map → chunk-YDYO7DRL.js.map} +0 -0
@@ -24452,7 +24452,7 @@ _chunkFIG2RKZFcjs.init_cn.call(void 0, );
24452
24452
  _chunkNYIZVI4Icjs.init_button2.call(void 0, );
24453
24453
 
24454
24454
  var DEFAULT_TITLE2 = "The All-in-One Open Platform for MSPs";
24455
- var DEFAULT_DESCRIPTION = "All your core ops in one place - built for MSPs who are done duct-taping tools together. Unified stack, AI-ready, no vendor tax. Just solid software that lets you run lean and fast.";
24455
+ var DEFAULT_DESCRIPTION = "All your core ops in one place - built for MSPs who are done duct-taping tools together. Open-source, AI-ready, no vendor tax. Just solid software that lets you run lean and fast.";
24456
24456
  var DEFAULT_BENEFITS = [
24457
24457
  { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.CreditCardXmarkIcon, {}), label: "No card required" },
24458
24458
  { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.XmarkAltIcon, {}), label: "Cancel Anytime" },
@@ -24765,10 +24765,8 @@ function LoginForm({
24765
24765
  email,
24766
24766
  onEmailChange,
24767
24767
  onSubmit,
24768
- onForgotPassword,
24769
24768
  emailPlaceholder = "username@mail.com",
24770
24769
  submitLabel = "Continue",
24771
- forgotPasswordLabel = "Forgot Password?",
24772
24770
  submitDisabled = false,
24773
24771
  loading = false,
24774
24772
  disabled = false,
@@ -24819,28 +24817,14 @@ function LoginForm({
24819
24817
  disabled: disabled || loading
24820
24818
  }
24821
24819
  ) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-l)]", children: [
24822
- onForgotPassword ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
24823
- _chunkNYIZVI4Icjs.Button,
24824
- {
24825
- type: "button",
24826
- variant: "transparent",
24827
- fullWidth: true,
24828
- className: "flex-1",
24829
- disabled: disabled || loading,
24830
- onClick: onForgotPassword,
24831
- children: forgotPasswordLabel
24832
- }
24833
- ) : (
24834
- // Spacer keeps the button on the right half, matching the design
24835
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" })
24836
- ),
24820
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
24837
24821
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
24838
24822
  _chunkNYIZVI4Icjs.Button,
24839
24823
  {
24840
24824
  type: "button",
24841
24825
  variant: "accent",
24842
24826
  fullWidth: true,
24843
- className: onForgotPassword ? "flex-1" : "md:flex-1",
24827
+ className: "md:flex-1",
24844
24828
  loading,
24845
24829
  disabled: disabled || submitDisabled,
24846
24830
  onClick: onSubmit,
@@ -24957,14 +24941,11 @@ function OpenFrameSsoLoginForm({
24957
24941
  ),
24958
24942
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-l)]", children: [
24959
24943
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
24960
- _chunkNYIZVI4Icjs.Button,
24944
+ "button",
24961
24945
  {
24962
24946
  type: "button",
24963
- variant: "transparent",
24964
- fullWidth: true,
24965
- className: "flex-1",
24966
- disabled: fieldsDisabled,
24967
24947
  onClick: onForgotPassword,
24948
+ className: "flex-1 text-left text-h4 text-ods-text-secondary",
24968
24949
  children: forgotPasswordLabel
24969
24950
  }
24970
24951
  ),
@@ -24997,18 +24978,21 @@ function OpenFrameSsoSignUpForm({
24997
24978
  lastName,
24998
24979
  password,
24999
24980
  confirmPassword,
24981
+ agreedToTerms,
25000
24982
  onEmailChange,
25001
24983
  onFirstNameChange,
25002
24984
  onLastNameChange,
25003
24985
  onPasswordChange,
25004
24986
  onConfirmPasswordChange,
24987
+ onAgreedToTermsChange,
25005
24988
  onSubmit,
25006
24989
  onForgotPassword,
25007
- emailReadOnly = false,
25008
24990
  submitDisabled = false,
25009
24991
  loading = false,
25010
24992
  disabled = false,
25011
24993
  errors,
24994
+ termsUrl = "#",
24995
+ privacyPolicyUrl = "#",
25012
24996
  title = "OpenFrame Single Sign-On",
25013
24997
  subtitle = "Enter your email and password to access your organization.",
25014
24998
  emailLabel = "Email",
@@ -25042,7 +25026,7 @@ function OpenFrameSsoSignUpForm({
25042
25026
  placeholder: "username@mail.com",
25043
25027
  value: email,
25044
25028
  error: _optionalChain([errors, 'optionalAccess', _443 => _443.email]),
25045
- disabled: fieldsDisabled || emailReadOnly,
25029
+ disabled: fieldsDisabled,
25046
25030
  onChange: (event) => onEmailChange(event.target.value),
25047
25031
  onKeyDown: handleKeyDown
25048
25032
  }
@@ -25099,16 +25083,25 @@ function OpenFrameSsoSignUpForm({
25099
25083
  }
25100
25084
  ) })
25101
25085
  ] }),
25086
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25087
+ CheckboxBlock,
25088
+ {
25089
+ id: "sso-signup-terms",
25090
+ label: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TermsAgreementLabel, { termsUrl, privacyPolicyUrl }),
25091
+ truncateLabel: true,
25092
+ checked: agreedToTerms,
25093
+ disabled: fieldsDisabled,
25094
+ error: _optionalChain([errors, 'optionalAccess', _448 => _448.terms]),
25095
+ onCheckedChange: onAgreedToTermsChange
25096
+ }
25097
+ ),
25102
25098
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-l)]", children: [
25103
25099
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
25104
- _chunkNYIZVI4Icjs.Button,
25100
+ "button",
25105
25101
  {
25106
25102
  type: "button",
25107
- variant: "transparent",
25108
- fullWidth: true,
25109
- className: "flex-1",
25110
- disabled: fieldsDisabled,
25111
25103
  onClick: onForgotPassword,
25104
+ className: "flex-1 text-left text-h4 text-ods-text-secondary",
25112
25105
  children: forgotPasswordLabel
25113
25106
  }
25114
25107
  ),
@@ -25182,7 +25175,7 @@ function PasswordResetForm({
25182
25175
  label: newPasswordLabel,
25183
25176
  placeholder: newPasswordPlaceholder,
25184
25177
  value: password,
25185
- error: _optionalChain([errors, 'optionalAccess', _448 => _448.password]),
25178
+ error: _optionalChain([errors, 'optionalAccess', _449 => _449.password]),
25186
25179
  disabled: fieldsDisabled,
25187
25180
  onChange: (event) => onPasswordChange(event.target.value),
25188
25181
  onKeyDown: handleKeyDown
@@ -25195,7 +25188,7 @@ function PasswordResetForm({
25195
25188
  label: confirmPasswordLabel,
25196
25189
  placeholder: confirmPasswordPlaceholder,
25197
25190
  value: confirmPassword,
25198
- error: _optionalChain([errors, 'optionalAccess', _449 => _449.confirmPassword]),
25191
+ error: _optionalChain([errors, 'optionalAccess', _450 => _450.confirmPassword]),
25199
25192
  disabled: fieldsDisabled,
25200
25193
  onChange: (event) => onConfirmPasswordChange(event.target.value),
25201
25194
  onKeyDown: handleKeyDown
@@ -25858,10 +25851,10 @@ var getContentDimensions = (config) => {
25858
25851
  const envMobileHeight = process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT) : null;
25859
25852
  const envDesktopWidth = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH) : null;
25860
25853
  const envDesktopHeight = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT) : null;
25861
- const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess', _450 => _450.mobileContentDimensions, 'optionalAccess', _451 => _451.width]))), () => ( defaultMobile.width));
25862
- const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess', _452 => _452.mobileContentDimensions, 'optionalAccess', _453 => _453.height]))), () => ( defaultMobile.height));
25863
- const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess', _454 => _454.desktopContentDimensions, 'optionalAccess', _455 => _455.width]))), () => ( defaultDesktop.width));
25864
- const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess', _456 => _456.desktopContentDimensions, 'optionalAccess', _457 => _457.height]))), () => ( defaultDesktop.height));
25854
+ const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess', _451 => _451.mobileContentDimensions, 'optionalAccess', _452 => _452.width]))), () => ( defaultMobile.width));
25855
+ const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess', _453 => _453.mobileContentDimensions, 'optionalAccess', _454 => _454.height]))), () => ( defaultMobile.height));
25856
+ const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess', _455 => _455.desktopContentDimensions, 'optionalAccess', _456 => _456.width]))), () => ( defaultDesktop.width));
25857
+ const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess', _457 => _457.desktopContentDimensions, 'optionalAccess', _458 => _458.height]))), () => ( defaultDesktop.height));
25865
25858
  return {
25866
25859
  mobile: { width: mobileWidth, height: mobileHeight },
25867
25860
  desktop: { width: desktopWidth, height: desktopHeight }
@@ -25995,7 +25988,7 @@ function renderUnifiedUI(state, handlers, config, iframeRef) {
25995
25988
  const contentDimensions = getContentDimensions(config);
25996
25989
  const mobileHeight = contentDimensions.mobile.height;
25997
25990
  const calculatedHeight = Math.max(mobileHeight + 100, 400);
25998
- return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess', _458 => _458.innerHeight]) * 0.85 || 650)}px`;
25991
+ return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess', _459 => _459.innerHeight]) * 0.85 || 650)}px`;
25999
25992
  })(),
26000
25993
  minHeight: viewMode === "DESKTOP" ? "auto" : (() => {
26001
25994
  const contentDimensions = getContentDimensions(config);
@@ -26100,7 +26093,7 @@ var FigmaPrototypeViewer = ({
26100
26093
  const [isInitialized, setIsInitialized] = _react.useState.call(void 0, false);
26101
26094
  const [currentNodeId, setCurrentNodeId] = _react.useState.call(void 0, null);
26102
26095
  const [internalActiveSection, setInternalActiveSection] = _react.useState.call(void 0,
26103
- config.defaultSectionId || _optionalChain([config, 'access', _459 => _459.sections, 'access', _460 => _460[0], 'optionalAccess', _461 => _461.id]) || ""
26096
+ config.defaultSectionId || _optionalChain([config, 'access', _460 => _460.sections, 'access', _461 => _461[0], 'optionalAccess', _462 => _462.id]) || ""
26104
26097
  );
26105
26098
  const activeSection = externalActiveSection || internalActiveSection;
26106
26099
  const [isNavigating, setIsNavigating] = _react.useState.call(void 0, false);
@@ -26190,7 +26183,7 @@ var FigmaPrototypeViewer = ({
26190
26183
  const handleMessage = (event) => {
26191
26184
  if (event.origin !== "https://www.figma.com") return;
26192
26185
  const validEvents = ["INITIAL_LOAD", "NEW_STATE", "PRESENTED_NODE_CHANGED"];
26193
- if (_optionalChain([event, 'access', _462 => _462.data, 'optionalAccess', _463 => _463.type]) && validEvents.includes(event.data.type)) {
26186
+ if (_optionalChain([event, 'access', _463 => _463.data, 'optionalAccess', _464 => _464.type]) && validEvents.includes(event.data.type)) {
26194
26187
  const figmaEvent = event.data;
26195
26188
  console.log("[Figma Event]", figmaEvent.type, viewMode);
26196
26189
  switch (figmaEvent.type) {
@@ -26200,19 +26193,19 @@ var FigmaPrototypeViewer = ({
26200
26193
  setIframeState("READY");
26201
26194
  break;
26202
26195
  case "PRESENTED_NODE_CHANGED":
26203
- if (_optionalChain([figmaEvent, 'access', _464 => _464.data, 'optionalAccess', _465 => _465.presentedNodeId])) {
26196
+ if (_optionalChain([figmaEvent, 'access', _465 => _465.data, 'optionalAccess', _466 => _466.presentedNodeId])) {
26204
26197
  setCurrentNodeId(figmaEvent.data.presentedNodeId);
26205
26198
  if (!isNavigating) {
26206
26199
  const matchingSection = config.sections.find((s) => {
26207
- const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access', _466 => _466.data, 'optionalAccess', _467 => _467.presentedNodeId]) || s.startingNodeId.replace(":", "-") === _optionalChain([figmaEvent, 'access', _468 => _468.data, 'optionalAccess', _469 => _469.presentedNodeId]);
26208
- const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access', _470 => _470.data, 'optionalAccess', _471 => _471.presentedNodeId]) || _optionalChain([s, 'access', _472 => _472.mobileStartingNodeId, 'optionalAccess', _473 => _473.replace, 'call', _474 => _474(":", "-")]) === _optionalChain([figmaEvent, 'access', _475 => _475.data, 'optionalAccess', _476 => _476.presentedNodeId]);
26200
+ const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access', _467 => _467.data, 'optionalAccess', _468 => _468.presentedNodeId]) || s.startingNodeId.replace(":", "-") === _optionalChain([figmaEvent, 'access', _469 => _469.data, 'optionalAccess', _470 => _470.presentedNodeId]);
26201
+ const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access', _471 => _471.data, 'optionalAccess', _472 => _472.presentedNodeId]) || _optionalChain([s, 'access', _473 => _473.mobileStartingNodeId, 'optionalAccess', _474 => _474.replace, 'call', _475 => _475(":", "-")]) === _optionalChain([figmaEvent, 'access', _476 => _476.data, 'optionalAccess', _477 => _477.presentedNodeId]);
26209
26202
  return desktopMatch || mobileMatch;
26210
26203
  });
26211
26204
  if (matchingSection && matchingSection.id !== activeSection) {
26212
26205
  if (!externalActiveSection) {
26213
26206
  setInternalActiveSection(matchingSection.id);
26214
26207
  }
26215
- _optionalChain([config, 'access', _477 => _477.onSectionChange, 'optionalCall', _478 => _478(matchingSection.id)]);
26208
+ _optionalChain([config, 'access', _478 => _478.onSectionChange, 'optionalCall', _479 => _479(matchingSection.id)]);
26216
26209
  }
26217
26210
  }
26218
26211
  }
@@ -26225,7 +26218,7 @@ var FigmaPrototypeViewer = ({
26225
26218
  }, [config.sections, activeSection, isNavigating, externalActiveSection, config.onSectionChange, viewMode]);
26226
26219
  const navigateToSection = _react.useCallback.call(void 0, (sectionId) => {
26227
26220
  const section = config.sections.find((s) => s.id === sectionId);
26228
- if (!section || !_optionalChain([iframeRef, 'access', _479 => _479.current, 'optionalAccess', _480 => _480.contentWindow]) || !isInitialized) {
26221
+ if (!section || !_optionalChain([iframeRef, 'access', _480 => _480.current, 'optionalAccess', _481 => _481.contentWindow]) || !isInitialized) {
26229
26222
  return;
26230
26223
  }
26231
26224
  setIsNavigating(true);
@@ -26233,7 +26226,7 @@ var FigmaPrototypeViewer = ({
26233
26226
  if (!externalActiveSection) {
26234
26227
  setInternalActiveSection(sectionId);
26235
26228
  }
26236
- _optionalChain([config, 'access', _481 => _481.onSectionChange, 'optionalCall', _482 => _482(sectionId)]);
26229
+ _optionalChain([config, 'access', _482 => _482.onSectionChange, 'optionalCall', _483 => _483(sectionId)]);
26237
26230
  const command = {
26238
26231
  type: "NAVIGATE_TO_FRAME_AND_CLOSE_OVERLAYS",
26239
26232
  data: { nodeId }
@@ -26553,7 +26546,7 @@ var FiltersDropdown = ({
26553
26546
  defaults[section.id] = section.defaultSelected || [];
26554
26547
  });
26555
26548
  setSelectedFilters(defaults);
26556
- _optionalChain([onReset, 'optionalCall', _483 => _483()]);
26549
+ _optionalChain([onReset, 'optionalCall', _484 => _484()]);
26557
26550
  setIsOpen(false);
26558
26551
  };
26559
26552
  const handleApply = () => {
@@ -26846,7 +26839,7 @@ function MediaGalleryManager({
26846
26839
  const [deletingIndex, setDeletingIndex] = _react.useState.call(void 0, null);
26847
26840
  const [draggedIndex, setDraggedIndex] = _react.useState.call(void 0, null);
26848
26841
  const handleFileSelect = _react.useCallback.call(void 0, async (event) => {
26849
- const file = _optionalChain([event, 'access', _484 => _484.target, 'access', _485 => _485.files, 'optionalAccess', _486 => _486[0]]);
26842
+ const file = _optionalChain([event, 'access', _485 => _485.target, 'access', _486 => _486.files, 'optionalAccess', _487 => _487[0]]);
26850
26843
  if (!file) return;
26851
26844
  let mediaType;
26852
26845
  if (file.type.startsWith("image/")) {
@@ -26961,7 +26954,7 @@ function MediaGalleryManager({
26961
26954
  {
26962
26955
  type: "button",
26963
26956
  variant: "outline",
26964
- onClick: () => _optionalChain([fileInputRef, 'access', _487 => _487.current, 'optionalAccess', _488 => _488.click, 'call', _489 => _489()]),
26957
+ onClick: () => _optionalChain([fileInputRef, 'access', _488 => _488.current, 'optionalAccess', _489 => _489.click, 'call', _490 => _490()]),
26965
26958
  disabled: isUploading,
26966
26959
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
26967
26960
  className: "font-['DM_Sans'] text-[16px] font-bold",
@@ -27625,7 +27618,7 @@ function ReleaseMediaManager({
27625
27618
  const fileInputRef = _react.useRef.call(void 0, null);
27626
27619
  const [uploadingIndex, setUploadingIndex] = _react.useState.call(void 0, null);
27627
27620
  const handleFileSelect = async (event) => {
27628
- const file = _optionalChain([event, 'access', _490 => _490.target, 'access', _491 => _491.files, 'optionalAccess', _492 => _492[0]]);
27621
+ const file = _optionalChain([event, 'access', _491 => _491.target, 'access', _492 => _492.files, 'optionalAccess', _493 => _493[0]]);
27629
27622
  if (!file) return;
27630
27623
  let mediaType;
27631
27624
  if (file.type.startsWith("image/")) {
@@ -27705,7 +27698,7 @@ function ReleaseMediaManager({
27705
27698
  {
27706
27699
  type: "button",
27707
27700
  variant: "outline",
27708
- onClick: () => _optionalChain([fileInputRef, 'access', _493 => _493.current, 'optionalAccess', _494 => _494.click, 'call', _495 => _495()]),
27701
+ onClick: () => _optionalChain([fileInputRef, 'access', _494 => _494.current, 'optionalAccess', _495 => _495.click, 'call', _496 => _496()]),
27709
27702
  disabled: uploadingIndex !== null,
27710
27703
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
27711
27704
  className: "font-['DM_Sans'] text-[16px] font-bold",
@@ -27920,7 +27913,7 @@ function SEOEditorPreview({
27920
27913
  const displayImage = hasOgImage || hasFeaturedImage;
27921
27914
  const handleImageUpload = async (event) => {
27922
27915
  if (!onOgImageUpload) return;
27923
- const file = _optionalChain([event, 'access', _496 => _496.target, 'access', _497 => _497.files, 'optionalAccess', _498 => _498[0]]);
27916
+ const file = _optionalChain([event, 'access', _497 => _497.target, 'access', _498 => _498.files, 'optionalAccess', _499 => _499[0]]);
27924
27917
  if (!file) return;
27925
27918
  setIsUploading(true);
27926
27919
  try {
@@ -28061,7 +28054,7 @@ function SEOEditorPreview({
28061
28054
  type: "button",
28062
28055
  variant: "outline",
28063
28056
  size: "icon",
28064
- onClick: () => _optionalChain([fileInputRef, 'optionalAccess', _499 => _499.click, 'call', _500 => _500()]),
28057
+ onClick: () => _optionalChain([fileInputRef, 'optionalAccess', _500 => _500.click, 'call', _501 => _501()]),
28065
28058
  disabled: disabled || isUploading,
28066
28059
  className: "bg-white text-black hover:bg-gray-100 rounded-full opacity-0 group-hover:opacity-100",
28067
28060
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-4 w-4" })
@@ -28084,7 +28077,7 @@ function SEOEditorPreview({
28084
28077
  "div",
28085
28078
  {
28086
28079
  className: "h-full min-h-[280px] border-2 border-dashed border-ods-border rounded-lg flex flex-col items-center justify-center cursor-pointer hover:border-ods-accent transition-colors bg-ods-bg-hover",
28087
- onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess', _501 => _501.click, 'call', _502 => _502()]),
28080
+ onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess', _502 => _502.click, 'call', _503 => _503()]),
28088
28081
  children: isUploading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Loader2, { className: "h-8 w-8 animate-spin text-ods-accent" }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
28089
28082
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-8 w-8 text-ods-text-secondary mb-2" }),
28090
28083
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-sm text-ods-text-secondary font-['DM_Sans']", children: onOgImageUpload ? "Click to upload OG image" : "No image" })
@@ -28171,7 +28164,7 @@ function SocialLinksManager({
28171
28164
  className = ""
28172
28165
  }) {
28173
28166
  const addLink = () => {
28174
- const firstPlatform = _optionalChain([platforms, 'access', _503 => _503[0], 'optionalAccess', _504 => _504.name]) || "website";
28167
+ const firstPlatform = _optionalChain([platforms, 'access', _504 => _504[0], 'optionalAccess', _505 => _505.name]) || "website";
28175
28168
  onChange([...links, { platform: firstPlatform, url: "" }]);
28176
28169
  };
28177
28170
  const removeLink = (index) => {
@@ -28183,7 +28176,7 @@ function SocialLinksManager({
28183
28176
  onChange(updated);
28184
28177
  };
28185
28178
  const getIcon = (link, platform) => {
28186
- const iconKey = _optionalChain([platform, 'optionalAccess', _505 => _505.icon_name]) || link.platform;
28179
+ const iconKey = _optionalChain([platform, 'optionalAccess', _506 => _506.icon_name]) || link.platform;
28187
28180
  const IconComponent = iconMap[iconKey];
28188
28181
  return IconComponent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconComponent, { className: "w-5 h-5 text-ods-text-secondary" }) : null;
28189
28182
  };
@@ -28208,7 +28201,7 @@ function SocialLinksManager({
28208
28201
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
28209
28202
  _chunkNYIZVI4Icjs.Input,
28210
28203
  {
28211
- placeholder: _optionalChain([platform, 'optionalAccess', _506 => _506.placeholder]) || "Profile URL",
28204
+ placeholder: _optionalChain([platform, 'optionalAccess', _507 => _507.placeholder]) || "Profile URL",
28212
28205
  value: link.url,
28213
28206
  onChange: (e) => updateLink(index, "url", e.target.value),
28214
28207
  onKeyDown: (e) => {
@@ -28601,7 +28594,7 @@ function useVideoOriginPreconnect({
28601
28594
  supabaseStorageOrigin
28602
28595
  } = {}) {
28603
28596
  const runtime = _chunk3KEBI6TPcjs.useChatRuntime.call(void 0, );
28604
- const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _507 => _507.endpoints, 'access', _508 => _508.supabaseStorageOrigin])));
28597
+ const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _508 => _508.endpoints, 'access', _509 => _509.supabaseStorageOrigin])));
28605
28598
  try {
28606
28599
  ReactDOM2.default.preconnect(MUX_STREAM_ORIGIN, { crossOrigin: "anonymous" });
28607
28600
  ReactDOM2.default.preconnect(MUX_IMAGE_ORIGIN, { crossOrigin: "anonymous" });
@@ -28620,13 +28613,13 @@ function useVideoWarmup({
28620
28613
  nearMargin = "1000px"
28621
28614
  } = {}) {
28622
28615
  const runtime = _chunk3KEBI6TPcjs.useChatRuntime.call(void 0, );
28623
- const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _509 => _509.endpoints, 'access', _510 => _510.supabaseStorageOrigin])));
28616
+ const resolvedOrigin = _nullishCoalesce(supabaseStorageOrigin, () => ( _optionalChain([runtime, 'optionalAccess', _510 => _510.endpoints, 'access', _511 => _511.supabaseStorageOrigin])));
28624
28617
  useVideoOriginPreconnect({ supabaseStorageOrigin: resolvedOrigin });
28625
28618
  const { ref, isNear } = _chunk743FCO64cjs.useNearViewport.call(void 0, nearMargin);
28626
28619
  _react.useEffect.call(void 0, () => {
28627
28620
  if (!isNear || !videoUrl || !resolvedOrigin) return;
28628
28621
  const conn = navigator.connection;
28629
- if (_optionalChain([conn, 'optionalAccess', _511 => _511.saveData]) === true) return;
28622
+ if (_optionalChain([conn, 'optionalAccess', _512 => _512.saveData]) === true) return;
28630
28623
  let videoOrigin;
28631
28624
  try {
28632
28625
  videoOrigin = new URL(videoUrl, "http://placeholder.local").origin;
@@ -28696,7 +28689,7 @@ function VideoSourceSelector({
28696
28689
  input.accept = "video/*";
28697
28690
  input.onchange = async (e) => {
28698
28691
  const target = e.target;
28699
- const file = _optionalChain([target, 'access', _512 => _512.files, 'optionalAccess', _513 => _513[0]]);
28692
+ const file = _optionalChain([target, 'access', _513 => _513.files, 'optionalAccess', _514 => _514[0]]);
28700
28693
  if (!file) return;
28701
28694
  setIsUploading(true);
28702
28695
  setUploadProgress(0);
@@ -29045,7 +29038,7 @@ function TranscriptSummaryEditor({
29045
29038
  {
29046
29039
  id: "subtitles",
29047
29040
  value: subtitles || "",
29048
- onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _514 => _514(e.target.value)]),
29041
+ onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _515 => _515(e.target.value)]),
29049
29042
  placeholder: subtitlesPlaceholder,
29050
29043
  disabled: disabled || !onSubtitlesChange,
29051
29044
  className: "h-full w-full resize-none border-0 bg-transparent text-ods-text-primary placeholder:text-ods-text-secondary/50 focus:ring-0 focus:outline-none p-4 font-mono text-sm",
@@ -29198,7 +29191,7 @@ var AIEnrichSection = ({
29198
29191
  }) => {
29199
29192
  const hasResults = status === "success" || status === "error";
29200
29193
  const shouldDisable = disabled || !canEnrich;
29201
- const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _515 => _515.filter, 'call', _516 => _516((f) => !f.isFilled)]) || [];
29194
+ const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _516 => _516.filter, 'call', _517 => _517((f) => !f.isFilled)]) || [];
29202
29195
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
29203
29196
  "div",
29204
29197
  {
@@ -29236,7 +29229,7 @@ var AIEnrichSection = ({
29236
29229
  {
29237
29230
  id: "ai-enrich-custom-instructions",
29238
29231
  value: _nullishCoalesce(customInstructions, () => ( "")),
29239
- onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _517 => _517(e.target.value)]),
29232
+ onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _518 => _518(e.target.value)]),
29240
29233
  placeholder: customInstructionsPlaceholder,
29241
29234
  disabled: loading,
29242
29235
  maxLength: customInstructionsMaxLength,
@@ -29365,7 +29358,7 @@ function HighlightVideoSection({
29365
29358
  input.accept = "video/*";
29366
29359
  input.onchange = async (e) => {
29367
29360
  const target = e.target;
29368
- const file = _optionalChain([target, 'access', _518 => _518.files, 'optionalAccess', _519 => _519[0]]);
29361
+ const file = _optionalChain([target, 'access', _519 => _519.files, 'optionalAccess', _520 => _520[0]]);
29369
29362
  if (!file) return;
29370
29363
  setUploadError(null);
29371
29364
  try {
@@ -29860,7 +29853,7 @@ function HighlightVideoPreview({
29860
29853
  input.accept = "video/*";
29861
29854
  input.onchange = async (e) => {
29862
29855
  const target = e.target;
29863
- const file = _optionalChain([target, 'access', _520 => _520.files, 'optionalAccess', _521 => _521[0]]);
29856
+ const file = _optionalChain([target, 'access', _521 => _521.files, 'optionalAccess', _522 => _522[0]]);
29864
29857
  if (!file) return;
29865
29858
  await onUpload(file);
29866
29859
  };
@@ -30044,7 +30037,7 @@ function HighlightVideoCombinedSection({
30044
30037
  input.accept = "video/*";
30045
30038
  input.onchange = async (e) => {
30046
30039
  const target = e.target;
30047
- const file = _optionalChain([target, 'access', _522 => _522.files, 'optionalAccess', _523 => _523[0]]);
30040
+ const file = _optionalChain([target, 'access', _523 => _523.files, 'optionalAccess', _524 => _524[0]]);
30048
30041
  if (!file) return;
30049
30042
  await onUpload(file);
30050
30043
  };
@@ -30338,7 +30331,7 @@ var getApprovalLevelLabel = (level, editMode = false) => {
30338
30331
  return editMode ? "Set Global Permission" : "";
30339
30332
  }
30340
30333
  const option = approvalLevelOptions.find((opt) => opt.value === level);
30341
- return _optionalChain([option, 'optionalAccess', _524 => _524.label]) || level;
30334
+ return _optionalChain([option, 'optionalAccess', _525 => _525.label]) || level;
30342
30335
  };
30343
30336
  var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
30344
30337
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "bg-ods-bg border-b border-ods-border flex gap-4 items-center px-4 py-3", children: [
@@ -30552,12 +30545,12 @@ function PhoneInput({
30552
30545
  const runValidation = _react.useCallback.call(void 0, (phone) => {
30553
30546
  if (!phone || digitCount(phone) === 0) {
30554
30547
  setIsInvalid(false);
30555
- _optionalChain([onValidationChange, 'optionalCall', _525 => _525(false)]);
30548
+ _optionalChain([onValidationChange, 'optionalCall', _526 => _526(false)]);
30556
30549
  return;
30557
30550
  }
30558
30551
  const invalid = !validatePhoneNumber(phone, countryCode);
30559
30552
  setIsInvalid(invalid);
30560
- _optionalChain([onValidationChange, 'optionalCall', _526 => _526(invalid)]);
30553
+ _optionalChain([onValidationChange, 'optionalCall', _527 => _527(invalid)]);
30561
30554
  }, [countryCode, digitCount, onValidationChange]);
30562
30555
  const debouncedValidation = _react.useCallback.call(void 0, (phone) => {
30563
30556
  if (debounceRef.current) clearTimeout(debounceRef.current);
@@ -30606,7 +30599,7 @@ function PhoneInput({
30606
30599
  debouncedValidation(val);
30607
30600
  } else if (digitCount(val) === 0) {
30608
30601
  setIsInvalid(false);
30609
- _optionalChain([onValidationChange, 'optionalCall', _527 => _527(false)]);
30602
+ _optionalChain([onValidationChange, 'optionalCall', _528 => _528(false)]);
30610
30603
  }
30611
30604
  }
30612
30605
  },
@@ -30947,19 +30940,19 @@ function NotificationsProvider({
30947
30940
  }, []);
30948
30941
  const markRead = React96.useCallback((id) => {
30949
30942
  dispatch({ type: "markRead", id });
30950
- void _optionalChain([actionsRef, 'access', _528 => _528.current, 'optionalAccess', _529 => _529.onMarkRead, 'optionalCall', _530 => _530(id)]);
30943
+ void _optionalChain([actionsRef, 'access', _529 => _529.current, 'optionalAccess', _530 => _530.onMarkRead, 'optionalCall', _531 => _531(id)]);
30951
30944
  }, []);
30952
30945
  const markAllRead = React96.useCallback(() => {
30953
30946
  dispatch({ type: "markAllRead" });
30954
- void _optionalChain([actionsRef, 'access', _531 => _531.current, 'optionalAccess', _532 => _532.onMarkAllRead, 'optionalCall', _533 => _533()]);
30947
+ void _optionalChain([actionsRef, 'access', _532 => _532.current, 'optionalAccess', _533 => _533.onMarkAllRead, 'optionalCall', _534 => _534()]);
30955
30948
  }, []);
30956
30949
  const markSettled = React96.useCallback((id) => {
30957
30950
  dispatch({ type: "markSettled", id });
30958
- void _optionalChain([actionsRef, 'access', _534 => _534.current, 'optionalAccess', _535 => _535.onMarkSettled, 'optionalCall', _536 => _536(id)]);
30951
+ void _optionalChain([actionsRef, 'access', _535 => _535.current, 'optionalAccess', _536 => _536.onMarkSettled, 'optionalCall', _537 => _537(id)]);
30959
30952
  }, []);
30960
30953
  const remove = React96.useCallback((id) => {
30961
30954
  dispatch({ type: "remove", id });
30962
- void _optionalChain([actionsRef, 'access', _537 => _537.current, 'optionalAccess', _538 => _538.onRemove, 'optionalCall', _539 => _539(id)]);
30955
+ void _optionalChain([actionsRef, 'access', _538 => _538.current, 'optionalAccess', _539 => _539.onRemove, 'optionalCall', _540 => _540(id)]);
30963
30956
  }, []);
30964
30957
  const clear = React96.useCallback(() => dispatch({ type: "clear" }), []);
30965
30958
  const open = React96.useCallback(() => setIsOpen(true), []);
@@ -30968,14 +30961,14 @@ function NotificationsProvider({
30968
30961
  const setShowPopups = React96.useCallback(
30969
30962
  (value2) => {
30970
30963
  setShowPopupsState(value2);
30971
- _optionalChain([onShowPopupsChange, 'optionalCall', _540 => _540(value2)]);
30964
+ _optionalChain([onShowPopupsChange, 'optionalCall', _541 => _541(value2)]);
30972
30965
  },
30973
30966
  [onShowPopupsChange]
30974
30967
  );
30975
30968
  const setShowDesktopPopups = React96.useCallback(
30976
30969
  (value2) => {
30977
30970
  setShowDesktopPopupsState(value2);
30978
- _optionalChain([onShowDesktopPopupsChange, 'optionalCall', _541 => _541(value2)]);
30971
+ _optionalChain([onShowDesktopPopupsChange, 'optionalCall', _542 => _542(value2)]);
30979
30972
  },
30980
30973
  [onShowDesktopPopupsChange]
30981
30974
  );
@@ -31110,7 +31103,7 @@ function NotificationTile({
31110
31103
  if (!counting) return;
31111
31104
  const remaining = Math.max(0, liveDurationMs - initialElapsed);
31112
31105
  const timer = window.setTimeout(() => {
31113
- _optionalChain([onSettle, 'optionalCall', _542 => _542(id)]);
31106
+ _optionalChain([onSettle, 'optionalCall', _543 => _543(id)]);
31114
31107
  }, remaining);
31115
31108
  return () => window.clearTimeout(timer);
31116
31109
  }, [id, counting, initialElapsed, liveDurationMs, onSettle]);
@@ -31166,7 +31159,7 @@ function NotificationTile({
31166
31159
  }
31167
31160
  ) : null,
31168
31161
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "relative size-4 shrink-0", children: [
31169
- { active: isLive, label: "Dismiss notification", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.XmarkIcon, { size: 16 }), onClick: () => _optionalChain([onSettle, 'optionalCall', _543 => _543(id)]) },
31162
+ { active: isLive, label: "Dismiss notification", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.XmarkIcon, { size: 16 }), onClick: () => _optionalChain([onSettle, 'optionalCall', _544 => _544(id)]) },
31170
31163
  { active: !isLive, label: "Mark notification complete", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.CheckCircleIcon, { size: 16 }), onClick: () => onComplete(id) }
31171
31164
  ].map(({ active, label, icon: icon2, onClick }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31172
31165
  "button",
@@ -31329,7 +31322,7 @@ function DrawerScrollList({
31329
31322
  if (!sentinel || !root) return;
31330
31323
  const observer = new IntersectionObserver(
31331
31324
  (entries) => {
31332
- if (_optionalChain([entries, 'access', _544 => _544[0], 'optionalAccess', _545 => _545.isIntersecting])) _optionalChain([loadMoreRef, 'access', _546 => _546.current, 'optionalCall', _547 => _547()]);
31325
+ if (_optionalChain([entries, 'access', _545 => _545[0], 'optionalAccess', _546 => _546.isIntersecting])) _optionalChain([loadMoreRef, 'access', _547 => _547.current, 'optionalCall', _548 => _548()]);
31333
31326
  },
31334
31327
  { root, rootMargin: loadMoreRootMargin }
31335
31328
  );
@@ -31344,7 +31337,7 @@ function DrawerScrollList({
31344
31337
  className: "flex flex-1 flex-col gap-[var(--spacing-system-xs)] overflow-y-auto px-[var(--spacing-system-m)]",
31345
31338
  children: isEmpty && !isLoadingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyState, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
31346
31339
  unreadNotifications.map((n) => {
31347
- const custom = _optionalChain([renderTile, 'optionalCall', _548 => _548(n, { onComplete, onSettle, liveDurationMs })]);
31340
+ const custom = _optionalChain([renderTile, 'optionalCall', _549 => _549(n, { onComplete, onSettle, liveDurationMs })]);
31348
31341
  if (custom) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: custom }, n.id);
31349
31342
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
31350
31343
  NotificationTile,
@@ -31508,7 +31501,7 @@ function NotificationPopups({
31508
31501
  className
31509
31502
  ),
31510
31503
  children: live.map((n) => {
31511
- const custom = _optionalChain([renderTile, 'optionalCall', _549 => _549(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
31504
+ const custom = _optionalChain([renderTile, 'optionalCall', _550 => _550(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
31512
31505
  if (custom) {
31513
31506
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-auto", children: custom }, n.id);
31514
31507
  }
@@ -31688,21 +31681,21 @@ function transformWebinarToProgram(webinar) {
31688
31681
  // src/components/features/notifications/types.ts
31689
31682
  var ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = "ADMIN_APPROVAL_REQUEST";
31690
31683
  function isApprovalNotification(notification) {
31691
- return _optionalChain([notification, 'access', _550 => _550.meta, 'optionalAccess', _551 => _551.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
31684
+ return _optionalChain([notification, 'access', _551 => _551.meta, 'optionalAccess', _552 => _552.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
31692
31685
  }
31693
31686
  function getApprovalMeta(notification) {
31694
31687
  if (!isApprovalNotification(notification)) return null;
31695
31688
  const meta = notification.meta;
31696
- const approvalRequestId = _optionalChain([meta, 'optionalAccess', _552 => _552.approvalRequestId]);
31697
- const toolCalls = _optionalChain([meta, 'optionalAccess', _553 => _553.toolCalls]);
31689
+ const approvalRequestId = _optionalChain([meta, 'optionalAccess', _553 => _553.approvalRequestId]);
31690
+ const toolCalls = _optionalChain([meta, 'optionalAccess', _554 => _554.toolCalls]);
31698
31691
  if (typeof approvalRequestId !== "string" || !Array.isArray(toolCalls)) return null;
31699
31692
  return {
31700
31693
  approvalRequestId,
31701
- dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _554 => _554.dialogId]), () => ( null)),
31702
- ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _555 => _555.ticketId]), () => ( null)),
31703
- approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _556 => _556.approvalType]), () => ( null)),
31704
- resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _557 => _557.resolution]), () => ( null)),
31705
- resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _558 => _558.resolvedByName]), () => ( null)),
31694
+ dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _555 => _555.dialogId]), () => ( null)),
31695
+ ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _556 => _556.ticketId]), () => ( null)),
31696
+ approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _557 => _557.approvalType]), () => ( null)),
31697
+ resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _558 => _558.resolution]), () => ( null)),
31698
+ resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _559 => _559.resolvedByName]), () => ( null)),
31706
31699
  toolCalls
31707
31700
  };
31708
31701
  }
@@ -31752,7 +31745,7 @@ function ApprovalRequestNotificationTile({
31752
31745
  const [processing, setProcessing] = _react.useState.call(void 0, false);
31753
31746
  const [localStatus, setLocalStatus] = _react.useState.call(void 0, null);
31754
31747
  const approval = getApprovalMeta(notification);
31755
- const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _559 => _559.resolution]));
31748
+ const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _560 => _560.resolution]));
31756
31749
  const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
31757
31750
  const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
31758
31751
  const { innerRef, containerStyle } = useCollapsible({ expanded });
@@ -32056,7 +32049,7 @@ function TimeTrackerPanel({
32056
32049
  error: showFieldError ? "Required if no notes added" : void 0,
32057
32050
  disableClientFilter: !!onTicketSearch,
32058
32051
  onInputChange: (value, reason) => {
32059
- if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _560 => _560(value)]);
32052
+ if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _561 => _561(value)]);
32060
32053
  }
32061
32054
  }
32062
32055
  ),
@@ -32071,7 +32064,7 @@ function TimeTrackerPanel({
32071
32064
  disabled: customerLocked,
32072
32065
  disableClientFilter: !!onCustomerSearch,
32073
32066
  onInputChange: (value, reason) => {
32074
- if (reason === "input") _optionalChain([onCustomerSearch, 'optionalCall', _561 => _561(value)]);
32067
+ if (reason === "input") _optionalChain([onCustomerSearch, 'optionalCall', _562 => _562(value)]);
32075
32068
  },
32076
32069
  startAdornment: customerStartAdornment,
32077
32070
  renderOption: renderCustomerOption
@@ -32164,7 +32157,7 @@ function LastEntryRow({ entry, onClick }) {
32164
32157
  {
32165
32158
  variant: "outline",
32166
32159
  size: "icon",
32167
- onClick: () => _optionalChain([onClick, 'optionalCall', _562 => _562(entry)]),
32160
+ onClick: () => _optionalChain([onClick, 'optionalCall', _563 => _563(entry)]),
32168
32161
  disabled: !onClick,
32169
32162
  "aria-label": `Open entry: ${entry.title}`,
32170
32163
  className: "h-12 w-12 shrink-0 [&_svg]:!size-6",
@@ -32208,9 +32201,9 @@ function HeaderButton({
32208
32201
  function TimeTrackerHeaderButton({ className, disabled }) {
32209
32202
  const ctx = useOptionalTimeTracker();
32210
32203
  const elapsedLabel = useTrackerClock({
32211
- status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _563 => _563.status]), () => ( "ready")),
32212
- runningSince: _optionalChain([ctx, 'optionalAccess', _564 => _564.runningSince]),
32213
- accumulatedMs: _optionalChain([ctx, 'optionalAccess', _565 => _565.accumulatedMs])
32204
+ status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _564 => _564.status]), () => ( "ready")),
32205
+ runningSince: _optionalChain([ctx, 'optionalAccess', _565 => _565.runningSince]),
32206
+ accumulatedMs: _optionalChain([ctx, 'optionalAccess', _566 => _566.accumulatedMs])
32214
32207
  });
32215
32208
  if (!ctx) return null;
32216
32209
  const { isOpen, open, close, status } = ctx;
@@ -32506,15 +32499,15 @@ function TicketCard({
32506
32499
  transition: sortable.transition
32507
32500
  };
32508
32501
  if (showNewMessage) style.borderColor = columnColor;
32509
- const showDeviceRow = !!(_optionalChain([ticket, 'access', _566 => _566.deviceHostnames, 'optionalAccess', _567 => _567.length]) || ticket.organizationName);
32502
+ const showDeviceRow = !!(_optionalChain([ticket, 'access', _567 => _567.deviceHostnames, 'optionalAccess', _568 => _568.length]) || ticket.organizationName);
32510
32503
  const deviceText = [
32511
- _optionalChain([ticket, 'access', _568 => _568.deviceHostnames, 'optionalAccess', _569 => _569.join, 'call', _570 => _570(", ")]),
32504
+ _optionalChain([ticket, 'access', _569 => _569.deviceHostnames, 'optionalAccess', _570 => _570.join, 'call', _571 => _571(", ")]),
32512
32505
  ticket.organizationName
32513
32506
  ].filter(Boolean).join(", ");
32514
32507
  const handleClick = (e) => {
32515
32508
  if (sortable.isDragging) e.preventDefault();
32516
32509
  };
32517
- const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _571 => _571.assignees, 'optionalAccess', _572 => _572.length]) || renderAssignSlot);
32510
+ const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _572 => _572.assignees, 'optionalAccess', _573 => _573.length]) || renderAssignSlot);
32518
32511
  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: [
32519
32512
  ticket.priority && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32520
32513
  _chunkBGD345ZVcjs.Flag02Icon,
@@ -32523,7 +32516,7 @@ function TicketCard({
32523
32516
  "aria-label": `Priority: ${ticket.priority}`
32524
32517
  }
32525
32518
  ),
32526
- renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _573 => _573.assignees, 'optionalAccess', _574 => _574.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
32519
+ renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _574 => _574.assignees, 'optionalAccess', _575 => _575.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
32527
32520
  ticket.assignees.slice(0, MAX_VISIBLE_ASSIGNEES).map((a) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32528
32521
  SquareAvatar,
32529
32522
  {
@@ -32554,7 +32547,7 @@ function TicketCard({
32554
32547
  ] }),
32555
32548
  rightSection
32556
32549
  ] }),
32557
- _optionalChain([ticket, 'access', _575 => _575.tags, 'optionalAccess', _576 => _576.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
32550
+ _optionalChain([ticket, 'access', _576 => _576.tags, 'optionalAccess', _577 => _577.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
32558
32551
  timestampLabel && tooltipLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Tooltip, { children: [
32559
32552
  /* @__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 }) }),
32560
32553
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipContent, { children: tooltipLabel })
@@ -32754,7 +32747,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
32754
32747
  const observer = new IntersectionObserver(
32755
32748
  (entries) => {
32756
32749
  if (entries.some((e) => e.isIntersecting)) {
32757
- _optionalChain([loadMoreRef, 'access', _577 => _577.current, 'optionalCall', _578 => _578(columnIdRef.current)]);
32750
+ _optionalChain([loadMoreRef, 'access', _578 => _578.current, 'optionalCall', _579 => _579(columnIdRef.current)]);
32758
32751
  }
32759
32752
  },
32760
32753
  { root, rootMargin: loadMoreRootMargin }
@@ -32784,7 +32777,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
32784
32777
  ticket: t,
32785
32778
  columnId: column.id,
32786
32779
  columnColor: column.color,
32787
- href: _optionalChain([getTicketHref, 'optionalCall', _579 => _579(t.id)]),
32780
+ href: _optionalChain([getTicketHref, 'optionalCall', _580 => _580(t.id)]),
32788
32781
  renderAssignSlot,
32789
32782
  onApprove,
32790
32783
  onReject,
@@ -32884,17 +32877,17 @@ function Board({
32884
32877
  const pointer = _core.pointerWithin.call(void 0, args);
32885
32878
  const intersections = pointer.length > 0 ? pointer : _core.rectIntersection.call(void 0, args);
32886
32879
  const ticketHit = intersections.find(
32887
- (c) => _optionalChain([c, 'access', _580 => _580.data, 'optionalAccess', _581 => _581.droppableContainer, 'optionalAccess', _582 => _582.data, 'optionalAccess', _583 => _583.current, 'optionalAccess', _584 => _584.type]) === "ticket"
32880
+ (c) => _optionalChain([c, 'access', _581 => _581.data, 'optionalAccess', _582 => _582.droppableContainer, 'optionalAccess', _583 => _583.data, 'optionalAccess', _584 => _584.current, 'optionalAccess', _585 => _585.type]) === "ticket"
32888
32881
  );
32889
32882
  if (ticketHit) return [ticketHit];
32890
32883
  const columnHit = intersections.find(
32891
- (c) => _optionalChain([c, 'access', _585 => _585.data, 'optionalAccess', _586 => _586.droppableContainer, 'optionalAccess', _587 => _587.data, 'optionalAccess', _588 => _588.current, 'optionalAccess', _589 => _589.type]) === "column"
32884
+ (c) => _optionalChain([c, 'access', _586 => _586.data, 'optionalAccess', _587 => _587.droppableContainer, 'optionalAccess', _588 => _588.data, 'optionalAccess', _589 => _589.current, 'optionalAccess', _590 => _590.type]) === "column"
32892
32885
  );
32893
32886
  if (columnHit) {
32894
- const columnId = _optionalChain([columnHit, 'access', _590 => _590.data, 'optionalAccess', _591 => _591.droppableContainer, 'optionalAccess', _592 => _592.data, 'optionalAccess', _593 => _593.current, 'optionalAccess', _594 => _594.columnId]);
32887
+ const columnId = _optionalChain([columnHit, 'access', _591 => _591.data, 'optionalAccess', _592 => _592.droppableContainer, 'optionalAccess', _593 => _593.data, 'optionalAccess', _594 => _594.current, 'optionalAccess', _595 => _595.columnId]);
32895
32888
  const ticketsInColumn = args.droppableContainers.filter((c) => {
32896
32889
  const d = c.data.current;
32897
- return _optionalChain([d, 'optionalAccess', _595 => _595.type]) === "ticket" && d.columnId === columnId;
32890
+ return _optionalChain([d, 'optionalAccess', _596 => _596.type]) === "ticket" && d.columnId === columnId;
32898
32891
  });
32899
32892
  if (ticketsInColumn.length > 0) {
32900
32893
  const closest = _core.closestCorners.call(void 0, { ...args, droppableContainers: ticketsInColumn });
@@ -32919,20 +32912,20 @@ function Board({
32919
32912
  const overId = String(over.id);
32920
32913
  if (activeId === overId) return;
32921
32914
  const overData = over.data.current;
32922
- const fromColumnId = _optionalChain([locate, 'call', _596 => _596(items, activeId), 'optionalAccess', _597 => _597.columnId]);
32923
- const toColumnId = _optionalChain([overData, 'optionalAccess', _598 => _598.columnId]);
32915
+ const fromColumnId = _optionalChain([locate, 'call', _597 => _597(items, activeId), 'optionalAccess', _598 => _598.columnId]);
32916
+ const toColumnId = _optionalChain([overData, 'optionalAccess', _599 => _599.columnId]);
32924
32917
  if (!fromColumnId || !toColumnId || fromColumnId === toColumnId) return;
32925
32918
  const origin = dragOriginRef.current;
32926
- const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _599 => _599.fromColumnId]) === toColumnId;
32919
+ const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _600 => _600.fromColumnId]) === toColumnId;
32927
32920
  const targetCol = items.find((c) => c.id === toColumnId);
32928
- const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _600 => _600.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
32929
- if (_optionalChain([targetCol, 'optionalAccess', _601 => _601.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
32921
+ const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _601 => _601.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
32922
+ if (_optionalChain([targetCol, 'optionalAccess', _602 => _602.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
32930
32923
  setItems((prev) => {
32931
32924
  const fromIndex = findIndexInColumn(prev, fromColumnId, activeId);
32932
32925
  const toCol = prev.find((c) => c.id === toColumnId);
32933
32926
  if (fromIndex < 0 || !toCol) return prev;
32934
32927
  let toIndex;
32935
- if (_optionalChain([overData, 'optionalAccess', _602 => _602.type]) === "column") {
32928
+ if (_optionalChain([overData, 'optionalAccess', _603 => _603.type]) === "column") {
32936
32929
  toIndex = toCol.tickets.length;
32937
32930
  } else {
32938
32931
  const overIndex = toCol.tickets.findIndex((t) => t.id === overId);
@@ -32974,14 +32967,14 @@ function Board({
32974
32967
  const toColumnId = located.columnId;
32975
32968
  const isCrossColumn = origin.fromColumnId !== toColumnId;
32976
32969
  const targetCol = items.find((c) => c.id === toColumnId);
32977
- if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _603 => _603.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _604 => _604.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
32970
+ if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _604 => _604.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _605 => _605.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
32978
32971
  setItems(columns);
32979
32972
  return;
32980
32973
  }
32981
32974
  let finalIndex = located.index;
32982
- let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _605 => _605.find, 'call', _606 => _606((c) => c.id === toColumnId), 'optionalAccess', _607 => _607.tickets]), () => ( []));
32975
+ let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _606 => _606.find, 'call', _607 => _607((c) => c.id === toColumnId), 'optionalAccess', _608 => _608.tickets]), () => ( []));
32983
32976
  const overData = over.data.current;
32984
- if (_optionalChain([overData, 'optionalAccess', _608 => _608.type]) === "ticket") {
32977
+ if (_optionalChain([overData, 'optionalAccess', _609 => _609.type]) === "ticket") {
32985
32978
  const overIndex = findIndexInColumn(items, toColumnId, String(over.id));
32986
32979
  if (overIndex >= 0 && overIndex !== located.index) {
32987
32980
  finalColumnTickets = _sortable.arrayMove.call(void 0, finalColumnTickets, located.index, overIndex);
@@ -33001,8 +32994,8 @@ function Board({
33001
32994
  ticketId: origin.ticketId,
33002
32995
  fromColumnId: origin.fromColumnId,
33003
32996
  toColumnId,
33004
- afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _609 => _609[finalIndex - 1], 'optionalAccess', _610 => _610.id]), () => ( null)),
33005
- beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _611 => _611[finalIndex + 1], 'optionalAccess', _612 => _612.id]), () => ( null))
32997
+ afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _610 => _610[finalIndex - 1], 'optionalAccess', _611 => _611.id]), () => ( null)),
32998
+ beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _612 => _612[finalIndex + 1], 'optionalAccess', _613 => _613.id]), () => ( null))
33006
32999
  });
33007
33000
  };
33008
33001
  const handleDragCancel = () => {
@@ -33031,8 +33024,8 @@ function Board({
33031
33024
  children: items.map((column, i) => {
33032
33025
  const prev = items[i - 1];
33033
33026
  const next = items[i + 1];
33034
- const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _613 => _613.system]));
33035
- const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _614 => _614.system]));
33027
+ const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _614 => _614.system]));
33028
+ const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _615 => _615.system]));
33036
33029
  const showGap = i > 0 && !joinLeft;
33037
33030
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React102.Fragment, { children: [
33038
33031
  showGap && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "w-[var(--spacing-system-mf)] shrink-0" }),
@@ -33085,7 +33078,7 @@ function Board({
33085
33078
  {
33086
33079
  ticket: activeTicket.ticket,
33087
33080
  columnId: activeTicket.columnId,
33088
- columnColor: _optionalChain([items, 'access', _615 => _615.find, 'call', _616 => _616((c) => c.id === activeTicket.columnId), 'optionalAccess', _617 => _617.color]),
33081
+ columnColor: _optionalChain([items, 'access', _616 => _616.find, 'call', _617 => _617((c) => c.id === activeTicket.columnId), 'optionalAccess', _618 => _618.color]),
33089
33082
  isOverlay: true
33090
33083
  }
33091
33084
  ) : null })
@@ -33101,7 +33094,7 @@ function locate(cols, ticketId) {
33101
33094
  return null;
33102
33095
  }
33103
33096
  function findIndexInColumn(cols, columnId, ticketId) {
33104
- return _nullishCoalesce(_optionalChain([cols, 'access', _618 => _618.find, 'call', _619 => _619((c) => c.id === columnId), 'optionalAccess', _620 => _620.tickets, 'access', _621 => _621.findIndex, 'call', _622 => _622((t) => t.id === ticketId)]), () => ( -1));
33097
+ return _nullishCoalesce(_optionalChain([cols, 'access', _619 => _619.find, 'call', _620 => _620((c) => c.id === columnId), 'optionalAccess', _621 => _621.tickets, 'access', _622 => _622.findIndex, 'call', _623 => _623((t) => t.id === ticketId)]), () => ( -1));
33105
33098
  }
33106
33099
 
33107
33100
  // src/components/features/board/types.ts
@@ -33349,7 +33342,7 @@ function Header2({ config, platform }) {
33349
33342
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
33350
33343
  "flex justify-start w-full",
33351
33344
  "font-bold text-[16px] leading-none tracking-[-0.32px]",
33352
- index < (_nullishCoalesce(_optionalChain([item, 'access', _623 => _623.children, 'optionalAccess', _624 => _624.length]), () => ( 0))) - 1 && "mb-1",
33345
+ index < (_nullishCoalesce(_optionalChain([item, 'access', _624 => _624.children, 'optionalAccess', _625 => _625.length]), () => ( 0))) - 1 && "mb-1",
33353
33346
  "text-ods-text-primary",
33354
33347
  // All dropdown items use primary text color
33355
33348
  child.isActive && "bg-ods-bg-hover"
@@ -33441,7 +33434,7 @@ function Header2({ config, platform }) {
33441
33434
  style: config.style,
33442
33435
  children: [
33443
33436
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
33444
- _optionalChain([config, 'access', _625 => _625.actions, 'optionalAccess', _626 => _626.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
33437
+ _optionalChain([config, 'access', _626 => _626.actions, 'optionalAccess', _627 => _627.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
33445
33438
  /* @__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 })
33446
33439
  ] }),
33447
33440
  config.navigation && config.navigation.items.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -33458,7 +33451,7 @@ function Header2({ config, platform }) {
33458
33451
  }
33459
33452
  ),
33460
33453
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-end gap-4 flex-shrink-0", children: [
33461
- _optionalChain([config, 'access', _627 => _627.actions, 'optionalAccess', _628 => _628.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden md:flex items-center gap-4", children: config.actions.right }),
33454
+ _optionalChain([config, 'access', _628 => _628.actions, 'optionalAccess', _629 => _629.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden md:flex items-center gap-4", children: config.actions.right }),
33462
33455
  config.mobile && config.mobile.enabled && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33463
33456
  _chunkNYIZVI4Icjs.Button,
33464
33457
  {
@@ -33466,10 +33459,10 @@ function Header2({ config, platform }) {
33466
33459
  size: "icon",
33467
33460
  className: "flex md:hidden",
33468
33461
  onClick: () => {
33469
- _optionalChain([config, 'access', _629 => _629.mobile, 'optionalAccess', _630 => _630.onToggle, 'optionalCall', _631 => _631()]);
33462
+ _optionalChain([config, 'access', _630 => _630.mobile, 'optionalAccess', _631 => _631.onToggle, 'optionalCall', _632 => _632()]);
33470
33463
  },
33471
- "aria-label": _optionalChain([config, 'access', _632 => _632.mobile, 'optionalAccess', _633 => _633.isOpen]) ? "Close menu" : "Open menu",
33472
- leftIcon: _optionalChain([config, 'access', _634 => _634.mobile, 'optionalAccess', _635 => _635.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.Menu01Icon, {})
33464
+ "aria-label": _optionalChain([config, 'access', _633 => _633.mobile, 'optionalAccess', _634 => _634.isOpen]) ? "Close menu" : "Open menu",
33465
+ leftIcon: _optionalChain([config, 'access', _635 => _635.mobile, 'optionalAccess', _636 => _636.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.Menu01Icon, {})
33473
33466
  }
33474
33467
  )
33475
33468
  ] })
@@ -33486,10 +33479,10 @@ function Header2({ config, platform }) {
33486
33479
  // src/components/navigation/header-skeleton.tsx
33487
33480
 
33488
33481
  function HeaderSkeleton({ config }) {
33489
- const showNavigation = _optionalChain([config, 'optionalAccess', _636 => _636.navigation]) && config.navigation.items.length > 0;
33490
- const showActions = _optionalChain([config, 'optionalAccess', _637 => _637.actions, 'optionalAccess', _638 => _638.right]) && config.actions.right.length > 0;
33491
- const showMobileMenu = _optionalChain([config, 'optionalAccess', _639 => _639.mobile, 'optionalAccess', _640 => _640.enabled]);
33492
- const isAdminHeader = _optionalChain([config, 'optionalAccess', _641 => _641.className, 'optionalAccess', _642 => _642.includes, 'call', _643 => _643("admin")]);
33482
+ const showNavigation = _optionalChain([config, 'optionalAccess', _637 => _637.navigation]) && config.navigation.items.length > 0;
33483
+ const showActions = _optionalChain([config, 'optionalAccess', _638 => _638.actions, 'optionalAccess', _639 => _639.right]) && config.actions.right.length > 0;
33484
+ const showMobileMenu = _optionalChain([config, 'optionalAccess', _640 => _640.mobile, 'optionalAccess', _641 => _641.enabled]);
33485
+ const isAdminHeader = _optionalChain([config, 'optionalAccess', _642 => _642.className, 'optionalAccess', _643 => _643.includes, 'call', _644 => _644("admin")]);
33493
33486
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky top-0 z-40 w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
33494
33487
  "header",
33495
33488
  {
@@ -33498,11 +33491,11 @@ function HeaderSkeleton({ config }) {
33498
33491
  "bg-ods-card border-b border-ods-border backdrop-blur-sm",
33499
33492
  "px-6 py-3",
33500
33493
  "transition-opacity duration-300 ease-in-out",
33501
- _optionalChain([config, 'optionalAccess', _644 => _644.className])
33494
+ _optionalChain([config, 'optionalAccess', _645 => _645.className])
33502
33495
  ),
33503
33496
  children: [
33504
33497
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
33505
- isAdminHeader && _optionalChain([config, 'optionalAccess', _645 => _645.actions, 'optionalAccess', _646 => _646.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" }) }),
33498
+ isAdminHeader && _optionalChain([config, 'optionalAccess', _646 => _646.actions, 'optionalAccess', _647 => _647.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" }) }),
33506
33499
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
33507
33500
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-8 bg-ods-border rounded animate-pulse" }),
33508
33501
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-6 w-24 bg-ods-border rounded animate-pulse" })
@@ -33510,8 +33503,8 @@ function HeaderSkeleton({ config }) {
33510
33503
  ] }),
33511
33504
  showNavigation && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "nav", { className: _chunkFIG2RKZFcjs.cn.call(void 0,
33512
33505
  "hidden md:flex items-center gap-2",
33513
- _optionalChain([config, 'optionalAccess', _647 => _647.navigation, 'optionalAccess', _648 => _648.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
33514
- _optionalChain([config, 'optionalAccess', _649 => _649.navigation, 'optionalAccess', _650 => _650.position]) === "right" && "ml-auto mr-4"
33506
+ _optionalChain([config, 'optionalAccess', _648 => _648.navigation, 'optionalAccess', _649 => _649.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
33507
+ _optionalChain([config, 'optionalAccess', _650 => _650.navigation, 'optionalAccess', _651 => _651.position]) === "right" && "ml-auto mr-4"
33515
33508
  ), children: [
33516
33509
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-20 bg-ods-border rounded animate-pulse" }),
33517
33510
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-28 bg-ods-border rounded animate-pulse" }),
@@ -33559,7 +33552,7 @@ function MobileNavPanel({ isOpen, config }) {
33559
33552
  _react.useEffect.call(void 0, () => {
33560
33553
  const handleKeyDown = (e) => {
33561
33554
  if (e.key === "Escape" && isOpen) {
33562
- _optionalChain([config, 'access', _651 => _651.onClose, 'optionalCall', _652 => _652()]);
33555
+ _optionalChain([config, 'access', _652 => _652.onClose, 'optionalCall', _653 => _653()]);
33563
33556
  }
33564
33557
  };
33565
33558
  if (isOpen) {
@@ -33576,7 +33569,7 @@ function MobileNavPanel({ isOpen, config }) {
33576
33569
  if (item.onClick) {
33577
33570
  item.onClick();
33578
33571
  }
33579
- _optionalChain([config, 'access', _653 => _653.onClose, 'optionalCall', _654 => _654()]);
33572
+ _optionalChain([config, 'access', _654 => _654.onClose, 'optionalCall', _655 => _655()]);
33580
33573
  };
33581
33574
  if (item.href) {
33582
33575
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -33746,7 +33739,7 @@ function SlidingSidebar({ config }) {
33746
33739
  variant: "transparent",
33747
33740
  size: "default",
33748
33741
  onClick: () => {
33749
- _optionalChain([item, 'access', _655 => _655.onClick, 'optionalCall', _656 => _656()]);
33742
+ _optionalChain([item, 'access', _656 => _656.onClick, 'optionalCall', _657 => _657()]);
33750
33743
  config.onClose();
33751
33744
  },
33752
33745
  leftIcon: item.icon,
@@ -33769,7 +33762,7 @@ function SlidingSidebar({ config }) {
33769
33762
  variant: "transparent",
33770
33763
  size: "default",
33771
33764
  onClick: () => {
33772
- _optionalChain([item, 'access', _657 => _657.onClick, 'optionalCall', _658 => _658()]);
33765
+ _optionalChain([item, 'access', _658 => _658.onClick, 'optionalCall', _659 => _659()]);
33773
33766
  config.onClose();
33774
33767
  },
33775
33768
  leftIcon: item.icon,
@@ -33896,7 +33889,7 @@ function StickySectionNav({
33896
33889
  ] });
33897
33890
  }
33898
33891
  function useSectionNavigation(sections, options) {
33899
- const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _659 => _659[0], 'optionalAccess', _660 => _660.id]) || "");
33892
+ const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _660 => _660[0], 'optionalAccess', _661 => _661.id]) || "");
33900
33893
  const isScrollingFromClick = _react.useRef.call(void 0, false);
33901
33894
  const { offset: offset2 = 100 } = options || {};
33902
33895
  const handleSectionClick = _react.useCallback.call(void 0, (sectionId) => {
@@ -33920,7 +33913,7 @@ function useSectionNavigation(sections, options) {
33920
33913
  const handleScroll = () => {
33921
33914
  if (isScrollingFromClick.current) return;
33922
33915
  const scrollPosition = window.scrollY + offset2 + 50;
33923
- let currentSection = _optionalChain([sections, 'access', _661 => _661[0], 'optionalAccess', _662 => _662.id]) || "";
33916
+ let currentSection = _optionalChain([sections, 'access', _662 => _662[0], 'optionalAccess', _663 => _663.id]) || "";
33924
33917
  for (let i = sections.length - 1; i >= 0; i--) {
33925
33918
  const element = document.getElementById(sections[i].id);
33926
33919
  if (element && scrollPosition >= element.offsetTop) {
@@ -34111,7 +34104,7 @@ function NavigationSidebar({ config, disabled = false }) {
34111
34104
  } else {
34112
34105
  setDesktopMinimized((prev) => !prev);
34113
34106
  }
34114
- _optionalChain([config, 'access', _663 => _663.onToggleMinimized, 'optionalCall', _664 => _664()]);
34107
+ _optionalChain([config, 'access', _664 => _664.onToggleMinimized, 'optionalCall', _665 => _665()]);
34115
34108
  }, [isTablet, setDesktopMinimized, config]);
34116
34109
  const closeOverlay = _react.useCallback.call(void 0, () => {
34117
34110
  setTabletMinimized(true);
@@ -34125,11 +34118,11 @@ function NavigationSidebar({ config, disabled = false }) {
34125
34118
  return () => document.removeEventListener("keydown", handleKeyDown);
34126
34119
  }, [isOverlayOpen, closeOverlay]);
34127
34120
  const handleItemClick = _react.useCallback.call(void 0, (item, event) => {
34128
- _optionalChain([event, 'optionalAccess', _665 => _665.stopPropagation, 'call', _666 => _666()]);
34121
+ _optionalChain([event, 'optionalAccess', _666 => _666.stopPropagation, 'call', _667 => _667()]);
34129
34122
  if (item.onClick) {
34130
34123
  item.onClick();
34131
34124
  } else if (item.path) {
34132
- _optionalChain([config, 'access', _667 => _667.onNavigate, 'optionalCall', _668 => _668(item.path)]);
34125
+ _optionalChain([config, 'access', _668 => _668.onNavigate, 'optionalCall', _669 => _669(item.path)]);
34133
34126
  }
34134
34127
  if (isTablet) setTabletMinimized(true);
34135
34128
  }, [config, isTablet]);
@@ -34254,11 +34247,11 @@ function HeaderGlobalSearch({
34254
34247
  };
34255
34248
  const handleSubmit = (e) => {
34256
34249
  e.preventDefault();
34257
- _optionalChain([onSubmit, 'optionalCall', _669 => _669(currentValue)]);
34250
+ _optionalChain([onSubmit, 'optionalCall', _670 => _670(currentValue)]);
34258
34251
  };
34259
34252
  const handleKeyDown = (e) => {
34260
34253
  if (e.key === "Enter") {
34261
- _optionalChain([onSubmit, 'optionalCall', _670 => _670(currentValue)]);
34254
+ _optionalChain([onSubmit, 'optionalCall', _671 => _671(currentValue)]);
34262
34255
  }
34263
34256
  };
34264
34257
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -34352,8 +34345,8 @@ function HeaderOrganizationFilter({
34352
34345
  className
34353
34346
  }) {
34354
34347
  const selectedOrg = organizations.find((o) => o.id === selectedOrgId);
34355
- const displayName = _optionalChain([selectedOrg, 'optionalAccess', _671 => _671.name]) || "All Organizations";
34356
- const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _672 => _672.deviceCount]), () => ( totalDeviceCount));
34348
+ const displayName = _optionalChain([selectedOrg, 'optionalAccess', _672 => _672.name]) || "All Organizations";
34349
+ const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _673 => _673.deviceCount]), () => ( totalDeviceCount));
34357
34350
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkNYIZVI4Icjs.DropdownMenu, { children: [
34358
34351
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNYIZVI4Icjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
34359
34352
  "button",
@@ -34378,11 +34371,11 @@ function HeaderOrganizationFilter({
34378
34371
  }
34379
34372
  ) }),
34380
34373
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkNYIZVI4Icjs.DropdownMenuContent, { align: "end", className: "min-w-[240px]", children: [
34381
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNYIZVI4Icjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _673 => _673("")]), children: "All Organizations" }),
34374
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkNYIZVI4Icjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _674 => _674("")]), children: "All Organizations" }),
34382
34375
  organizations.map((org) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34383
34376
  _chunkNYIZVI4Icjs.DropdownMenuItem,
34384
34377
  {
34385
- onClick: () => _optionalChain([onOrgChange, 'optionalCall', _674 => _674(org.id)]),
34378
+ onClick: () => _optionalChain([onOrgChange, 'optionalCall', _675 => _675(org.id)]),
34386
34379
  children: org.name
34387
34380
  },
34388
34381
  org.id
@@ -34572,9 +34565,9 @@ function NotificationsHeaderButton({
34572
34565
  dimmedClass
34573
34566
  }) {
34574
34567
  const ctx = useOptionalNotifications();
34575
- const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _675 => _675.unreadCount]), () => ( fallbackUnreadCount))) > 0;
34576
- const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _676 => _676.isOpen]), () => ( false));
34577
- const onClick = _optionalChain([ctx, 'optionalAccess', _677 => _677.toggle]);
34568
+ const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _676 => _676.unreadCount]), () => ( fallbackUnreadCount))) > 0;
34569
+ const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _677 => _677.isOpen]), () => ( false));
34570
+ const onClick = _optionalChain([ctx, 'optionalAccess', _678 => _678.toggle]);
34578
34571
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34579
34572
  HeaderButton,
34580
34573
  {
@@ -34638,7 +34631,7 @@ var MobileBurgerMenu = React118.default.memo(function MobileBurgerMenu2({
34638
34631
  if (item.onClick) {
34639
34632
  item.onClick();
34640
34633
  } else if (item.path) {
34641
- _optionalChain([config, 'access', _678 => _678.onNavigate, 'optionalCall', _679 => _679(item.path)]);
34634
+ _optionalChain([config, 'access', _679 => _679.onNavigate, 'optionalCall', _680 => _680(item.path)]);
34642
34635
  }
34643
34636
  onClose();
34644
34637
  }, [config, onClose]);
@@ -34903,7 +34896,7 @@ var AppLayoutDrawerRoot = ({
34903
34896
  const handleOpenChange = React111.useCallback(
34904
34897
  (next) => {
34905
34898
  if (!isControlled) setInternalOpen(next);
34906
- _optionalChain([onOpenChange, 'optionalCall', _680 => _680(next)]);
34899
+ _optionalChain([onOpenChange, 'optionalCall', _681 => _681(next)]);
34907
34900
  },
34908
34901
  [isControlled, onOpenChange]
34909
34902
  );
@@ -34913,10 +34906,10 @@ var AppLayoutDrawerRoot = ({
34913
34906
  const handleOpenChangeRef = React111.useRef(handleOpenChange);
34914
34907
  handleOpenChangeRef.current = handleOpenChange;
34915
34908
  React111.useEffect(() => {
34916
- if (open) _optionalChain([coordination, 'optionalAccess', _681 => _681.notifyDrawerDidOpen, 'call', _682 => _682()]);
34909
+ if (open) _optionalChain([coordination, 'optionalAccess', _682 => _682.notifyDrawerDidOpen, 'call', _683 => _683()]);
34917
34910
  }, [open, coordination]);
34918
34911
  React111.useEffect(() => {
34919
- return _optionalChain([coordination, 'optionalAccess', _683 => _683.registerDrawer, 'call', _684 => _684({
34912
+ return _optionalChain([coordination, 'optionalAccess', _684 => _684.registerDrawer, 'call', _685 => _685({
34920
34913
  close: () => {
34921
34914
  if (openRef.current) handleOpenChangeRef.current(false);
34922
34915
  }
@@ -35300,10 +35293,10 @@ var AppLayoutDrawerContent = React111.forwardRef(
35300
35293
  ),
35301
35294
  style,
35302
35295
  onInteractOutside: (event) => {
35303
- _optionalChain([onInteractOutside, 'optionalCall', _685 => _685(event)]);
35296
+ _optionalChain([onInteractOutside, 'optionalCall', _686 => _686(event)]);
35304
35297
  if (event.defaultPrevented) return;
35305
35298
  const target = event.target;
35306
- const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _686 => _686.contains, 'call', _687 => _687(target)]);
35299
+ const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _687 => _687.contains, 'call', _688 => _688(target)]);
35307
35300
  if (!isInsideContainer) {
35308
35301
  event.preventDefault();
35309
35302
  return;
@@ -35716,7 +35709,7 @@ var ShellTypeBadge = ({
35716
35709
  className,
35717
35710
  iconClassName
35718
35711
  }) => {
35719
- const normalizedType = _optionalChain([shellType, 'optionalAccess', _688 => _688.toUpperCase, 'call', _689 => _689()]);
35712
+ const normalizedType = _optionalChain([shellType, 'optionalAccess', _689 => _689.toUpperCase, 'call', _690 => _690()]);
35720
35713
  const label = getShellLabel(normalizedType);
35721
35714
  const { icon: IconComponent, props: iconProps } = _nullishCoalesce(shellIconMap[normalizedType], () => ( defaultIconConfig));
35722
35715
  const defaultIconClassName = "className" in iconProps ? iconProps.className : void 0;
@@ -36103,12 +36096,12 @@ function OnboardingWalkthrough({
36103
36096
  }
36104
36097
  }, [state.completedSteps, markComplete]);
36105
36098
  const handleStepSkip = (step) => {
36106
- _optionalChain([step, 'access', _690 => _690.onSkip, 'optionalCall', _691 => _691()]);
36099
+ _optionalChain([step, 'access', _691 => _691.onSkip, 'optionalCall', _692 => _692()]);
36107
36100
  markSkipped(step.id);
36108
36101
  };
36109
36102
  const handleDismiss = () => {
36110
36103
  dismissOnboarding();
36111
- _optionalChain([onDismiss, 'optionalCall', _692 => _692()]);
36104
+ _optionalChain([onDismiss, 'optionalCall', _693 => _693()]);
36112
36105
  };
36113
36106
  if (state.dismissed) {
36114
36107
  return null;
@@ -36238,7 +36231,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
36238
36231
  onKeyDown: (e) => {
36239
36232
  if (e.key === "Enter" || e.key === " ") {
36240
36233
  e.preventDefault();
36241
- _optionalChain([onClick, 'optionalCall', _693 => _693()]);
36234
+ _optionalChain([onClick, 'optionalCall', _694 => _694()]);
36242
36235
  }
36243
36236
  },
36244
36237
  children: [
@@ -36339,7 +36332,7 @@ var LogsList = React115.forwardRef(({
36339
36332
  log,
36340
36333
  isLast: index === logs.length - 1,
36341
36334
  showConnector,
36342
- onClick: () => _optionalChain([onLogClick, 'optionalCall', _694 => _694(log)])
36335
+ onClick: () => _optionalChain([onLogClick, 'optionalCall', _695 => _695(log)])
36343
36336
  },
36344
36337
  log.id
36345
36338
  ))
@@ -36440,7 +36433,7 @@ var Slider = React117.forwardRef(
36440
36433
  ({ className, value = [0], onValueChange, min = 0, max = 100, step = 1, ...props }, ref) => {
36441
36434
  const handleChange = (e) => {
36442
36435
  const newValue = [Number(e.target.value)];
36443
- _optionalChain([onValueChange, 'optionalCall', _695 => _695(newValue)]);
36436
+ _optionalChain([onValueChange, 'optionalCall', _696 => _696(newValue)]);
36444
36437
  };
36445
36438
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36446
36439
  "input",
@@ -36874,7 +36867,7 @@ function CursorPaginationSimple({
36874
36867
  {
36875
36868
  variant: "transparent",
36876
36869
  size: "icon",
36877
- onClick: () => _optionalChain([onPrevious, 'optionalCall', _696 => _696("")]),
36870
+ onClick: () => _optionalChain([onPrevious, 'optionalCall', _697 => _697("")]),
36878
36871
  disabled: !hasPreviousPage || loading,
36879
36872
  className: "h-8 w-8",
36880
36873
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" }),
@@ -36886,7 +36879,7 @@ function CursorPaginationSimple({
36886
36879
  {
36887
36880
  variant: "transparent",
36888
36881
  size: "icon",
36889
- onClick: () => _optionalChain([onNext, 'optionalCall', _697 => _697("")]),
36882
+ onClick: () => _optionalChain([onNext, 'optionalCall', _698 => _698("")]),
36890
36883
  disabled: !hasNextPage || loading,
36891
36884
  className: "h-8 w-8",
36892
36885
  rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
@@ -36906,8 +36899,8 @@ function TableEmptyState({ message: message2, icon, action, className }) {
36906
36899
  icon: _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, {}))),
36907
36900
  title: _nullishCoalesce(message2, () => ( "No results found")),
36908
36901
  description: message2 == null ? "Try adjusting your search or filters" : void 0,
36909
- buttonLabel: _optionalChain([action, 'optionalAccess', _698 => _698.label]),
36910
- onButtonClick: _optionalChain([action, 'optionalAccess', _699 => _699.onClick]),
36902
+ buttonLabel: _optionalChain([action, 'optionalAccess', _699 => _699.label]),
36903
+ onButtonClick: _optionalChain([action, 'optionalAccess', _700 => _700.onClick]),
36911
36904
  className: _chunkFIG2RKZFcjs.cn.call(void 0, "py-[var(--spacing-system-xxl)]", className)
36912
36905
  }
36913
36906
  );
@@ -36928,7 +36921,7 @@ function TableColumnFilterDropdown({
36928
36921
  placement = "bottom-start",
36929
36922
  dropdownClassName = "min-w-[240px]"
36930
36923
  }) {
36931
- const activeCount = _optionalChain([filters, 'optionalAccess', _700 => _700[columnKey], 'optionalAccess', _701 => _701.length]) || 0;
36924
+ const activeCount = _optionalChain([filters, 'optionalAccess', _701 => _701[columnKey], 'optionalAccess', _702 => _702.length]) || 0;
36932
36925
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36933
36926
  FiltersDropdown,
36934
36927
  {
@@ -36971,7 +36964,7 @@ function TableColumnFilterDropdown({
36971
36964
  delete newFilters[columnKey];
36972
36965
  onFilterChange(newFilters);
36973
36966
  },
36974
- currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _702 => _702[columnKey]]) || [] },
36967
+ currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _703 => _703[columnKey]]) || [] },
36975
36968
  placement,
36976
36969
  dropdownClassName
36977
36970
  }
@@ -37181,7 +37174,7 @@ function TableCardSkeleton({
37181
37174
  className,
37182
37175
  rowClassName
37183
37176
  }) {
37184
- const primaryKey = _optionalChain([(_nullishCoalesce(columns.find((c) => /flex-(1|\[)/.test(c.width || "")), () => ( columns[0]))), 'optionalAccess', _703 => _703.key]);
37177
+ const primaryKey = _optionalChain([(_nullishCoalesce(columns.find((c) => /flex-(1|\[)/.test(c.width || "")), () => ( columns[0]))), 'optionalAccess', _704 => _704.key]);
37185
37178
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
37186
37179
  "div",
37187
37180
  {
@@ -37274,7 +37267,7 @@ function TableRow({
37274
37267
  const keys = column.key.split(".");
37275
37268
  let value = item;
37276
37269
  for (const key of keys) {
37277
- value = _optionalChain([value, 'optionalAccess', _704 => _704[key]]);
37270
+ value = _optionalChain([value, 'optionalAccess', _705 => _705[key]]);
37278
37271
  }
37279
37272
  if (value === null || value === void 0) {
37280
37273
  return "-";
@@ -37363,7 +37356,7 @@ function useTableMotion(enabled) {
37363
37356
  // src/components/ui/table/table.tsx
37364
37357
 
37365
37358
  function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref) {
37366
- const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _705 => _705.length])) || Boolean(renderRowActions);
37359
+ const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _706 => _706.length])) || Boolean(renderRowActions);
37367
37360
  const result = [...columns];
37368
37361
  if (hasActions) {
37369
37362
  const actionsColumn = {
@@ -37459,7 +37452,7 @@ function Table({
37459
37452
  return rowKey(item);
37460
37453
  }
37461
37454
  const key = item[rowKey];
37462
- return _optionalChain([key, 'optionalAccess', _706 => _706.toString, 'call', _707 => _707()]) || index.toString();
37455
+ return _optionalChain([key, 'optionalAccess', _707 => _707.toString, 'call', _708 => _708()]) || index.toString();
37463
37456
  };
37464
37457
  const getRowClassName = (item, index) => {
37465
37458
  if (typeof rowClassName === "function") {
@@ -37493,23 +37486,23 @@ function Table({
37493
37486
  const allSelected = selectedRows.length > 0 && selectedRows.length === data.length;
37494
37487
  const someSelected = selectedRows.length > 0 && selectedRows.length < data.length;
37495
37488
  const sentinelRef = _react.useRef.call(void 0, null);
37496
- const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _708 => _708.onLoadMore]));
37497
- onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _709 => _709.onLoadMore]);
37489
+ const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _709 => _709.onLoadMore]));
37490
+ onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _710 => _710.onLoadMore]);
37498
37491
  _react.useEffect.call(void 0, () => {
37499
- if (!_optionalChain([infiniteScroll, 'optionalAccess', _710 => _710.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
37492
+ if (!_optionalChain([infiniteScroll, 'optionalAccess', _711 => _711.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
37500
37493
  const sentinel = sentinelRef.current;
37501
37494
  if (!sentinel) return;
37502
37495
  const observer = new IntersectionObserver(
37503
37496
  (entries) => {
37504
- if (_optionalChain([entries, 'access', _711 => _711[0], 'optionalAccess', _712 => _712.isIntersecting])) {
37505
- _optionalChain([onLoadMoreRef, 'access', _713 => _713.current, 'optionalCall', _714 => _714()]);
37497
+ if (_optionalChain([entries, 'access', _712 => _712[0], 'optionalAccess', _713 => _713.isIntersecting])) {
37498
+ _optionalChain([onLoadMoreRef, 'access', _714 => _714.current, 'optionalCall', _715 => _715()]);
37506
37499
  }
37507
37500
  },
37508
37501
  { rootMargin: "200px" }
37509
37502
  );
37510
37503
  observer.observe(sentinel);
37511
37504
  return () => observer.disconnect();
37512
- }, [_optionalChain([infiniteScroll, 'optionalAccess', _715 => _715.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _716 => _716.isFetchingNextPage])]);
37505
+ }, [_optionalChain([infiniteScroll, 'optionalAccess', _716 => _716.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _717 => _717.isFetchingNextPage])]);
37513
37506
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-1 w-full", containerClassName), children: [
37514
37507
  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: [
37515
37508
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary text-sm", children: [
@@ -37579,14 +37572,14 @@ function Table({
37579
37572
  selected: isRowSelected(item),
37580
37573
  onSelect: handleSelectRow,
37581
37574
  animateRowReorder,
37582
- motionDiv: _optionalChain([tableMotion, 'optionalAccess', _717 => _717.motionDiv])
37575
+ motionDiv: _optionalChain([tableMotion, 'optionalAccess', _718 => _718.motionDiv])
37583
37576
  },
37584
37577
  getRowKey(item, index)
37585
37578
  ));
37586
- const LayoutGroup = _optionalChain([tableMotion, 'optionalAccess', _718 => _718.LayoutGroup]);
37579
+ const LayoutGroup = _optionalChain([tableMotion, 'optionalAccess', _719 => _719.LayoutGroup]);
37587
37580
  return animateRowReorder && LayoutGroup ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, LayoutGroup, { children: rows }) : rows;
37588
37581
  })(),
37589
- _optionalChain([infiniteScroll, 'optionalAccess', _719 => _719.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37582
+ _optionalChain([infiniteScroll, 'optionalAccess', _720 => _720.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
37590
37583
  TableCardSkeleton,
37591
37584
  {
37592
37585
  columns,
@@ -37595,7 +37588,7 @@ function Table({
37595
37588
  hasChevron: Boolean(rowHref)
37596
37589
  }
37597
37590
  ),
37598
- _optionalChain([infiniteScroll, 'optionalAccess', _720 => _720.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
37591
+ _optionalChain([infiniteScroll, 'optionalAccess', _721 => _721.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
37599
37592
  !infiniteScroll && Array.from({ length: Math.max(0, skeletonRows - data.length) }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
37600
37593
  "div",
37601
37594
  {
@@ -37953,7 +37946,7 @@ function QueryReportTable({
37953
37946
  );
37954
37947
  const handleExport = () => {
37955
37948
  exportToCSV(data, columns, exportFilename);
37956
- _optionalChain([onExport, 'optionalCall', _721 => _721()]);
37949
+ _optionalChain([onExport, 'optionalCall', _722 => _722()]);
37957
37950
  };
37958
37951
  const tableMinWidth = columns.length * (columnWidth + 16);
37959
37952
  const {
@@ -38126,7 +38119,7 @@ function DataTableColumnFilter({
38126
38119
  align = "left"
38127
38120
  }) {
38128
38121
  const currentValue = column.getFilterValue();
38129
- const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _722 => _722.length]), () => ( 0));
38122
+ const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _723 => _723.length]), () => ( 0));
38130
38123
  const sections = _react.useMemo.call(void 0,
38131
38124
  () => [
38132
38125
  {
@@ -38206,7 +38199,7 @@ function DataTableHeader({
38206
38199
  const hasVisibleHeaderCell = headerGroup.headers.some((header) => {
38207
38200
  if (header.isPlaceholder) return false;
38208
38201
  if (isLgUp) return true;
38209
- return Boolean(_optionalChain([header, 'access', _723 => _723.column, 'access', _724 => _724.columnDef, 'access', _725 => _725.meta, 'optionalAccess', _726 => _726.filter]));
38202
+ return Boolean(_optionalChain([header, 'access', _724 => _724.column, 'access', _725 => _725.columnDef, 'access', _726 => _726.meta, 'optionalAccess', _727 => _727.filter]));
38210
38203
  });
38211
38204
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38212
38205
  "div",
@@ -38236,20 +38229,20 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
38236
38229
  if (header.isPlaceholder) return null;
38237
38230
  const column = header.column;
38238
38231
  const meta = column.columnDef.meta;
38239
- const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _727 => _727.filter]));
38240
- const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _728 => _728.align]), () => ( "left"));
38241
- const canSort = _optionalChain([meta, 'optionalAccess', _729 => _729.sortable]) === true;
38242
- const sortDir = _optionalChain([sort, 'optionalAccess', _730 => _730.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
38232
+ const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _728 => _728.filter]));
38233
+ const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _729 => _729.align]), () => ( "left"));
38234
+ const canSort = _optionalChain([meta, 'optionalAccess', _730 => _730.sortable]) === true;
38235
+ const sortDir = _optionalChain([sort, 'optionalAccess', _731 => _731.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
38243
38236
  if (!isLgUp && !hasFilter) return null;
38244
38237
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38245
38238
  "div",
38246
38239
  {
38247
38240
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
38248
38241
  "flex items-stretch",
38249
- isLgUp && (_optionalChain([meta, 'optionalAccess', _731 => _731.width]) || "flex-1 min-w-0"),
38250
- _optionalChain([meta, 'optionalAccess', _732 => _732.headerClassName]),
38242
+ isLgUp && (_optionalChain([meta, 'optionalAccess', _732 => _732.width]) || "flex-1 min-w-0"),
38243
+ _optionalChain([meta, 'optionalAccess', _733 => _733.headerClassName]),
38251
38244
  // Don't apply hide classes if column is filterable on tablet (keep filter accessible)
38252
- !(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _733 => _733.hideAt]))
38245
+ !(hasFilter && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _734 => _734.hideAt]))
38253
38246
  ),
38254
38247
  children: hasFilter ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38255
38248
  DataTableColumnFilter,
@@ -38268,7 +38261,7 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
38268
38261
  isLgUp && alignJustify(align),
38269
38262
  canSort && "group cursor-pointer"
38270
38263
  ),
38271
- onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _734 => _734(column.id)]) : void 0,
38264
+ onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _735 => _735(column.id)]) : void 0,
38272
38265
  children: [
38273
38266
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
38274
38267
  canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
@@ -38333,7 +38326,7 @@ function DataTableSkeleton({
38333
38326
  }) {
38334
38327
  const table = useDataTableContext();
38335
38328
  const columns = table.getVisibleFlatColumns();
38336
- const firstColumnId = _optionalChain([columns, 'access', _735 => _735[0], 'optionalAccess', _736 => _736.id]);
38329
+ const firstColumnId = _optionalChain([columns, 'access', _736 => _736[0], 'optionalAccess', _737 => _737.id]);
38337
38330
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
38338
38331
  "div",
38339
38332
  {
@@ -38357,7 +38350,7 @@ function DataTableSkeleton({
38357
38350
  {
38358
38351
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
38359
38352
  "flex flex-col justify-center shrink-0",
38360
- _optionalChain([meta, 'optionalAccess', _737 => _737.width]) || "flex-1"
38353
+ _optionalChain([meta, 'optionalAccess', _738 => _738.width]) || "flex-1"
38361
38354
  ),
38362
38355
  children: [
38363
38356
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 bg-ods-bg-surface rounded-sm w-3/4 mb-[var(--spacing-system-xxs)]" }),
@@ -38407,7 +38400,7 @@ function DataTableRowImpl({
38407
38400
  const handleClick = _react.useCallback.call(void 0,
38408
38401
  (e) => {
38409
38402
  const target = e.target;
38410
- if (!_optionalChain([containerRef, 'access', _738 => _738.current, 'optionalAccess', _739 => _739.contains, 'call', _740 => _740(target)])) {
38403
+ if (!_optionalChain([containerRef, 'access', _739 => _739.current, 'optionalAccess', _740 => _740.contains, 'call', _741 => _741(target)])) {
38411
38404
  if (isLinkMode) e.preventDefault();
38412
38405
  return;
38413
38406
  }
@@ -38415,7 +38408,7 @@ function DataTableRowImpl({
38415
38408
  if (isLinkMode) e.preventDefault();
38416
38409
  return;
38417
38410
  }
38418
- _optionalChain([onClick, 'optionalCall', _741 => _741(row.original)]);
38411
+ _optionalChain([onClick, 'optionalCall', _742 => _742(row.original)]);
38419
38412
  },
38420
38413
  [onClick, row.original, isLinkMode]
38421
38414
  );
@@ -38440,10 +38433,10 @@ function DataTableRowImpl({
38440
38433
  {
38441
38434
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
38442
38435
  "flex flex-col overflow-hidden",
38443
- alignJustify(_optionalChain([meta, 'optionalAccess', _742 => _742.align])),
38444
- _optionalChain([meta, 'optionalAccess', _743 => _743.width]) || "flex-1 min-w-0",
38445
- _optionalChain([meta, 'optionalAccess', _744 => _744.cellClassName]),
38446
- getHideClasses2(_optionalChain([meta, 'optionalAccess', _745 => _745.hideAt]))
38436
+ alignJustify(_optionalChain([meta, 'optionalAccess', _743 => _743.align])),
38437
+ _optionalChain([meta, 'optionalAccess', _744 => _744.width]) || "flex-1 min-w-0",
38438
+ _optionalChain([meta, 'optionalAccess', _745 => _745.cellClassName]),
38439
+ getHideClasses2(_optionalChain([meta, 'optionalAccess', _746 => _746.hideAt]))
38447
38440
  ),
38448
38441
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CellContent, { children: _reacttable.flexRender.call(void 0, cell.column.columnDef.cell, cell.getContext()) })
38449
38442
  },
@@ -38523,7 +38516,7 @@ function DataTableBody({
38523
38516
  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: [
38524
38517
  rows.map((row, index) => {
38525
38518
  const item = row.original;
38526
- const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _746 => _746(item)]), () => ( void 0));
38519
+ const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _747 => _747(item)]), () => ( void 0));
38527
38520
  const cls = typeof rowClassName === "function" ? rowClassName(item, index) : rowClassName;
38528
38521
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38529
38522
  DataTableRow,
@@ -38534,7 +38527,7 @@ function DataTableBody({
38534
38527
  compact,
38535
38528
  autoHeight,
38536
38529
  className: cls,
38537
- subRow: _optionalChain([renderSubRow, 'optionalCall', _747 => _747(item)])
38530
+ subRow: _optionalChain([renderSubRow, 'optionalCall', _748 => _748(item)])
38538
38531
  },
38539
38532
  row.id
38540
38533
  );
@@ -38589,7 +38582,7 @@ function DataTableInfiniteFooter({
38589
38582
  if (!sentinel) return;
38590
38583
  const observer = new IntersectionObserver(
38591
38584
  (entries) => {
38592
- if (_optionalChain([entries, 'access', _748 => _748[0], 'optionalAccess', _749 => _749.isIntersecting])) onLoadMoreRef.current();
38585
+ if (_optionalChain([entries, 'access', _749 => _749[0], 'optionalAccess', _750 => _750.isIntersecting])) onLoadMoreRef.current();
38593
38586
  },
38594
38587
  { rootMargin }
38595
38588
  );
@@ -38637,7 +38630,7 @@ function DataTableRowCount({
38637
38630
  const table = useDataTableContext();
38638
38631
  const count = _nullishCoalesce(totalCount, () => ( table.getRowModel().rows.length));
38639
38632
  if (hideWhenEmpty && count === 0) return null;
38640
- const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _750 => _750(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
38633
+ const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _751 => _751(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
38641
38634
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
38642
38635
  "span",
38643
38636
  {
@@ -38796,7 +38789,7 @@ function SearchInput({
38796
38789
  if (!showHiddenTags) return;
38797
38790
  const handleClick = (e) => {
38798
38791
  const target = e.target;
38799
- if (!_optionalChain([hiddenTagsRef, 'access', _751 => _751.current, 'optionalAccess', _752 => _752.contains, 'call', _753 => _753(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _754 => _754.current, 'optionalAccess', _755 => _755.contains, 'call', _756 => _756(target)])) {
38792
+ if (!_optionalChain([hiddenTagsRef, 'access', _752 => _752.current, 'optionalAccess', _753 => _753.contains, 'call', _754 => _754(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _755 => _755.current, 'optionalAccess', _756 => _756.contains, 'call', _757 => _757(target)])) {
38800
38793
  setShowHiddenTags(false);
38801
38794
  }
38802
38795
  };
@@ -38844,10 +38837,10 @@ function SearchInput({
38844
38837
  } else {
38845
38838
  setInternalValue("");
38846
38839
  }
38847
- _optionalChain([inputRef, 'access', _757 => _757.current, 'optionalAccess', _758 => _758.focus, 'call', _759 => _759()]);
38840
+ _optionalChain([inputRef, 'access', _758 => _758.current, 'optionalAccess', _759 => _759.focus, 'call', _760 => _760()]);
38848
38841
  };
38849
38842
  const handleResultClick = (result, e) => {
38850
- _optionalChain([onResultSelect, 'optionalCall', _760 => _760(
38843
+ _optionalChain([onResultSelect, 'optionalCall', _761 => _761(
38851
38844
  result,
38852
38845
  e ? {
38853
38846
  metaKey: e.metaKey,
@@ -38879,7 +38872,7 @@ function SearchInput({
38879
38872
  if (highlightedIndex >= 0 && flatResults[highlightedIndex]) {
38880
38873
  handleResultClick(flatResults[highlightedIndex]);
38881
38874
  } else {
38882
- _optionalChain([onSubmit, 'optionalCall', _761 => _761(currentValue)]);
38875
+ _optionalChain([onSubmit, 'optionalCall', _762 => _762(currentValue)]);
38883
38876
  }
38884
38877
  break;
38885
38878
  case "Escape":
@@ -38957,7 +38950,7 @@ function SearchInput({
38957
38950
  dropdownVisible && "!border-ods-accent"
38958
38951
  ),
38959
38952
  onClick: () => {
38960
- _optionalChain([inputRef, 'access', _762 => _762.current, 'optionalAccess', _763 => _763.focus, 'call', _764 => _764()]);
38953
+ _optionalChain([inputRef, 'access', _763 => _763.current, 'optionalAccess', _764 => _764.focus, 'call', _765 => _765()]);
38961
38954
  setIsOpen(true);
38962
38955
  },
38963
38956
  children: [
@@ -39041,10 +39034,10 @@ function SearchInput({
39041
39034
  align: "start",
39042
39035
  onOpenAutoFocus: (e) => {
39043
39036
  e.preventDefault();
39044
- _optionalChain([inputRef, 'access', _765 => _765.current, 'optionalAccess', _766 => _766.focus, 'call', _767 => _767()]);
39037
+ _optionalChain([inputRef, 'access', _766 => _766.current, 'optionalAccess', _767 => _767.focus, 'call', _768 => _768()]);
39045
39038
  },
39046
39039
  onInteractOutside: (e) => {
39047
- if (_optionalChain([containerRef, 'access', _768 => _768.current, 'optionalAccess', _769 => _769.contains, 'call', _770 => _770(e.target)])) {
39040
+ if (_optionalChain([containerRef, 'access', _769 => _769.current, 'optionalAccess', _770 => _770.contains, 'call', _771 => _771(e.target)])) {
39048
39041
  e.preventDefault();
39049
39042
  }
39050
39043
  },
@@ -39061,10 +39054,10 @@ function SearchInput({
39061
39054
  ref: hiddenTagsPopupRef,
39062
39055
  items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
39063
39056
  style: {
39064
- left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _771 => _771.current, 'optionalAccess', _772 => _772.getBoundingClientRect, 'call', _773 => _773(), 'access', _774 => _774.left]), () => ( 0))) : 0
39057
+ left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _772 => _772.current, 'optionalAccess', _773 => _773.getBoundingClientRect, 'call', _774 => _774(), 'access', _775 => _775.left]), () => ( 0))) : 0
39065
39058
  },
39066
39059
  onRemove: (value2) => {
39067
- _optionalChain([onFilterRemove, 'optionalCall', _775 => _775(value2)]);
39060
+ _optionalChain([onFilterRemove, 'optionalCall', _776 => _776(value2)]);
39068
39061
  if (hiddenCount <= 1) setShowHiddenTags(false);
39069
39062
  }
39070
39063
  }
@@ -39115,7 +39108,7 @@ function FilterListItem({
39115
39108
  }) {
39116
39109
  const handleToggle = () => {
39117
39110
  if (disabled) return;
39118
- _optionalChain([onToggle, 'optionalCall', _776 => _776(!selected)]);
39111
+ _optionalChain([onToggle, 'optionalCall', _777 => _777(!selected)]);
39119
39112
  };
39120
39113
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
39121
39114
  "div",
@@ -39162,7 +39155,7 @@ function FilterListItem({
39162
39155
  CheckboxPrimitive4.Root,
39163
39156
  {
39164
39157
  checked: selected,
39165
- onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _777 => _777(c === true)]),
39158
+ onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _778 => _778(c === true)]),
39166
39159
  onClick: (e) => e.stopPropagation(),
39167
39160
  disabled,
39168
39161
  "aria-label": title,
@@ -39261,7 +39254,7 @@ function TagSearchInput({
39261
39254
  if (!showHiddenTags) return;
39262
39255
  const handleClick = (e) => {
39263
39256
  const target = e.target;
39264
- if (!_optionalChain([hiddenTagsRef, 'access', _778 => _778.current, 'optionalAccess', _779 => _779.contains, 'call', _780 => _780(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _781 => _781.current, 'optionalAccess', _782 => _782.contains, 'call', _783 => _783(target)])) {
39257
+ if (!_optionalChain([hiddenTagsRef, 'access', _779 => _779.current, 'optionalAccess', _780 => _780.contains, 'call', _781 => _781(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _782 => _782.current, 'optionalAccess', _783 => _783.contains, 'call', _784 => _784(target)])) {
39265
39258
  setShowHiddenTags(false);
39266
39259
  }
39267
39260
  };
@@ -39277,13 +39270,13 @@ function TagSearchInput({
39277
39270
  e.preventDefault();
39278
39271
  onSubmit(searchValue);
39279
39272
  }
39280
- _optionalChain([onKeyDown, 'optionalCall', _784 => _784(e)]);
39273
+ _optionalChain([onKeyDown, 'optionalCall', _785 => _785(e)]);
39281
39274
  };
39282
39275
  const handleClearAll = (e) => {
39283
39276
  e.stopPropagation();
39284
39277
  e.preventDefault();
39285
- _optionalChain([onClearAll, 'optionalCall', _785 => _785()]);
39286
- _optionalChain([inputRef, 'access', _786 => _786.current, 'optionalAccess', _787 => _787.focus, 'call', _788 => _788()]);
39278
+ _optionalChain([onClearAll, 'optionalCall', _786 => _786()]);
39279
+ _optionalChain([inputRef, 'access', _787 => _787.current, 'optionalAccess', _788 => _788.focus, 'call', _789 => _789()]);
39287
39280
  };
39288
39281
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: wrapperRef, className: "relative", children: [
39289
39282
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -39300,7 +39293,7 @@ function TagSearchInput({
39300
39293
  className
39301
39294
  ),
39302
39295
  onClick: () => {
39303
- if (!disabled) _optionalChain([inputRef, 'access', _789 => _789.current, 'optionalAccess', _790 => _790.focus, 'call', _791 => _791()]);
39296
+ if (!disabled) _optionalChain([inputRef, 'access', _790 => _790.current, 'optionalAccess', _791 => _791.focus, 'call', _792 => _792()]);
39304
39297
  },
39305
39298
  children: [
39306
39299
  /* @__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" }) }),
@@ -39372,7 +39365,7 @@ function TagSearchInput({
39372
39365
  items: hiddenTags,
39373
39366
  disabled,
39374
39367
  style: {
39375
- left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _792 => _792.current, 'optionalAccess', _793 => _793.getBoundingClientRect, 'call', _794 => _794(), 'access', _795 => _795.left]), () => ( 0))) : 0
39368
+ left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _793 => _793.current, 'optionalAccess', _794 => _794.getBoundingClientRect, 'call', _795 => _795(), 'access', _796 => _796.left]), () => ( 0))) : 0
39376
39369
  },
39377
39370
  onRemove: (value) => {
39378
39371
  onTagRemove(value);
@@ -39473,7 +39466,7 @@ function MarkdownEditor({
39473
39466
  const [defaultExtraCommands, setDefaultExtraCommands] = _react.useState.call(void 0, []);
39474
39467
  _react.useEffect.call(void 0, () => {
39475
39468
  Promise.resolve().then(() => _interopRequireWildcard(require("@uiw/react-md-editor"))).then((mod) => {
39476
- if (_optionalChain([mod, 'access', _796 => _796.commands, 'optionalAccess', _797 => _797.getExtraCommands])) {
39469
+ if (_optionalChain([mod, 'access', _797 => _797.commands, 'optionalAccess', _798 => _798.getExtraCommands])) {
39477
39470
  setDefaultExtraCommands(mod.commands.getExtraCommands());
39478
39471
  }
39479
39472
  });
@@ -39507,7 +39500,7 @@ function MarkdownEditor({
39507
39500
  const isImage = file.type.startsWith("image/");
39508
39501
  const markdown = isImage ? `![${file.name}](${url})` : `[${file.name}](${url})`;
39509
39502
  insertTextAtCursor(markdown);
39510
- _optionalChain([onFileUploaded, 'optionalCall', _798 => _798(url, file.name)]);
39503
+ _optionalChain([onFileUploaded, 'optionalCall', _799 => _799(url, file.name)]);
39511
39504
  } catch (error) {
39512
39505
  console.error("File upload failed:", error);
39513
39506
  setUploadProgress("Upload failed. Please try again.");
@@ -39520,7 +39513,7 @@ function MarkdownEditor({
39520
39513
  );
39521
39514
  const handleFileInputChange = _react.useCallback.call(void 0,
39522
39515
  (e) => {
39523
- const file = _optionalChain([e, 'access', _799 => _799.target, 'access', _800 => _800.files, 'optionalAccess', _801 => _801[0]]);
39516
+ const file = _optionalChain([e, 'access', _800 => _800.target, 'access', _801 => _801.files, 'optionalAccess', _802 => _802[0]]);
39524
39517
  if (file) {
39525
39518
  handleFileUpload(file);
39526
39519
  e.target.value = "";
@@ -39531,7 +39524,7 @@ function MarkdownEditor({
39531
39524
  const handlePaste = _react.useCallback.call(void 0,
39532
39525
  (e) => {
39533
39526
  if (!onUploadFile) return;
39534
- const items = _optionalChain([e, 'access', _802 => _802.clipboardData, 'optionalAccess', _803 => _803.items]);
39527
+ const items = _optionalChain([e, 'access', _803 => _803.clipboardData, 'optionalAccess', _804 => _804.items]);
39535
39528
  if (!items) return;
39536
39529
  for (const item of items) {
39537
39530
  if (item.type.startsWith("image/")) {
@@ -39556,7 +39549,7 @@ function MarkdownEditor({
39556
39549
  buttonProps: { "aria-label": "Upload file", title: "Upload file" },
39557
39550
  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" }),
39558
39551
  execute: () => {
39559
- _optionalChain([fileInputRef, 'access', _804 => _804.current, 'optionalAccess', _805 => _805.click, 'call', _806 => _806()]);
39552
+ _optionalChain([fileInputRef, 'access', _805 => _805.current, 'optionalAccess', _806 => _806.click, 'call', _807 => _807()]);
39560
39553
  }
39561
39554
  } : null;
39562
39555
  const extraCommands = uploadCommand ? [...defaultExtraCommands, uploadCommand] : defaultExtraCommands;
@@ -39568,7 +39561,7 @@ function MarkdownEditor({
39568
39561
  const EDGE_ZONE = 60;
39569
39562
  const MAX_SCROLL_SPEED = 15;
39570
39563
  const findScrollParent = _react.useCallback.call(void 0, (el) => {
39571
- let node = _optionalChain([el, 'optionalAccess', _807 => _807.parentElement]);
39564
+ let node = _optionalChain([el, 'optionalAccess', _808 => _808.parentElement]);
39572
39565
  while (node && node !== document.documentElement) {
39573
39566
  const { overflowY } = window.getComputedStyle(node);
39574
39567
  if ((overflowY === "auto" || overflowY === "scroll") && node.scrollHeight > node.clientHeight) {
@@ -39711,7 +39704,7 @@ function matchesAccept(file, accept) {
39711
39704
  });
39712
39705
  }
39713
39706
  function dragHasFiles(e) {
39714
- const types = _optionalChain([e, 'access', _808 => _808.dataTransfer, 'optionalAccess', _809 => _809.types]);
39707
+ const types = _optionalChain([e, 'access', _809 => _809.dataTransfer, 'optionalAccess', _810 => _810.types]);
39715
39708
  if (!types) return false;
39716
39709
  for (let i = 0; i < types.length; i++) {
39717
39710
  if (types[i] === "Files") return true;
@@ -39807,7 +39800,7 @@ function FileUpload({
39807
39800
  e.stopPropagation();
39808
39801
  setDragActive(false);
39809
39802
  if (disabled) return;
39810
- if (_optionalChain([e, 'access', _810 => _810.dataTransfer, 'access', _811 => _811.files, 'optionalAccess', _812 => _812.length])) {
39803
+ if (_optionalChain([e, 'access', _811 => _811.dataTransfer, 'access', _812 => _812.files, 'optionalAccess', _813 => _813.length])) {
39811
39804
  handleFiles(e.dataTransfer.files);
39812
39805
  }
39813
39806
  };
@@ -39835,7 +39828,7 @@ function FileUpload({
39835
39828
  e.preventDefault();
39836
39829
  dragCounter = 0;
39837
39830
  setDragActive(false);
39838
- if (_optionalChain([e, 'access', _813 => _813.dataTransfer, 'optionalAccess', _814 => _814.files, 'optionalAccess', _815 => _815.length])) {
39831
+ if (_optionalChain([e, 'access', _814 => _814.dataTransfer, 'optionalAccess', _815 => _815.files, 'optionalAccess', _816 => _816.length])) {
39839
39832
  handleFilesRef.current(e.dataTransfer.files);
39840
39833
  }
39841
39834
  };
@@ -39857,7 +39850,7 @@ function FileUpload({
39857
39850
  };
39858
39851
  }, [acceptWindowDrops, disabled]);
39859
39852
  const handleFileSelect = (e) => {
39860
- if (_optionalChain([e, 'access', _816 => _816.target, 'access', _817 => _817.files, 'optionalAccess', _818 => _818.length])) {
39853
+ if (_optionalChain([e, 'access', _817 => _817.target, 'access', _818 => _818.files, 'optionalAccess', _819 => _819.length])) {
39861
39854
  handleFiles(e.target.files);
39862
39855
  }
39863
39856
  };
@@ -39874,7 +39867,7 @@ function FileUpload({
39874
39867
  };
39875
39868
  const openDialog = async () => {
39876
39869
  if (disabled) return;
39877
- _optionalChain([fileInputRef, 'access', _819 => _819.current, 'optionalAccess', _820 => _820.click, 'call', _821 => _821()]);
39870
+ _optionalChain([fileInputRef, 'access', _820 => _820.current, 'optionalAccess', _821 => _821.click, 'call', _822 => _822()]);
39878
39871
  };
39879
39872
  const displayError = error || validationError || void 0;
39880
39873
  const hasFiles = isManaged ? managedFiles.length > 0 : files.length > 0;
@@ -39936,7 +39929,7 @@ function FileUpload({
39936
39929
  "button",
39937
39930
  {
39938
39931
  type: "button",
39939
- onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _822 => _822(entry.id)]),
39932
+ onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _823 => _823(entry.id)]),
39940
39933
  className: "shrink-0 text-ods-error hover:opacity-80 transition-opacity",
39941
39934
  "aria-label": `Remove ${entry.fileName}`,
39942
39935
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.TrashIcon, { className: "size-6" })
@@ -40067,7 +40060,7 @@ function ImageUploader({
40067
40060
  onChange(file);
40068
40061
  };
40069
40062
  const handleFileSelect = (e) => {
40070
- validateAndEmit(_optionalChain([e, 'access', _823 => _823.target, 'access', _824 => _824.files, 'optionalAccess', _825 => _825[0]]));
40063
+ validateAndEmit(_optionalChain([e, 'access', _824 => _824.target, 'access', _825 => _825.files, 'optionalAccess', _826 => _826[0]]));
40071
40064
  if (inputRef.current) inputRef.current.value = "";
40072
40065
  };
40073
40066
  const handleDrag = (e) => {
@@ -40082,11 +40075,11 @@ function ImageUploader({
40082
40075
  e.stopPropagation();
40083
40076
  setDragActive(false);
40084
40077
  if (!interactive) return;
40085
- validateAndEmit(_optionalChain([e, 'access', _826 => _826.dataTransfer, 'access', _827 => _827.files, 'optionalAccess', _828 => _828[0]]));
40078
+ validateAndEmit(_optionalChain([e, 'access', _827 => _827.dataTransfer, 'access', _828 => _828.files, 'optionalAccess', _829 => _829[0]]));
40086
40079
  };
40087
40080
  const openDialog = () => {
40088
40081
  if (!interactive) return;
40089
- _optionalChain([inputRef, 'access', _829 => _829.current, 'optionalAccess', _830 => _830.click, 'call', _831 => _831()]);
40082
+ _optionalChain([inputRef, 'access', _830 => _830.current, 'optionalAccess', _831 => _831.click, 'call', _832 => _832()]);
40090
40083
  };
40091
40084
  const handleRootKeyDown = (e) => {
40092
40085
  if (hasImage || !interactive) return;
@@ -40277,8 +40270,8 @@ function ColorPresetSelect({
40277
40270
  }) {
40278
40271
  const selectedPreset = presets.find((p) => p.key === presetKey);
40279
40272
  const isCustom = !selectedPreset;
40280
- const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _832 => _832.label]), () => ( "Custom"));
40281
- const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _833 => _833.color]), () => ( value));
40273
+ const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _833 => _833.label]), () => ( "Custom"));
40274
+ const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _834 => _834.color]), () => ( value));
40282
40275
  const groups = [
40283
40276
  {
40284
40277
  items: [
@@ -40568,7 +40561,7 @@ function TicketStatusConfigRow({
40568
40561
  _chunkNYIZVI4Icjs.Input,
40569
40562
  {
40570
40563
  value: name,
40571
- onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _834 => _834(e.target.value)]),
40564
+ onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _835 => _835(e.target.value)]),
40572
40565
  disabled: isSystem,
40573
40566
  readOnly: isSystem,
40574
40567
  "aria-label": "Status name",
@@ -40941,14 +40934,14 @@ function TicketInfoSection({
40941
40934
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
40942
40935
  SquareAvatar,
40943
40936
  {
40944
- src: _optionalChain([organization, 'optionalAccess', _835 => _835.imageSrc]),
40945
- alt: _optionalChain([organization, 'optionalAccess', _836 => _836.name]),
40946
- fallback: _optionalChain([organization, 'optionalAccess', _837 => _837.name]) || "Org",
40937
+ src: _optionalChain([organization, 'optionalAccess', _836 => _836.imageSrc]),
40938
+ alt: _optionalChain([organization, 'optionalAccess', _837 => _837.name]),
40939
+ fallback: _optionalChain([organization, 'optionalAccess', _838 => _838.name]) || "Org",
40947
40940
  size: "md",
40948
40941
  className: "shrink-0"
40949
40942
  }
40950
40943
  ),
40951
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _838 => _838.name]) || "Unassigned", label: "Organization" })
40944
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _839 => _839.name]) || "Unassigned", label: "Organization" })
40952
40945
  ] }),
40953
40946
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: assigned ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
40954
40947
  AssigneeDropdown,
@@ -40969,10 +40962,10 @@ function TicketInfoSection({
40969
40962
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
40970
40963
  InfoCell2,
40971
40964
  {
40972
- value: _optionalChain([device, 'optionalAccess', _839 => _839.name]) || "Unassigned",
40965
+ value: _optionalChain([device, 'optionalAccess', _840 => _840.name]) || "Unassigned",
40973
40966
  label: "Device",
40974
- icon: _optionalChain([device, 'optionalAccess', _840 => _840.icon]),
40975
- onClick: _optionalChain([device, 'optionalAccess', _841 => _841.onClick])
40967
+ icon: _optionalChain([device, 'optionalAccess', _841 => _841.icon]),
40968
+ onClick: _optionalChain([device, 'optionalAccess', _842 => _842.onClick])
40976
40969
  }
40977
40970
  ),
40978
40971
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4 min-w-0", children: [
@@ -41302,7 +41295,7 @@ function RoadmapCard({
41302
41295
  const compactHref = safeHref(_nullishCoalesce(href, () => ( null)));
41303
41296
  const hasVotes = (_nullishCoalesce(item.upvotes, () => ( 0))) > 0 || (_nullishCoalesce(item.downvotes, () => ( 0))) > 0;
41304
41297
  const hasFigma = !!item.figmaUrl;
41305
- const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _842 => _842.screenshots, 'optionalAccess', _843 => _843.length]), () => ( 0))) > 0;
41298
+ const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _843 => _843.screenshots, 'optionalAccess', _844 => _844.length]), () => ( 0))) > 0;
41306
41299
  const typeLabel = getTaskTypeLabel(item.customItemId);
41307
41300
  const useTypeIcon = cardType === "internal_task" || !iconSrc && item.customItemId != null;
41308
41301
  const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
@@ -41321,7 +41314,7 @@ function RoadmapCard({
41321
41314
  unoptimized: true,
41322
41315
  className: "h-8 w-8 object-contain"
41323
41316
  }
41324
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _844 => _844.title, 'optionalAccess', _845 => _845.substring, 'call', _846 => _846(0, 2)]) || "??" })
41317
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _845 => _845.title, 'optionalAccess', _846 => _846.substring, 'call', _847 => _847(0, 2)]) || "??" })
41325
41318
  }
41326
41319
  ),
41327
41320
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
@@ -41396,7 +41389,7 @@ function RoadmapCard({
41396
41389
  unoptimized: true,
41397
41390
  className: "object-contain p-1"
41398
41391
  }
41399
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _847 => _847.title, 'optionalAccess', _848 => _848.substring, 'call', _849 => _849(0, 2)]) || "??" }) }),
41392
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _848 => _848.title, 'optionalAccess', _849 => _849.substring, 'call', _850 => _850(0, 2)]) || "??" }) }),
41400
41393
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 min-w-0 flex flex-col", children: [
41401
41394
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[48px] flex items-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "text-h3 text-ods-text-primary tracking-[-0.36px] flex-1 line-clamp-2", children: item.title }) }),
41402
41395
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-h-[20px] flex items-center", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "text-h5 text-ods-text-secondary uppercase tracking-[-0.28px] truncate", children: [
@@ -41906,7 +41899,7 @@ function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
41906
41899
  ] }) : null,
41907
41900
  item.preview ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex min-w-0", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "line-clamp-2 whitespace-pre-wrap break-words text-[13px] leading-5 text-ods-text-secondary", children: item.preview }) }) : null
41908
41901
  ] }),
41909
- _optionalChain([anchorProps, 'optionalAccess', _850 => _850.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
41902
+ _optionalChain([anchorProps, 'optionalAccess', _851 => _851.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
41910
41903
  ] });
41911
41904
  if (!anchorProps) {
41912
41905
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
@@ -41976,7 +41969,7 @@ function getDefaultOptions() {
41976
41969
  // node_modules/date-fns/startOfWeek.mjs
41977
41970
  function startOfWeek(date, options) {
41978
41971
  const defaultOptions2 = getDefaultOptions();
41979
- const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _851 => _851.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _852 => _852.locale, 'optionalAccess', _853 => _853.options, 'optionalAccess', _854 => _854.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _855 => _855.locale, 'optionalAccess', _856 => _856.options, 'optionalAccess', _857 => _857.weekStartsOn]))), () => ( 0));
41972
+ const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _852 => _852.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _853 => _853.locale, 'optionalAccess', _854 => _854.options, 'optionalAccess', _855 => _855.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _856 => _856.locale, 'optionalAccess', _857 => _857.options, 'optionalAccess', _858 => _858.weekStartsOn]))), () => ( 0));
41980
41973
  const _date = toDate(date);
41981
41974
  const day = _date.getDay();
41982
41975
  const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
@@ -42151,7 +42144,7 @@ var formatDistance = (token, count, options) => {
42151
42144
  } else {
42152
42145
  result = tokenValue.other.replace("{{count}}", count.toString());
42153
42146
  }
42154
- if (_optionalChain([options, 'optionalAccess', _858 => _858.addSuffix])) {
42147
+ if (_optionalChain([options, 'optionalAccess', _859 => _859.addSuffix])) {
42155
42148
  if (options.comparison && options.comparison > 0) {
42156
42149
  return "in " + result;
42157
42150
  } else {
@@ -42218,15 +42211,15 @@ var formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale
42218
42211
  // node_modules/date-fns/locale/_lib/buildLocalizeFn.mjs
42219
42212
  function buildLocalizeFn(args) {
42220
42213
  return (value, options) => {
42221
- const context = _optionalChain([options, 'optionalAccess', _859 => _859.context]) ? String(options.context) : "standalone";
42214
+ const context = _optionalChain([options, 'optionalAccess', _860 => _860.context]) ? String(options.context) : "standalone";
42222
42215
  let valuesArray;
42223
42216
  if (context === "formatting" && args.formattingValues) {
42224
42217
  const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
42225
- const width = _optionalChain([options, 'optionalAccess', _860 => _860.width]) ? String(options.width) : defaultWidth;
42218
+ const width = _optionalChain([options, 'optionalAccess', _861 => _861.width]) ? String(options.width) : defaultWidth;
42226
42219
  valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
42227
42220
  } else {
42228
42221
  const defaultWidth = args.defaultWidth;
42229
- const width = _optionalChain([options, 'optionalAccess', _861 => _861.width]) ? String(options.width) : args.defaultWidth;
42222
+ const width = _optionalChain([options, 'optionalAccess', _862 => _862.width]) ? String(options.width) : args.defaultWidth;
42230
42223
  valuesArray = args.values[width] || args.values[defaultWidth];
42231
42224
  }
42232
42225
  const index = args.argumentCallback ? args.argumentCallback(value) : value;
@@ -42606,7 +42599,7 @@ function getWeekYear(date, options) {
42606
42599
  const _date = toDate(date);
42607
42600
  const year = _date.getFullYear();
42608
42601
  const defaultOptions2 = getDefaultOptions();
42609
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _862 => _862.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _863 => _863.locale, 'optionalAccess', _864 => _864.options, 'optionalAccess', _865 => _865.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _866 => _866.locale, 'optionalAccess', _867 => _867.options, 'optionalAccess', _868 => _868.firstWeekContainsDate]))), () => ( 1));
42602
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _863 => _863.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _864 => _864.locale, 'optionalAccess', _865 => _865.options, 'optionalAccess', _866 => _866.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _867 => _867.locale, 'optionalAccess', _868 => _868.options, 'optionalAccess', _869 => _869.firstWeekContainsDate]))), () => ( 1));
42610
42603
  const firstWeekOfNextYear = constructFrom(date, 0);
42611
42604
  firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate);
42612
42605
  firstWeekOfNextYear.setHours(0, 0, 0, 0);
@@ -42627,7 +42620,7 @@ function getWeekYear(date, options) {
42627
42620
  // node_modules/date-fns/startOfWeekYear.mjs
42628
42621
  function startOfWeekYear(date, options) {
42629
42622
  const defaultOptions2 = getDefaultOptions();
42630
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _869 => _869.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _870 => _870.locale, 'optionalAccess', _871 => _871.options, 'optionalAccess', _872 => _872.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _873 => _873.locale, 'optionalAccess', _874 => _874.options, 'optionalAccess', _875 => _875.firstWeekContainsDate]))), () => ( 1));
42623
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _870 => _870.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _871 => _871.locale, 'optionalAccess', _872 => _872.options, 'optionalAccess', _873 => _873.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _874 => _874.locale, 'optionalAccess', _875 => _875.options, 'optionalAccess', _876 => _876.firstWeekContainsDate]))), () => ( 1));
42631
42624
  const year = getWeekYear(date, options);
42632
42625
  const firstWeek = constructFrom(date, 0);
42633
42626
  firstWeek.setFullYear(year, 0, firstWeekContainsDate);
@@ -43442,9 +43435,9 @@ var doubleQuoteRegExp = /''/g;
43442
43435
  var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
43443
43436
  function format(date, formatStr, options) {
43444
43437
  const defaultOptions2 = getDefaultOptions();
43445
- const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _876 => _876.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
43446
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _877 => _877.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _878 => _878.locale, 'optionalAccess', _879 => _879.options, 'optionalAccess', _880 => _880.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _881 => _881.locale, 'optionalAccess', _882 => _882.options, 'optionalAccess', _883 => _883.firstWeekContainsDate]))), () => ( 1));
43447
- const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _884 => _884.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _885 => _885.locale, 'optionalAccess', _886 => _886.options, 'optionalAccess', _887 => _887.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _888 => _888.locale, 'optionalAccess', _889 => _889.options, 'optionalAccess', _890 => _890.weekStartsOn]))), () => ( 0));
43438
+ const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _877 => _877.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
43439
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _878 => _878.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _879 => _879.locale, 'optionalAccess', _880 => _880.options, 'optionalAccess', _881 => _881.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _882 => _882.locale, 'optionalAccess', _883 => _883.options, 'optionalAccess', _884 => _884.firstWeekContainsDate]))), () => ( 1));
43440
+ const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _885 => _885.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _886 => _886.locale, 'optionalAccess', _887 => _887.options, 'optionalAccess', _888 => _888.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _889 => _889.locale, 'optionalAccess', _890 => _890.options, 'optionalAccess', _891 => _891.weekStartsOn]))), () => ( 0));
43448
43441
  const originalDate = toDate(date);
43449
43442
  if (!isValid(originalDate)) {
43450
43443
  throw new RangeError("Invalid time value");
@@ -43485,7 +43478,7 @@ function format(date, formatStr, options) {
43485
43478
  return parts.map((part) => {
43486
43479
  if (!part.isToken) return part.value;
43487
43480
  const token = part.value;
43488
- if (!_optionalChain([options, 'optionalAccess', _891 => _891.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _892 => _892.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
43481
+ if (!_optionalChain([options, 'optionalAccess', _892 => _892.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _893 => _893.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
43489
43482
  warnOrThrowProtectedError(token, formatStr, String(date));
43490
43483
  }
43491
43484
  const formatter = formatters[token[0]];
@@ -43666,7 +43659,7 @@ function ProgramCard({
43666
43659
  const dur = formatDurationFromRange(w.start_at, w.end_at);
43667
43660
  typeMeta = dur ? `${time} \xB7 ${dur}` : time;
43668
43661
  }
43669
- const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _893 => _893.labels, 'optionalAccess', _894 => _894.singular])].filter(
43662
+ const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _894 => _894.labels, 'optionalAccess', _895 => _895.singular])].filter(
43670
43663
  (s) => typeof s === "string" && s.length > 0
43671
43664
  );
43672
43665
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "a", { href, target, rel, className: _chunkFIG2RKZFcjs.cn.call(void 0, COMPACT_CARD_OUTER, className), children: [
@@ -43823,7 +43816,7 @@ function ProgramCard({
43823
43816
 
43824
43817
 
43825
43818
  function CampaignCardAdmin({ campaign, className, anchorProps }) {
43826
- const goalsCount = _optionalChain([campaign, 'access', _895 => _895.goals, 'optionalAccess', _896 => _896.length]) || 0;
43819
+ const goalsCount = _optionalChain([campaign, 'access', _896 => _896.goals, 'optionalAccess', _897 => _897.length]) || 0;
43827
43820
  const innerChildren = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
43828
43821
  /* @__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" }) }),
43829
43822
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
@@ -43985,7 +43978,7 @@ function resolveSourceRowCTA(row, ctx = {}) {
43985
43978
  if (row.path && shouldFallbackToPathNav(row) && !row.externalUrl) {
43986
43979
  const safePath = sanitizePath(row.path);
43987
43980
  if (safePath) {
43988
- const docTarget = row.documentType ? _optionalChain([ctx, 'access', _897 => _897.docPlatformTargets, 'optionalAccess', _898 => _898[row.documentType]]) : void 0;
43981
+ const docTarget = row.documentType ? _optionalChain([ctx, 'access', _898 => _898.docPlatformTargets, 'optionalAccess', _899 => _899[row.documentType]]) : void 0;
43989
43982
  if (docTarget) {
43990
43983
  const seg = docTarget.basePath.split("/").filter(Boolean).join("/");
43991
43984
  const base = `${_chunkFIG2RKZFcjs.getBaseUrl.call(void 0, docTarget.platform)}${seg ? `/${seg}` : ""}/`;
@@ -44200,8 +44193,8 @@ function cardMenuGroups(href, discuss, openDetails) {
44200
44193
  if (href) {
44201
44194
  items.push({
44202
44195
  id: "open-details",
44203
- label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _899 => _899.label]), () => ( "Open Details")),
44204
- icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _900 => _900.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.EyeIcon, { size: 20 }))),
44196
+ label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _900 => _900.label]), () => ( "Open Details")),
44197
+ icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _901 => _901.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.EyeIcon, { size: 20 }))),
44205
44198
  // Main row → open the entity (same tab, soft Link nav).
44206
44199
  href,
44207
44200
  // Trailing 40px ↗ side-button → open in a new tab.
@@ -44231,8 +44224,8 @@ function HubspotTicketChatCard({
44231
44224
  isNewTab,
44232
44225
  discuss
44233
44226
  }) {
44234
- const status = typeof _optionalChain([chatRef, 'access', _901 => _901.metadata, 'optionalAccess', _902 => _902.status]) === "string" ? chatRef.metadata.status : void 0;
44235
- const statusLabel = typeof _optionalChain([chatRef, 'access', _903 => _903.metadata, 'optionalAccess', _904 => _904.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
44227
+ const status = typeof _optionalChain([chatRef, 'access', _902 => _902.metadata, 'optionalAccess', _903 => _903.status]) === "string" ? chatRef.metadata.status : void 0;
44228
+ const statusLabel = typeof _optionalChain([chatRef, 'access', _904 => _904.metadata, 'optionalAccess', _905 => _905.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
44236
44229
  const statusText = _nullishCoalesce(statusLabel, () => ( formatStatusToken(status)));
44237
44230
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44238
44231
  MingoInfoCard,
@@ -44255,7 +44248,7 @@ function FaqChatCard({
44255
44248
  isNewTab,
44256
44249
  discuss
44257
44250
  }) {
44258
- const section = typeof _optionalChain([chatRef, 'access', _905 => _905.metadata, 'optionalAccess', _906 => _906.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
44251
+ const section = typeof _optionalChain([chatRef, 'access', _906 => _906.metadata, 'optionalAccess', _907 => _907.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
44259
44252
  const statusLabel = section && section.length > 0 ? section : "FAQ";
44260
44253
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44261
44254
  MingoInfoCard,
@@ -44275,7 +44268,7 @@ function SlackChatCard({
44275
44268
  isNewTab,
44276
44269
  discuss
44277
44270
  }) {
44278
- const channelName = typeof _optionalChain([chatRef, 'access', _907 => _907.metadata, 'optionalAccess', _908 => _908.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
44271
+ const channelName = typeof _optionalChain([chatRef, 'access', _908 => _908.metadata, 'optionalAccess', _909 => _909.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
44279
44272
  const channelPretty = channelName ? channelName.startsWith("#") ? channelName : `#${channelName}` : void 0;
44280
44273
  const title = channelPretty ? `${chatRef.title} \xB7 ${channelPretty}` : chatRef.title;
44281
44274
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -44315,7 +44308,7 @@ function GenericFinancialChatCard({
44315
44308
  isNewTab,
44316
44309
  discuss
44317
44310
  }) {
44318
- const subtitle = typeof _optionalChain([chatRef, 'access', _909 => _909.metadata, 'optionalAccess', _910 => _910.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
44311
+ const subtitle = typeof _optionalChain([chatRef, 'access', _910 => _910.metadata, 'optionalAccess', _911 => _911.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
44319
44312
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44320
44313
  MingoInfoCard,
44321
44314
  {
@@ -44384,12 +44377,12 @@ function ProductReleaseChatCard({
44384
44377
  discuss
44385
44378
  }) {
44386
44379
  const releaseProps = buildProps(item);
44387
- const status = _optionalChain([item, 'optionalAccess', _911 => _911.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
44380
+ const status = _optionalChain([item, 'optionalAccess', _912 => _912.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
44388
44381
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44389
44382
  EntityMingoCard,
44390
44383
  {
44391
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _912 => _912.title]), () => ( "")),
44392
- description: _optionalChain([item, 'optionalAccess', _913 => _913.summary]) || releaseProps.formattedDate || void 0,
44384
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _913 => _913.title]), () => ( "")),
44385
+ description: _optionalChain([item, 'optionalAccess', _914 => _914.summary]) || releaseProps.formattedDate || void 0,
44393
44386
  cover: releaseProps.coverImage || void 0,
44394
44387
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.Rocket02Icon, { size: 24 }),
44395
44388
  status,
@@ -44406,17 +44399,17 @@ function CampaignChatCard({
44406
44399
  isNewTab,
44407
44400
  discuss
44408
44401
  }) {
44409
- const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _914 => _914.goals])) ? item.goals.length : 0;
44402
+ const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _915 => _915.goals])) ? item.goals.length : 0;
44410
44403
  const meta = [
44411
- _optionalChain([item, 'optionalAccess', _915 => _915.start_date]) ? formatDateShort(item.start_date) : null,
44404
+ _optionalChain([item, 'optionalAccess', _916 => _916.start_date]) ? formatDateShort(item.start_date) : null,
44412
44405
  goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
44413
44406
  "Marketing campaign"
44414
44407
  ].filter(Boolean).join(" \xB7 ");
44415
44408
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44416
44409
  EntityMingoCard,
44417
44410
  {
44418
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _916 => _916.name]), () => ( "")),
44419
- description: meta || _optionalChain([item, 'optionalAccess', _917 => _917.description]) || void 0,
44411
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _917 => _917.name]), () => ( "")),
44412
+ description: meta || _optionalChain([item, 'optionalAccess', _918 => _918.description]) || void 0,
44420
44413
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.Megaphone01Icon, { size: 24 }),
44421
44414
  chatRef,
44422
44415
  isNewTab,
@@ -44469,14 +44462,14 @@ function BlogChatCard({
44469
44462
  hasEmbeddedVideo,
44470
44463
  discuss
44471
44464
  }) {
44472
- const category = Array.isArray(_optionalChain([item, 'optionalAccess', _918 => _918.categories])) ? _optionalChain([item, 'access', _919 => _919.categories, 'access', _920 => _920.find, 'call', _921 => _921((c) => c && c.name), 'optionalAccess', _922 => _922.name]) : void 0;
44465
+ const category = Array.isArray(_optionalChain([item, 'optionalAccess', _919 => _919.categories])) ? _optionalChain([item, 'access', _920 => _920.categories, 'access', _921 => _921.find, 'call', _922 => _922((c) => c && c.name), 'optionalAccess', _923 => _923.name]) : void 0;
44473
44466
  const status = hasEmbeddedVideo ? { label: "Video", variant: "primary" } : category ? { label: category, variant: "grey" } : void 0;
44474
44467
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44475
44468
  EntityMingoCard,
44476
44469
  {
44477
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _923 => _923.title]), () => ( "")),
44478
- description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _924 => _924.summary]), () => ( void 0)),
44479
- cover: entityCover(_optionalChain([item, 'optionalAccess', _925 => _925.featured_image]), ogPlaceholder),
44470
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _924 => _924.title]), () => ( "")),
44471
+ description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _925 => _925.summary]), () => ( void 0)),
44472
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _926 => _926.featured_image]), ogPlaceholder),
44480
44473
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.NewspaperIcon, { size: 24 }),
44481
44474
  status,
44482
44475
  chatRef,
@@ -44493,13 +44486,13 @@ function CaseStudyChatCard({
44493
44486
  ogPlaceholder,
44494
44487
  discuss
44495
44488
  }) {
44496
- const meta = [_optionalChain([item, 'optionalAccess', _926 => _926.msp, 'optionalAccess', _927 => _927.name]), _optionalChain([item, 'optionalAccess', _928 => _928.user, 'optionalAccess', _929 => _929.full_name])].filter(Boolean).join(" \xB7 ");
44489
+ const meta = [_optionalChain([item, 'optionalAccess', _927 => _927.msp, 'optionalAccess', _928 => _928.name]), _optionalChain([item, 'optionalAccess', _929 => _929.user, 'optionalAccess', _930 => _930.full_name])].filter(Boolean).join(" \xB7 ");
44497
44490
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44498
44491
  EntityMingoCard,
44499
44492
  {
44500
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _930 => _930.title]), () => ( "")),
44501
- description: _optionalChain([item, 'optionalAccess', _931 => _931.summary]) || meta || void 0,
44502
- cover: entityCover(_optionalChain([item, 'optionalAccess', _932 => _932.featured_image]), ogPlaceholder),
44493
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _931 => _931.title]), () => ( "")),
44494
+ description: _optionalChain([item, 'optionalAccess', _932 => _932.summary]) || meta || void 0,
44495
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _933 => _933.featured_image]), ogPlaceholder),
44503
44496
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.TrophyIcon, { size: 24 }),
44504
44497
  status: { label: "Case study", variant: "grey" },
44505
44498
  chatRef,
@@ -44516,13 +44509,13 @@ function CustomerInterviewChatCard({
44516
44509
  ogPlaceholder,
44517
44510
  discuss
44518
44511
  }) {
44519
- const meta = [_optionalChain([item, 'optionalAccess', _933 => _933.user, 'optionalAccess', _934 => _934.full_name]), _optionalChain([item, 'optionalAccess', _935 => _935.msp, 'optionalAccess', _936 => _936.name])].filter(Boolean).join(" \xB7 ");
44512
+ const meta = [_optionalChain([item, 'optionalAccess', _934 => _934.user, 'optionalAccess', _935 => _935.full_name]), _optionalChain([item, 'optionalAccess', _936 => _936.msp, 'optionalAccess', _937 => _937.name])].filter(Boolean).join(" \xB7 ");
44520
44513
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44521
44514
  EntityMingoCard,
44522
44515
  {
44523
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _937 => _937.title]), () => ( "")),
44524
- description: _optionalChain([item, 'optionalAccess', _938 => _938.video_summary]) || meta || void 0,
44525
- cover: entityCover(_optionalChain([item, 'optionalAccess', _939 => _939.featured_image]), ogPlaceholder),
44516
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _938 => _938.title]), () => ( "")),
44517
+ description: _optionalChain([item, 'optionalAccess', _939 => _939.video_summary]) || meta || void 0,
44518
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _940 => _940.featured_image]), ogPlaceholder),
44526
44519
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.MicrophoneIcon, { size: 24 }),
44527
44520
  status: { label: "Interview", variant: "grey" },
44528
44521
  chatRef,
@@ -44539,13 +44532,13 @@ function InvestorUpdateChatCard({
44539
44532
  ogPlaceholder,
44540
44533
  discuss
44541
44534
  }) {
44542
- const title = _optionalChain([item, 'optionalAccess', _940 => _940.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _941 => _941.update_number]), () => ( "?"))}`;
44535
+ const title = _optionalChain([item, 'optionalAccess', _941 => _941.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _942 => _942.update_number]), () => ( "?"))}`;
44543
44536
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44544
44537
  EntityMingoCard,
44545
44538
  {
44546
44539
  title,
44547
- description: _optionalChain([item, 'optionalAccess', _942 => _942.strategic_update]) || _optionalChain([item, 'optionalAccess', _943 => _943.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _944 => _944.period_start]), _optionalChain([item, 'optionalAccess', _945 => _945.period_end])) || void 0,
44548
- cover: entityCover(_optionalChain([item, 'optionalAccess', _946 => _946.featured_image]), ogPlaceholder),
44540
+ description: _optionalChain([item, 'optionalAccess', _943 => _943.strategic_update]) || _optionalChain([item, 'optionalAccess', _944 => _944.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _945 => _945.period_start]), _optionalChain([item, 'optionalAccess', _946 => _946.period_end])) || void 0,
44541
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _947 => _947.featured_image]), ogPlaceholder),
44549
44542
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.PresentationLineIcon, { size: 24 }),
44550
44543
  status: { label: "Investor update", variant: "grey" },
44551
44544
  chatRef,
@@ -44562,12 +44555,12 @@ function OnboardingGuideChatCard({
44562
44555
  ogPlaceholder,
44563
44556
  discuss
44564
44557
  }) {
44565
- const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _947 => _947.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _948 => _948.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _949 => _949.og_image_url]), ogPlaceholder)));
44558
+ const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _948 => _948.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _949 => _949.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _950 => _950.og_image_url]), ogPlaceholder)));
44566
44559
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44567
44560
  EntityMingoCard,
44568
44561
  {
44569
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _950 => _950.title]), () => ( "")),
44570
- description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _951 => _951.summary]), () => ( _optionalChain([item, 'optionalAccess', _952 => _952.description]))), () => ( void 0)),
44562
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _951 => _951.title]), () => ( "")),
44563
+ description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _952 => _952.summary]), () => ( _optionalChain([item, 'optionalAccess', _953 => _953.description]))), () => ( void 0)),
44571
44564
  cover,
44572
44565
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.CompassIcon, { size: 24 }),
44573
44566
  status: { label: "Guide", variant: "grey" },
@@ -44588,25 +44581,25 @@ function ProgramChatCard({
44588
44581
  discuss
44589
44582
  }) {
44590
44583
  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 });
44591
- const isScheduled = _optionalChain([item, 'optionalAccess', _953 => _953.status]) === "scheduled";
44584
+ const isScheduled = _optionalChain([item, 'optionalAccess', _954 => _954.status]) === "scheduled";
44592
44585
  let typeMeta;
44593
- if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _954 => _954.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
44586
+ if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _955 => _955.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
44594
44587
  typeMeta = formatDurationCompact(item.duration_seconds);
44595
- } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _955 => _955.location_name]) === "string" && item.location_name.trim().length > 0) {
44588
+ } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _956 => _956.location_name]) === "string" && item.location_name.trim().length > 0) {
44596
44589
  typeMeta = item.location_name;
44597
- } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _956 => _956.start_at])) {
44590
+ } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _957 => _957.start_at])) {
44598
44591
  const time = formatTimeWithTimezone(item.start_at, _nullishCoalesce(item.timezone, () => ( null)));
44599
44592
  const dur = formatDurationFromRange(item.start_at, item.end_at);
44600
44593
  typeMeta = dur ? `${time} \xB7 ${dur}` : time;
44601
44594
  }
44602
- const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _957 => _957.date]), () => ( null)), { fallback: "", timezone: "local" });
44595
+ const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _958 => _958.date]), () => ( null)), { fallback: "", timezone: "local" });
44603
44596
  const meta = [itemDate, typeMeta].filter(Boolean).join(" \xB7 ");
44604
44597
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44605
44598
  EntityMingoCard,
44606
44599
  {
44607
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _958 => _958.title]), () => ( "")),
44608
- description: meta || _optionalChain([item, 'optionalAccess', _959 => _959.description]) || void 0,
44609
- cover: entityCover(_optionalChain([item, 'optionalAccess', _960 => _960.cover_url]), ogPlaceholder),
44600
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _959 => _959.title]), () => ( "")),
44601
+ description: meta || _optionalChain([item, 'optionalAccess', _960 => _960.description]) || void 0,
44602
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _961 => _961.cover_url]), ogPlaceholder),
44610
44603
  fallbackIcon: icon,
44611
44604
  status: { label, variant: "grey" },
44612
44605
  chatRef,
@@ -44623,10 +44616,10 @@ function RoadmapChatCard({
44623
44616
  cardType,
44624
44617
  discuss
44625
44618
  }) {
44626
- const logoUrl = typeof _optionalChain([item, 'optionalAccess', _961 => _961.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
44627
- const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _962 => _962.customItemId]) != null;
44619
+ const logoUrl = typeof _optionalChain([item, 'optionalAccess', _962 => _962.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
44620
+ const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _963 => _963.customItemId]) != null;
44628
44621
  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 });
44629
- const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _963 => _963.customItemId]), className: "size-6" }) : logoUrl ? (
44622
+ const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _964 => _964.customItemId]), className: "size-6" }) : logoUrl ? (
44630
44623
  // Contained (not full-bleed) so the integration logo keeps its aspect
44631
44624
  // ratio inside the bordered icon box — matches RoadmapCard.
44632
44625
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: logoUrl, alt: "", className: "size-6 object-contain" })
@@ -44634,10 +44627,10 @@ function RoadmapChatCard({
44634
44627
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44635
44628
  EntityMingoCard,
44636
44629
  {
44637
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _964 => _964.title]), () => ( "")),
44638
- description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _965 => _965.description]), () => ( void 0)),
44630
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _965 => _965.title]), () => ( "")),
44631
+ description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _966 => _966.description]), () => ( void 0)),
44639
44632
  fallbackIcon: icon,
44640
- status: statusPill(_optionalChain([item, 'optionalAccess', _966 => _966.status])),
44633
+ status: statusPill(_optionalChain([item, 'optionalAccess', _967 => _967.status])),
44641
44634
  chatRef,
44642
44635
  isNewTab,
44643
44636
  discuss,
@@ -44723,7 +44716,7 @@ function programRegistryEntries() {
44723
44716
  discuss: opts.discuss,
44724
44717
  configKey: cfg.configKey,
44725
44718
  label: cfg.configKey.charAt(0).toUpperCase() + cfg.configKey.slice(1),
44726
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _967 => _967.extras, 'optionalAccess', _968 => _968.buildOgPlaceholderUrl, 'optionalCall', _969 => _969(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _970 => _970.title]), () => ( "")))]), () => ( null))
44719
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _968 => _968.extras, 'optionalAccess', _969 => _969.buildOgPlaceholderUrl, 'optionalCall', _970 => _970(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _971 => _971.title]), () => ( "")))]), () => ( null))
44727
44720
  }
44728
44721
  )
44729
44722
  };
@@ -44875,8 +44868,8 @@ var CHAT_CARD_REGISTRY = {
44875
44868
  chatRef,
44876
44869
  isNewTab: opts.isNewTab,
44877
44870
  discuss: opts.discuss,
44878
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _971 => _971.extras, 'optionalAccess', _972 => _972.buildOgPlaceholderUrl, 'optionalCall', _973 => _973(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _974 => _974.title]), () => ( "")))]), () => ( null)),
44879
- hasEmbeddedVideo: _optionalChain([chatRef, 'access', _975 => _975.metadata, 'optionalAccess', _976 => _976.hasEmbeddedVideo]) === true
44871
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _972 => _972.extras, 'optionalAccess', _973 => _973.buildOgPlaceholderUrl, 'optionalCall', _974 => _974(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _975 => _975.title]), () => ( "")))]), () => ( null)),
44872
+ hasEmbeddedVideo: _optionalChain([chatRef, 'access', _976 => _976.metadata, 'optionalAccess', _977 => _977.hasEmbeddedVideo]) === true
44880
44873
  }
44881
44874
  )
44882
44875
  },
@@ -44893,7 +44886,7 @@ var CHAT_CARD_REGISTRY = {
44893
44886
  chatRef,
44894
44887
  isNewTab: opts.isNewTab,
44895
44888
  discuss: opts.discuss,
44896
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _977 => _977.extras, 'optionalAccess', _978 => _978.buildOgPlaceholderUrl, 'optionalCall', _979 => _979(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _980 => _980.title]), () => ( "")))]), () => ( null))
44889
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _978 => _978.extras, 'optionalAccess', _979 => _979.buildOgPlaceholderUrl, 'optionalCall', _980 => _980(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _981 => _981.title]), () => ( "")))]), () => ( null))
44897
44890
  }
44898
44891
  )
44899
44892
  },
@@ -44910,7 +44903,7 @@ var CHAT_CARD_REGISTRY = {
44910
44903
  chatRef,
44911
44904
  isNewTab: opts.isNewTab,
44912
44905
  discuss: opts.discuss,
44913
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _981 => _981.extras, 'optionalAccess', _982 => _982.buildOgPlaceholderUrl, 'optionalCall', _983 => _983(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _984 => _984.title]), () => ( "")))]), () => ( null))
44906
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _982 => _982.extras, 'optionalAccess', _983 => _983.buildOgPlaceholderUrl, 'optionalCall', _984 => _984(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _985 => _985.title]), () => ( "")))]), () => ( null))
44914
44907
  }
44915
44908
  )
44916
44909
  },
@@ -44921,7 +44914,7 @@ var CHAT_CARD_REGISTRY = {
44921
44914
  bareInline: true,
44922
44915
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ProductReleaseCardSkeleton, { size: "sm" }),
44923
44916
  render: (item, chatRef, opts) => {
44924
- const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _985 => _985.extras, 'optionalAccess', _986 => _986.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
44917
+ const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _986 => _986.extras, 'optionalAccess', _987 => _987.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
44925
44918
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44926
44919
  ProductReleaseChatCard,
44927
44920
  {
@@ -44948,7 +44941,7 @@ var CHAT_CARD_REGISTRY = {
44948
44941
  chatRef,
44949
44942
  isNewTab: opts.isNewTab,
44950
44943
  discuss: opts.discuss,
44951
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _987 => _987.extras, 'optionalAccess', _988 => _988.buildOgPlaceholderUrl, 'optionalCall', _989 => _989(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _990 => _990.title]), () => ( "")))]), () => ( null))
44944
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _988 => _988.extras, 'optionalAccess', _989 => _989.buildOgPlaceholderUrl, 'optionalCall', _990 => _990(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _991 => _991.title]), () => ( "")))]), () => ( null))
44952
44945
  }
44953
44946
  )
44954
44947
  },
@@ -44967,7 +44960,7 @@ var CHAT_CARD_REGISTRY = {
44967
44960
  chatRef,
44968
44961
  isNewTab: opts.isNewTab,
44969
44962
  discuss: opts.discuss,
44970
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _991 => _991.extras, 'optionalAccess', _992 => _992.buildOgPlaceholderUrl, 'optionalCall', _993 => _993(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _994 => _994.title]), () => ( "")))]), () => ( null))
44963
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _992 => _992.extras, 'optionalAccess', _993 => _993.buildOgPlaceholderUrl, 'optionalCall', _994 => _994(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _995 => _995.title]), () => ( "")))]), () => ( null))
44971
44964
  }
44972
44965
  )
44973
44966
  },
@@ -44979,7 +44972,7 @@ var CHAT_CARD_REGISTRY = {
44979
44972
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, {}),
44980
44973
  // No public viewer — synthesize the hub-internal admin URL post-fetch
44981
44974
  // so the wrapper + isNewTab computation see the actual destination.
44982
- fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _995 => _995.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
44975
+ fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _996 => _996.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
44983
44976
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44984
44977
  CampaignChatCard,
44985
44978
  {
@@ -45005,12 +44998,12 @@ function ChatCardNavWrap({
45005
44998
  const onClickCapture = (e) => {
45006
44999
  if (!href) return;
45007
45000
  const targetEl = e.target;
45008
- if (_optionalChain([targetEl, 'optionalAccess', _996 => _996.closest, 'optionalCall', _997 => _997("button")])) return;
45009
- if (!_optionalChain([targetEl, 'optionalAccess', _998 => _998.closest, 'optionalCall', _999 => _999("a")])) return;
45001
+ if (_optionalChain([targetEl, 'optionalAccess', _997 => _997.closest, 'optionalCall', _998 => _998("button")])) return;
45002
+ if (!_optionalChain([targetEl, 'optionalAccess', _999 => _999.closest, 'optionalCall', _1000 => _1000("a")])) return;
45010
45003
  const handled = handleChatNavClick(e, runtime, { href, path, targetPlatform }, router.push);
45011
45004
  if (!handled) return;
45012
45005
  e.stopPropagation();
45013
- if (!isNewTab && _optionalChain([panel, 'optionalAccess', _1000 => _1000.closeChat])) panel.closeChat();
45006
+ if (!isNewTab && _optionalChain([panel, 'optionalAccess', _1001 => _1001.closeChat])) panel.closeChat();
45014
45007
  };
45015
45008
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "contents", onClickCapture, children });
45016
45009
  }
@@ -45032,7 +45025,7 @@ function ChatCardLoader({
45032
45025
  title: chatRef.title,
45033
45026
  externalUrl: chatRef.url,
45034
45027
  targetPlatform: chatRef.targetPlatform,
45035
- path: typeof _optionalChain([chatRef, 'access', _1001 => _1001.metadata, 'optionalAccess', _1002 => _1002.path]) === "string" ? chatRef.metadata.path : null
45028
+ path: typeof _optionalChain([chatRef, 'access', _1002 => _1002.metadata, 'optionalAccess', _1003 => _1003.path]) === "string" ? chatRef.metadata.path : null
45036
45029
  },
45037
45030
  sourceRowCtxFromRuntime(runtime, { baseRoute, chipBasePlatform })
45038
45031
  );
@@ -45046,7 +45039,7 @@ function ChatCardLoader({
45046
45039
  const entry = CHAT_CARD_REGISTRY[resolvedChatRef.type];
45047
45040
  const fetchEntry = entry && entry.mode === "fetch" ? entry : null;
45048
45041
  const { item, isLoading } = useChatCardItem(
45049
- _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _1003 => _1003.contentRefType]), () => ( "")),
45042
+ _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _1004 => _1004.contentRefType]), () => ( "")),
45050
45043
  fetchEntry ? resolvedChatRef.id : ""
45051
45044
  );
45052
45045
  if (!entry) return null;
@@ -45077,7 +45070,7 @@ function ChatCardLoader({
45077
45070
  isNewTab,
45078
45071
  discuss
45079
45072
  };
45080
- const path = typeof _optionalChain([finalChatRef, 'access', _1004 => _1004.metadata, 'optionalAccess', _1005 => _1005.path]) === "string" ? finalChatRef.metadata.path : null;
45073
+ const path = typeof _optionalChain([finalChatRef, 'access', _1005 => _1005.metadata, 'optionalAccess', _1006 => _1006.path]) === "string" ? finalChatRef.metadata.path : null;
45081
45074
  const navWrap = (children) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
45082
45075
  ChatCardNavWrap,
45083
45076
  {
@@ -45463,7 +45456,7 @@ function useJetStreamDialogSubscription({
45463
45456
  const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
45464
45457
  conn: sharedConn,
45465
45458
  wsUrl,
45466
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1006 => _1006.current, 'optionalCall', _1007 => _1007()]),
45459
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1007 => _1007.current, 'optionalCall', _1008 => _1008()]),
45467
45460
  backoff: reconnectionBackoffRef.current,
45468
45461
  getFreshUrl: () => getNatsWsUrlRef.current(),
45469
45462
  // JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
@@ -45478,7 +45471,7 @@ function useJetStreamDialogSubscription({
45478
45471
  setReconnectionCount((c) => c + 1);
45479
45472
  }
45480
45473
  hadConnectionBeforeRef.current = true;
45481
- _optionalChain([onConnectRef, 'access', _1008 => _1008.current, 'optionalCall', _1009 => _1009()]);
45474
+ _optionalChain([onConnectRef, 'access', _1009 => _1009.current, 'optionalCall', _1010 => _1010()]);
45482
45475
  }
45483
45476
  if (status === "error") {
45484
45477
  console.warn("[JetStream] NATS protocol error:", evt.data);
@@ -45488,7 +45481,7 @@ function useJetStreamDialogSubscription({
45488
45481
  setIsConnected(false);
45489
45482
  setIsSubscribed(false);
45490
45483
  tearDownSubscription();
45491
- _optionalChain([onDisconnectRef, 'access', _1010 => _1010.current, 'optionalCall', _1011 => _1011()]);
45484
+ _optionalChain([onDisconnectRef, 'access', _1011 => _1011.current, 'optionalCall', _1012 => _1012()]);
45492
45485
  }
45493
45486
  }
45494
45487
  });
@@ -45567,7 +45560,7 @@ function useJetStreamDialogSubscription({
45567
45560
  }
45568
45561
  subscriptionRef.current = handle;
45569
45562
  setIsSubscribed(true);
45570
- _optionalChain([onSubscribedRef, 'access', _1012 => _1012.current, 'optionalCall', _1013 => _1013()]);
45563
+ _optionalChain([onSubscribedRef, 'access', _1013 => _1013.current, 'optionalCall', _1014 => _1014()]);
45571
45564
  } catch (e43) {
45572
45565
  if (!cancelled) {
45573
45566
  setIsSubscribed(false);
@@ -45680,20 +45673,20 @@ function useNatsDialogSubscription({
45680
45673
  const tearDownSubscriptions = () => {
45681
45674
  subscriptionRefs.current.forEach((sub) => {
45682
45675
  try {
45683
- _optionalChain([sub, 'optionalAccess', _1014 => _1014.unsubscribe, 'call', _1015 => _1015()]);
45676
+ _optionalChain([sub, 'optionalAccess', _1015 => _1015.unsubscribe, 'call', _1016 => _1016()]);
45684
45677
  } catch (e45) {
45685
45678
  }
45686
45679
  });
45687
45680
  subscriptionRefs.current.clear();
45688
45681
  lastSubscribedDialogIdRef.current = null;
45689
- _optionalChain([abortControllerRef, 'access', _1016 => _1016.current, 'optionalAccess', _1017 => _1017.abort, 'call', _1018 => _1018()]);
45682
+ _optionalChain([abortControllerRef, 'access', _1017 => _1017.current, 'optionalAccess', _1018 => _1018.abort, 'call', _1019 => _1019()]);
45690
45683
  abortControllerRef.current = null;
45691
45684
  };
45692
45685
  const isDisconnectStatus = (status) => status === "closed" || status === "disconnected";
45693
45686
  const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
45694
45687
  conn: sharedConn,
45695
45688
  wsUrl,
45696
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1019 => _1019.current, 'optionalCall', _1020 => _1020()]),
45689
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1020 => _1020.current, 'optionalCall', _1021 => _1021()]),
45697
45690
  backoff: reconnectionBackoffRef.current,
45698
45691
  getFreshUrl: () => getNatsWsUrlRef.current(),
45699
45692
  shouldRetryOn: isDisconnectStatus,
@@ -45704,7 +45697,7 @@ function useNatsDialogSubscription({
45704
45697
  setReconnectionCount((c) => c + 1);
45705
45698
  }
45706
45699
  hadConnectionBeforeRef.current = true;
45707
- _optionalChain([onConnectRef, 'access', _1021 => _1021.current, 'optionalCall', _1022 => _1022()]);
45700
+ _optionalChain([onConnectRef, 'access', _1022 => _1022.current, 'optionalCall', _1023 => _1023()]);
45708
45701
  }
45709
45702
  if (status === "error") {
45710
45703
  console.warn("[NATS] protocol error:", evt.data);
@@ -45714,7 +45707,7 @@ function useNatsDialogSubscription({
45714
45707
  setIsConnected(false);
45715
45708
  setIsSubscribed(false);
45716
45709
  tearDownSubscriptions();
45717
- _optionalChain([onDisconnectRef, 'access', _1023 => _1023.current, 'optionalCall', _1024 => _1024()]);
45710
+ _optionalChain([onDisconnectRef, 'access', _1024 => _1024.current, 'optionalCall', _1025 => _1025()]);
45718
45711
  }
45719
45712
  }
45720
45713
  });
@@ -45745,13 +45738,13 @@ function useNatsDialogSubscription({
45745
45738
  setIsSubscribed(false);
45746
45739
  subscriptionRefs.current.forEach((sub) => {
45747
45740
  try {
45748
- _optionalChain([sub, 'optionalAccess', _1025 => _1025.unsubscribe, 'call', _1026 => _1026()]);
45741
+ _optionalChain([sub, 'optionalAccess', _1026 => _1026.unsubscribe, 'call', _1027 => _1027()]);
45749
45742
  } catch (e46) {
45750
45743
  }
45751
45744
  });
45752
45745
  subscriptionRefs.current.clear();
45753
45746
  lastSubscribedDialogIdRef.current = null;
45754
- _optionalChain([abortControllerRef, 'access', _1027 => _1027.current, 'optionalAccess', _1028 => _1028.abort, 'call', _1029 => _1029()]);
45747
+ _optionalChain([abortControllerRef, 'access', _1028 => _1028.current, 'optionalAccess', _1029 => _1029.abort, 'call', _1030 => _1030()]);
45755
45748
  abortControllerRef.current = null;
45756
45749
  }
45757
45750
  return;
@@ -45763,12 +45756,12 @@ function useNatsDialogSubscription({
45763
45756
  if (subscriptionRefs.current.size > 0) {
45764
45757
  subscriptionRefs.current.forEach((sub) => {
45765
45758
  try {
45766
- _optionalChain([sub, 'optionalAccess', _1030 => _1030.unsubscribe, 'call', _1031 => _1031()]);
45759
+ _optionalChain([sub, 'optionalAccess', _1031 => _1031.unsubscribe, 'call', _1032 => _1032()]);
45767
45760
  } catch (e47) {
45768
45761
  }
45769
45762
  });
45770
45763
  subscriptionRefs.current.clear();
45771
- _optionalChain([abortControllerRef, 'access', _1032 => _1032.current, 'optionalAccess', _1033 => _1033.abort, 'call', _1034 => _1034()]);
45764
+ _optionalChain([abortControllerRef, 'access', _1033 => _1033.current, 'optionalAccess', _1034 => _1034.abort, 'call', _1035 => _1035()]);
45772
45765
  }
45773
45766
  abortControllerRef.current = new AbortController();
45774
45767
  const abort = abortControllerRef.current;
@@ -45800,7 +45793,7 @@ function useNatsDialogSubscription({
45800
45793
  });
45801
45794
  lastSubscribedDialogIdRef.current = dialogId;
45802
45795
  setIsSubscribed(true);
45803
- _optionalChain([onSubscribedRef, 'access', _1035 => _1035.current, 'optionalCall', _1036 => _1036()]);
45796
+ _optionalChain([onSubscribedRef, 'access', _1036 => _1036.current, 'optionalCall', _1037 => _1037()]);
45804
45797
  };
45805
45798
  if (isConnectedRef.current) {
45806
45799
  createSubscriptions();
@@ -45810,7 +45803,7 @@ function useNatsDialogSubscription({
45810
45803
  abort.abort();
45811
45804
  subscriptionRefs.current.forEach((sub) => {
45812
45805
  try {
45813
- _optionalChain([sub, 'optionalAccess', _1037 => _1037.unsubscribe, 'call', _1038 => _1038()]);
45806
+ _optionalChain([sub, 'optionalAccess', _1038 => _1038.unsubscribe, 'call', _1039 => _1039()]);
45814
45807
  } catch (e49) {
45815
45808
  }
45816
45809
  });
@@ -45851,7 +45844,7 @@ function useNatsDialogSubscription({
45851
45844
  });
45852
45845
  lastSubscribedDialogIdRef.current = dialogId2;
45853
45846
  setIsSubscribed(true);
45854
- _optionalChain([onSubscribedRef, 'access', _1039 => _1039.current, 'optionalCall', _1040 => _1040()]);
45847
+ _optionalChain([onSubscribedRef, 'access', _1040 => _1040.current, 'optionalCall', _1041 => _1041()]);
45855
45848
  } else if (subscriptionRefs.current.size > 0) {
45856
45849
  setIsSubscribed(true);
45857
45850
  }
@@ -45859,10 +45852,10 @@ function useNatsDialogSubscription({
45859
45852
  return { isConnected, isSubscribed, reconnectionCount };
45860
45853
  }
45861
45854
  function buildNatsWsUrl(apiBaseUrl, options) {
45862
- const path = _optionalChain([options, 'optionalAccess', _1041 => _1041.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
45855
+ const path = _optionalChain([options, 'optionalAccess', _1042 => _1042.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
45863
45856
  const u = new URL(path, apiBaseUrl);
45864
45857
  u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
45865
- if (_optionalChain([options, 'optionalAccess', _1042 => _1042.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _1043 => _1043.token])) {
45858
+ if (_optionalChain([options, 'optionalAccess', _1043 => _1043.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _1044 => _1044.token])) {
45866
45859
  u.searchParams.set("authorization", options.token);
45867
45860
  }
45868
45861
  return u.toString();
@@ -45998,7 +45991,7 @@ function parseChunkToAction(chunk) {
45998
45991
  // is REQUIRED on `ChatContextItem`, so fall back to the id (same as the
45999
45992
  // historical path in `process-historical-messages.ts`) — keeps both
46000
45993
  // message sources producing an identical shape.
46001
- contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1044 => _1044.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1045 => _1045.id]) === "string").map((it) => ({ type: it.type, id: it.id, label: it.id })) : void 0
45994
+ contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1045 => _1045.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1046 => _1046.id]) === "string").map((it) => ({ type: it.type, id: it.id, label: it.id })) : void 0
46002
45995
  };
46003
45996
  case MESSAGE_TYPE.TOKEN_USAGE:
46004
45997
  return {
@@ -46190,8 +46183,8 @@ var MessageSegmentAccumulator = class {
46190
46183
  type: "tool_execution",
46191
46184
  data: {
46192
46185
  ...toolData,
46193
- toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1046 => _1046.data, 'access', _1047 => _1047.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1048 => _1048.toolTitle]))),
46194
- parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1049 => _1049.parameters])
46186
+ toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1047 => _1047.data, 'access', _1048 => _1048.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1049 => _1049.toolTitle]))),
46187
+ parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1050 => _1050.parameters])
46195
46188
  }
46196
46189
  };
46197
46190
  if (existingIndex !== -1) {
@@ -46215,8 +46208,8 @@ var MessageSegmentAccumulator = class {
46215
46208
  if (seg.type !== "approval_batch") return seg;
46216
46209
  const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
46217
46210
  if (!hasCall) return seg;
46218
- const prev = _optionalChain([seg, 'access', _1050 => _1050.data, 'access', _1051 => _1051.executions, 'optionalAccess', _1052 => _1052[execId]]);
46219
- const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _1053 => _1053.result]), success: _optionalChain([prev, 'optionalAccess', _1054 => _1054.success]) };
46211
+ const prev = _optionalChain([seg, 'access', _1051 => _1051.data, 'access', _1052 => _1052.executions, 'optionalAccess', _1053 => _1053[execId]]);
46212
+ const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _1054 => _1054.result]), success: _optionalChain([prev, 'optionalAccess', _1055 => _1055.success]) };
46220
46213
  matched = true;
46221
46214
  return {
46222
46215
  ...seg,
@@ -46338,10 +46331,10 @@ var MessageSegmentAccumulator = class {
46338
46331
  const segment = {
46339
46332
  type: "approval_request",
46340
46333
  data: {
46341
- command: _optionalChain([pendingApproval, 'optionalAccess', _1055 => _1055.command]) || "",
46342
- explanation: _optionalChain([pendingApproval, 'optionalAccess', _1056 => _1056.explanation]),
46334
+ command: _optionalChain([pendingApproval, 'optionalAccess', _1056 => _1056.command]) || "",
46335
+ explanation: _optionalChain([pendingApproval, 'optionalAccess', _1057 => _1057.explanation]),
46343
46336
  requestId,
46344
- approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1057 => _1057.approvalType]) || approvalType
46337
+ approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1058 => _1058.approvalType]) || approvalType
46345
46338
  },
46346
46339
  status,
46347
46340
  onApprove: this.callbacks.onApprove,
@@ -46533,7 +46526,7 @@ function useRealtimeChunkProcessor(options) {
46533
46526
  if (initialState.escalatedApprovals) {
46534
46527
  pendingEscalatedRef.current = new Map(initialState.escalatedApprovals);
46535
46528
  initialState.escalatedApprovals.forEach((data, requestId) => {
46536
- _optionalChain([callbacks, 'access', _1058 => _1058.onEscalatedApproval, 'optionalCall', _1059 => _1059(requestId, data)]);
46529
+ _optionalChain([callbacks, 'access', _1059 => _1059.onEscalatedApproval, 'optionalCall', _1060 => _1060(requestId, data)]);
46537
46530
  });
46538
46531
  }
46539
46532
  hasEverStreamedRef.current = true;
@@ -46554,12 +46547,12 @@ function useRealtimeChunkProcessor(options) {
46554
46547
  if (!action) return;
46555
46548
  const accumulator = accumulatorRef.current;
46556
46549
  const streamSeq = chunk && typeof chunk === "object" && typeof chunk.streamSeq === "number" ? chunk.streamSeq : void 0;
46557
- const emitSegments = (s, meta) => _optionalChain([callbacks, 'access', _1060 => _1060.onSegmentsUpdate, 'optionalCall', _1061 => _1061(s, streamSeq != null ? { ...meta, streamSeq } : meta)]);
46550
+ const emitSegments = (s, meta) => _optionalChain([callbacks, 'access', _1061 => _1061.onSegmentsUpdate, 'optionalCall', _1062 => _1062(s, streamSeq != null ? { ...meta, streamSeq } : meta)]);
46558
46551
  if (action.action === "direct_message") sawDirectMessageRef.current = true;
46559
46552
  if ((directModeFlagRef.current || sawDirectMessageRef.current) && !DIRECT_MODE_ALLOWED.has(action.action)) {
46560
46553
  if (isInStreamRef.current) {
46561
46554
  isInStreamRef.current = false;
46562
- _optionalChain([callbacks, 'access', _1062 => _1062.onStreamEnd, 'optionalCall', _1063 => _1063()]);
46555
+ _optionalChain([callbacks, 'access', _1063 => _1063.onStreamEnd, 'optionalCall', _1064 => _1064()]);
46563
46556
  accumulator.resetSegments();
46564
46557
  }
46565
46558
  return;
@@ -46568,16 +46561,16 @@ function useRealtimeChunkProcessor(options) {
46568
46561
  case "message_start":
46569
46562
  isInStreamRef.current = true;
46570
46563
  hasEverStreamedRef.current = true;
46571
- _optionalChain([callbacks, 'access', _1064 => _1064.onStreamStart, 'optionalCall', _1065 => _1065()]);
46564
+ _optionalChain([callbacks, 'access', _1065 => _1065.onStreamStart, 'optionalCall', _1066 => _1066()]);
46572
46565
  accumulator.resetSegments();
46573
46566
  break;
46574
46567
  case "message_end":
46575
46568
  isInStreamRef.current = false;
46576
- _optionalChain([callbacks, 'access', _1066 => _1066.onStreamEnd, 'optionalCall', _1067 => _1067()]);
46569
+ _optionalChain([callbacks, 'access', _1067 => _1067.onStreamEnd, 'optionalCall', _1068 => _1068()]);
46577
46570
  accumulator.resetSegments();
46578
46571
  break;
46579
46572
  case "metadata":
46580
- _optionalChain([callbacks, 'access', _1068 => _1068.onMetadata, 'optionalCall', _1069 => _1069(action)]);
46573
+ _optionalChain([callbacks, 'access', _1069 => _1069.onMetadata, 'optionalCall', _1070 => _1070(action)]);
46581
46574
  break;
46582
46575
  case "text": {
46583
46576
  const segments = accumulator.appendText(action.text);
@@ -46620,7 +46613,7 @@ function useRealtimeChunkProcessor(options) {
46620
46613
  emitSegments(segments);
46621
46614
  } else {
46622
46615
  pendingEscalatedRef.current.set(requestId, { command, explanation, approvalType });
46623
- _optionalChain([callbacks, 'access', _1070 => _1070.onEscalatedApproval, 'optionalCall', _1071 => _1071(requestId, { command, explanation, approvalType })]);
46616
+ _optionalChain([callbacks, 'access', _1071 => _1071.onEscalatedApproval, 'optionalCall', _1072 => _1072(requestId, { command, explanation, approvalType })]);
46624
46617
  }
46625
46618
  break;
46626
46619
  }
@@ -46632,13 +46625,13 @@ function useRealtimeChunkProcessor(options) {
46632
46625
  const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
46633
46626
  pendingEscalatedRef.current.set(requestId, {
46634
46627
  command: summary,
46635
- explanation: _optionalChain([required, 'optionalAccess', _1072 => _1072.toolExplanation]),
46628
+ explanation: _optionalChain([required, 'optionalAccess', _1073 => _1073.toolExplanation]),
46636
46629
  approvalType,
46637
46630
  toolCalls
46638
46631
  });
46639
- _optionalChain([callbacks, 'access', _1073 => _1073.onEscalatedApproval, 'optionalCall', _1074 => _1074(requestId, {
46632
+ _optionalChain([callbacks, 'access', _1074 => _1074.onEscalatedApproval, 'optionalCall', _1075 => _1075(requestId, {
46640
46633
  command: summary,
46641
- explanation: _optionalChain([required, 'optionalAccess', _1075 => _1075.toolExplanation]),
46634
+ explanation: _optionalChain([required, 'optionalAccess', _1076 => _1076.toolExplanation]),
46642
46635
  approvalType
46643
46636
  })]);
46644
46637
  break;
@@ -46668,7 +46661,7 @@ function useRealtimeChunkProcessor(options) {
46668
46661
  const status = approved ? "approved" : "rejected";
46669
46662
  if (escalatedData) {
46670
46663
  pendingEscalatedRef.current.delete(requestId);
46671
- _optionalChain([callbacks, 'access', _1076 => _1076.onEscalatedApprovalResult, 'optionalCall', _1077 => _1077(requestId, approved, {
46664
+ _optionalChain([callbacks, 'access', _1077 => _1077.onEscalatedApprovalResult, 'optionalCall', _1078 => _1078(requestId, approved, {
46672
46665
  command: escalatedData.command,
46673
46666
  explanation: escalatedData.explanation,
46674
46667
  approvalType: escalatedData.approvalType
@@ -46714,29 +46707,29 @@ function useRealtimeChunkProcessor(options) {
46714
46707
  emitSegments(accumulator.getSegments());
46715
46708
  }
46716
46709
  }
46717
- _optionalChain([callbacks, 'access', _1078 => _1078.onApprovalResolved, 'optionalCall', _1079 => _1079(requestId, status, approvalType, resolvedByName)]);
46710
+ _optionalChain([callbacks, 'access', _1079 => _1079.onApprovalResolved, 'optionalCall', _1080 => _1080(requestId, status, approvalType, resolvedByName)]);
46718
46711
  break;
46719
46712
  }
46720
46713
  case "error": {
46721
46714
  let message2;
46722
- if ("details" in action && _optionalChain([action, 'optionalAccess', _1080 => _1080.details])) {
46715
+ if ("details" in action && _optionalChain([action, 'optionalAccess', _1081 => _1081.details])) {
46723
46716
  try {
46724
- message2 = _optionalChain([JSON, 'access', _1081 => _1081.parse, 'call', _1082 => _1082(action.details), 'optionalAccess', _1083 => _1083.error, 'optionalAccess', _1084 => _1084.message]);
46717
+ message2 = _optionalChain([JSON, 'access', _1082 => _1082.parse, 'call', _1083 => _1083(action.details), 'optionalAccess', _1084 => _1084.error, 'optionalAccess', _1085 => _1085.message]);
46725
46718
  } catch (e51) {
46726
46719
  message2 = action.details;
46727
46720
  }
46728
46721
  }
46729
46722
  const segments = accumulator.addError(action.error, message2);
46730
46723
  emitSegments(segments);
46731
- _optionalChain([callbacks, 'access', _1085 => _1085.onError, 'optionalCall', _1086 => _1086(action.error, message2)]);
46724
+ _optionalChain([callbacks, 'access', _1086 => _1086.onError, 'optionalCall', _1087 => _1087(action.error, message2)]);
46732
46725
  break;
46733
46726
  }
46734
46727
  case "system": {
46735
- _optionalChain([callbacks, 'access', _1087 => _1087.onSystemMessage, 'optionalCall', _1088 => _1088(action.text, { streamSeq })]);
46728
+ _optionalChain([callbacks, 'access', _1088 => _1088.onSystemMessage, 'optionalCall', _1089 => _1089(action.text, { streamSeq })]);
46736
46729
  break;
46737
46730
  }
46738
46731
  case "direct_message": {
46739
- _optionalChain([callbacks, 'access', _1089 => _1089.onDirectMessage, 'optionalCall', _1090 => _1090(action.text, {
46732
+ _optionalChain([callbacks, 'access', _1090 => _1090.onDirectMessage, 'optionalCall', _1091 => _1091(action.text, {
46740
46733
  ownerType: action.ownerType,
46741
46734
  displayName: action.displayName,
46742
46735
  userId: action.userId,
@@ -46745,7 +46738,7 @@ function useRealtimeChunkProcessor(options) {
46745
46738
  break;
46746
46739
  }
46747
46740
  case "message_request":
46748
- _optionalChain([callbacks, 'access', _1091 => _1091.onUserMessage, 'optionalCall', _1092 => _1092(action.text, {
46741
+ _optionalChain([callbacks, 'access', _1092 => _1092.onUserMessage, 'optionalCall', _1093 => _1093(action.text, {
46749
46742
  ownerType: action.ownerType,
46750
46743
  displayName: action.displayName,
46751
46744
  userId: action.userId,
@@ -46754,7 +46747,7 @@ function useRealtimeChunkProcessor(options) {
46754
46747
  })]);
46755
46748
  break;
46756
46749
  case "token_usage":
46757
- _optionalChain([callbacks, 'access', _1093 => _1093.onTokenUsage, 'optionalCall', _1094 => _1094(action.data)]);
46750
+ _optionalChain([callbacks, 'access', _1094 => _1094.onTokenUsage, 'optionalCall', _1095 => _1095(action.data)]);
46758
46751
  break;
46759
46752
  case "context_compaction_start": {
46760
46753
  const standalone = !isInStreamRef.current;
@@ -46769,7 +46762,7 @@ function useRealtimeChunkProcessor(options) {
46769
46762
  break;
46770
46763
  }
46771
46764
  case "dialog_closed":
46772
- _optionalChain([callbacks, 'access', _1095 => _1095.onDialogClosed, 'optionalCall', _1096 => _1096()]);
46765
+ _optionalChain([callbacks, 'access', _1096 => _1096.onDialogClosed, 'optionalCall', _1097 => _1097()]);
46773
46766
  break;
46774
46767
  default:
46775
46768
  break;
@@ -46816,7 +46809,7 @@ async function fetchSlashCommands(prefix, signal, commandsUrl) {
46816
46809
  const data = await res.json();
46817
46810
  return _nullishCoalesce(data.commands, () => ( []));
46818
46811
  } catch (err) {
46819
- if (_optionalChain([err, 'optionalAccess', _1097 => _1097.name]) === "AbortError") throw err;
46812
+ if (_optionalChain([err, 'optionalAccess', _1098 => _1098.name]) === "AbortError") throw err;
46820
46813
  console.warn("[chat] slash-commands fetch failed, showing none:", err);
46821
46814
  return [];
46822
46815
  }
@@ -46837,7 +46830,7 @@ function useSlashCommands(prefix, commandsUrl) {
46837
46830
  const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
46838
46831
  if (!cancelled) setCommands(next);
46839
46832
  } catch (err) {
46840
- if (!cancelled && _optionalChain([err, 'optionalAccess', _1098 => _1098.name]) !== "AbortError") {
46833
+ if (!cancelled && _optionalChain([err, 'optionalAccess', _1099 => _1099.name]) !== "AbortError") {
46841
46834
  console.warn("[use-slash-commands] fetch failed:", err);
46842
46835
  }
46843
46836
  } finally {
@@ -46856,7 +46849,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
46856
46849
  const query = _reactquery.useQuery.call(void 0, {
46857
46850
  queryKey: ["chat-slash-commands", commandsUrl],
46858
46851
  queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
46859
- enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1099 => _1099.enabled]), () => ( true)),
46852
+ enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1100 => _1100.enabled]), () => ( true)),
46860
46853
  staleTime: Infinity,
46861
46854
  gcTime: Infinity,
46862
46855
  // The commands registry is non-critical chrome — a failure degrades to an
@@ -46895,21 +46888,21 @@ async function fetchEmptyStateConfig(signal, emptyStateUrl) {
46895
46888
  }
46896
46889
  const data = await res.json();
46897
46890
  return {
46898
- name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1100 => _1100.name]), () => ( null)),
46899
- icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1101 => _1101.icon]), () => ( null)),
46900
- greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1102 => _1102.greeting]), () => ( null)),
46901
- enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1103 => _1103.enabledRagTableIds]), () => ( [])),
46902
- quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1104 => _1104.quickActions]), () => ( [])),
46903
- suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1105 => _1105.suggestedQueries]), () => ( []))
46891
+ name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1101 => _1101.name]), () => ( null)),
46892
+ icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1102 => _1102.icon]), () => ( null)),
46893
+ greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1103 => _1103.greeting]), () => ( null)),
46894
+ enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1104 => _1104.enabledRagTableIds]), () => ( [])),
46895
+ quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1105 => _1105.quickActions]), () => ( [])),
46896
+ suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1106 => _1106.suggestedQueries]), () => ( []))
46904
46897
  };
46905
46898
  } catch (err) {
46906
- if (_optionalChain([err, 'optionalAccess', _1106 => _1106.name]) === "AbortError") throw err;
46899
+ if (_optionalChain([err, 'optionalAccess', _1107 => _1107.name]) === "AbortError") throw err;
46907
46900
  console.warn("[chat] empty-state config fetch failed, using neutral defaults:", err);
46908
46901
  return EMPTY_STATE_FALLBACK;
46909
46902
  }
46910
46903
  }
46911
46904
  function useEmptyStateConfig(emptyStateUrl, options) {
46912
- const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1107 => _1107.enabled]), () => ( true))) && !!emptyStateUrl;
46905
+ const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1108 => _1108.enabled]), () => ( true))) && !!emptyStateUrl;
46913
46906
  const query = _reactquery.useQuery.call(void 0, {
46914
46907
  queryKey: ["chat-empty-state", emptyStateUrl],
46915
46908
  queryFn: ({ signal }) => fetchEmptyStateConfig(signal, emptyStateUrl),
@@ -46938,7 +46931,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
46938
46931
  var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
46939
46932
  function uploadWithProgress(url, file, token, onProgress, signal) {
46940
46933
  return new Promise((resolve, reject) => {
46941
- if (_optionalChain([signal, 'optionalAccess', _1108 => _1108.aborted])) {
46934
+ if (_optionalChain([signal, 'optionalAccess', _1109 => _1109.aborted])) {
46942
46935
  reject(new Error("Upload cancelled"));
46943
46936
  return;
46944
46937
  }
@@ -46952,7 +46945,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
46952
46945
  xhr.removeEventListener("error", handleError);
46953
46946
  xhr.removeEventListener("abort", handleAbort);
46954
46947
  xhr.removeEventListener("timeout", handleTimeout);
46955
- _optionalChain([signal, 'optionalAccess', _1109 => _1109.removeEventListener, 'call', _1110 => _1110("abort", handleSignalAbort)]);
46948
+ _optionalChain([signal, 'optionalAccess', _1110 => _1110.removeEventListener, 'call', _1111 => _1111("abort", handleSignalAbort)]);
46956
46949
  if (xhr.readyState !== XMLHttpRequest.DONE) xhr.abort();
46957
46950
  };
46958
46951
  const handleProgress = (event) => {
@@ -46988,7 +46981,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
46988
46981
  const handleSignalAbort = () => {
46989
46982
  xhr.abort();
46990
46983
  };
46991
- _optionalChain([signal, 'optionalAccess', _1111 => _1111.addEventListener, 'call', _1112 => _1112("abort", handleSignalAbort, { once: true })]);
46984
+ _optionalChain([signal, 'optionalAccess', _1112 => _1112.addEventListener, 'call', _1113 => _1113("abort", handleSignalAbort, { once: true })]);
46992
46985
  xhr.upload.addEventListener("progress", handleProgress);
46993
46986
  xhr.addEventListener("load", handleLoad);
46994
46987
  xhr.addEventListener("error", handleError);
@@ -47032,12 +47025,12 @@ function useChatAttachments() {
47032
47025
  try {
47033
47026
  sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
47034
47027
  } catch (err) {
47035
- if (_optionalChain([ctrl, 'optionalAccess', _1113 => _1113.signal, 'access', _1114 => _1114.aborted])) return;
47028
+ if (_optionalChain([ctrl, 'optionalAccess', _1114 => _1114.signal, 'access', _1115 => _1115.aborted])) return;
47036
47029
  throw new Error(
47037
47030
  `Could not read file content: ${err instanceof Error ? err.message : String(err)}`
47038
47031
  );
47039
47032
  }
47040
- if (_optionalChain([ctrl, 'optionalAccess', _1115 => _1115.signal, 'access', _1116 => _1116.aborted])) return;
47033
+ if (_optionalChain([ctrl, 'optionalAccess', _1116 => _1116.signal, 'access', _1117 => _1117.aborted])) return;
47041
47034
  if (!sniffed) {
47042
47035
  throw new Error("Unrecognized file format");
47043
47036
  }
@@ -47051,7 +47044,7 @@ function useChatAttachments() {
47051
47044
  const urlResp = await _chunk743FCO64cjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
47052
47045
  method: "POST",
47053
47046
  headers: { "Content-Type": "application/json" },
47054
- signal: _optionalChain([ctrl, 'optionalAccess', _1117 => _1117.signal]),
47047
+ signal: _optionalChain([ctrl, 'optionalAccess', _1118 => _1118.signal]),
47055
47048
  body: JSON.stringify({
47056
47049
  fileName: att.file.name,
47057
47050
  // Pass the SNIFFED MIME (not `file.type`, which can be a
@@ -47077,9 +47070,9 @@ function useChatAttachments() {
47077
47070
  (pct) => {
47078
47071
  updateOne(att.id, { progress: pct });
47079
47072
  },
47080
- _optionalChain([ctrl, 'optionalAccess', _1118 => _1118.signal])
47073
+ _optionalChain([ctrl, 'optionalAccess', _1119 => _1119.signal])
47081
47074
  );
47082
- if (_optionalChain([ctrl, 'optionalAccess', _1119 => _1119.signal, 'access', _1120 => _1120.aborted])) return;
47075
+ if (_optionalChain([ctrl, 'optionalAccess', _1120 => _1120.signal, 'access', _1121 => _1121.aborted])) return;
47083
47076
  updateOne(att.id, {
47084
47077
  status: "ready",
47085
47078
  progress: 100,
@@ -47087,7 +47080,7 @@ function useChatAttachments() {
47087
47080
  viewToken: mintData.viewToken
47088
47081
  });
47089
47082
  } catch (err) {
47090
- if (_optionalChain([ctrl, 'optionalAccess', _1121 => _1121.signal, 'access', _1122 => _1122.aborted])) return;
47083
+ if (_optionalChain([ctrl, 'optionalAccess', _1122 => _1122.signal, 'access', _1123 => _1123.aborted])) return;
47091
47084
  const message2 = err instanceof Error ? err.message : String(err);
47092
47085
  updateOne(att.id, { status: "error", progress: 0, errorMessage: message2 });
47093
47086
  } finally {
@@ -47238,7 +47231,7 @@ var ANON_DEFAULTS = {
47238
47231
  function useResolveChatIdentity(enabled) {
47239
47232
  const runtime = _chunk3KEBI6TPcjs.useRequiredChatRuntime.call(void 0, );
47240
47233
  const url = runtime.endpoints.identityUrl;
47241
- const proxyEmail = _nullishCoalesce(_optionalChain([_chunk743FCO64cjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1123 => _1123.email]), () => ( null));
47234
+ const proxyEmail = _nullishCoalesce(_optionalChain([_chunk743FCO64cjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1124 => _1124.email]), () => ( null));
47242
47235
  const [data, setData] = _react.useState.call(void 0, ANON_DEFAULTS);
47243
47236
  const [isLoading, setIsLoading] = _react.useState.call(void 0, enabled);
47244
47237
  _react.useEffect.call(void 0, () => {
@@ -47329,7 +47322,7 @@ function useSSE({ useMock = true, debugMode = false, streamFn } = {}) {
47329
47322
  yield chunk;
47330
47323
  }
47331
47324
  } catch (err) {
47332
- if (_optionalChain([err, 'optionalAccess', _1124 => _1124.name]) === "AbortError" || ctrl.signal.aborted) {
47325
+ if (_optionalChain([err, 'optionalAccess', _1125 => _1125.name]) === "AbortError" || ctrl.signal.aborted) {
47333
47326
  return;
47334
47327
  }
47335
47328
  const errorMessage = err instanceof Error ? err.message : "An error occurred";
@@ -47380,7 +47373,7 @@ function useChat({
47380
47373
  const onMessagesChangeRef = _react.useRef.call(void 0, onMessagesChange);
47381
47374
  onMessagesChangeRef.current = onMessagesChange;
47382
47375
  _react.useEffect.call(void 0, () => {
47383
- _optionalChain([onMessagesChangeRef, 'access', _1125 => _1125.current, 'optionalCall', _1126 => _1126(messages)]);
47376
+ _optionalChain([onMessagesChangeRef, 'access', _1126 => _1126.current, 'optionalCall', _1127 => _1127(messages)]);
47384
47377
  }, [messages]);
47385
47378
  const {
47386
47379
  streamMessage,
@@ -47417,7 +47410,7 @@ function useChat({
47417
47410
  name: "You",
47418
47411
  content: text,
47419
47412
  timestamp: /* @__PURE__ */ new Date(),
47420
- ..._optionalChain([options, 'optionalAccess', _1127 => _1127.hidden]) ? { hidden: true } : {}
47413
+ ..._optionalChain([options, 'optionalAccess', _1128 => _1128.hidden]) ? { hidden: true } : {}
47421
47414
  };
47422
47415
  addMessage(userMessage);
47423
47416
  setIsTyping(true);
@@ -47479,7 +47472,7 @@ function useChat({
47479
47472
  currentTextSegment = "";
47480
47473
  }
47481
47474
  const seg = segment;
47482
- const proposalId = _optionalChain([seg, 'access', _1128 => _1128.data, 'optionalAccess', _1129 => _1129.requestId]);
47475
+ const proposalId = _optionalChain([seg, 'access', _1129 => _1129.data, 'optionalAccess', _1130 => _1130.requestId]);
47483
47476
  const updateApprovalMessage = (transform) => {
47484
47477
  setMessages((prev) => {
47485
47478
  for (let i = prev.length - 1; i >= 0; i--) {
@@ -47488,7 +47481,7 @@ function useChat({
47488
47481
  if (!Array.isArray(m.content)) continue;
47489
47482
  const segments = m.content;
47490
47483
  const hasMatch = segments.some(
47491
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1130 => _1130.data, 'optionalAccess', _1131 => _1131.requestId]) === proposalId
47484
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1131 => _1131.data, 'optionalAccess', _1132 => _1132.requestId]) === proposalId
47492
47485
  );
47493
47486
  if (!hasMatch) continue;
47494
47487
  const next = [...prev];
@@ -47530,11 +47523,11 @@ function useChat({
47530
47523
  if (!Array.isArray(m.content)) continue;
47531
47524
  const segments = m.content;
47532
47525
  const hasMatch = segments.some(
47533
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1132 => _1132.data, 'optionalAccess', _1133 => _1133.requestId]) === decision.proposalId
47526
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1133 => _1133.data, 'optionalAccess', _1134 => _1134.requestId]) === decision.proposalId
47534
47527
  );
47535
47528
  if (!hasMatch) continue;
47536
47529
  const flipped = segments.map(
47537
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1134 => _1134.data, 'optionalAccess', _1135 => _1135.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
47530
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1135 => _1135.data, 'optionalAccess', _1136 => _1136.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
47538
47531
  );
47539
47532
  const next = [...prev];
47540
47533
  next[i] = { ...m, content: flipped };
@@ -47696,8 +47689,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
47696
47689
  })),
47697
47690
  { role: "user", content: message2 }
47698
47691
  ];
47699
- const targetPath = _optionalChain([extra, 'optionalAccess', _1136 => _1136.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
47700
- const requestBody = _optionalChain([extra, 'optionalAccess', _1137 => _1137.approvalAction]) ? {
47692
+ const targetPath = _optionalChain([extra, 'optionalAccess', _1137 => _1137.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
47693
+ const requestBody = _optionalChain([extra, 'optionalAccess', _1138 => _1138.approvalAction]) ? {
47701
47694
  proposal_id: extra.approvalAction.proposalId,
47702
47695
  action: extra.approvalAction.action,
47703
47696
  messages: currentMessages.filter((m) => (m.role === "user" || m.role === "assistant") && !m.hidden).map((m) => ({
@@ -47706,8 +47699,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
47706
47699
  }))
47707
47700
  } : {
47708
47701
  messages: apiMessages,
47709
- ..._optionalChain([extra, 'optionalAccess', _1138 => _1138.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
47710
- ..._optionalChain([extra, 'optionalAccess', _1139 => _1139.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
47702
+ ..._optionalChain([extra, 'optionalAccess', _1139 => _1139.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
47703
+ ..._optionalChain([extra, 'optionalAccess', _1140 => _1140.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
47711
47704
  };
47712
47705
  const response = await _chunk743FCO64cjs.embedAuthedFetch.call(void 0, targetPath, {
47713
47706
  method: "POST",
@@ -47717,7 +47710,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
47717
47710
  if (!response.ok) {
47718
47711
  throw new Error(`Chat request failed: ${response.status}`);
47719
47712
  }
47720
- const reader = _optionalChain([response, 'access', _1140 => _1140.body, 'optionalAccess', _1141 => _1141.getReader, 'call', _1142 => _1142()]);
47713
+ const reader = _optionalChain([response, 'access', _1141 => _1141.body, 'optionalAccess', _1142 => _1142.getReader, 'call', _1143 => _1143()]);
47721
47714
  if (!reader) throw new Error("No response body");
47722
47715
  const decoder = new TextDecoder();
47723
47716
  let buffer = "";
@@ -47800,7 +47793,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
47800
47793
  const toolName = typeof meta.tool_name === "string" ? meta.tool_name : void 0;
47801
47794
  const result = _nullishCoalesce(meta.result, () => ( null));
47802
47795
  const card = _nullishCoalesce(meta.card, () => ( null));
47803
- if (_optionalChain([card, 'optionalAccess', _1143 => _1143.ref, 'optionalAccess', _1144 => _1144.id]) && _optionalChain([card, 'optionalAccess', _1145 => _1145.type])) {
47796
+ if (_optionalChain([card, 'optionalAccess', _1144 => _1144.ref, 'optionalAccess', _1145 => _1145.id]) && _optionalChain([card, 'optionalAccess', _1146 => _1146.type])) {
47804
47797
  const existing = _nullishCoalesce(refsMapRef.current.get(sendIdx), () => ( {}));
47805
47798
  const key = buildChatRefKey(card.type, card.ref.id);
47806
47799
  refsMapRef.current.set(sendIdx, { ...existing, [key]: card.ref });
@@ -47813,8 +47806,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
47813
47806
  willAutoContinue: meta.willAutoContinue === true,
47814
47807
  ...toolName ? { toolName } : {},
47815
47808
  ...result ? { result } : {},
47816
- ..._optionalChain([card, 'optionalAccess', _1146 => _1146.marker]) ? { marker: card.marker } : {},
47817
- ..._optionalChain([card, 'optionalAccess', _1147 => _1147.ref]) ? { cardRef: card.ref } : {},
47809
+ ..._optionalChain([card, 'optionalAccess', _1147 => _1147.marker]) ? { marker: card.marker } : {},
47810
+ ..._optionalChain([card, 'optionalAccess', _1148 => _1148.ref]) ? { cardRef: card.ref } : {},
47818
47811
  ...typeof meta.receiptText === "string" ? { receiptText: meta.receiptText } : {},
47819
47812
  proposalId: typeof meta.proposalId === "string" ? meta.proposalId : void 0
47820
47813
  };
@@ -47933,7 +47926,7 @@ var DEFAULT_CHAT_SOURCE = "embed";
47933
47926
  var chatStorageKey = (source) => {
47934
47927
  const base = `mingo-chat-${source}-v${CHAT_STORAGE_VERSION}`;
47935
47928
  const auth = _chunk743FCO64cjs.getEmbedProxyAuth.call(void 0, );
47936
- if (_optionalChain([auth, 'optionalAccess', _1148 => _1148.email])) {
47929
+ if (_optionalChain([auth, 'optionalAccess', _1149 => _1149.email])) {
47937
47930
  return `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}`;
47938
47931
  }
47939
47932
  return base;
@@ -47988,7 +47981,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
47988
47981
  const { active = true } = runtimeOptions;
47989
47982
  const runtime = _chunk3KEBI6TPcjs.useRequiredChatRuntime.call(void 0, );
47990
47983
  const source = runtime.source || DEFAULT_CHAT_SOURCE;
47991
- const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1149 => _1149.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
47984
+ const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1150 => _1150.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
47992
47985
  const persistedRef = _react.useRef.call(void 0, null);
47993
47986
  if (persistedRef.current === null) {
47994
47987
  pruneStaleChatStorage(source);
@@ -48093,7 +48086,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
48093
48086
  const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
48094
48087
  sources = sourcesMapRef.current.get(lookupIdx);
48095
48088
  chatRefs = _nullishCoalesce(m.chatRefs, () => ( refsMapRef.current.get(lookupIdx)));
48096
- scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1150 => _1150.current, 'access', _1151 => _1151.get, 'call', _1152 => _1152(lookupIdx), 'optionalAccess', _1153 => _1153.scrollAnchor]), () => ( void 0));
48089
+ scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1151 => _1151.current, 'access', _1152 => _1152.get, 'call', _1153 => _1153(lookupIdx), 'optionalAccess', _1154 => _1154.scrollAnchor]), () => ( void 0));
48097
48090
  }
48098
48091
  return {
48099
48092
  id: m.id,
@@ -48141,7 +48134,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
48141
48134
  );
48142
48135
  return;
48143
48136
  }
48144
- const refSlug = typeof _optionalChain([reference, 'access', _1154 => _1154.metadata, 'optionalAccess', _1155 => _1155.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
48137
+ const refSlug = typeof _optionalChain([reference, 'access', _1155 => _1155.metadata, 'optionalAccess', _1156 => _1156.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
48145
48138
  const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
48146
48139
  const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
48147
48140
  const text = `/${cmdId} display "${escaped}"`;
@@ -48213,18 +48206,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
48213
48206
  clearMessages,
48214
48207
  streamingPhase,
48215
48208
  /** Provider key for the lib's `<ModelDisplay>` icon. */
48216
- currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1156 => _1156.provider]), () => ( null)),
48217
- currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1157 => _1157.modelLabel]), () => ( null)),
48218
- currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1158 => _1158.contextWindowMaxTokens]), () => ( null)),
48209
+ currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1157 => _1157.provider]), () => ( null)),
48210
+ currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1158 => _1158.modelLabel]), () => ( null)),
48211
+ currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1159 => _1159.contextWindowMaxTokens]), () => ( null)),
48219
48212
  /** Input tokens (known after server's message_start frame; null until). */
48220
- currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1159 => _1159.inputTokens]), () => ( null)),
48213
+ currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1160 => _1160.inputTokens]), () => ( null)),
48221
48214
  /** Output tokens (known only after server's trailing usage frame). */
48222
- currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1160 => _1160.outputTokens]), () => ( null)),
48215
+ currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1161 => _1161.outputTokens]), () => ( null)),
48223
48216
  /** Cache hit % (read / total-input × 100). null during streaming. */
48224
- currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1161 => _1161.cacheHitRatePct]), () => ( null)),
48217
+ currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1162 => _1162.cacheHitRatePct]), () => ( null)),
48225
48218
  /** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
48226
48219
  * token counts). null until the trailing usage frame lands. */
48227
- currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1162 => _1162.breakdown]), () => ( null)),
48220
+ currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1163 => _1163.breakdown]), () => ( null)),
48228
48221
  // ─── Dialog management — stubs for v1 ────────────────────────────────
48229
48222
  // Guide mode currently keeps its history in `localStorage` opaquely
48230
48223
  // under the hood (`runtime.source` namespaced key). Surfacing that
@@ -48282,15 +48275,15 @@ var noopRejectRequest = async (_id, _reason) => {
48282
48275
 
48283
48276
  // src/components/chat/utils/process-historical-messages.ts
48284
48277
  function getOwnerDisplayName(owner) {
48285
- if (_optionalChain([owner, 'optionalAccess', _1163 => _1163.type]) === OWNER_TYPE.ADMIN && owner.user) {
48278
+ if (_optionalChain([owner, 'optionalAccess', _1164 => _1164.type]) === OWNER_TYPE.ADMIN && owner.user) {
48286
48279
  const { firstName, lastName } = owner.user;
48287
48280
  const name = [firstName, lastName].filter(Boolean).join(" ");
48288
48281
  if (name) return name;
48289
48282
  }
48290
- return _optionalChain([owner, 'optionalAccess', _1164 => _1164.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
48283
+ return _optionalChain([owner, 'optionalAccess', _1165 => _1165.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
48291
48284
  }
48292
48285
  function getOwnerAvatar(owner) {
48293
- return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1165 => _1165.user, 'optionalAccess', _1166 => _1166.image, 'optionalAccess', _1167 => _1167.imageUrl]), () => ( void 0));
48286
+ return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1166 => _1166.user, 'optionalAccess', _1167 => _1167.image, 'optionalAccess', _1168 => _1168.imageUrl]), () => ( void 0));
48294
48287
  }
48295
48288
  function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
48296
48289
  messageDataArray.forEach((data) => {
@@ -48353,14 +48346,14 @@ function processHistoricalMessages(messages, options = {}) {
48353
48346
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
48354
48347
  return;
48355
48348
  }
48356
- const isUserMessage = _optionalChain([msg, 'access', _1168 => _1168.owner, 'optionalAccess', _1169 => _1169.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1170 => _1170.owner, 'optionalAccess', _1171 => _1171.type]) === OWNER_TYPE.ADMIN;
48349
+ const isUserMessage = _optionalChain([msg, 'access', _1169 => _1169.owner, 'optionalAccess', _1170 => _1170.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1171 => _1171.owner, 'optionalAccess', _1172 => _1172.type]) === OWNER_TYPE.ADMIN;
48357
48350
  if (isUserMessage) {
48358
48351
  flushAssistantMessage();
48359
- const userAuthorType = _optionalChain([msg, 'access', _1172 => _1172.owner, 'optionalAccess', _1173 => _1173.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
48352
+ const userAuthorType = _optionalChain([msg, 'access', _1173 => _1173.owner, 'optionalAccess', _1174 => _1174.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
48360
48353
  messageDataArray.forEach((data) => {
48361
48354
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
48362
48355
  const rawContext = data.contextItems;
48363
- const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1174 => _1174.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1175 => _1175.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
48356
+ const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1175 => _1175.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1176 => _1176.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
48364
48357
  processedMessages.push({
48365
48358
  id: msg.id,
48366
48359
  role: "user",
@@ -48384,7 +48377,7 @@ function processHistoricalMessages(messages, options = {}) {
48384
48377
  });
48385
48378
  const nextMsg = messages[index + 1];
48386
48379
  const isLastMessage = index === messages.length - 1;
48387
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1176 => _1176.owner, 'optionalAccess', _1177 => _1177.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1178 => _1178.owner, 'optionalAccess', _1179 => _1179.type]) === OWNER_TYPE.ADMIN);
48380
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1177 => _1177.owner, 'optionalAccess', _1178 => _1178.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1179 => _1179.owner, 'optionalAccess', _1180 => _1180.type]) === OWNER_TYPE.ADMIN);
48388
48381
  if (isLastMessage || nextIsFromUser) {
48389
48382
  flushAssistantMessage();
48390
48383
  }
@@ -48494,7 +48487,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
48494
48487
  }
48495
48488
  }
48496
48489
  } else {
48497
- _optionalChain([escalatedApprovals, 'optionalAccess', _1180 => _1180.set, 'call', _1181 => _1181(data.approvalRequestId, {
48490
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1181 => _1181.set, 'call', _1182 => _1182(data.approvalRequestId, {
48498
48491
  command: data.command || "",
48499
48492
  explanation: data.explanation,
48500
48493
  approvalType,
@@ -48508,8 +48501,8 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
48508
48501
  const existingStatus = approvalStatuses[data.approvalRequestId];
48509
48502
  const status = existingStatus || (data.approved ? "approved" : "rejected");
48510
48503
  const resolvedByName = "resolvedByName" in data ? data.resolvedByName : void 0;
48511
- const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1182 => _1182.get, 'call', _1183 => _1183(data.approvalRequestId)]);
48512
- if (_optionalChain([escalatedData, 'optionalAccess', _1184 => _1184.toolCalls]) && escalatedData.toolCalls.length > 0) {
48504
+ const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1183 => _1183.get, 'call', _1184 => _1184(data.approvalRequestId)]);
48505
+ if (_optionalChain([escalatedData, 'optionalAccess', _1185 => _1185.toolCalls]) && escalatedData.toolCalls.length > 0) {
48513
48506
  if (batchApprovalsEnabled) {
48514
48507
  accumulator.addApprovalBatch(
48515
48508
  data.approvalRequestId,
@@ -48531,7 +48524,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
48531
48524
  );
48532
48525
  }
48533
48526
  }
48534
- _optionalChain([escalatedApprovals, 'optionalAccess', _1185 => _1185.delete, 'call', _1186 => _1186(data.approvalRequestId)]);
48527
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1186 => _1186.delete, 'call', _1187 => _1187(data.approvalRequestId)]);
48535
48528
  break;
48536
48529
  }
48537
48530
  if (escalatedData) {
@@ -48540,7 +48533,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
48540
48533
  explanation: escalatedData.explanation,
48541
48534
  approvalType: escalatedData.approvalType
48542
48535
  });
48543
- _optionalChain([escalatedApprovals, 'optionalAccess', _1187 => _1187.delete, 'call', _1188 => _1188(data.approvalRequestId)]);
48536
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1188 => _1188.delete, 'call', _1189 => _1189(data.approvalRequestId)]);
48544
48537
  }
48545
48538
  const before = accumulator.getSegments();
48546
48539
  const after = accumulator.updateApprovalStatus(data.approvalRequestId, status, resolvedByName);
@@ -48556,9 +48549,9 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
48556
48549
  case MESSAGE_TYPE.ERROR:
48557
48550
  if ("error" in data) {
48558
48551
  let message2;
48559
- if ("details" in data && _optionalChain([data, 'optionalAccess', _1189 => _1189.details])) {
48552
+ if ("details" in data && _optionalChain([data, 'optionalAccess', _1190 => _1190.details])) {
48560
48553
  try {
48561
- message2 = _optionalChain([JSON, 'access', _1190 => _1190.parse, 'call', _1191 => _1191(data.details), 'optionalAccess', _1192 => _1192.error, 'optionalAccess', _1193 => _1193.message]);
48554
+ message2 = _optionalChain([JSON, 'access', _1191 => _1191.parse, 'call', _1192 => _1192(data.details), 'optionalAccess', _1193 => _1193.error, 'optionalAccess', _1194 => _1194.message]);
48562
48555
  } catch (e58) {
48563
48556
  message2 = data.details;
48564
48557
  }
@@ -48641,14 +48634,14 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
48641
48634
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
48642
48635
  return;
48643
48636
  }
48644
- const isUserMessage = _optionalChain([msg, 'access', _1194 => _1194.owner, 'optionalAccess', _1195 => _1195.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1196 => _1196.owner, 'optionalAccess', _1197 => _1197.type]) === OWNER_TYPE.ADMIN;
48637
+ const isUserMessage = _optionalChain([msg, 'access', _1195 => _1195.owner, 'optionalAccess', _1196 => _1196.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1197 => _1197.owner, 'optionalAccess', _1198 => _1198.type]) === OWNER_TYPE.ADMIN;
48645
48638
  if (isUserMessage) {
48646
48639
  flushAssistantMessage();
48647
- const userAuthorType = _optionalChain([msg, 'access', _1198 => _1198.owner, 'optionalAccess', _1199 => _1199.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
48640
+ const userAuthorType = _optionalChain([msg, 'access', _1199 => _1199.owner, 'optionalAccess', _1200 => _1200.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
48648
48641
  messageDataArray.forEach((data) => {
48649
48642
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
48650
48643
  const rawContext = data.contextItems;
48651
- const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1200 => _1200.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1201 => _1201.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
48644
+ const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1201 => _1201.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1202 => _1202.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
48652
48645
  processedMessages.push({
48653
48646
  id: msg.id,
48654
48647
  role: "user",
@@ -48672,7 +48665,7 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
48672
48665
  });
48673
48666
  const nextMsg = messages[index + 1];
48674
48667
  const isLastMessage = index === messages.length - 1;
48675
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1202 => _1202.owner, 'optionalAccess', _1203 => _1203.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1204 => _1204.owner, 'optionalAccess', _1205 => _1205.type]) === OWNER_TYPE.ADMIN);
48668
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1203 => _1203.owner, 'optionalAccess', _1204 => _1204.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1205 => _1205.owner, 'optionalAccess', _1206 => _1206.type]) === OWNER_TYPE.ADMIN);
48676
48669
  if (isLastMessage || nextIsFromUser) {
48677
48670
  flushAssistantMessage();
48678
48671
  }
@@ -49008,7 +49001,7 @@ function useNatsChatAdapter(config, options = {}) {
49008
49001
  }, [active, fetchDialogs, loadDialogsPage]);
49009
49002
  const sendMessage = _react.useCallback.call(void 0,
49010
49003
  async (text, sendOptions) => {
49011
- const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1206 => _1206.hidden]), () => ( false));
49004
+ const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1207 => _1207.hidden]), () => ( false));
49012
49005
  setMessages((prev) => [
49013
49006
  ...prev,
49014
49007
  {
@@ -49172,11 +49165,11 @@ function useNatsChatAdapter(config, options = {}) {
49172
49165
  // Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
49173
49166
  // contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
49174
49167
  // matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
49175
- currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1207 => _1207.provider]), () => ( modelProvider)), () => ( null)),
49176
- currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1208 => _1208.modelLabel]), () => ( modelLabel)), () => ( null)),
49177
- currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1209 => _1209.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1210 => _1210.contextWindowMaxTokens]))), () => ( null)),
49178
- currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1211 => _1211.inputTokensSize]), () => ( null)),
49179
- currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1212 => _1212.outputTokensSize]), () => ( null)),
49168
+ currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1208 => _1208.provider]), () => ( modelProvider)), () => ( null)),
49169
+ currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1209 => _1209.modelLabel]), () => ( modelLabel)), () => ( null)),
49170
+ currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1210 => _1210.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1211 => _1211.contextWindowMaxTokens]))), () => ( null)),
49171
+ currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1212 => _1212.inputTokensSize]), () => ( null)),
49172
+ currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1213 => _1213.outputTokensSize]), () => ( null)),
49180
49173
  currentCacheHitRatePct: null,
49181
49174
  currentUsageBreakdown: null,
49182
49175
  // Dialog management
@@ -49424,7 +49417,7 @@ function extractIncompleteMessageState(lastMessage) {
49424
49417
  break;
49425
49418
  case "approval_batch": {
49426
49419
  const allDone = !!segment.data.executions && segment.data.toolCalls.every(
49427
- (c) => _optionalChain([segment, 'access', _1213 => _1213.data, 'access', _1214 => _1214.executions, 'optionalAccess', _1215 => _1215[c.toolExecutionRequestId], 'optionalAccess', _1216 => _1216.status]) === "done"
49420
+ (c) => _optionalChain([segment, 'access', _1214 => _1214.data, 'access', _1215 => _1215.executions, 'optionalAccess', _1216 => _1216[c.toolExecutionRequestId], 'optionalAccess', _1217 => _1217.status]) === "done"
49428
49421
  );
49429
49422
  if (segment.status !== "rejected" && !allDone) {
49430
49423
  hasIncompleteState = true;
@@ -49492,20 +49485,20 @@ function mergeHistoryWithRealtime(input) {
49492
49485
  const seqCoverageKnown = realtimeSeenStreamSeq > 0 && historyMaxStreamSeq > 0;
49493
49486
  const historyCoversRealtime = seqCoverageKnown ? historyMaxStreamSeq >= realtimeSeenStreamSeq : null;
49494
49487
  const trailing = processedHistory[processedHistory.length - 1];
49495
- const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1217 => _1217.role]) === "assistant" ? trailing : null;
49496
- const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1218 => _1218.content, 'access', _1219 => _1219.find, 'call', _1220 => _1220((s) => s.type === "approval_batch"), 'optionalAccess', _1221 => _1221.data, 'optionalAccess', _1222 => _1222.approvalRequestId]), () => ( null)) : null;
49488
+ const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1218 => _1218.role]) === "assistant" ? trailing : null;
49489
+ const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1219 => _1219.content, 'access', _1220 => _1220.find, 'call', _1221 => _1221((s) => s.type === "approval_batch"), 'optionalAccess', _1222 => _1222.data, 'optionalAccess', _1223 => _1223.approvalRequestId]), () => ( null)) : null;
49497
49490
  let processedToUse = processedHistory;
49498
49491
  const pinnedSyntheticIds = /* @__PURE__ */ new Set();
49499
49492
  const droppedSyntheticIds = /* @__PURE__ */ new Set();
49500
49493
  if (historyBatchId) {
49501
49494
  const batchTwins = existingMessages.filter(
49502
49495
  (m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some(
49503
- (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1223 => _1223.data, 'optionalAccess', _1224 => _1224.approvalRequestId]) === historyBatchId
49496
+ (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1224 => _1224.data, 'optionalAccess', _1225 => _1225.approvalRequestId]) === historyBatchId
49504
49497
  )
49505
49498
  );
49506
49499
  const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
49507
49500
  if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
49508
- const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1225 => _1225.content])) ? historyTrailingAssistant.content.length : 0;
49501
+ const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1226 => _1226.content])) ? historyTrailingAssistant.content.length : 0;
49509
49502
  const realtimeSize = existingWithSameBatch.content.length;
49510
49503
  if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
49511
49504
  processedToUse = processedHistory.slice(0, -1);
@@ -49521,16 +49514,16 @@ function mergeHistoryWithRealtime(input) {
49521
49514
  if (pinnedSyntheticIds.has(m.id)) return true;
49522
49515
  if (droppedSyntheticIds.has(m.id)) return false;
49523
49516
  if (processedIds.has(m.id)) return false;
49524
- if (_optionalChain([rawHistoryIds, 'optionalAccess', _1226 => _1226.has, 'call', _1227 => _1227(m.id)])) return false;
49517
+ if (_optionalChain([rawHistoryIds, 'optionalAccess', _1227 => _1227.has, 'call', _1228 => _1228(m.id)])) return false;
49525
49518
  if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
49526
- const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1228 => _1228.timestamp, 'optionalAccess', _1229 => _1229.getTime, 'call', _1230 => _1230()]), () => ( 0))) <= historyFetchedAt;
49519
+ const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1229 => _1229.timestamp, 'optionalAccess', _1230 => _1230.getTime, 'call', _1231 => _1231()]), () => ( 0))) <= historyFetchedAt;
49527
49520
  return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
49528
49521
  }
49529
49522
  if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
49530
49523
  if (m.role === "assistant" && trailingAssistantText && assistantAnswerText(m.content) === trailingAssistantText) {
49531
49524
  return false;
49532
49525
  }
49533
- const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1231 => _1231.timestamp, 'optionalAccess', _1232 => _1232.getTime, 'call', _1233 => _1233()]), () => ( 0))) <= historyFetchedAt;
49526
+ const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1232 => _1232.timestamp, 'optionalAccess', _1233 => _1233.getTime, 'call', _1234 => _1234()]), () => ( 0))) <= historyFetchedAt;
49534
49527
  if (covered) return false;
49535
49528
  }
49536
49529
  return true;
@@ -49750,7 +49743,7 @@ function useChatDialogManager({
49750
49743
  const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
49751
49744
  if (restoreTarget) {
49752
49745
  try {
49753
- await _optionalChain([unarchiveDialog, 'optionalCall', _1234 => _1234(restoreTarget.id)]);
49746
+ await _optionalChain([unarchiveDialog, 'optionalCall', _1235 => _1235(restoreTarget.id)]);
49754
49747
  } catch (err) {
49755
49748
  console.error("[useChatDialogManager] unarchive failed:", err);
49756
49749
  return;
@@ -50167,7 +50160,7 @@ function EmbeddableChatInner({
50167
50160
  }),
50168
50161
  [commandsUrl]
50169
50162
  );
50170
- const userName = _optionalChain([identityUser, 'optionalAccess', _1235 => _1235.firstName, 'optionalAccess', _1236 => _1236.trim, 'call', _1237 => _1237()]) || _optionalChain([identityUser, 'optionalAccess', _1238 => _1238.name, 'optionalAccess', _1239 => _1239.split, 'call', _1240 => _1240(" "), 'access', _1241 => _1241[0], 'optionalAccess', _1242 => _1242.trim, 'call', _1243 => _1243()]) || void 0;
50163
+ const userName = _optionalChain([identityUser, 'optionalAccess', _1236 => _1236.firstName, 'optionalAccess', _1237 => _1237.trim, 'call', _1238 => _1238()]) || _optionalChain([identityUser, 'optionalAccess', _1239 => _1239.name, 'optionalAccess', _1240 => _1240.split, 'call', _1241 => _1241(" "), 'access', _1242 => _1242[0], 'optionalAccess', _1243 => _1243.trim, 'call', _1244 => _1244()]) || void 0;
50171
50164
  const effectiveModes = _react.useMemo.call(void 0, () => {
50172
50165
  if (modes) return modes;
50173
50166
  const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
@@ -50176,19 +50169,19 @@ function EmbeddableChatInner({
50176
50169
  const mingoCaps = _react.useMemo.call(void 0, () => {
50177
50170
  if (mingoState) {
50178
50171
  return {
50179
- canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1244 => _1244.canRename]), () => ( false)),
50180
- canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1245 => _1245.canArchive]), () => ( false)),
50181
- fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1246 => _1246.fetchArchivedDialogs]),
50182
- unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1247 => _1247.unarchiveDialog]),
50183
- searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1248 => _1248.searchQuery]),
50184
- onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1249 => _1249.onSearchChange])
50172
+ canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1245 => _1245.canRename]), () => ( false)),
50173
+ canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1246 => _1246.canArchive]), () => ( false)),
50174
+ fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1247 => _1247.fetchArchivedDialogs]),
50175
+ unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1248 => _1248.unarchiveDialog]),
50176
+ searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1249 => _1249.searchQuery]),
50177
+ onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1250 => _1250.onSearchChange])
50185
50178
  };
50186
50179
  }
50187
50180
  return {
50188
- canRename: !!_optionalChain([effectiveModes, 'access', _1250 => _1250.mingo, 'optionalAccess', _1251 => _1251.renameDialog]),
50189
- canArchive: !!_optionalChain([effectiveModes, 'access', _1252 => _1252.mingo, 'optionalAccess', _1253 => _1253.archiveDialog]),
50190
- fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1254 => _1254.mingo, 'optionalAccess', _1255 => _1255.fetchArchivedDialogs]),
50191
- unarchiveDialog: _optionalChain([effectiveModes, 'access', _1256 => _1256.mingo, 'optionalAccess', _1257 => _1257.unarchiveDialog]),
50181
+ canRename: !!_optionalChain([effectiveModes, 'access', _1251 => _1251.mingo, 'optionalAccess', _1252 => _1252.renameDialog]),
50182
+ canArchive: !!_optionalChain([effectiveModes, 'access', _1253 => _1253.mingo, 'optionalAccess', _1254 => _1254.archiveDialog]),
50183
+ fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1255 => _1255.mingo, 'optionalAccess', _1256 => _1256.fetchArchivedDialogs]),
50184
+ unarchiveDialog: _optionalChain([effectiveModes, 'access', _1257 => _1257.mingo, 'optionalAccess', _1258 => _1258.unarchiveDialog]),
50192
50185
  searchQuery: void 0,
50193
50186
  onSearchChange: void 0
50194
50187
  };
@@ -50202,7 +50195,7 @@ function EmbeddableChatInner({
50202
50195
  if (controlledActiveMode === void 0) {
50203
50196
  setUncontrolledActiveMode(next);
50204
50197
  }
50205
- _optionalChain([onActiveModeChange, 'optionalCall', _1258 => _1258(next)]);
50198
+ _optionalChain([onActiveModeChange, 'optionalCall', _1259 => _1259(next)]);
50206
50199
  },
50207
50200
  [controlledActiveMode, onActiveModeChange]
50208
50201
  );
@@ -50224,7 +50217,7 @@ function EmbeddableChatInner({
50224
50217
  const effectiveQuickActions = emptyStateUrl ? emptyStateConfig.quickActions : [];
50225
50218
  const effectiveAssistantName = emptyStateConfig.name;
50226
50219
  const effectiveAssistantIcon = emptyStateConfig.icon;
50227
- const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1259 => _1259.title]) === "string" ? guideWelcome.title : null)));
50220
+ const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1260 => _1260.title]) === "string" ? guideWelcome.title : null)));
50228
50221
  const {
50229
50222
  messages: rawMessages,
50230
50223
  isLoading: chatLoading,
@@ -50264,7 +50257,7 @@ function EmbeddableChatInner({
50264
50257
  if (activeMode !== "guide" || guidePromptSentRef.current) return;
50265
50258
  guidePromptSentRef.current = true;
50266
50259
  void sendMessage(guidePendingPrompt);
50267
- _optionalChain([onGuidePromptConsumed, 'optionalCall', _1260 => _1260()]);
50260
+ _optionalChain([onGuidePromptConsumed, 'optionalCall', _1261 => _1261()]);
50268
50261
  }, [guidePendingPrompt, activeMode, sendMessage, onGuidePromptConsumed]);
50269
50262
  const {
50270
50263
  attachments: stagedAttachments,
@@ -50275,7 +50268,7 @@ function EmbeddableChatInner({
50275
50268
  clear: clearAttachments
50276
50269
  } = useChatAttachments();
50277
50270
  const { panelRef: galleryPanelRef, modal: galleryModal } = useChatAttachmentImageGallery();
50278
- const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1261 => _1261.maxItems]), () => ( 10));
50271
+ const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1262 => _1262.maxItems]), () => ( 10));
50279
50272
  const contextPickerForMode = activeMode === "mingo" ? contextPicker : void 0;
50280
50273
  const [contextItems, setContextItems] = _react.useState.call(void 0, []);
50281
50274
  const [contextPickerOpen, setContextPickerOpen] = _react.useState.call(void 0, false);
@@ -50292,10 +50285,10 @@ function EmbeddableChatInner({
50292
50285
  }, [activeDialogId, activeMode]);
50293
50286
  const mentionMarkerByType = _react.useMemo.call(void 0, () => {
50294
50287
  const m = /* @__PURE__ */ new Map();
50295
- for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1262 => _1262.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
50288
+ for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1263 => _1263.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
50296
50289
  return m;
50297
- }, [_optionalChain([contextPicker, 'optionalAccess', _1263 => _1263.entityTypes])]);
50298
- const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1264 => _1264.entityTypes]);
50290
+ }, [_optionalChain([contextPicker, 'optionalAccess', _1264 => _1264.entityTypes])]);
50291
+ const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1265 => _1265.entityTypes]);
50299
50292
  const resolveContextIcon = _react.useMemo.call(void 0, () => {
50300
50293
  const byType = /* @__PURE__ */ new Map();
50301
50294
  for (const t of _nullishCoalesce(contextEntityTypes, () => ( []))) byType.set(t.type, t.icon);
@@ -50307,7 +50300,7 @@ function EmbeddableChatInner({
50307
50300
  if (mentionActiveRef.current) {
50308
50301
  if (contextItems.some((p) => `${p.type}:${p.id}` === key)) return;
50309
50302
  if (contextItems.length >= contextMaxItems) return;
50310
- _optionalChain([chatInputRef, 'access', _1265 => _1265.current, 'optionalAccess', _1266 => _1266.commitMention, 'call', _1267 => _1267(mentionTokenOf(key, mentionMarkerByType), {
50303
+ _optionalChain([chatInputRef, 'access', _1266 => _1266.current, 'optionalAccess', _1267 => _1267.commitMention, 'call', _1268 => _1268(mentionTokenOf(key, mentionMarkerByType), {
50311
50304
  label: item.label,
50312
50305
  icon: resolveContextIcon(item)
50313
50306
  })]);
@@ -50329,9 +50322,9 @@ function EmbeddableChatInner({
50329
50322
  setContextItems((prev) => prev.filter((p) => `${p.type}:${p.id}` !== key));
50330
50323
  if (mentionKeysRef.current.has(key)) {
50331
50324
  mentionKeysRef.current.delete(key);
50332
- const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1268 => _1268.current, 'optionalAccess', _1269 => _1269.getValue, 'call', _1270 => _1270()]), () => ( ""));
50325
+ const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1269 => _1269.current, 'optionalAccess', _1270 => _1270.getValue, 'call', _1271 => _1271()]), () => ( ""));
50333
50326
  const next = cur.replace(`@${mentionTokenOf(key, mentionMarkerByType)}`, "").replace(/\s{2,}/g, " ").trimStart();
50334
- _optionalChain([chatInputRef, 'access', _1271 => _1271.current, 'optionalAccess', _1272 => _1272.setValue, 'call', _1273 => _1273(next)]);
50327
+ _optionalChain([chatInputRef, 'access', _1272 => _1272.current, 'optionalAccess', _1273 => _1273.setValue, 'call', _1274 => _1274(next)]);
50335
50328
  }
50336
50329
  }, [mentionMarkerByType]);
50337
50330
  const handleContextValueChange = _react.useCallback.call(void 0, (value) => {
@@ -50348,7 +50341,7 @@ function EmbeddableChatInner({
50348
50341
  }, []);
50349
50342
  const closeContextPicker = _react.useCallback.call(void 0, () => {
50350
50343
  if (mentionActiveRef.current) {
50351
- _optionalChain([chatInputRef, 'access', _1274 => _1274.current, 'optionalAccess', _1275 => _1275.removeMentionTrigger, 'call', _1276 => _1276()]);
50344
+ _optionalChain([chatInputRef, 'access', _1275 => _1275.current, 'optionalAccess', _1276 => _1276.removeMentionTrigger, 'call', _1277 => _1277()]);
50352
50345
  }
50353
50346
  setContextPickerOpen(false);
50354
50347
  setMentionQuery(null);
@@ -50382,8 +50375,8 @@ function EmbeddableChatInner({
50382
50375
  []
50383
50376
  );
50384
50377
  const timestampCacheRef = _react.useRef.call(void 0, /* @__PURE__ */ new Map());
50385
- const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1277 => _1277.firstName]), _optionalChain([identityUser, 'optionalAccess', _1278 => _1278.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1279 => _1279.name, 'optionalAccess', _1280 => _1280.trim, 'call', _1281 => _1281()]) || void 0 : void 0;
50386
- const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1282 => _1282.avatarUrl, 'optionalAccess', _1283 => _1283.trim, 'call', _1284 => _1284()]) || void 0 : void 0;
50378
+ const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1278 => _1278.firstName]), _optionalChain([identityUser, 'optionalAccess', _1279 => _1279.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1280 => _1280.name, 'optionalAccess', _1281 => _1281.trim, 'call', _1282 => _1282()]) || void 0 : void 0;
50379
+ const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1283 => _1283.avatarUrl, 'optionalAccess', _1284 => _1284.trim, 'call', _1285 => _1285()]) || void 0 : void 0;
50387
50380
  const messages = _react.useMemo.call(void 0, () => {
50388
50381
  const cache = timestampCacheRef.current;
50389
50382
  const seenIds = /* @__PURE__ */ new Set();
@@ -50552,9 +50545,9 @@ function EmbeddableChatInner({
50552
50545
  const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
50553
50546
  const lastSources = _react.useMemo.call(void 0, () => {
50554
50547
  if (chatLoading) return void 0;
50555
- const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1285 => _1285.sources]);
50548
+ const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1286 => _1286.sources]);
50556
50549
  if (!sources || sources.length === 0) return void 0;
50557
- const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1286 => _1286.content]) || "";
50550
+ const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1287 => _1287.content]) || "";
50558
50551
  const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
50559
50552
  (m) => parseInt(m[1], 10)
50560
50553
  );
@@ -50601,7 +50594,7 @@ function EmbeddableChatInner({
50601
50594
  ChatPanelHeader,
50602
50595
  {
50603
50596
  showBack: hasConversation || guideCanReturnToMingo,
50604
- title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1287 => _1287.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats",
50597
+ title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1288 => _1288.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats",
50605
50598
  backAriaLabel: hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo",
50606
50599
  isArchivedView: isViewingArchived,
50607
50600
  onBack: hasConversation ? handleBack : () => handleActiveModeChange("mingo"),
@@ -50722,9 +50715,9 @@ function EmbeddableChatInner({
50722
50715
  subtitle: _nullishCoalesce(effectiveGreeting, () => ( void 0)),
50723
50716
  subtitleLoading: emptyStateLoading,
50724
50717
  ...guideWelcome,
50725
- title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1288 => _1288.title]))),
50726
- icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1289 => _1289.icon]))),
50727
- quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1290 => _1290.quickActions]), () => ( guideSuggestedActions)),
50718
+ title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1289 => _1289.title]))),
50719
+ icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1290 => _1290.icon]))),
50720
+ quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1291 => _1291.quickActions]), () => ( guideSuggestedActions)),
50728
50721
  onQuickAction: (action) => {
50729
50722
  setQuickActionPreview(null);
50730
50723
  handleSend(_nullishCoalesce(action.prompt, () => ( action.label)));
@@ -51835,4 +51828,4 @@ function EmbeddableChatInner({
51835
51828
 
51836
51829
 
51837
51830
  exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; exports.Autocomplete = Autocomplete; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.CardHorizontal = CardHorizontal; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.HoneypotField = HoneypotField; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.formatDate = formatDate; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatFileSize = formatFileSize; exports.formatLargeNumber = formatLargeNumber; exports.formatAbbreviatedNumber = formatAbbreviatedNumber; exports.getFirstLastInitials = getFirstLastInitials; exports.nameInitials = nameInitials; exports.formatDurationMMSS = formatDurationMMSS; exports.formatDurationCompact = formatDurationCompact; exports.formatTimeWithTimezone = formatTimeWithTimezone; exports.formatDurationFromRange = formatDurationFromRange; exports.formatDateUTC = formatDateUTC; exports.formatEntryMonthUTC = formatEntryMonthUTC; exports.formatLegalDate = formatLegalDate; exports.formatCurrency = formatCurrency; exports.formatPercent = formatPercent; exports.formatWholeDollars = formatWholeDollars; exports.formatCompactMetric = formatCompactMetric; exports.getTrendColors = getTrendColors; exports.formatDateRange = formatDateRange; exports.formatDateTimeAt = formatDateTimeAt; exports.formatDurationFromMs = formatDurationFromMs; exports.formatDuration = formatDuration; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.SquareAvatar = SquareAvatar; exports.AssigneeDropdown = AssigneeDropdown; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.getReadableTextColor = getReadableTextColor; exports.HEX_PATTERN = HEX_PATTERN; exports.hexToRgb = hexToRgb; exports.rgbToHex = rgbToHex; exports.deriveHoverColor = deriveHoverColor; exports.deriveActiveColor = deriveActiveColor; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.InfoSection = InfoSection; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataMessage = NoDataMessage; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.Switch = Switch; exports.TagSelectDropdown = TagSelectDropdown; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.ImageGalleryModal = ImageGalleryModal; exports.Modal = Modal2; exports.ModalContent = ModalContent2; exports.ModalHeader = ModalHeader2; exports.ModalTitle = ModalTitle2; exports.ModalFooter = ModalFooter2; exports.Modal2 = Modal; exports.ModalContent2 = ModalContent; exports.ModalHeader2 = ModalHeader; exports.ModalTitle2 = ModalTitle; exports.ModalFooter2 = ModalFooter; exports.Separator = Separator2; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.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.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.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.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.CommandBlock = CommandBlock; exports.ApprovalStatusTag = ApprovalStatusTag; exports.ApprovalBatchMessage = ApprovalBatchMessage; 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.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.RenameChatModal = RenameChatModal; exports.ArchiveChatModal = ArchiveChatModal; exports.UnarchiveChatModal = UnarchiveChatModal; exports.ChatDialogModals = ChatDialogModals; exports.ChatHeaderIconButton = ChatHeaderIconButton; exports.COMPACT_HEADER_BUTTON = COMPACT_HEADER_BUTTON; exports.ChatPanelHeader = ChatPanelHeader; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX = CHAT_ATTACHMENT_VIEW_URL_PREFIX; exports.CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM = CHAT_ATTACHMENT_VIEW_TOKEN_QUERY_PARAM; exports.ANTHROPIC_SUPPORTED_IMAGE_MIME = ANTHROPIC_SUPPORTED_IMAGE_MIME; exports.buildChatAttachmentViewUrl = buildChatAttachmentViewUrl; exports.escapeMarkdownInline = escapeMarkdownInline; exports.formatChatAttachmentMarkdownForBubble = formatChatAttachmentMarkdownForBubble; exports.CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED = CHAT_ATTACHMENT_VIEW_URL_PREFIX_REGEX_ESCAPED; exports.CHAT_ATTACHMENT_MARKDOWN_PATTERN = CHAT_ATTACHMENT_MARKDOWN_PATTERN; exports.stripChatAttachmentMarkdown = stripChatAttachmentMarkdown; exports.CHAT_ATTACHMENT_MIME_TYPES = CHAT_ATTACHMENT_MIME_TYPES; exports.CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER = CHAT_ATTACHMENT_CONCURRENT_UPLOADS_PER_USER; exports.ChatAttachmentAddButton = ChatAttachmentAddButton; exports.ChatAttachmentChipStrip = ChatAttachmentChipStrip; exports.HoverCard = HoverCard; exports.HoverCardTrigger = HoverCardTrigger; exports.HoverCardContent = HoverCardContent; exports.ModelDisplay = ModelDisplay; exports.ModelDisplaySkeleton = ModelDisplaySkeleton; exports.ChatComposer = ChatComposer; exports.ChatArchivePage = ChatArchivePage; exports.DialogListItem = DialogListItem; exports.ChatSidebar = ChatSidebar; exports.isCrossOriginUrl = isCrossOriginUrl; exports.decideNewTab = decideNewTab; exports.computeIsNewTab = computeIsNewTab; exports.newTabAnchorAttrs = newTabAnchorAttrs; exports.buildAnchorProps = buildAnchorProps; exports.NEW_TAB_FEATURES = NEW_TAB_FEATURES; exports.isModifierClick = isModifierClick; exports.stripSameOriginToPath = stripSameOriginToPath; exports.resolveExternalNavigation = resolveExternalNavigation; exports.executeNavigation = executeNavigation; exports.executeNavigationImperative = executeNavigationImperative; exports.handleChatNavClick = handleChatNavClick; exports.NavLinkAnchorViaRuntime = NavLinkAnchorViaRuntime; exports.SourceActionButton = SourceActionButton; exports.EMPTY_AUTHOR_PLACEHOLDER = EMPTY_AUTHOR_PLACEHOLDER; exports.EntityMetadataValueCell = EntityMetadataValueCell; exports.EntityMetadataAuthorCell = EntityMetadataAuthorCell; exports.EntityAuthorCard = EntityAuthorCard; exports.BlogImagePlaceholder = BlogImagePlaceholder; exports.FlamingoLogo = FlamingoLogo2; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.getProxiedImageUrl2 = getProxiedImageUrl2; exports.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.SECTION_HEADING_CLASS = SECTION_HEADING_CLASS; exports.PageHeading = PageHeading; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_DISPLAY_GRID_CLASS = RATIO_DISPLAY_GRID_CLASS; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.VideoBitesDisplay = VideoBitesDisplay; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.ChatVideoEntityCard = ChatVideoEntityCard; exports.ProductReleaseCard = ProductReleaseCard; exports.ProductReleaseCardSkeleton = ProductReleaseCardSkeleton; exports.formatReleaseDate = formatReleaseDate; exports.formatDateShort = formatDateShort; exports.formatDateSlashUTC = formatDateSlashUTC; exports.resolveReleaseCover = resolveReleaseCover; exports.releaseTypeToBadgeColor = releaseTypeToBadgeColor; exports.defaultBuildProductReleaseCardProps = defaultBuildProductReleaseCardProps; exports.buildProductReleaseCardProps = buildProductReleaseCardProps; exports.useEntityCardLink = useEntityCardLink; exports.COMPACT_CARD_OUTER = COMPACT_CARD_OUTER; exports.COMPACT_CARD_OUTER_STATIC = COMPACT_CARD_OUTER_STATIC; exports.COMPACT_CARD_SKELETON_OUTER = COMPACT_CARD_SKELETON_OUTER; exports.COMPACT_CARD_IMAGE_SLOT = COMPACT_CARD_IMAGE_SLOT; exports.COMPACT_CARD_SKELETON_IMAGE_SLOT = COMPACT_CARD_SKELETON_IMAGE_SLOT; exports.COMPACT_CARD_ICON_SLOT = COMPACT_CARD_ICON_SLOT; exports.COMPACT_CARD_TEXT_COL = COMPACT_CARD_TEXT_COL; exports.COMPACT_CARD_TITLE_ROW = COMPACT_CARD_TITLE_ROW; exports.COMPACT_CARD_META_ROW_BOX = COMPACT_CARD_META_ROW_BOX; exports.COMPACT_CARD_TITLE = COMPACT_CARD_TITLE; exports.COMPACT_CARD_SUBTITLE = COMPACT_CARD_SUBTITLE; exports.COMPACT_CARD_SUMMARY = COMPACT_CARD_SUMMARY; exports.COMPACT_CARD_META_ROW = COMPACT_CARD_META_ROW; exports.COMPACT_CARD_ROW_FILLER = COMPACT_CARD_ROW_FILLER; exports.safeHref = safeHref; exports.BlogCardSkeleton = BlogCardSkeleton; exports.BlogCard = BlogCard; exports.CaseStudyCardSkeleton = CaseStudyCardSkeleton; exports.CaseStudyCard = CaseStudyCard; exports.CustomerInterviewCardSkeleton = CustomerInterviewCardSkeleton; exports.CustomerInterviewCard = CustomerInterviewCard; exports.formatInvestorUpdatePeriod = formatInvestorUpdatePeriod; exports.InvestorUpdateCardSkeleton = InvestorUpdateCardSkeleton; exports.InvestorUpdateCard = InvestorUpdateCard; exports.OnboardingGuideCardSkeleton = OnboardingGuideCardSkeleton; exports.OnboardingGuideCard = OnboardingGuideCard; exports.RoadmapVoteButton = RoadmapVoteButton; exports.getStatusColorScheme = getStatusColorScheme; exports.CUSTOM_ITEM_ID = CUSTOM_ITEM_ID; exports.getTaskTypeLabel = getTaskTypeLabel; exports.TaskTypeIcon = TaskTypeIcon; exports.RoadmapCardSkeleton = RoadmapCardSkeleton; exports.RoadmapCard = RoadmapCard; exports.GitHubActivityCard = GitHubActivityCard; exports.GitHubActivityCardSkeleton = GitHubActivityCardSkeleton; exports.SlackMessageCard = SlackMessageCard; exports.SlackMessageCardSkeleton = SlackMessageCardSkeleton; exports.HubspotTicketCard = HubspotTicketCard; exports.HubspotTicketCardSkeleton = HubspotTicketCardSkeleton; exports.DataRoomDocCard = DataRoomDocCard; exports.DataRoomDocCardSkeleton = DataRoomDocCardSkeleton; exports.ProgramCardSkeleton = ProgramCardSkeleton; exports.ProgramCard = ProgramCard; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.extractItems = extractItems; exports.extractItemId = extractItemId; exports.useChatCardItem = useChatCardItem; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.ChatCardLoader = ChatCardLoader; exports.renderChatInlineEntityCard = renderChatInlineEntityCard; exports.CHAT_TYPE = CHAT_TYPE; exports.OWNER_TYPE = OWNER_TYPE; exports.MESSAGE_ROLE = MESSAGE_ROLE; exports.ASSISTANT_TYPE = ASSISTANT_TYPE; exports.AUTHOR_TYPE = AUTHOR_TYPE; exports.APPROVAL_STATUS = APPROVAL_STATUS; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.buildChatRefKey = buildChatRefKey; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; exports.useChunkCatchup = useChunkCatchup; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.parseChunkToAction = parseChunkToAction; exports.isControlChunk = isControlChunk; exports.isErrorChunk = isErrorChunk; exports.isMetadataChunk = isMetadataChunk; exports.extractTextFromChunk = extractTextFromChunk; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.useRealtimeChunkProcessor = useRealtimeChunkProcessor; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.fetchEmptyStateConfig = fetchEmptyStateConfig; exports.useEmptyStateConfig = useEmptyStateConfig; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useSSE = useSSE; exports.useChat = useChat; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.flattenAssistantContent = flattenAssistantContent; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.useSseChatAdapter = useSseChatAdapter; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.useNatsChatAdapter = useNatsChatAdapter; exports.useUnifiedChat = useUnifiedChat; exports.extractIncompleteMessageState = extractIncompleteMessageState; exports.SYNTHETIC_REALTIME_ID_PREFIXES = SYNTHETIC_REALTIME_ID_PREFIXES; exports.flattenMessagePagesChronological = flattenMessagePagesChronological; exports.maxPersistedStreamSeq = maxPersistedStreamSeq; exports.mergeHistoryWithRealtime = mergeHistoryWithRealtime; exports.computeHistoryPrepend = computeHistoryPrepend; exports.CHIP_ACTION_BUTTON_CLASS = CHIP_ACTION_BUTTON_CLASS; exports.chatChipClass = chatChipClass; exports.clickupTaskUrl = clickupTaskUrl; exports.EmbeddableChat = EmbeddableChat; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.EntityImage = EntityImage; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.serializeJsonLd = serializeJsonLd; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.BRAND_MARK_SVGS = BRAND_MARK_SVGS; exports.brandMarkDataUri = brandMarkDataUri; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.devSectionAnchorId = devSectionAnchorId; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.DESIGN_PALETTE = DESIGN_PALETTE; exports.getContrastRatio = getContrastRatio; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.formatTicketRelativeTime = formatTicketRelativeTime; exports.formatTicketFullTimestamp = formatTicketFullTimestamp; exports.formatRelativeTime = formatRelativeTime; exports.formatAbsoluteDate = formatAbsoluteDate; exports.formatDateTime = formatDateTime; exports.getDetailedTimeDifference = getDetailedTimeDifference; exports.isToday = isToday; exports.isWithinMinutes = isWithinMinutes; exports.createUTCTimestamp = createUTCTimestamp; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.AVAILABLE_SVG_ICONS = AVAILABLE_SVG_ICONS; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.TASK_TYPE_LABELS = TASK_TYPE_LABELS; exports.TASK_TYPE_TEXT_COLORS = TASK_TYPE_TEXT_COLORS; exports.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.TMCG_SOCIAL_PLATFORMS = TMCG_SOCIAL_PLATFORMS; exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS; exports.DELIVERY_TASK_TYPE_OPTIONS = DELIVERY_TASK_TYPE_OPTIONS; exports.TICKET_STATUS_OPTIONS = TICKET_STATUS_OPTIONS; exports.OPENFRAME_DEV_SECTIONS = OPENFRAME_DEV_SECTIONS; exports.canonicalContentRefType = canonicalContentRefType; exports.buildListUrl = buildListUrl; exports.faqSectionSlug = faqSectionSlug; exports.faqItemAnchor = faqItemAnchor; exports.parseFaqHash = parseFaqHash; exports.CONTENT_REF_GROUPS = CONTENT_REF_GROUPS; exports.getContentRefLabel = getContentRefLabel; exports.getContentRefLabelOrTitleCase = getContentRefLabelOrTitleCase; exports.orderContentRefTypes = orderContentRefTypes; exports.buildSuggestionUrl = buildSuggestionUrl; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.stripInlineMarkdown = stripInlineMarkdown; exports.markdownToPlainText = markdownToPlainText; exports.extractSections = extractSections; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.FloatingTooltip = FloatingTooltip; exports.DashboardInfoCard = DashboardInfoCard; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.TruncateText = TruncateText; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.TabSelector = TabSelector; exports.TitleContentBlock = TitleContentBlock; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.Pagination = Pagination; exports.PaginationContent = PaginationContent; exports.PaginationItem = PaginationItem; exports.PaginationLink = PaginationLink; exports.PaginationEllipsis = PaginationEllipsis; exports.PaginationPrevious = PaginationPrevious; exports.PaginationNext = PaginationNext; exports.init_pagination = init_pagination; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.TableEmptyState = TableEmptyState; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY; exports.THEME_ATTRIBUTE = THEME_ATTRIBUTE; exports.DEFAULT_THEME = DEFAULT_THEME; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme; exports.useThemeToggle = useThemeToggle; exports.ArrayEntryManager = ArrayEntryManager; exports.BackToLoginLink = BackToLoginLink; exports.PROVIDER_META = PROVIDER_META; exports.SsoProviderButtons = SsoProviderButtons; exports.AcceptInvitationForm = AcceptInvitationForm; exports.AuthBenefitsPanel = AuthBenefitsPanel; exports.OpenFrameWordmark = OpenFrameWordmark; exports.PoweredByFlamingo = PoweredByFlamingo; exports.AuthShell = AuthShell; exports.TermsAgreementLabel = TermsAgreementLabel; exports.CreateOrganizationForm = CreateOrganizationForm; exports.InviteLinkInvalidModal = InviteLinkInvalidModal; exports.LoginForm = LoginForm; exports.PasswordInput = PasswordInput; 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.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.getCaptionsUrl = getCaptionsUrl; exports.VideoSourceSelector = VideoSourceSelector; exports.ConfidenceBadge = ConfidenceBadge; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.TicketStatusConfigList = TicketStatusConfigList; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.DataTableHeader = DataTableHeader; exports.DataTableEmpty = DataTableEmpty; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.TICKET_STATUS_COLOR_PRESETS = TICKET_STATUS_COLOR_PRESETS; exports.CUSTOM_PRESET_KEY = CUSTOM_PRESET_KEY; exports.DEFAULT_CUSTOM_STATUS_COLOR = DEFAULT_CUSTOM_STATUS_COLOR; exports.ColorPresetSelect = ColorPresetSelect; exports.ColorPickerInput = ColorPickerInput; exports.TicketStatusConfigRow = TicketStatusConfigRow; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.FilterPillRow = FilterPillRow; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.MobileNavPanel = MobileNavPanel; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NavigationSidebar = NavigationSidebar; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderMingoButton = HeaderMingoButton; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayout = AppLayout; exports.AppLayoutDrawerRoot = AppLayoutDrawerRoot; exports.AppLayoutDrawerTrigger = AppLayoutDrawerTrigger; exports.AppLayoutDrawerClose = AppLayoutDrawerClose; exports.AppLayoutDrawerContent = AppLayoutDrawerContent; exports.AppLayoutDrawerHeader = AppLayoutDrawerHeader; exports.AppLayoutDrawerTitle = AppLayoutDrawerTitle; exports.AppLayoutDrawerDescription = AppLayoutDrawerDescription; exports.AppLayoutDrawerBody = AppLayoutDrawerBody; exports.AppLayoutDrawerFooter = AppLayoutDrawerFooter; exports.MultiLevelNavigation = MultiLevelNavigation; exports.MobileNavigationDropdown = MobileNavigationDropdown; exports.SoftwareInfo = SoftwareInfo; exports.SoftwareSourceBadge = SoftwareSourceBadge; exports.CveLink = CveLink; exports.ToolBadge = ToolBadge; exports.ShellTypeBadge = ShellTypeBadge; exports.ScriptInfoSection = ScriptInfoSection; exports.ScriptArguments = ScriptArguments; exports.OnboardingStepCard = OnboardingStepCard; exports.OnboardingWalkthrough = OnboardingWalkthrough; exports.LOG_SEVERITY_COLORS = LOG_SEVERITY_COLORS; exports.LOG_SEVERITY_LABELS = LOG_SEVERITY_LABELS; exports.LogSeverityDot = LogSeverityDot; exports.LogsList = LogsList; exports.assets = assets;
51838
- //# sourceMappingURL=chunk-DKN425XR.cjs.map
51831
+ //# sourceMappingURL=chunk-VZHEFPPH.cjs.map