@flamingo-stack/openframe-frontend-core 0.0.434 → 0.0.435

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/dist/{chunk-AOWQU2KB.cjs → chunk-2QJNX32P.cjs} +5 -5
  2. package/dist/{chunk-AOWQU2KB.cjs.map → chunk-2QJNX32P.cjs.map} +1 -1
  3. package/dist/{chunk-AHXDYVAE.js → chunk-2WXQFYNC.js} +2 -2
  4. package/dist/{chunk-7E2DFRIK.js → chunk-32BSKGEI.js} +2 -2
  5. package/dist/{chunk-473VV632.cjs → chunk-32V2VHPE.cjs} +26 -26
  6. package/dist/{chunk-473VV632.cjs.map → chunk-32V2VHPE.cjs.map} +1 -1
  7. package/dist/{chunk-ZAJPJ2JD.js → chunk-3OPSNUPJ.js} +2 -2
  8. package/dist/{chunk-7R3PASHE.cjs → chunk-3V5UQ5TU.cjs} +518 -541
  9. package/dist/chunk-3V5UQ5TU.cjs.map +1 -0
  10. package/dist/{chunk-C476N6PJ.cjs → chunk-AUSUEKXY.cjs} +31 -31
  11. package/dist/{chunk-C476N6PJ.cjs.map → chunk-AUSUEKXY.cjs.map} +1 -1
  12. package/dist/{chunk-NBWZW22E.js → chunk-BMEA5NPX.js} +4 -4
  13. package/dist/{chunk-KFXA4ZG3.js → chunk-DVYA3BDU.js} +4 -4
  14. package/dist/{chunk-BSTVI23E.cjs → chunk-E6NRV33G.cjs} +11 -11
  15. package/dist/{chunk-BSTVI23E.cjs.map → chunk-E6NRV33G.cjs.map} +1 -1
  16. package/dist/{chunk-ZB57GGZX.js → chunk-E77Z2P3K.js} +4 -4
  17. package/dist/{chunk-6CFMFNIB.js → chunk-FSOKLOXF.js} +2 -2
  18. package/dist/{chunk-PAOY2AIG.js → chunk-GQHXJ37C.js} +2 -2
  19. package/dist/{chunk-F2VLV4PD.cjs → chunk-IWYRSGJU.cjs} +9 -9
  20. package/dist/{chunk-F2VLV4PD.cjs.map → chunk-IWYRSGJU.cjs.map} +1 -1
  21. package/dist/{chunk-FEOHPHJ5.cjs → chunk-KVXB3FOB.cjs} +62 -62
  22. package/dist/{chunk-FEOHPHJ5.cjs.map → chunk-KVXB3FOB.cjs.map} +1 -1
  23. package/dist/{chunk-XWEECWZD.js → chunk-LYK6D7GU.js} +2 -2
  24. package/dist/{chunk-A6KQMTJV.js → chunk-MWIYAVFT.js} +4 -4
  25. package/dist/{chunk-RZRQI55M.js → chunk-NFU37EP6.js} +2 -2
  26. package/dist/{chunk-P6VXTG5N.cjs → chunk-NGBO5Z5O.cjs} +15 -15
  27. package/dist/{chunk-P6VXTG5N.cjs.map → chunk-NGBO5Z5O.cjs.map} +1 -1
  28. package/dist/{chunk-SXVO2PXE.cjs → chunk-NRIJNBRG.cjs} +26 -26
  29. package/dist/{chunk-SXVO2PXE.cjs.map → chunk-NRIJNBRG.cjs.map} +1 -1
  30. package/dist/{chunk-WPMUNLCC.cjs → chunk-P5EN67AU.cjs} +59 -59
  31. package/dist/{chunk-WPMUNLCC.cjs.map → chunk-P5EN67AU.cjs.map} +1 -1
  32. package/dist/{chunk-B77THL7Y.cjs → chunk-PXTDEKAY.cjs} +7 -7
  33. package/dist/{chunk-B77THL7Y.cjs.map → chunk-PXTDEKAY.cjs.map} +1 -1
  34. package/dist/{chunk-CV3JHPLQ.cjs → chunk-WXNE2BF4.cjs} +37 -37
  35. package/dist/{chunk-CV3JHPLQ.cjs.map → chunk-WXNE2BF4.cjs.map} +1 -1
  36. package/dist/{chunk-6PTETC3Z.js → chunk-ZH2OEMQJ.js} +134 -157
  37. package/dist/{chunk-6PTETC3Z.js.map → chunk-ZH2OEMQJ.js.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/create-organization-form.d.ts +8 -4
  51. package/dist/components/features/auth/create-organization-form.d.ts.map +1 -1
  52. package/dist/components/features/auth/login-form.d.ts +18 -14
  53. package/dist/components/features/auth/login-form.d.ts.map +1 -1
  54. package/dist/components/features/auth/sso-providers.d.ts +7 -1
  55. package/dist/components/features/auth/sso-providers.d.ts.map +1 -1
  56. package/dist/components/features/index.cjs +2 -2
  57. package/dist/components/features/index.js +1 -1
  58. package/dist/components/help-center-pages/index.cjs +20 -20
  59. package/dist/components/help-center-pages/index.js +11 -11
  60. package/dist/components/index.cjs +128 -128
  61. package/dist/components/index.js +9 -9
  62. package/dist/components/navigation/index.cjs +2 -2
  63. package/dist/components/navigation/index.js +1 -1
  64. package/dist/components/onboarding-guides/index.cjs +5 -5
  65. package/dist/components/onboarding-guides/index.js +4 -4
  66. package/dist/components/related-content/index.cjs +3 -3
  67. package/dist/components/related-content/index.js +2 -2
  68. package/dist/components/tickets/index.cjs +5 -5
  69. package/dist/components/tickets/index.js +4 -4
  70. package/dist/components/ui/index.cjs +2 -2
  71. package/dist/components/ui/index.js +1 -1
  72. package/dist/index.cjs +2 -2
  73. package/dist/index.js +1 -1
  74. package/package.json +1 -1
  75. package/src/components/features/auth/create-organization-form.tsx +37 -28
  76. package/src/components/features/auth/login-form.tsx +29 -60
  77. package/src/components/features/auth/sso-providers.tsx +8 -1
  78. package/dist/chunk-7R3PASHE.cjs.map +0 -1
  79. /package/dist/{chunk-AHXDYVAE.js.map → chunk-2WXQFYNC.js.map} +0 -0
  80. /package/dist/{chunk-7E2DFRIK.js.map → chunk-32BSKGEI.js.map} +0 -0
  81. /package/dist/{chunk-ZAJPJ2JD.js.map → chunk-3OPSNUPJ.js.map} +0 -0
  82. /package/dist/{chunk-NBWZW22E.js.map → chunk-BMEA5NPX.js.map} +0 -0
  83. /package/dist/{chunk-KFXA4ZG3.js.map → chunk-DVYA3BDU.js.map} +0 -0
  84. /package/dist/{chunk-ZB57GGZX.js.map → chunk-E77Z2P3K.js.map} +0 -0
  85. /package/dist/{chunk-6CFMFNIB.js.map → chunk-FSOKLOXF.js.map} +0 -0
  86. /package/dist/{chunk-PAOY2AIG.js.map → chunk-GQHXJ37C.js.map} +0 -0
  87. /package/dist/{chunk-XWEECWZD.js.map → chunk-LYK6D7GU.js.map} +0 -0
  88. /package/dist/{chunk-A6KQMTJV.js.map → chunk-MWIYAVFT.js.map} +0 -0
  89. /package/dist/{chunk-RZRQI55M.js.map → chunk-NFU37EP6.js.map} +0 -0
@@ -26014,7 +26014,8 @@ function SsoProviderButtons({
26014
26014
  providers,
26015
26015
  onSsoClick,
26016
26016
  actionLabel = "Continue with",
26017
- disabled = false
26017
+ disabled = false,
26018
+ enabledProviders
26018
26019
  }) {
26019
26020
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-l)]", children: providers.map((provider) => {
26020
26021
  const meta = PROVIDER_META[provider];
@@ -26025,7 +26026,7 @@ function SsoProviderButtons({
26025
26026
  type: "button",
26026
26027
  variant: "outline",
26027
26028
  fullWidth: true,
26028
- disabled,
26029
+ disabled: disabled || (enabledProviders ? !enabledProviders.includes(provider) : false),
26029
26030
  className: "disabled:bg-ods-bg",
26030
26031
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon2, { className: "h-5 w-5" }),
26031
26032
  onClick: () => _optionalChain([onSsoClick, 'optionalCall', _517 => _517(provider)]),
@@ -26252,11 +26253,13 @@ function CreateOrganizationForm({
26252
26253
  domainSlot,
26253
26254
  ssoProviders,
26254
26255
  onSsoClick,
26256
+ ssoDisabled = false,
26255
26257
  ssoActionLabel = "Continue with",
26258
+ dividerLabel = "or continue with",
26256
26259
  className
26257
26260
  }) {
26258
- const isSsoMode = !!ssoProviders && ssoProviders.length > 0;
26259
- const fieldsDisabled = disabled || loading || isSsoMode;
26261
+ const hasSso = !!ssoProviders && ssoProviders.length > 0;
26262
+ const fieldsDisabled = disabled || loading;
26260
26263
  const emailErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _522 => _522.email]), email);
26261
26264
  const orgNameErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _523 => _523.organizationName]), organizationName);
26262
26265
  const domainErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _524 => _524.domain]), domain);
@@ -26335,27 +26338,31 @@ function CreateOrganizationForm({
26335
26338
  onCheckedChange: onAgreedToTermsChange
26336
26339
  }
26337
26340
  ),
26338
- isSsoMode ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26339
- SsoProviderButtons,
26341
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26342
+ _chunkIMK6RUECcjs.Button,
26340
26343
  {
26341
- providers: ssoProviders,
26342
- onSsoClick,
26343
- actionLabel: ssoActionLabel,
26344
- disabled: disabled || loading
26344
+ type: "button",
26345
+ variant: "accent",
26346
+ fullWidth: true,
26347
+ loading,
26348
+ disabled: disabled || submitDisabled,
26349
+ onClick: onSubmit,
26350
+ children: submitLabel
26345
26351
  }
26346
- ) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-l)]", children: [
26347
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" }),
26352
+ ),
26353
+ hasSso && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
26354
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-s)]", children: [
26355
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-px flex-1 bg-ods-border" }),
26356
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-h6 text-ods-text-secondary", children: dividerLabel }),
26357
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-px flex-1 bg-ods-border" })
26358
+ ] }),
26348
26359
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26349
- _chunkIMK6RUECcjs.Button,
26360
+ SsoProviderButtons,
26350
26361
  {
26351
- type: "button",
26352
- variant: "accent",
26353
- fullWidth: true,
26354
- className: "md:flex-1",
26355
- loading,
26356
- disabled: disabled || submitDisabled,
26357
- onClick: onSubmit,
26358
- children: submitLabel
26362
+ providers: ssoProviders,
26363
+ onSsoClick,
26364
+ actionLabel: ssoActionLabel,
26365
+ disabled: disabled || loading || ssoDisabled
26359
26366
  }
26360
26367
  )
26361
26368
  ] })
@@ -26391,31 +26398,28 @@ function InviteLinkInvalidModal({
26391
26398
 
26392
26399
  // src/components/features/auth/login-form.tsx
26393
26400
  _chunkFIG2RKZFcjs.init_cn.call(void 0, );
26394
- _chunkIMK6RUECcjs.init_button2.call(void 0, );
26395
26401
 
26396
26402
  function LoginForm({
26397
26403
  email,
26398
26404
  onEmailChange,
26399
26405
  onSubmit,
26400
- onForgotPassword,
26401
26406
  emailPlaceholder = "username@mail.com",
26402
- submitLabel = "Continue",
26403
- forgotPasswordLabel = "Forgot Password?",
26404
- submitDisabled = false,
26405
26407
  loading = false,
26406
26408
  disabled = false,
26407
26409
  errors,
26410
+ emailStatus,
26408
26411
  ssoProviders,
26409
26412
  onSsoClick,
26413
+ ssoDisabled = false,
26414
+ ssoEnabledProviders,
26410
26415
  ssoActionLabel = "Continue with",
26411
26416
  className
26412
26417
  }) {
26413
- const isSsoMode = !!ssoProviders && ssoProviders.length > 0;
26414
- const fieldDisabled = disabled || loading || isSsoMode;
26418
+ const fieldDisabled = disabled || loading;
26415
26419
  const emailErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _530 => _530.email]), email);
26416
26420
  const handleKeyDown = (event) => {
26417
26421
  if (event.key === "Enter" && !fieldDisabled) {
26418
- onSubmit();
26422
+ _optionalChain([onSubmit, 'optionalCall', _531 => _531()]);
26419
26423
  }
26420
26424
  };
26421
26425
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -26437,51 +26441,24 @@ function LoginForm({
26437
26441
  label: "Email",
26438
26442
  placeholder: emailPlaceholder,
26439
26443
  value: email,
26440
- error: emailErr.error,
26444
+ error: _nullishCoalesce(emailErr.error, () => ( _optionalChain([emailStatus, 'optionalAccess', _532 => _532.message]))),
26445
+ errorVariant: emailErr.error ? "error" : _optionalChain([emailStatus, 'optionalAccess', _533 => _533.variant]),
26441
26446
  disabled: fieldDisabled,
26442
26447
  onBlur: emailErr.onBlur,
26443
26448
  onChange: (event) => onEmailChange(event.target.value),
26444
26449
  onKeyDown: handleKeyDown
26445
26450
  }
26446
26451
  ),
26447
- isSsoMode ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26452
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26448
26453
  SsoProviderButtons,
26449
26454
  {
26450
26455
  providers: ssoProviders,
26451
26456
  onSsoClick,
26452
26457
  actionLabel: ssoActionLabel,
26453
- disabled: disabled || loading
26458
+ disabled: disabled || loading || ssoDisabled,
26459
+ enabledProviders: ssoEnabledProviders
26454
26460
  }
26455
- ) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-l)]", children: [
26456
- onForgotPassword ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26457
- _chunkIMK6RUECcjs.Button,
26458
- {
26459
- type: "button",
26460
- variant: "transparent",
26461
- fullWidth: true,
26462
- className: "flex-1",
26463
- disabled: disabled || loading,
26464
- onClick: onForgotPassword,
26465
- children: forgotPasswordLabel
26466
- }
26467
- ) : (
26468
- // Spacer keeps the button on the right half, matching the design
26469
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden flex-1 md:block" })
26470
- ),
26471
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
26472
- _chunkIMK6RUECcjs.Button,
26473
- {
26474
- type: "button",
26475
- variant: "accent",
26476
- fullWidth: true,
26477
- className: onForgotPassword ? "flex-1" : "md:flex-1",
26478
- loading,
26479
- disabled: disabled || submitDisabled,
26480
- onClick: onSubmit,
26481
- children: submitLabel
26482
- }
26483
- )
26484
- ] })
26461
+ )
26485
26462
  ]
26486
26463
  }
26487
26464
  );
@@ -26513,8 +26490,8 @@ function OpenFrameSsoLoginForm({
26513
26490
  className
26514
26491
  }) {
26515
26492
  const fieldsDisabled = disabled || loading;
26516
- const emailErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _531 => _531.email]), email);
26517
- const passwordErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _532 => _532.password]), password);
26493
+ const emailErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _534 => _534.email]), email);
26494
+ const passwordErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _535 => _535.password]), password);
26518
26495
  const handleKeyDown = (event) => {
26519
26496
  if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
26520
26497
  onSubmit();
@@ -26621,11 +26598,11 @@ function OpenFrameSsoSignUpForm({
26621
26598
  className
26622
26599
  }) {
26623
26600
  const fieldsDisabled = disabled || loading;
26624
- const emailErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _533 => _533.email]), email);
26625
- const firstNameErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _534 => _534.firstName]), firstName);
26626
- const lastNameErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _535 => _535.lastName]), lastName);
26627
- const passwordErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _536 => _536.password]), password);
26628
- const confirmErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _537 => _537.confirmPassword]), confirmPassword);
26601
+ const emailErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _536 => _536.email]), email);
26602
+ const firstNameErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _537 => _537.firstName]), firstName);
26603
+ const lastNameErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _538 => _538.lastName]), lastName);
26604
+ const passwordErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _539 => _539.password]), password);
26605
+ const confirmErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _540 => _540.confirmPassword]), confirmPassword);
26629
26606
  const handleKeyDown = (event) => {
26630
26607
  if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
26631
26608
  onSubmit();
@@ -26768,8 +26745,8 @@ function PasswordResetForm({
26768
26745
  className
26769
26746
  }) {
26770
26747
  const fieldsDisabled = disabled || loading;
26771
- const passwordErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _538 => _538.password]), password);
26772
- const confirmErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _539 => _539.confirmPassword]), confirmPassword);
26748
+ const passwordErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _541 => _541.password]), password);
26749
+ const confirmErr = _chunkN2TJ3HAMcjs.useDeferredError.call(void 0, _optionalChain([errors, 'optionalAccess', _542 => _542.confirmPassword]), confirmPassword);
26773
26750
  const handleKeyDown = (event) => {
26774
26751
  if (event.key === "Enter" && !fieldsDisabled && !submitDisabled) {
26775
26752
  onSubmit();
@@ -27472,10 +27449,10 @@ var getContentDimensions = (config) => {
27472
27449
  const envMobileHeight = process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_MOBILE_HEIGHT) : null;
27473
27450
  const envDesktopWidth = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_WIDTH) : null;
27474
27451
  const envDesktopHeight = process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT ? parseInt(process.env.NEXT_PUBLIC_FIGMA_DESKTOP_HEIGHT) : null;
27475
- const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess', _540 => _540.mobileContentDimensions, 'optionalAccess', _541 => _541.width]))), () => ( defaultMobile.width));
27476
- const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess', _542 => _542.mobileContentDimensions, 'optionalAccess', _543 => _543.height]))), () => ( defaultMobile.height));
27477
- const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess', _544 => _544.desktopContentDimensions, 'optionalAccess', _545 => _545.width]))), () => ( defaultDesktop.width));
27478
- const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess', _546 => _546.desktopContentDimensions, 'optionalAccess', _547 => _547.height]))), () => ( defaultDesktop.height));
27452
+ const mobileWidth = _nullishCoalesce(_nullishCoalesce(envMobileWidth, () => ( _optionalChain([config, 'optionalAccess', _543 => _543.mobileContentDimensions, 'optionalAccess', _544 => _544.width]))), () => ( defaultMobile.width));
27453
+ const mobileHeight = _nullishCoalesce(_nullishCoalesce(envMobileHeight, () => ( _optionalChain([config, 'optionalAccess', _545 => _545.mobileContentDimensions, 'optionalAccess', _546 => _546.height]))), () => ( defaultMobile.height));
27454
+ const desktopWidth = _nullishCoalesce(_nullishCoalesce(envDesktopWidth, () => ( _optionalChain([config, 'optionalAccess', _547 => _547.desktopContentDimensions, 'optionalAccess', _548 => _548.width]))), () => ( defaultDesktop.width));
27455
+ const desktopHeight = _nullishCoalesce(_nullishCoalesce(envDesktopHeight, () => ( _optionalChain([config, 'optionalAccess', _549 => _549.desktopContentDimensions, 'optionalAccess', _550 => _550.height]))), () => ( defaultDesktop.height));
27479
27456
  return {
27480
27457
  mobile: { width: mobileWidth, height: mobileHeight },
27481
27458
  desktop: { width: desktopWidth, height: desktopHeight }
@@ -27609,7 +27586,7 @@ function renderUnifiedUI(state, handlers, config, iframeRef) {
27609
27586
  const contentDimensions = getContentDimensions(config);
27610
27587
  const mobileHeight = contentDimensions.mobile.height;
27611
27588
  const calculatedHeight = Math.max(mobileHeight + 100, 400);
27612
- return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess', _548 => _548.innerHeight]) * 0.85 || 650)}px`;
27589
+ return `${Math.min(calculatedHeight, _optionalChain([window, 'optionalAccess', _551 => _551.innerHeight]) * 0.85 || 650)}px`;
27613
27590
  })(),
27614
27591
  minHeight: viewMode === "DESKTOP" ? "auto" : (() => {
27615
27592
  const contentDimensions = getContentDimensions(config);
@@ -27714,7 +27691,7 @@ var FigmaPrototypeViewer = ({
27714
27691
  const [isInitialized, setIsInitialized] = _react.useState.call(void 0, false);
27715
27692
  const [currentNodeId, setCurrentNodeId] = _react.useState.call(void 0, null);
27716
27693
  const [internalActiveSection, setInternalActiveSection] = _react.useState.call(void 0,
27717
- config.defaultSectionId || _optionalChain([config, 'access', _549 => _549.sections, 'access', _550 => _550[0], 'optionalAccess', _551 => _551.id]) || ""
27694
+ config.defaultSectionId || _optionalChain([config, 'access', _552 => _552.sections, 'access', _553 => _553[0], 'optionalAccess', _554 => _554.id]) || ""
27718
27695
  );
27719
27696
  const activeSection = externalActiveSection || internalActiveSection;
27720
27697
  const [isNavigating, setIsNavigating] = _react.useState.call(void 0, false);
@@ -27804,7 +27781,7 @@ var FigmaPrototypeViewer = ({
27804
27781
  const handleMessage = (event) => {
27805
27782
  if (event.origin !== "https://www.figma.com") return;
27806
27783
  const validEvents = ["INITIAL_LOAD", "NEW_STATE", "PRESENTED_NODE_CHANGED"];
27807
- if (_optionalChain([event, 'access', _552 => _552.data, 'optionalAccess', _553 => _553.type]) && validEvents.includes(event.data.type)) {
27784
+ if (_optionalChain([event, 'access', _555 => _555.data, 'optionalAccess', _556 => _556.type]) && validEvents.includes(event.data.type)) {
27808
27785
  const figmaEvent = event.data;
27809
27786
  console.log("[Figma Event]", figmaEvent.type, viewMode);
27810
27787
  switch (figmaEvent.type) {
@@ -27814,19 +27791,19 @@ var FigmaPrototypeViewer = ({
27814
27791
  setIframeState("READY");
27815
27792
  break;
27816
27793
  case "PRESENTED_NODE_CHANGED":
27817
- if (_optionalChain([figmaEvent, 'access', _554 => _554.data, 'optionalAccess', _555 => _555.presentedNodeId])) {
27794
+ if (_optionalChain([figmaEvent, 'access', _557 => _557.data, 'optionalAccess', _558 => _558.presentedNodeId])) {
27818
27795
  setCurrentNodeId(figmaEvent.data.presentedNodeId);
27819
27796
  if (!isNavigating) {
27820
27797
  const matchingSection = config.sections.find((s) => {
27821
- const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access', _556 => _556.data, 'optionalAccess', _557 => _557.presentedNodeId]) || s.startingNodeId.replace(":", "-") === _optionalChain([figmaEvent, 'access', _558 => _558.data, 'optionalAccess', _559 => _559.presentedNodeId]);
27822
- const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access', _560 => _560.data, 'optionalAccess', _561 => _561.presentedNodeId]) || _optionalChain([s, 'access', _562 => _562.mobileStartingNodeId, 'optionalAccess', _563 => _563.replace, 'call', _564 => _564(":", "-")]) === _optionalChain([figmaEvent, 'access', _565 => _565.data, 'optionalAccess', _566 => _566.presentedNodeId]);
27798
+ const desktopMatch = s.startingNodeId === _optionalChain([figmaEvent, 'access', _559 => _559.data, 'optionalAccess', _560 => _560.presentedNodeId]) || s.startingNodeId.replace(":", "-") === _optionalChain([figmaEvent, 'access', _561 => _561.data, 'optionalAccess', _562 => _562.presentedNodeId]);
27799
+ const mobileMatch = s.mobileStartingNodeId === _optionalChain([figmaEvent, 'access', _563 => _563.data, 'optionalAccess', _564 => _564.presentedNodeId]) || _optionalChain([s, 'access', _565 => _565.mobileStartingNodeId, 'optionalAccess', _566 => _566.replace, 'call', _567 => _567(":", "-")]) === _optionalChain([figmaEvent, 'access', _568 => _568.data, 'optionalAccess', _569 => _569.presentedNodeId]);
27823
27800
  return desktopMatch || mobileMatch;
27824
27801
  });
27825
27802
  if (matchingSection && matchingSection.id !== activeSection) {
27826
27803
  if (!externalActiveSection) {
27827
27804
  setInternalActiveSection(matchingSection.id);
27828
27805
  }
27829
- _optionalChain([config, 'access', _567 => _567.onSectionChange, 'optionalCall', _568 => _568(matchingSection.id)]);
27806
+ _optionalChain([config, 'access', _570 => _570.onSectionChange, 'optionalCall', _571 => _571(matchingSection.id)]);
27830
27807
  }
27831
27808
  }
27832
27809
  }
@@ -27839,7 +27816,7 @@ var FigmaPrototypeViewer = ({
27839
27816
  }, [config.sections, activeSection, isNavigating, externalActiveSection, config.onSectionChange, viewMode]);
27840
27817
  const navigateToSection = _react.useCallback.call(void 0, (sectionId) => {
27841
27818
  const section = config.sections.find((s) => s.id === sectionId);
27842
- if (!section || !_optionalChain([iframeRef, 'access', _569 => _569.current, 'optionalAccess', _570 => _570.contentWindow]) || !isInitialized) {
27819
+ if (!section || !_optionalChain([iframeRef, 'access', _572 => _572.current, 'optionalAccess', _573 => _573.contentWindow]) || !isInitialized) {
27843
27820
  return;
27844
27821
  }
27845
27822
  setIsNavigating(true);
@@ -27847,7 +27824,7 @@ var FigmaPrototypeViewer = ({
27847
27824
  if (!externalActiveSection) {
27848
27825
  setInternalActiveSection(sectionId);
27849
27826
  }
27850
- _optionalChain([config, 'access', _571 => _571.onSectionChange, 'optionalCall', _572 => _572(sectionId)]);
27827
+ _optionalChain([config, 'access', _574 => _574.onSectionChange, 'optionalCall', _575 => _575(sectionId)]);
27851
27828
  const command = {
27852
27829
  type: "NAVIGATE_TO_FRAME_AND_CLOSE_OVERLAYS",
27853
27830
  data: { nodeId }
@@ -28167,7 +28144,7 @@ var FiltersDropdown = ({
28167
28144
  defaults[section.id] = section.defaultSelected || [];
28168
28145
  });
28169
28146
  setSelectedFilters(defaults);
28170
- _optionalChain([onReset, 'optionalCall', _573 => _573()]);
28147
+ _optionalChain([onReset, 'optionalCall', _576 => _576()]);
28171
28148
  setIsOpen(false);
28172
28149
  };
28173
28150
  const handleApply = () => {
@@ -28460,7 +28437,7 @@ function MediaGalleryManager({
28460
28437
  const [deletingIndex, setDeletingIndex] = _react.useState.call(void 0, null);
28461
28438
  const [draggedIndex, setDraggedIndex] = _react.useState.call(void 0, null);
28462
28439
  const handleFileSelect = _react.useCallback.call(void 0, async (event) => {
28463
- const file = _optionalChain([event, 'access', _574 => _574.target, 'access', _575 => _575.files, 'optionalAccess', _576 => _576[0]]);
28440
+ const file = _optionalChain([event, 'access', _577 => _577.target, 'access', _578 => _578.files, 'optionalAccess', _579 => _579[0]]);
28464
28441
  if (!file) return;
28465
28442
  let mediaType;
28466
28443
  if (file.type.startsWith("image/")) {
@@ -28575,7 +28552,7 @@ function MediaGalleryManager({
28575
28552
  {
28576
28553
  type: "button",
28577
28554
  variant: "outline",
28578
- onClick: () => _optionalChain([fileInputRef, 'access', _577 => _577.current, 'optionalAccess', _578 => _578.click, 'call', _579 => _579()]),
28555
+ onClick: () => _optionalChain([fileInputRef, 'access', _580 => _580.current, 'optionalAccess', _581 => _581.click, 'call', _582 => _582()]),
28579
28556
  disabled: isUploading,
28580
28557
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
28581
28558
  className: "font-['DM_Sans'] text-[16px] font-bold",
@@ -29239,7 +29216,7 @@ function ReleaseMediaManager({
29239
29216
  const fileInputRef = _react.useRef.call(void 0, null);
29240
29217
  const [uploadingIndex, setUploadingIndex] = _react.useState.call(void 0, null);
29241
29218
  const handleFileSelect = async (event) => {
29242
- const file = _optionalChain([event, 'access', _580 => _580.target, 'access', _581 => _581.files, 'optionalAccess', _582 => _582[0]]);
29219
+ const file = _optionalChain([event, 'access', _583 => _583.target, 'access', _584 => _584.files, 'optionalAccess', _585 => _585[0]]);
29243
29220
  if (!file) return;
29244
29221
  let mediaType;
29245
29222
  if (file.type.startsWith("image/")) {
@@ -29319,7 +29296,7 @@ function ReleaseMediaManager({
29319
29296
  {
29320
29297
  type: "button",
29321
29298
  variant: "outline",
29322
- onClick: () => _optionalChain([fileInputRef, 'access', _583 => _583.current, 'optionalAccess', _584 => _584.click, 'call', _585 => _585()]),
29299
+ onClick: () => _optionalChain([fileInputRef, 'access', _586 => _586.current, 'optionalAccess', _587 => _587.click, 'call', _588 => _588()]),
29323
29300
  disabled: uploadingIndex !== null,
29324
29301
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Plus, { className: "h-4 w-4" }),
29325
29302
  className: "font-['DM_Sans'] text-[16px] font-bold",
@@ -29536,7 +29513,7 @@ function SEOEditorPreview({
29536
29513
  const displayImage = hasOgImage || hasFeaturedImage;
29537
29514
  const handleImageUpload = async (event) => {
29538
29515
  if (!onOgImageUpload) return;
29539
- const file = _optionalChain([event, 'access', _586 => _586.target, 'access', _587 => _587.files, 'optionalAccess', _588 => _588[0]]);
29516
+ const file = _optionalChain([event, 'access', _589 => _589.target, 'access', _590 => _590.files, 'optionalAccess', _591 => _591[0]]);
29540
29517
  if (!file) return;
29541
29518
  setIsUploading(true);
29542
29519
  try {
@@ -29696,7 +29673,7 @@ function SEOEditorPreview({
29696
29673
  type: "button",
29697
29674
  variant: "outline",
29698
29675
  size: "icon",
29699
- onClick: () => _optionalChain([fileInputRef, 'optionalAccess', _589 => _589.click, 'call', _590 => _590()]),
29676
+ onClick: () => _optionalChain([fileInputRef, 'optionalAccess', _592 => _592.click, 'call', _593 => _593()]),
29700
29677
  disabled: disabled || isUploading,
29701
29678
  className: "bg-white text-black hover:bg-gray-100 rounded-full opacity-0 group-hover:opacity-100",
29702
29679
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-4 w-4" })
@@ -29719,7 +29696,7 @@ function SEOEditorPreview({
29719
29696
  "div",
29720
29697
  {
29721
29698
  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",
29722
- onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess', _591 => _591.click, 'call', _592 => _592()]),
29699
+ onClick: () => onOgImageUpload && _optionalChain([fileInputRef, 'optionalAccess', _594 => _594.click, 'call', _595 => _595()]),
29723
29700
  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: [
29724
29701
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.Upload, { className: "h-8 w-8 text-ods-text-secondary mb-2" }),
29725
29702
  /* @__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" })
@@ -29806,7 +29783,7 @@ function SocialLinksManager({
29806
29783
  className = ""
29807
29784
  }) {
29808
29785
  const addLink = () => {
29809
- const firstPlatform = _optionalChain([platforms, 'access', _593 => _593[0], 'optionalAccess', _594 => _594.name]) || "website";
29786
+ const firstPlatform = _optionalChain([platforms, 'access', _596 => _596[0], 'optionalAccess', _597 => _597.name]) || "website";
29810
29787
  onChange([...links, { platform: firstPlatform, url: "" }]);
29811
29788
  };
29812
29789
  const removeLink = (index) => {
@@ -29818,7 +29795,7 @@ function SocialLinksManager({
29818
29795
  onChange(updated);
29819
29796
  };
29820
29797
  const getIcon = (link, platform) => {
29821
- const iconKey = _optionalChain([platform, 'optionalAccess', _595 => _595.icon_name]) || link.platform;
29798
+ const iconKey = _optionalChain([platform, 'optionalAccess', _598 => _598.icon_name]) || link.platform;
29822
29799
  const IconComponent = iconMap[iconKey];
29823
29800
  return IconComponent ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IconComponent, { className: "w-5 h-5 text-ods-text-secondary" }) : null;
29824
29801
  };
@@ -29843,7 +29820,7 @@ function SocialLinksManager({
29843
29820
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
29844
29821
  _chunkIMK6RUECcjs.Input,
29845
29822
  {
29846
- placeholder: _optionalChain([platform, 'optionalAccess', _596 => _596.placeholder]) || "Profile URL",
29823
+ placeholder: _optionalChain([platform, 'optionalAccess', _599 => _599.placeholder]) || "Profile URL",
29847
29824
  value: link.url,
29848
29825
  onChange: (e) => updateLink(index, "url", e.target.value),
29849
29826
  onKeyDown: (e) => {
@@ -30287,7 +30264,7 @@ function VideoSourceSelector({
30287
30264
  input.accept = "video/*";
30288
30265
  input.onchange = async (e) => {
30289
30266
  const target = e.target;
30290
- const file = _optionalChain([target, 'access', _597 => _597.files, 'optionalAccess', _598 => _598[0]]);
30267
+ const file = _optionalChain([target, 'access', _600 => _600.files, 'optionalAccess', _601 => _601[0]]);
30291
30268
  if (!file) return;
30292
30269
  setIsUploading(true);
30293
30270
  setUploadProgress(0);
@@ -30636,7 +30613,7 @@ function TranscriptSummaryEditor({
30636
30613
  {
30637
30614
  id: "subtitles",
30638
30615
  value: subtitles || "",
30639
- onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _599 => _599(e.target.value)]),
30616
+ onChange: (e) => _optionalChain([onSubtitlesChange, 'optionalCall', _602 => _602(e.target.value)]),
30640
30617
  placeholder: subtitlesPlaceholder,
30641
30618
  disabled: disabled || !onSubtitlesChange,
30642
30619
  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",
@@ -30789,7 +30766,7 @@ var AIEnrichSection = ({
30789
30766
  }) => {
30790
30767
  const hasResults = status === "success" || status === "error";
30791
30768
  const shouldDisable = disabled || !canEnrich;
30792
- const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _600 => _600.filter, 'call', _601 => _601((f) => !f.isFilled)]) || [];
30769
+ const unfilledFields = _optionalChain([requiredFields, 'optionalAccess', _603 => _603.filter, 'call', _604 => _604((f) => !f.isFilled)]) || [];
30793
30770
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
30794
30771
  "div",
30795
30772
  {
@@ -30827,7 +30804,7 @@ var AIEnrichSection = ({
30827
30804
  {
30828
30805
  id: "ai-enrich-custom-instructions",
30829
30806
  value: _nullishCoalesce(customInstructions, () => ( "")),
30830
- onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _602 => _602(e.target.value)]),
30807
+ onChange: (e) => _optionalChain([onCustomInstructionsChange, 'optionalCall', _605 => _605(e.target.value)]),
30831
30808
  placeholder: customInstructionsPlaceholder,
30832
30809
  disabled: loading,
30833
30810
  maxLength: customInstructionsMaxLength,
@@ -30956,7 +30933,7 @@ function HighlightVideoSection({
30956
30933
  input.accept = "video/*";
30957
30934
  input.onchange = async (e) => {
30958
30935
  const target = e.target;
30959
- const file = _optionalChain([target, 'access', _603 => _603.files, 'optionalAccess', _604 => _604[0]]);
30936
+ const file = _optionalChain([target, 'access', _606 => _606.files, 'optionalAccess', _607 => _607[0]]);
30960
30937
  if (!file) return;
30961
30938
  setUploadError(null);
30962
30939
  try {
@@ -31451,7 +31428,7 @@ function HighlightVideoPreview({
31451
31428
  input.accept = "video/*";
31452
31429
  input.onchange = async (e) => {
31453
31430
  const target = e.target;
31454
- const file = _optionalChain([target, 'access', _605 => _605.files, 'optionalAccess', _606 => _606[0]]);
31431
+ const file = _optionalChain([target, 'access', _608 => _608.files, 'optionalAccess', _609 => _609[0]]);
31455
31432
  if (!file) return;
31456
31433
  await onUpload(file);
31457
31434
  };
@@ -31635,7 +31612,7 @@ function HighlightVideoCombinedSection({
31635
31612
  input.accept = "video/*";
31636
31613
  input.onchange = async (e) => {
31637
31614
  const target = e.target;
31638
- const file = _optionalChain([target, 'access', _607 => _607.files, 'optionalAccess', _608 => _608[0]]);
31615
+ const file = _optionalChain([target, 'access', _610 => _610.files, 'optionalAccess', _611 => _611[0]]);
31639
31616
  if (!file) return;
31640
31617
  await onUpload(file);
31641
31618
  };
@@ -31929,7 +31906,7 @@ var getApprovalLevelLabel = (level, editMode = false) => {
31929
31906
  return editMode ? "Set Global Permission" : "";
31930
31907
  }
31931
31908
  const option = approvalLevelOptions.find((opt) => opt.value === level);
31932
- return _optionalChain([option, 'optionalAccess', _609 => _609.label]) || level;
31909
+ return _optionalChain([option, 'optionalAccess', _612 => _612.label]) || level;
31933
31910
  };
31934
31911
  var PolicyRow = ({ policy, categoryId, editMode, onPermissionChange }) => {
31935
31912
  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: [
@@ -32143,12 +32120,12 @@ function PhoneInput({
32143
32120
  const runValidation = _react.useCallback.call(void 0, (phone) => {
32144
32121
  if (!phone || digitCount(phone) === 0) {
32145
32122
  setIsInvalid(false);
32146
- _optionalChain([onValidationChange, 'optionalCall', _610 => _610(false)]);
32123
+ _optionalChain([onValidationChange, 'optionalCall', _613 => _613(false)]);
32147
32124
  return;
32148
32125
  }
32149
32126
  const invalid = !validatePhoneNumber(phone, countryCode);
32150
32127
  setIsInvalid(invalid);
32151
- _optionalChain([onValidationChange, 'optionalCall', _611 => _611(invalid)]);
32128
+ _optionalChain([onValidationChange, 'optionalCall', _614 => _614(invalid)]);
32152
32129
  }, [countryCode, digitCount, onValidationChange]);
32153
32130
  const debouncedValidation = _react.useCallback.call(void 0, (phone) => {
32154
32131
  if (debounceRef.current) clearTimeout(debounceRef.current);
@@ -32197,7 +32174,7 @@ function PhoneInput({
32197
32174
  debouncedValidation(val);
32198
32175
  } else if (digitCount(val) === 0) {
32199
32176
  setIsInvalid(false);
32200
- _optionalChain([onValidationChange, 'optionalCall', _612 => _612(false)]);
32177
+ _optionalChain([onValidationChange, 'optionalCall', _615 => _615(false)]);
32201
32178
  }
32202
32179
  }
32203
32180
  },
@@ -32538,19 +32515,19 @@ function NotificationsProvider({
32538
32515
  }, []);
32539
32516
  const markRead = React99.useCallback((id) => {
32540
32517
  dispatch({ type: "markRead", id });
32541
- void _optionalChain([actionsRef, 'access', _613 => _613.current, 'optionalAccess', _614 => _614.onMarkRead, 'optionalCall', _615 => _615(id)]);
32518
+ void _optionalChain([actionsRef, 'access', _616 => _616.current, 'optionalAccess', _617 => _617.onMarkRead, 'optionalCall', _618 => _618(id)]);
32542
32519
  }, []);
32543
32520
  const markAllRead = React99.useCallback(() => {
32544
32521
  dispatch({ type: "markAllRead" });
32545
- void _optionalChain([actionsRef, 'access', _616 => _616.current, 'optionalAccess', _617 => _617.onMarkAllRead, 'optionalCall', _618 => _618()]);
32522
+ void _optionalChain([actionsRef, 'access', _619 => _619.current, 'optionalAccess', _620 => _620.onMarkAllRead, 'optionalCall', _621 => _621()]);
32546
32523
  }, []);
32547
32524
  const markSettled = React99.useCallback((id) => {
32548
32525
  dispatch({ type: "markSettled", id });
32549
- void _optionalChain([actionsRef, 'access', _619 => _619.current, 'optionalAccess', _620 => _620.onMarkSettled, 'optionalCall', _621 => _621(id)]);
32526
+ void _optionalChain([actionsRef, 'access', _622 => _622.current, 'optionalAccess', _623 => _623.onMarkSettled, 'optionalCall', _624 => _624(id)]);
32550
32527
  }, []);
32551
32528
  const remove = React99.useCallback((id) => {
32552
32529
  dispatch({ type: "remove", id });
32553
- void _optionalChain([actionsRef, 'access', _622 => _622.current, 'optionalAccess', _623 => _623.onRemove, 'optionalCall', _624 => _624(id)]);
32530
+ void _optionalChain([actionsRef, 'access', _625 => _625.current, 'optionalAccess', _626 => _626.onRemove, 'optionalCall', _627 => _627(id)]);
32554
32531
  }, []);
32555
32532
  const clear = React99.useCallback(() => dispatch({ type: "clear" }), []);
32556
32533
  const open = React99.useCallback(() => setIsOpen(true), []);
@@ -32559,14 +32536,14 @@ function NotificationsProvider({
32559
32536
  const setShowPopups = React99.useCallback(
32560
32537
  (value2) => {
32561
32538
  setShowPopupsState(value2);
32562
- _optionalChain([onShowPopupsChange, 'optionalCall', _625 => _625(value2)]);
32539
+ _optionalChain([onShowPopupsChange, 'optionalCall', _628 => _628(value2)]);
32563
32540
  },
32564
32541
  [onShowPopupsChange]
32565
32542
  );
32566
32543
  const setShowDesktopPopups = React99.useCallback(
32567
32544
  (value2) => {
32568
32545
  setShowDesktopPopupsState(value2);
32569
- _optionalChain([onShowDesktopPopupsChange, 'optionalCall', _626 => _626(value2)]);
32546
+ _optionalChain([onShowDesktopPopupsChange, 'optionalCall', _629 => _629(value2)]);
32570
32547
  },
32571
32548
  [onShowDesktopPopupsChange]
32572
32549
  );
@@ -32678,7 +32655,7 @@ var AppLayoutDrawerRoot = ({
32678
32655
  const handleOpenChange = React100.useCallback(
32679
32656
  (next) => {
32680
32657
  if (!isControlled) setInternalOpen(next);
32681
- _optionalChain([onOpenChange, 'optionalCall', _627 => _627(next)]);
32658
+ _optionalChain([onOpenChange, 'optionalCall', _630 => _630(next)]);
32682
32659
  },
32683
32660
  [isControlled, onOpenChange]
32684
32661
  );
@@ -32696,11 +32673,11 @@ var AppLayoutDrawerRoot = ({
32696
32673
  };
32697
32674
  }
32698
32675
  React100.useEffect(() => {
32699
- if (open) _optionalChain([coordination, 'optionalAccess', _628 => _628.notifyDrawerDidOpen, 'call', _629 => _629(_nullishCoalesce(selfHandleRef.current, () => ( void 0)))]);
32676
+ if (open) _optionalChain([coordination, 'optionalAccess', _631 => _631.notifyDrawerDidOpen, 'call', _632 => _632(_nullishCoalesce(selfHandleRef.current, () => ( void 0)))]);
32700
32677
  }, [open, coordination]);
32701
32678
  React100.useEffect(() => {
32702
32679
  if (!selfHandleRef.current) return;
32703
- return _optionalChain([coordination, 'optionalAccess', _630 => _630.registerDrawer, 'call', _631 => _631(selfHandleRef.current)]);
32680
+ return _optionalChain([coordination, 'optionalAccess', _633 => _633.registerDrawer, 'call', _634 => _634(selfHandleRef.current)]);
32704
32681
  }, [coordination]);
32705
32682
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DrawerOpenContext.Provider, { value: open, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32706
32683
  DialogPrimitive3.Root,
@@ -33080,10 +33057,10 @@ var AppLayoutDrawerContent = React100.forwardRef(
33080
33057
  ),
33081
33058
  style,
33082
33059
  onInteractOutside: (event) => {
33083
- _optionalChain([onInteractOutside, 'optionalCall', _632 => _632(event)]);
33060
+ _optionalChain([onInteractOutside, 'optionalCall', _635 => _635(event)]);
33084
33061
  if (event.defaultPrevented) return;
33085
33062
  const target = event.target;
33086
- const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _633 => _633.contains, 'call', _634 => _634(target)]);
33063
+ const isInsideContainer = !!target && !!_optionalChain([portalContainer, 'optionalAccess', _636 => _636.contains, 'call', _637 => _637(target)]);
33087
33064
  if (!isInsideContainer) {
33088
33065
  event.preventDefault();
33089
33066
  return;
@@ -33191,7 +33168,7 @@ function NotificationTile({
33191
33168
  if (!counting) return;
33192
33169
  const remaining = Math.max(0, liveDurationMs - initialElapsed);
33193
33170
  const timer = window.setTimeout(() => {
33194
- _optionalChain([onSettle, 'optionalCall', _635 => _635(id)]);
33171
+ _optionalChain([onSettle, 'optionalCall', _638 => _638(id)]);
33195
33172
  }, remaining);
33196
33173
  return () => window.clearTimeout(timer);
33197
33174
  }, [id, counting, initialElapsed, liveDurationMs, onSettle]);
@@ -33247,7 +33224,7 @@ function NotificationTile({
33247
33224
  }
33248
33225
  ) : null,
33249
33226
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "relative size-4 shrink-0", children: [
33250
- { active: isLive, label: "Dismiss notification", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.XmarkIcon, { size: 16 }), onClick: () => _optionalChain([onSettle, 'optionalCall', _636 => _636(id)]) },
33227
+ { active: isLive, label: "Dismiss notification", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.XmarkIcon, { size: 16 }), onClick: () => _optionalChain([onSettle, 'optionalCall', _639 => _639(id)]) },
33251
33228
  { active: !isLive, label: "Mark notification complete", icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.CheckCircleIcon, { size: 16 }), onClick: () => onComplete(id) }
33252
33229
  ].map(({ active, label, icon: icon2, onClick }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33253
33230
  "button",
@@ -33423,7 +33400,7 @@ function DrawerScrollList({
33423
33400
  if (!sentinel || !root) return;
33424
33401
  const observer = new IntersectionObserver(
33425
33402
  (entries) => {
33426
- if (_optionalChain([entries, 'access', _637 => _637[0], 'optionalAccess', _638 => _638.isIntersecting])) _optionalChain([loadMoreRef, 'access', _639 => _639.current, 'optionalCall', _640 => _640()]);
33403
+ if (_optionalChain([entries, 'access', _640 => _640[0], 'optionalAccess', _641 => _641.isIntersecting])) _optionalChain([loadMoreRef, 'access', _642 => _642.current, 'optionalCall', _643 => _643()]);
33427
33404
  },
33428
33405
  { root, rootMargin: loadMoreRootMargin }
33429
33406
  );
@@ -33438,7 +33415,7 @@ function DrawerScrollList({
33438
33415
  className: "flex flex-1 flex-col gap-[var(--spacing-system-xs)] overflow-y-auto px-[var(--spacing-system-m)]",
33439
33416
  children: isEmpty && !isLoadingMore ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, EmptyState, {}) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
33440
33417
  unreadNotifications.map((n) => {
33441
- const custom = _optionalChain([renderTile, 'optionalCall', _641 => _641(n, { onComplete, onSettle, liveDurationMs })]);
33418
+ const custom = _optionalChain([renderTile, 'optionalCall', _644 => _644(n, { onComplete, onSettle, liveDurationMs })]);
33442
33419
  if (custom) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { children: custom }, n.id);
33443
33420
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
33444
33421
  NotificationTile,
@@ -33602,7 +33579,7 @@ function NotificationPopups({
33602
33579
  className
33603
33580
  ),
33604
33581
  children: live.map((n) => {
33605
- const custom = _optionalChain([renderTile, 'optionalCall', _642 => _642(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
33582
+ const custom = _optionalChain([renderTile, 'optionalCall', _645 => _645(n, { onComplete: markRead, onSettle: markSettled, liveDurationMs })]);
33606
33583
  if (custom) {
33607
33584
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "pointer-events-auto", children: custom }, n.id);
33608
33585
  }
@@ -33715,7 +33692,7 @@ function programItemToStripProfile(item) {
33715
33692
  const fromAuthor = toStripProfile(item.author);
33716
33693
  if (fromAuthor) return fromAuthor;
33717
33694
  const host = Array.isArray(item.hosts) ? item.hosts[0] : null;
33718
- if (!_optionalChain([host, 'optionalAccess', _643 => _643.name])) return null;
33695
+ if (!_optionalChain([host, 'optionalAccess', _646 => _646.name])) return null;
33719
33696
  return toStripProfile({ full_name: host.name, avatar_url: _nullishCoalesce(host.avatar_url, () => ( null)) });
33720
33697
  }
33721
33698
  function transformEventToProgram(event) {
@@ -33793,21 +33770,21 @@ function transformWebinarToProgram(webinar) {
33793
33770
  // src/components/features/notifications/types.ts
33794
33771
  var ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = "ADMIN_APPROVAL_REQUEST";
33795
33772
  function isApprovalNotification(notification) {
33796
- return _optionalChain([notification, 'access', _644 => _644.meta, 'optionalAccess', _645 => _645.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
33773
+ return _optionalChain([notification, 'access', _647 => _647.meta, 'optionalAccess', _648 => _648.contextType]) === ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE;
33797
33774
  }
33798
33775
  function getApprovalMeta(notification) {
33799
33776
  if (!isApprovalNotification(notification)) return null;
33800
33777
  const meta = notification.meta;
33801
- const approvalRequestId = _optionalChain([meta, 'optionalAccess', _646 => _646.approvalRequestId]);
33802
- const toolCalls = _optionalChain([meta, 'optionalAccess', _647 => _647.toolCalls]);
33778
+ const approvalRequestId = _optionalChain([meta, 'optionalAccess', _649 => _649.approvalRequestId]);
33779
+ const toolCalls = _optionalChain([meta, 'optionalAccess', _650 => _650.toolCalls]);
33803
33780
  if (typeof approvalRequestId !== "string" || !Array.isArray(toolCalls)) return null;
33804
33781
  return {
33805
33782
  approvalRequestId,
33806
- dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _648 => _648.dialogId]), () => ( null)),
33807
- ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _649 => _649.ticketId]), () => ( null)),
33808
- approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _650 => _650.approvalType]), () => ( null)),
33809
- resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _651 => _651.resolution]), () => ( null)),
33810
- resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _652 => _652.resolvedByName]), () => ( null)),
33783
+ dialogId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _651 => _651.dialogId]), () => ( null)),
33784
+ ticketId: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _652 => _652.ticketId]), () => ( null)),
33785
+ approvalType: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _653 => _653.approvalType]), () => ( null)),
33786
+ resolution: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _654 => _654.resolution]), () => ( null)),
33787
+ resolvedByName: _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _655 => _655.resolvedByName]), () => ( null)),
33811
33788
  toolCalls
33812
33789
  };
33813
33790
  }
@@ -33857,7 +33834,7 @@ function ApprovalRequestNotificationTile({
33857
33834
  const [processing, setProcessing] = _react.useState.call(void 0, false);
33858
33835
  const [localStatus, setLocalStatus] = _react.useState.call(void 0, null);
33859
33836
  const approval = getApprovalMeta(notification);
33860
- const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _653 => _653.resolution]));
33837
+ const resolvedStatus = resolutionToStatus(_optionalChain([approval, 'optionalAccess', _656 => _656.resolution]));
33861
33838
  const status = resolvedStatus !== "pending" ? resolvedStatus : _nullishCoalesce(localStatus, () => ( "pending"));
33862
33839
  const batchData = _react.useMemo.call(void 0, () => approval ? approvalMetaToBatchData(approval) : null, [approval]);
33863
33840
  const { innerRef, containerStyle } = useCollapsible({ expanded });
@@ -34161,7 +34138,7 @@ function TimeTrackerPanel({
34161
34138
  error: showFieldError ? "Required if no notes added" : void 0,
34162
34139
  disableClientFilter: !!onTicketSearch,
34163
34140
  onInputChange: (value, reason) => {
34164
- if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _654 => _654(value)]);
34141
+ if (reason === "input") _optionalChain([onTicketSearch, 'optionalCall', _657 => _657(value)]);
34165
34142
  }
34166
34143
  }
34167
34144
  ),
@@ -34176,7 +34153,7 @@ function TimeTrackerPanel({
34176
34153
  disabled: customerLocked,
34177
34154
  disableClientFilter: !!onCustomerSearch,
34178
34155
  onInputChange: (value, reason) => {
34179
- if (reason === "input") _optionalChain([onCustomerSearch, 'optionalCall', _655 => _655(value)]);
34156
+ if (reason === "input") _optionalChain([onCustomerSearch, 'optionalCall', _658 => _658(value)]);
34180
34157
  },
34181
34158
  startAdornment: customerStartAdornment,
34182
34159
  renderOption: renderCustomerOption
@@ -34270,7 +34247,7 @@ function LastEntryRow({ entry, onClick }) {
34270
34247
  {
34271
34248
  variant: "outline",
34272
34249
  size: "icon",
34273
- onClick: () => _optionalChain([onClick, 'optionalCall', _656 => _656(entry)]),
34250
+ onClick: () => _optionalChain([onClick, 'optionalCall', _659 => _659(entry)]),
34274
34251
  disabled: !onClick,
34275
34252
  "aria-label": `Open entry: ${entry.title}`,
34276
34253
  className: "h-12 w-12 shrink-0 [&_svg]:!size-6",
@@ -34315,31 +34292,31 @@ function HeaderButton({
34315
34292
  function TimeTrackerHeaderButton({ className, disabled }) {
34316
34293
  const ctx = useOptionalTimeTracker();
34317
34294
  const elapsedLabel = useTrackerClock({
34318
- status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _657 => _657.status]), () => ( "ready")),
34319
- runningSince: _optionalChain([ctx, 'optionalAccess', _658 => _658.runningSince]),
34320
- accumulatedMs: _optionalChain([ctx, 'optionalAccess', _659 => _659.accumulatedMs])
34295
+ status: _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _660 => _660.status]), () => ( "ready")),
34296
+ runningSince: _optionalChain([ctx, 'optionalAccess', _661 => _661.runningSince]),
34297
+ accumulatedMs: _optionalChain([ctx, 'optionalAccess', _662 => _662.accumulatedMs])
34321
34298
  });
34322
34299
  const layoutContainer = useAppLayoutDrawerContainer();
34323
34300
  const coordination = useAppLayoutDrawerCoordination();
34324
- const isOpen = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _660 => _660.isOpen]), () => ( false));
34301
+ const isOpen = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _663 => _663.isOpen]), () => ( false));
34325
34302
  const isOpenRef = _react.useRef.call(void 0, isOpen);
34326
34303
  isOpenRef.current = isOpen;
34327
- const closeRef = _react.useRef.call(void 0, _optionalChain([ctx, 'optionalAccess', _661 => _661.close]));
34328
- closeRef.current = _optionalChain([ctx, 'optionalAccess', _662 => _662.close]);
34304
+ const closeRef = _react.useRef.call(void 0, _optionalChain([ctx, 'optionalAccess', _664 => _664.close]));
34305
+ closeRef.current = _optionalChain([ctx, 'optionalAccess', _665 => _665.close]);
34329
34306
  const selfHandleRef = _react.useRef.call(void 0, null);
34330
34307
  if (!selfHandleRef.current) {
34331
34308
  selfHandleRef.current = {
34332
34309
  close: () => {
34333
- if (isOpenRef.current) _optionalChain([closeRef, 'access', _663 => _663.current, 'optionalCall', _664 => _664()]);
34310
+ if (isOpenRef.current) _optionalChain([closeRef, 'access', _666 => _666.current, 'optionalCall', _667 => _667()]);
34334
34311
  }
34335
34312
  };
34336
34313
  }
34337
34314
  _react.useEffect.call(void 0, () => {
34338
- if (isOpen) _optionalChain([coordination, 'optionalAccess', _665 => _665.notifyDrawerDidOpen, 'call', _666 => _666(_nullishCoalesce(selfHandleRef.current, () => ( void 0)))]);
34315
+ if (isOpen) _optionalChain([coordination, 'optionalAccess', _668 => _668.notifyDrawerDidOpen, 'call', _669 => _669(_nullishCoalesce(selfHandleRef.current, () => ( void 0)))]);
34339
34316
  }, [isOpen, coordination]);
34340
34317
  _react.useEffect.call(void 0, () => {
34341
34318
  if (!selfHandleRef.current) return;
34342
- return _optionalChain([coordination, 'optionalAccess', _667 => _667.registerDrawer, 'call', _668 => _668(selfHandleRef.current)]);
34319
+ return _optionalChain([coordination, 'optionalAccess', _670 => _670.registerDrawer, 'call', _671 => _671(selfHandleRef.current)]);
34343
34320
  }, [coordination]);
34344
34321
  if (!ctx) return null;
34345
34322
  const { open, close, status } = ctx;
@@ -34612,9 +34589,9 @@ var TICKET_CARD_SHELL = "relative flex flex-col gap-[var(--spacing-system-sf)] r
34612
34589
  function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onReject }) {
34613
34590
  const showNewMessage = !!ticket.hasNewMessage && !!columnColor;
34614
34591
  const newMessageTextColor = columnColor ? getReadableTextColor(columnColor) : void 0;
34615
- const showDeviceRow = !!(_optionalChain([ticket, 'access', _669 => _669.deviceHostnames, 'optionalAccess', _670 => _670.length]) || ticket.organizationName);
34616
- const deviceText = [_optionalChain([ticket, 'access', _671 => _671.deviceHostnames, 'optionalAccess', _672 => _672.join, 'call', _673 => _673(", ")]), ticket.organizationName].filter(Boolean).join(", ");
34617
- const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _674 => _674.assignees, 'optionalAccess', _675 => _675.length]) || renderAssignSlot);
34592
+ const showDeviceRow = !!(_optionalChain([ticket, 'access', _672 => _672.deviceHostnames, 'optionalAccess', _673 => _673.length]) || ticket.organizationName);
34593
+ const deviceText = [_optionalChain([ticket, 'access', _674 => _674.deviceHostnames, 'optionalAccess', _675 => _675.join, 'call', _676 => _676(", ")]), ticket.organizationName].filter(Boolean).join(", ");
34594
+ const hasRightSection = !!(ticket.priority || _optionalChain([ticket, 'access', _677 => _677.assignees, 'optionalAccess', _678 => _678.length]) || renderAssignSlot);
34618
34595
  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: [
34619
34596
  ticket.priority && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34620
34597
  _chunkBGD345ZVcjs.Flag02Icon,
@@ -34623,7 +34600,7 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
34623
34600
  "aria-label": `Priority: ${ticket.priority}`
34624
34601
  }
34625
34602
  ),
34626
- renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _676 => _676.assignees, 'optionalAccess', _677 => _677.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
34603
+ renderAssignSlot ? renderAssignSlot(ticket) : _optionalChain([ticket, 'access', _679 => _679.assignees, 'optionalAccess', _680 => _680.length]) ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex -space-x-2", children: [
34627
34604
  ticket.assignees.slice(0, MAX_VISIBLE_ASSIGNEES).map((a) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34628
34605
  SquareAvatar,
34629
34606
  {
@@ -34654,7 +34631,7 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
34654
34631
  ] }),
34655
34632
  rightSection
34656
34633
  ] }),
34657
- _optionalChain([ticket, 'access', _678 => _678.tags, 'optionalAccess', _679 => _679.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
34634
+ _optionalChain([ticket, 'access', _681 => _681.tags, 'optionalAccess', _682 => _682.length]) ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TicketTagRow, { tags: ticket.tags }) : null,
34658
34635
  timestampLabel && tooltipLabel && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipProvider, { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, Tooltip, { children: [
34659
34636
  /* @__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 }) }),
34660
34637
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TooltipContent, { children: tooltipLabel })
@@ -34892,7 +34869,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
34892
34869
  const observer = new IntersectionObserver(
34893
34870
  (entries) => {
34894
34871
  if (entries.some((e) => e.isIntersecting)) {
34895
- _optionalChain([loadMoreRef, 'access', _680 => _680.current, 'optionalCall', _681 => _681(columnIdRef.current)]);
34872
+ _optionalChain([loadMoreRef, 'access', _683 => _683.current, 'optionalCall', _684 => _684(columnIdRef.current)]);
34896
34873
  }
34897
34874
  },
34898
34875
  { root, rootMargin: loadMoreRootMargin }
@@ -34922,7 +34899,7 @@ function ColumnBody({ column, getTicketHref, renderAssignSlot, onApprove, onReje
34922
34899
  ticket: t,
34923
34900
  columnId: column.id,
34924
34901
  columnColor: column.color,
34925
- href: _optionalChain([getTicketHref, 'optionalCall', _682 => _682(t.id)]),
34902
+ href: _optionalChain([getTicketHref, 'optionalCall', _685 => _685(t.id)]),
34926
34903
  renderAssignSlot,
34927
34904
  onApprove,
34928
34905
  onReject,
@@ -35022,17 +34999,17 @@ function Board({
35022
34999
  const pointer = _core.pointerWithin.call(void 0, args);
35023
35000
  const intersections = pointer.length > 0 ? pointer : _core.rectIntersection.call(void 0, args);
35024
35001
  const ticketHit = intersections.find(
35025
- (c) => _optionalChain([c, 'access', _683 => _683.data, 'optionalAccess', _684 => _684.droppableContainer, 'optionalAccess', _685 => _685.data, 'optionalAccess', _686 => _686.current, 'optionalAccess', _687 => _687.type]) === "ticket"
35002
+ (c) => _optionalChain([c, 'access', _686 => _686.data, 'optionalAccess', _687 => _687.droppableContainer, 'optionalAccess', _688 => _688.data, 'optionalAccess', _689 => _689.current, 'optionalAccess', _690 => _690.type]) === "ticket"
35026
35003
  );
35027
35004
  if (ticketHit) return [ticketHit];
35028
35005
  const columnHit = intersections.find(
35029
- (c) => _optionalChain([c, 'access', _688 => _688.data, 'optionalAccess', _689 => _689.droppableContainer, 'optionalAccess', _690 => _690.data, 'optionalAccess', _691 => _691.current, 'optionalAccess', _692 => _692.type]) === "column"
35006
+ (c) => _optionalChain([c, 'access', _691 => _691.data, 'optionalAccess', _692 => _692.droppableContainer, 'optionalAccess', _693 => _693.data, 'optionalAccess', _694 => _694.current, 'optionalAccess', _695 => _695.type]) === "column"
35030
35007
  );
35031
35008
  if (columnHit) {
35032
- const columnId = _optionalChain([columnHit, 'access', _693 => _693.data, 'optionalAccess', _694 => _694.droppableContainer, 'optionalAccess', _695 => _695.data, 'optionalAccess', _696 => _696.current, 'optionalAccess', _697 => _697.columnId]);
35009
+ const columnId = _optionalChain([columnHit, 'access', _696 => _696.data, 'optionalAccess', _697 => _697.droppableContainer, 'optionalAccess', _698 => _698.data, 'optionalAccess', _699 => _699.current, 'optionalAccess', _700 => _700.columnId]);
35033
35010
  const ticketsInColumn = args.droppableContainers.filter((c) => {
35034
35011
  const d = c.data.current;
35035
- return _optionalChain([d, 'optionalAccess', _698 => _698.type]) === "ticket" && d.columnId === columnId;
35012
+ return _optionalChain([d, 'optionalAccess', _701 => _701.type]) === "ticket" && d.columnId === columnId;
35036
35013
  });
35037
35014
  if (ticketsInColumn.length > 0) {
35038
35015
  const closest = _core.closestCorners.call(void 0, { ...args, droppableContainers: ticketsInColumn });
@@ -35057,20 +35034,20 @@ function Board({
35057
35034
  const overId = String(over.id);
35058
35035
  if (activeId === overId) return;
35059
35036
  const overData = over.data.current;
35060
- const fromColumnId = _optionalChain([locate, 'call', _699 => _699(items, activeId), 'optionalAccess', _700 => _700.columnId]);
35061
- const toColumnId = _optionalChain([overData, 'optionalAccess', _701 => _701.columnId]);
35037
+ const fromColumnId = _optionalChain([locate, 'call', _702 => _702(items, activeId), 'optionalAccess', _703 => _703.columnId]);
35038
+ const toColumnId = _optionalChain([overData, 'optionalAccess', _704 => _704.columnId]);
35062
35039
  if (!fromColumnId || !toColumnId || fromColumnId === toColumnId) return;
35063
35040
  const origin = dragOriginRef.current;
35064
- const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _702 => _702.fromColumnId]) === toColumnId;
35041
+ const isReturnToOrigin = _optionalChain([origin, 'optionalAccess', _705 => _705.fromColumnId]) === toColumnId;
35065
35042
  const targetCol = items.find((c) => c.id === toColumnId);
35066
- const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _703 => _703.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
35067
- if (_optionalChain([targetCol, 'optionalAccess', _704 => _704.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
35043
+ const blockedBySource = !isReturnToOrigin && !!_optionalChain([targetCol, 'optionalAccess', _706 => _706.allowedFromColumns]) && !!origin && !targetCol.allowedFromColumns.includes(origin.fromColumnId);
35044
+ if (_optionalChain([targetCol, 'optionalAccess', _707 => _707.dropDisabled]) && !isReturnToOrigin || blockedBySource) return;
35068
35045
  setItems((prev) => {
35069
35046
  const fromIndex = findIndexInColumn(prev, fromColumnId, activeId);
35070
35047
  const toCol = prev.find((c) => c.id === toColumnId);
35071
35048
  if (fromIndex < 0 || !toCol) return prev;
35072
35049
  let toIndex;
35073
- if (_optionalChain([overData, 'optionalAccess', _705 => _705.type]) === "column") {
35050
+ if (_optionalChain([overData, 'optionalAccess', _708 => _708.type]) === "column") {
35074
35051
  toIndex = toCol.tickets.length;
35075
35052
  } else {
35076
35053
  const overIndex = toCol.tickets.findIndex((t) => t.id === overId);
@@ -35112,14 +35089,14 @@ function Board({
35112
35089
  const toColumnId = located.columnId;
35113
35090
  const isCrossColumn = origin.fromColumnId !== toColumnId;
35114
35091
  const targetCol = items.find((c) => c.id === toColumnId);
35115
- if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _706 => _706.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _707 => _707.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
35092
+ if (isCrossColumn && (_optionalChain([targetCol, 'optionalAccess', _709 => _709.dropDisabled]) || _optionalChain([targetCol, 'optionalAccess', _710 => _710.allowedFromColumns]) && !targetCol.allowedFromColumns.includes(origin.fromColumnId))) {
35116
35093
  setItems(columns);
35117
35094
  return;
35118
35095
  }
35119
35096
  let finalIndex = located.index;
35120
- let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _708 => _708.find, 'call', _709 => _709((c) => c.id === toColumnId), 'optionalAccess', _710 => _710.tickets]), () => ( []));
35097
+ let finalColumnTickets = _nullishCoalesce(_optionalChain([items, 'access', _711 => _711.find, 'call', _712 => _712((c) => c.id === toColumnId), 'optionalAccess', _713 => _713.tickets]), () => ( []));
35121
35098
  const overData = over.data.current;
35122
- if (_optionalChain([overData, 'optionalAccess', _711 => _711.type]) === "ticket") {
35099
+ if (_optionalChain([overData, 'optionalAccess', _714 => _714.type]) === "ticket") {
35123
35100
  const overIndex = findIndexInColumn(items, toColumnId, String(over.id));
35124
35101
  if (overIndex >= 0 && overIndex !== located.index) {
35125
35102
  finalColumnTickets = _sortable.arrayMove.call(void 0, finalColumnTickets, located.index, overIndex);
@@ -35139,8 +35116,8 @@ function Board({
35139
35116
  ticketId: origin.ticketId,
35140
35117
  fromColumnId: origin.fromColumnId,
35141
35118
  toColumnId,
35142
- afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _712 => _712[finalIndex - 1], 'optionalAccess', _713 => _713.id]), () => ( null)),
35143
- beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _714 => _714[finalIndex + 1], 'optionalAccess', _715 => _715.id]), () => ( null))
35119
+ afterTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _715 => _715[finalIndex - 1], 'optionalAccess', _716 => _716.id]), () => ( null)),
35120
+ beforeTicketId: _nullishCoalesce(_optionalChain([finalColumnTickets, 'access', _717 => _717[finalIndex + 1], 'optionalAccess', _718 => _718.id]), () => ( null))
35144
35121
  });
35145
35122
  };
35146
35123
  const handleDragCancel = () => {
@@ -35169,8 +35146,8 @@ function Board({
35169
35146
  children: items.map((column, i) => {
35170
35147
  const prev = items[i - 1];
35171
35148
  const next = items[i + 1];
35172
- const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _716 => _716.system]));
35173
- const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _717 => _717.system]));
35149
+ const joinLeft = !!(column.system && _optionalChain([prev, 'optionalAccess', _719 => _719.system]));
35150
+ const joinRight = !!(column.system && _optionalChain([next, 'optionalAccess', _720 => _720.system]));
35174
35151
  const showGap = i > 0 && !joinLeft;
35175
35152
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, React106.Fragment, { children: [
35176
35153
  showGap && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "aria-hidden": true, className: "w-[var(--spacing-system-mf)] shrink-0" }),
@@ -35223,7 +35200,7 @@ function Board({
35223
35200
  {
35224
35201
  ticket: activeTicket.ticket,
35225
35202
  columnId: activeTicket.columnId,
35226
- columnColor: _optionalChain([items, 'access', _718 => _718.find, 'call', _719 => _719((c) => c.id === activeTicket.columnId), 'optionalAccess', _720 => _720.color]),
35203
+ columnColor: _optionalChain([items, 'access', _721 => _721.find, 'call', _722 => _722((c) => c.id === activeTicket.columnId), 'optionalAccess', _723 => _723.color]),
35227
35204
  isOverlay: true
35228
35205
  }
35229
35206
  ) : null })
@@ -35239,7 +35216,7 @@ function locate(cols, ticketId) {
35239
35216
  return null;
35240
35217
  }
35241
35218
  function findIndexInColumn(cols, columnId, ticketId) {
35242
- return _nullishCoalesce(_optionalChain([cols, 'access', _721 => _721.find, 'call', _722 => _722((c) => c.id === columnId), 'optionalAccess', _723 => _723.tickets, 'access', _724 => _724.findIndex, 'call', _725 => _725((t) => t.id === ticketId)]), () => ( -1));
35219
+ return _nullishCoalesce(_optionalChain([cols, 'access', _724 => _724.find, 'call', _725 => _725((c) => c.id === columnId), 'optionalAccess', _726 => _726.tickets, 'access', _727 => _727.findIndex, 'call', _728 => _728((t) => t.id === ticketId)]), () => ( -1));
35243
35220
  }
35244
35221
 
35245
35222
  // src/components/features/board/types.ts
@@ -35375,7 +35352,7 @@ function MobileNavPanel({ isOpen, config }) {
35375
35352
  if (item.onClick) {
35376
35353
  item.onClick();
35377
35354
  }
35378
- _optionalChain([config, 'access', _726 => _726.onClose, 'optionalCall', _727 => _727()]);
35355
+ _optionalChain([config, 'access', _729 => _729.onClose, 'optionalCall', _730 => _730()]);
35379
35356
  };
35380
35357
  if (item.href) {
35381
35358
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -35483,7 +35460,7 @@ function MingoAiButton({ source, icon, label = "Mingo AI", className, onClick, .
35483
35460
  "aria-label": label,
35484
35461
  onClick: (e) => {
35485
35462
  window.dispatchEvent(new CustomEvent("ask-ai:open", { detail: { source: _nullishCoalesce(source, () => ( "")) } }));
35486
- _optionalChain([onClick, 'optionalCall', _728 => _728(e)]);
35463
+ _optionalChain([onClick, 'optionalCall', _731 => _731(e)]);
35487
35464
  },
35488
35465
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
35489
35466
  // `--spacing-system-l` is itself responsive (16px, 24px from 800px):
@@ -35652,7 +35629,7 @@ function Header2({ config, platform }) {
35652
35629
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
35653
35630
  "flex justify-start w-full",
35654
35631
  "font-bold text-[16px] leading-none tracking-[-0.32px]",
35655
- index < (_nullishCoalesce(_optionalChain([item, 'access', _729 => _729.children, 'optionalAccess', _730 => _730.length]), () => ( 0))) - 1 && "mb-1",
35632
+ index < (_nullishCoalesce(_optionalChain([item, 'access', _732 => _732.children, 'optionalAccess', _733 => _733.length]), () => ( 0))) - 1 && "mb-1",
35656
35633
  "text-ods-text-primary",
35657
35634
  // All dropdown items use primary text color
35658
35635
  child.isActive && "bg-ods-bg-hover"
@@ -35739,7 +35716,7 @@ function Header2({ config, platform }) {
35739
35716
  "w-full h-[72px] flex items-center justify-between",
35740
35717
  "border-b border-ods-border backdrop-blur-sm",
35741
35718
  "pl-6",
35742
- !_optionalChain([config, 'access', _731 => _731.mingo, 'optionalAccess', _732 => _732.enabled]) && "pr-6",
35719
+ !_optionalChain([config, 'access', _734 => _734.mingo, 'optionalAccess', _735 => _735.enabled]) && "pr-6",
35743
35720
  // Background color (configurable via backgroundColor prop)
35744
35721
  config.backgroundColor || "bg-ods-card",
35745
35722
  config.className
@@ -35747,7 +35724,7 @@ function Header2({ config, platform }) {
35747
35724
  style: config.style,
35748
35725
  children: [
35749
35726
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
35750
- _optionalChain([config, 'access', _733 => _733.actions, 'optionalAccess', _734 => _734.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
35727
+ _optionalChain([config, 'access', _736 => _736.actions, 'optionalAccess', _737 => _737.left]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.left }),
35751
35728
  /* @__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 })
35752
35729
  ] }),
35753
35730
  config.navigation && config.navigation.items.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -35764,8 +35741,8 @@ function Header2({ config, platform }) {
35764
35741
  }
35765
35742
  ),
35766
35743
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-end gap-3 flex-shrink-0 self-stretch", children: [
35767
- _optionalChain([config, 'access', _735 => _735.actions, 'optionalAccess', _736 => _736.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden lg:flex items-center gap-3", children: config.actions.right }),
35768
- _optionalChain([config, 'access', _737 => _737.actions, 'optionalAccess', _738 => _738.persistent]) && config.actions.persistent.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.persistent }),
35744
+ _optionalChain([config, 'access', _738 => _738.actions, 'optionalAccess', _739 => _739.right]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden lg:flex items-center gap-3", children: config.actions.right }),
35745
+ _optionalChain([config, 'access', _740 => _740.actions, 'optionalAccess', _741 => _741.persistent]) && config.actions.persistent.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center", children: config.actions.persistent }),
35769
35746
  config.mobile && config.mobile.enabled && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35770
35747
  _chunkIMK6RUECcjs.Button,
35771
35748
  {
@@ -35773,15 +35750,15 @@ function Header2({ config, platform }) {
35773
35750
  size: "icon",
35774
35751
  className: "flex lg:hidden",
35775
35752
  onClick: () => {
35776
- _optionalChain([config, 'access', _739 => _739.mobile, 'optionalAccess', _740 => _740.onToggle, 'optionalCall', _741 => _741()]);
35753
+ _optionalChain([config, 'access', _742 => _742.mobile, 'optionalAccess', _743 => _743.onToggle, 'optionalCall', _744 => _744()]);
35777
35754
  },
35778
- "aria-label": _optionalChain([config, 'access', _742 => _742.mobile, 'optionalAccess', _743 => _743.isOpen]) ? "Close menu" : "Open menu",
35779
- "aria-expanded": _nullishCoalesce(_optionalChain([config, 'access', _744 => _744.mobile, 'optionalAccess', _745 => _745.isOpen]), () => ( false)),
35780
- "aria-controls": _optionalChain([config, 'access', _746 => _746.mobile, 'optionalAccess', _747 => _747.isOpen]) ? MOBILE_NAV_PANEL_ID : void 0,
35781
- leftIcon: _optionalChain([config, 'access', _748 => _748.mobile, 'optionalAccess', _749 => _749.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.Menu01Icon, {})
35755
+ "aria-label": _optionalChain([config, 'access', _745 => _745.mobile, 'optionalAccess', _746 => _746.isOpen]) ? "Close menu" : "Open menu",
35756
+ "aria-expanded": _nullishCoalesce(_optionalChain([config, 'access', _747 => _747.mobile, 'optionalAccess', _748 => _748.isOpen]), () => ( false)),
35757
+ "aria-controls": _optionalChain([config, 'access', _749 => _749.mobile, 'optionalAccess', _750 => _750.isOpen]) ? MOBILE_NAV_PANEL_ID : void 0,
35758
+ leftIcon: _optionalChain([config, 'access', _751 => _751.mobile, 'optionalAccess', _752 => _752.menuIcon]) || /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.Menu01Icon, {})
35782
35759
  }
35783
35760
  ),
35784
- _optionalChain([config, 'access', _750 => _750.mingo, 'optionalAccess', _751 => _751.enabled]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoAiButton, { source: config.mingo.source, icon: config.mingo.icon, label: config.mingo.label, className: config.mingo.className })
35761
+ _optionalChain([config, 'access', _753 => _753.mingo, 'optionalAccess', _754 => _754.enabled]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, MingoAiButton, { source: config.mingo.source, icon: config.mingo.icon, label: config.mingo.label, className: config.mingo.className })
35785
35762
  ] })
35786
35763
  ]
35787
35764
  }
@@ -35796,10 +35773,10 @@ function Header2({ config, platform }) {
35796
35773
  // src/components/navigation/header-skeleton.tsx
35797
35774
 
35798
35775
  function HeaderSkeleton({ config }) {
35799
- const showNavigation = _optionalChain([config, 'optionalAccess', _752 => _752.navigation]) && config.navigation.items.length > 0;
35800
- const showActions = _optionalChain([config, 'optionalAccess', _753 => _753.actions, 'optionalAccess', _754 => _754.right]) && config.actions.right.length > 0;
35801
- const showMobileMenu = _optionalChain([config, 'optionalAccess', _755 => _755.mobile, 'optionalAccess', _756 => _756.enabled]);
35802
- const isAdminHeader = _optionalChain([config, 'optionalAccess', _757 => _757.className, 'optionalAccess', _758 => _758.includes, 'call', _759 => _759("admin")]);
35776
+ const showNavigation = _optionalChain([config, 'optionalAccess', _755 => _755.navigation]) && config.navigation.items.length > 0;
35777
+ const showActions = _optionalChain([config, 'optionalAccess', _756 => _756.actions, 'optionalAccess', _757 => _757.right]) && config.actions.right.length > 0;
35778
+ const showMobileMenu = _optionalChain([config, 'optionalAccess', _758 => _758.mobile, 'optionalAccess', _759 => _759.enabled]);
35779
+ const isAdminHeader = _optionalChain([config, 'optionalAccess', _760 => _760.className, 'optionalAccess', _761 => _761.includes, 'call', _762 => _762("admin")]);
35803
35780
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky top-0 z-40 w-full", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
35804
35781
  "header",
35805
35782
  {
@@ -35808,11 +35785,11 @@ function HeaderSkeleton({ config }) {
35808
35785
  "bg-ods-card border-b border-ods-border backdrop-blur-sm",
35809
35786
  "px-6 py-3",
35810
35787
  "transition-opacity duration-300 ease-in-out",
35811
- _optionalChain([config, 'optionalAccess', _760 => _760.className])
35788
+ _optionalChain([config, 'optionalAccess', _763 => _763.className])
35812
35789
  ),
35813
35790
  children: [
35814
35791
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center justify-start flex-shrink-0", children: [
35815
- isAdminHeader && _optionalChain([config, 'optionalAccess', _761 => _761.actions, 'optionalAccess', _762 => _762.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" }) }),
35792
+ isAdminHeader && _optionalChain([config, 'optionalAccess', _764 => _764.actions, 'optionalAccess', _765 => _765.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" }) }),
35816
35793
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-2", children: [
35817
35794
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-8 bg-ods-border rounded animate-pulse" }),
35818
35795
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-6 w-24 bg-ods-border rounded animate-pulse" })
@@ -35820,8 +35797,8 @@ function HeaderSkeleton({ config }) {
35820
35797
  ] }),
35821
35798
  showNavigation && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "nav", { className: _chunkFIG2RKZFcjs.cn.call(void 0,
35822
35799
  "hidden md:flex items-center gap-2",
35823
- _optionalChain([config, 'optionalAccess', _763 => _763.navigation, 'optionalAccess', _764 => _764.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
35824
- _optionalChain([config, 'optionalAccess', _765 => _765.navigation, 'optionalAccess', _766 => _766.position]) === "right" && "ml-auto mr-4"
35800
+ _optionalChain([config, 'optionalAccess', _766 => _766.navigation, 'optionalAccess', _767 => _767.position]) === "center" && "absolute left-1/2 transform -translate-x-1/2",
35801
+ _optionalChain([config, 'optionalAccess', _768 => _768.navigation, 'optionalAccess', _769 => _769.position]) === "right" && "ml-auto mr-4"
35825
35802
  ), children: [
35826
35803
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-20 bg-ods-border rounded animate-pulse" }),
35827
35804
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-10 w-28 bg-ods-border rounded animate-pulse" }),
@@ -35937,7 +35914,7 @@ function SlidingSidebar({ config }) {
35937
35914
  variant: "transparent",
35938
35915
  size: "default",
35939
35916
  onClick: () => {
35940
- _optionalChain([item, 'access', _767 => _767.onClick, 'optionalCall', _768 => _768()]);
35917
+ _optionalChain([item, 'access', _770 => _770.onClick, 'optionalCall', _771 => _771()]);
35941
35918
  config.onClose();
35942
35919
  },
35943
35920
  leftIcon: item.icon,
@@ -35960,7 +35937,7 @@ function SlidingSidebar({ config }) {
35960
35937
  variant: "transparent",
35961
35938
  size: "default",
35962
35939
  onClick: () => {
35963
- _optionalChain([item, 'access', _769 => _769.onClick, 'optionalCall', _770 => _770()]);
35940
+ _optionalChain([item, 'access', _772 => _772.onClick, 'optionalCall', _773 => _773()]);
35964
35941
  config.onClose();
35965
35942
  },
35966
35943
  leftIcon: item.icon,
@@ -36092,7 +36069,7 @@ function StickySectionNav({
36092
36069
  ] });
36093
36070
  }
36094
36071
  function useSectionNavigation(sections, options) {
36095
- const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _771 => _771[0], 'optionalAccess', _772 => _772.id]) || "");
36072
+ const [activeSection, setActiveSection] = _react.useState.call(void 0, _optionalChain([sections, 'access', _774 => _774[0], 'optionalAccess', _775 => _775.id]) || "");
36096
36073
  const isScrollingFromClick = _react.useRef.call(void 0, false);
36097
36074
  const { offset: offset2 = 100 } = options || {};
36098
36075
  const handleSectionClick = _react.useCallback.call(void 0, (sectionId) => {
@@ -36116,7 +36093,7 @@ function useSectionNavigation(sections, options) {
36116
36093
  const handleScroll = () => {
36117
36094
  if (isScrollingFromClick.current) return;
36118
36095
  const scrollPosition = window.scrollY + offset2 + 50;
36119
- let currentSection = _optionalChain([sections, 'access', _773 => _773[0], 'optionalAccess', _774 => _774.id]) || "";
36096
+ let currentSection = _optionalChain([sections, 'access', _776 => _776[0], 'optionalAccess', _777 => _777.id]) || "";
36120
36097
  for (let i = sections.length - 1; i >= 0; i--) {
36121
36098
  const element = document.getElementById(sections[i].id);
36122
36099
  if (element && scrollPosition >= element.offsetTop) {
@@ -36307,7 +36284,7 @@ function NavigationSidebar({ config, disabled = false }) {
36307
36284
  } else {
36308
36285
  setDesktopMinimized((prev) => !prev);
36309
36286
  }
36310
- _optionalChain([config, 'access', _775 => _775.onToggleMinimized, 'optionalCall', _776 => _776()]);
36287
+ _optionalChain([config, 'access', _778 => _778.onToggleMinimized, 'optionalCall', _779 => _779()]);
36311
36288
  }, [isTablet, setDesktopMinimized, config]);
36312
36289
  const closeOverlay = _react.useCallback.call(void 0, () => {
36313
36290
  setTabletMinimized(true);
@@ -36321,11 +36298,11 @@ function NavigationSidebar({ config, disabled = false }) {
36321
36298
  return () => document.removeEventListener("keydown", handleKeyDown);
36322
36299
  }, [isOverlayOpen, closeOverlay]);
36323
36300
  const handleItemClick = _react.useCallback.call(void 0, (item, event) => {
36324
- _optionalChain([event, 'optionalAccess', _777 => _777.stopPropagation, 'call', _778 => _778()]);
36301
+ _optionalChain([event, 'optionalAccess', _780 => _780.stopPropagation, 'call', _781 => _781()]);
36325
36302
  if (item.onClick) {
36326
36303
  item.onClick();
36327
36304
  } else if (item.path) {
36328
- _optionalChain([config, 'access', _779 => _779.onNavigate, 'optionalCall', _780 => _780(item.path)]);
36305
+ _optionalChain([config, 'access', _782 => _782.onNavigate, 'optionalCall', _783 => _783(item.path)]);
36329
36306
  }
36330
36307
  if (isTablet) setTabletMinimized(true);
36331
36308
  }, [config, isTablet]);
@@ -36450,11 +36427,11 @@ function HeaderGlobalSearch({
36450
36427
  };
36451
36428
  const handleSubmit = (e) => {
36452
36429
  e.preventDefault();
36453
- _optionalChain([onSubmit, 'optionalCall', _781 => _781(currentValue)]);
36430
+ _optionalChain([onSubmit, 'optionalCall', _784 => _784(currentValue)]);
36454
36431
  };
36455
36432
  const handleKeyDown = (e) => {
36456
36433
  if (e.key === "Enter") {
36457
- _optionalChain([onSubmit, 'optionalCall', _782 => _782(currentValue)]);
36434
+ _optionalChain([onSubmit, 'optionalCall', _785 => _785(currentValue)]);
36458
36435
  }
36459
36436
  };
36460
36437
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -36548,8 +36525,8 @@ function HeaderOrganizationFilter({
36548
36525
  className
36549
36526
  }) {
36550
36527
  const selectedOrg = organizations.find((o) => o.id === selectedOrgId);
36551
- const displayName = _optionalChain([selectedOrg, 'optionalAccess', _783 => _783.name]) || "All Organizations";
36552
- const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _784 => _784.deviceCount]), () => ( totalDeviceCount));
36528
+ const displayName = _optionalChain([selectedOrg, 'optionalAccess', _786 => _786.name]) || "All Organizations";
36529
+ const deviceCount = _nullishCoalesce(_optionalChain([selectedOrg, 'optionalAccess', _787 => _787.deviceCount]), () => ( totalDeviceCount));
36553
36530
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIMK6RUECcjs.DropdownMenu, { children: [
36554
36531
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
36555
36532
  "button",
@@ -36574,11 +36551,11 @@ function HeaderOrganizationFilter({
36574
36551
  }
36575
36552
  ) }),
36576
36553
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkIMK6RUECcjs.DropdownMenuContent, { align: "end", className: "min-w-[240px]", children: [
36577
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _785 => _785("")]), children: "All Organizations" }),
36554
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIMK6RUECcjs.DropdownMenuItem, { onClick: () => _optionalChain([onOrgChange, 'optionalCall', _788 => _788("")]), children: "All Organizations" }),
36578
36555
  organizations.map((org) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36579
36556
  _chunkIMK6RUECcjs.DropdownMenuItem,
36580
36557
  {
36581
- onClick: () => _optionalChain([onOrgChange, 'optionalCall', _786 => _786(org.id)]),
36558
+ onClick: () => _optionalChain([onOrgChange, 'optionalCall', _789 => _789(org.id)]),
36582
36559
  children: org.name
36583
36560
  },
36584
36561
  org.id
@@ -36768,9 +36745,9 @@ function NotificationsHeaderButton({
36768
36745
  dimmedClass
36769
36746
  }) {
36770
36747
  const ctx = useOptionalNotifications();
36771
- const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _787 => _787.unreadCount]), () => ( fallbackUnreadCount))) > 0;
36772
- const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _788 => _788.isOpen]), () => ( false));
36773
- const onClick = _optionalChain([ctx, 'optionalAccess', _789 => _789.toggle]);
36748
+ const hasUnread = (_nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _790 => _790.unreadCount]), () => ( fallbackUnreadCount))) > 0;
36749
+ const isActive = _nullishCoalesce(_optionalChain([ctx, 'optionalAccess', _791 => _791.isOpen]), () => ( false));
36750
+ const onClick = _optionalChain([ctx, 'optionalAccess', _792 => _792.toggle]);
36774
36751
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
36775
36752
  HeaderButton,
36776
36753
  {
@@ -36817,7 +36794,7 @@ var MobileBurgerMenu = React121.default.memo(function MobileBurgerMenu2({
36817
36794
  if (item.onClick) {
36818
36795
  item.onClick();
36819
36796
  } else if (item.path) {
36820
- _optionalChain([config, 'access', _790 => _790.onNavigate, 'optionalCall', _791 => _791(item.path)]);
36797
+ _optionalChain([config, 'access', _793 => _793.onNavigate, 'optionalCall', _794 => _794(item.path)]);
36821
36798
  }
36822
36799
  onClose();
36823
36800
  }, [config, onClose]);
@@ -37423,7 +37400,7 @@ var ShellTypeBadge = ({
37423
37400
  className,
37424
37401
  iconClassName
37425
37402
  }) => {
37426
- const normalizedType = _optionalChain([shellType, 'optionalAccess', _792 => _792.toUpperCase, 'call', _793 => _793()]);
37403
+ const normalizedType = _optionalChain([shellType, 'optionalAccess', _795 => _795.toUpperCase, 'call', _796 => _796()]);
37427
37404
  const label = getShellLabel(normalizedType);
37428
37405
  const { icon: IconComponent, props: iconProps } = _nullishCoalesce(shellIconMap[normalizedType], () => ( defaultIconConfig));
37429
37406
  const defaultIconClassName = "className" in iconProps ? iconProps.className : void 0;
@@ -37810,12 +37787,12 @@ function OnboardingWalkthrough({
37810
37787
  }
37811
37788
  }, [state.completedSteps, markComplete]);
37812
37789
  const handleStepSkip = (step) => {
37813
- _optionalChain([step, 'access', _794 => _794.onSkip, 'optionalCall', _795 => _795()]);
37790
+ _optionalChain([step, 'access', _797 => _797.onSkip, 'optionalCall', _798 => _798()]);
37814
37791
  markSkipped(step.id);
37815
37792
  };
37816
37793
  const handleDismiss = () => {
37817
37794
  dismissOnboarding();
37818
- _optionalChain([onDismiss, 'optionalCall', _796 => _796()]);
37795
+ _optionalChain([onDismiss, 'optionalCall', _799 => _799()]);
37819
37796
  };
37820
37797
  if (state.dismissed) {
37821
37798
  return null;
@@ -37945,7 +37922,7 @@ var LogCard = ({ log, isLast, showConnector, onClick }) => {
37945
37922
  onKeyDown: (e) => {
37946
37923
  if (e.key === "Enter" || e.key === " ") {
37947
37924
  e.preventDefault();
37948
- _optionalChain([onClick, 'optionalCall', _797 => _797()]);
37925
+ _optionalChain([onClick, 'optionalCall', _800 => _800()]);
37949
37926
  }
37950
37927
  },
37951
37928
  children: [
@@ -38046,7 +38023,7 @@ var LogsList = React118.forwardRef(({
38046
38023
  log,
38047
38024
  isLast: index === logs.length - 1,
38048
38025
  showConnector,
38049
- onClick: () => _optionalChain([onLogClick, 'optionalCall', _798 => _798(log)])
38026
+ onClick: () => _optionalChain([onLogClick, 'optionalCall', _801 => _801(log)])
38050
38027
  },
38051
38028
  log.id
38052
38029
  ))
@@ -38147,7 +38124,7 @@ var Slider = React120.forwardRef(
38147
38124
  ({ className, value = [0], onValueChange, min = 0, max = 100, step = 1, ...props }, ref) => {
38148
38125
  const handleChange = (e) => {
38149
38126
  const newValue = [Number(e.target.value)];
38150
- _optionalChain([onValueChange, 'optionalCall', _799 => _799(newValue)]);
38127
+ _optionalChain([onValueChange, 'optionalCall', _802 => _802(newValue)]);
38151
38128
  };
38152
38129
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38153
38130
  "input",
@@ -38581,7 +38558,7 @@ function CursorPaginationSimple({
38581
38558
  {
38582
38559
  variant: "transparent",
38583
38560
  size: "icon",
38584
- onClick: () => _optionalChain([onPrevious, 'optionalCall', _800 => _800("")]),
38561
+ onClick: () => _optionalChain([onPrevious, 'optionalCall', _803 => _803("")]),
38585
38562
  disabled: !hasPreviousPage || loading,
38586
38563
  className: "h-8 w-8",
38587
38564
  leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronLeft, { className: "h-4 w-4" }),
@@ -38593,7 +38570,7 @@ function CursorPaginationSimple({
38593
38570
  {
38594
38571
  variant: "transparent",
38595
38572
  size: "icon",
38596
- onClick: () => _optionalChain([onNext, 'optionalCall', _801 => _801("")]),
38573
+ onClick: () => _optionalChain([onNext, 'optionalCall', _804 => _804("")]),
38597
38574
  disabled: !hasNextPage || loading,
38598
38575
  className: "h-8 w-8",
38599
38576
  rightIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ChevronRight, { className: "h-4 w-4" }),
@@ -38613,8 +38590,8 @@ function TableEmptyState({ message: message2, icon, action, className }) {
38613
38590
  icon: _nullishCoalesce(icon, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkWZW7C7TFcjs.SearchIcon, {}))),
38614
38591
  title: _nullishCoalesce(message2, () => ( "No results found")),
38615
38592
  description: message2 == null ? "Try adjusting your search or filters" : void 0,
38616
- buttonLabel: _optionalChain([action, 'optionalAccess', _802 => _802.label]),
38617
- onButtonClick: _optionalChain([action, 'optionalAccess', _803 => _803.onClick]),
38593
+ buttonLabel: _optionalChain([action, 'optionalAccess', _805 => _805.label]),
38594
+ onButtonClick: _optionalChain([action, 'optionalAccess', _806 => _806.onClick]),
38618
38595
  className: _chunkFIG2RKZFcjs.cn.call(void 0, "py-[var(--spacing-system-xxl)]", className)
38619
38596
  }
38620
38597
  );
@@ -38635,7 +38612,7 @@ function TableColumnFilterDropdown({
38635
38612
  placement = "bottom-start",
38636
38613
  dropdownClassName = "min-w-[240px]"
38637
38614
  }) {
38638
- const activeCount = _optionalChain([filters, 'optionalAccess', _804 => _804[columnKey], 'optionalAccess', _805 => _805.length]) || 0;
38615
+ const activeCount = _optionalChain([filters, 'optionalAccess', _807 => _807[columnKey], 'optionalAccess', _808 => _808.length]) || 0;
38639
38616
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
38640
38617
  FiltersDropdown,
38641
38618
  {
@@ -38678,7 +38655,7 @@ function TableColumnFilterDropdown({
38678
38655
  delete newFilters[columnKey];
38679
38656
  onFilterChange(newFilters);
38680
38657
  },
38681
- currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _806 => _806[columnKey]]) || [] },
38658
+ currentFilters: { [columnKey]: _optionalChain([filters, 'optionalAccess', _809 => _809[columnKey]]) || [] },
38682
38659
  placement,
38683
38660
  dropdownClassName
38684
38661
  }
@@ -38888,7 +38865,7 @@ function TableCardSkeleton({
38888
38865
  className,
38889
38866
  rowClassName
38890
38867
  }) {
38891
- const primaryKey = _optionalChain([(_nullishCoalesce(columns.find((c) => /flex-(1|\[)/.test(c.width || "")), () => ( columns[0]))), 'optionalAccess', _807 => _807.key]);
38868
+ const primaryKey = _optionalChain([(_nullishCoalesce(columns.find((c) => /flex-(1|\[)/.test(c.width || "")), () => ( columns[0]))), 'optionalAccess', _810 => _810.key]);
38892
38869
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
38893
38870
  "div",
38894
38871
  {
@@ -38981,7 +38958,7 @@ function TableRow({
38981
38958
  const keys = column.key.split(".");
38982
38959
  let value = item;
38983
38960
  for (const key of keys) {
38984
- value = _optionalChain([value, 'optionalAccess', _808 => _808[key]]);
38961
+ value = _optionalChain([value, 'optionalAccess', _811 => _811[key]]);
38985
38962
  }
38986
38963
  if (value === null || value === void 0) {
38987
38964
  return "-";
@@ -39070,7 +39047,7 @@ function useTableMotion(enabled) {
39070
39047
  // src/components/ui/table/table.tsx
39071
39048
 
39072
39049
  function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref) {
39073
- const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _809 => _809.length])) || Boolean(renderRowActions);
39050
+ const hasActions = Boolean(_optionalChain([rowActions, 'optionalAccess', _812 => _812.length])) || Boolean(renderRowActions);
39074
39051
  const result = [...columns];
39075
39052
  if (hasActions) {
39076
39053
  const actionsColumn = {
@@ -39166,7 +39143,7 @@ function Table({
39166
39143
  return rowKey(item);
39167
39144
  }
39168
39145
  const key = item[rowKey];
39169
- return _optionalChain([key, 'optionalAccess', _810 => _810.toString, 'call', _811 => _811()]) || index.toString();
39146
+ return _optionalChain([key, 'optionalAccess', _813 => _813.toString, 'call', _814 => _814()]) || index.toString();
39170
39147
  };
39171
39148
  const getRowClassName = (item, index) => {
39172
39149
  if (typeof rowClassName === "function") {
@@ -39200,23 +39177,23 @@ function Table({
39200
39177
  const allSelected = selectedRows.length > 0 && selectedRows.length === data.length;
39201
39178
  const someSelected = selectedRows.length > 0 && selectedRows.length < data.length;
39202
39179
  const sentinelRef = _react.useRef.call(void 0, null);
39203
- const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _812 => _812.onLoadMore]));
39204
- onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _813 => _813.onLoadMore]);
39180
+ const onLoadMoreRef = _react.useRef.call(void 0, _optionalChain([infiniteScroll, 'optionalAccess', _815 => _815.onLoadMore]));
39181
+ onLoadMoreRef.current = _optionalChain([infiniteScroll, 'optionalAccess', _816 => _816.onLoadMore]);
39205
39182
  _react.useEffect.call(void 0, () => {
39206
- if (!_optionalChain([infiniteScroll, 'optionalAccess', _814 => _814.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
39183
+ if (!_optionalChain([infiniteScroll, 'optionalAccess', _817 => _817.hasNextPage]) || infiniteScroll.isFetchingNextPage) return;
39207
39184
  const sentinel = sentinelRef.current;
39208
39185
  if (!sentinel) return;
39209
39186
  const observer = new IntersectionObserver(
39210
39187
  (entries) => {
39211
- if (_optionalChain([entries, 'access', _815 => _815[0], 'optionalAccess', _816 => _816.isIntersecting])) {
39212
- _optionalChain([onLoadMoreRef, 'access', _817 => _817.current, 'optionalCall', _818 => _818()]);
39188
+ if (_optionalChain([entries, 'access', _818 => _818[0], 'optionalAccess', _819 => _819.isIntersecting])) {
39189
+ _optionalChain([onLoadMoreRef, 'access', _820 => _820.current, 'optionalCall', _821 => _821()]);
39213
39190
  }
39214
39191
  },
39215
39192
  { rootMargin: "200px" }
39216
39193
  );
39217
39194
  observer.observe(sentinel);
39218
39195
  return () => observer.disconnect();
39219
- }, [_optionalChain([infiniteScroll, 'optionalAccess', _819 => _819.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _820 => _820.isFetchingNextPage])]);
39196
+ }, [_optionalChain([infiniteScroll, 'optionalAccess', _822 => _822.hasNextPage]), _optionalChain([infiniteScroll, 'optionalAccess', _823 => _823.isFetchingNextPage])]);
39220
39197
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkFIG2RKZFcjs.cn.call(void 0, "flex flex-col gap-1 w-full", containerClassName), children: [
39221
39198
  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: [
39222
39199
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "text-ods-text-secondary text-sm", children: [
@@ -39286,14 +39263,14 @@ function Table({
39286
39263
  selected: isRowSelected(item),
39287
39264
  onSelect: handleSelectRow,
39288
39265
  animateRowReorder,
39289
- motionDiv: _optionalChain([tableMotion, 'optionalAccess', _821 => _821.motionDiv])
39266
+ motionDiv: _optionalChain([tableMotion, 'optionalAccess', _824 => _824.motionDiv])
39290
39267
  },
39291
39268
  getRowKey(item, index)
39292
39269
  ));
39293
- const LayoutGroup = _optionalChain([tableMotion, 'optionalAccess', _822 => _822.LayoutGroup]);
39270
+ const LayoutGroup = _optionalChain([tableMotion, 'optionalAccess', _825 => _825.LayoutGroup]);
39294
39271
  return animateRowReorder && LayoutGroup ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, LayoutGroup, { children: rows }) : rows;
39295
39272
  })(),
39296
- _optionalChain([infiniteScroll, 'optionalAccess', _823 => _823.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39273
+ _optionalChain([infiniteScroll, 'optionalAccess', _826 => _826.isFetchingNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39297
39274
  TableCardSkeleton,
39298
39275
  {
39299
39276
  columns,
@@ -39302,7 +39279,7 @@ function Table({
39302
39279
  hasChevron: Boolean(rowHref)
39303
39280
  }
39304
39281
  ),
39305
- _optionalChain([infiniteScroll, 'optionalAccess', _824 => _824.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
39282
+ _optionalChain([infiniteScroll, 'optionalAccess', _827 => _827.hasNextPage]) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" }),
39306
39283
  !infiniteScroll && Array.from({ length: Math.max(0, skeletonRows - data.length) }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
39307
39284
  "div",
39308
39285
  {
@@ -39660,7 +39637,7 @@ function QueryReportTable({
39660
39637
  );
39661
39638
  const handleExport = () => {
39662
39639
  exportToCSV(data, columns, exportFilename);
39663
- _optionalChain([onExport, 'optionalCall', _825 => _825()]);
39640
+ _optionalChain([onExport, 'optionalCall', _828 => _828()]);
39664
39641
  };
39665
39642
  const tableMinWidth = columns.length * (columnWidth + 16);
39666
39643
  const {
@@ -39833,7 +39810,7 @@ function DataTableColumnFilter({
39833
39810
  align = "left"
39834
39811
  }) {
39835
39812
  const currentValue = column.getFilterValue();
39836
- const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _826 => _826.length]), () => ( 0));
39813
+ const activeCount = _nullishCoalesce(_optionalChain([currentValue, 'optionalAccess', _829 => _829.length]), () => ( 0));
39837
39814
  const sections = _react.useMemo.call(void 0,
39838
39815
  () => [
39839
39816
  {
@@ -39914,7 +39891,7 @@ function DataTableHeader({
39914
39891
  if (header.isPlaceholder) return false;
39915
39892
  if (isLgUp) return true;
39916
39893
  const meta = header.column.columnDef.meta;
39917
- return Boolean(_optionalChain([meta, 'optionalAccess', _827 => _827.filter])) || _optionalChain([meta, 'optionalAccess', _828 => _828.alwaysShowHeader]) === true;
39894
+ return Boolean(_optionalChain([meta, 'optionalAccess', _830 => _830.filter])) || _optionalChain([meta, 'optionalAccess', _831 => _831.alwaysShowHeader]) === true;
39918
39895
  });
39919
39896
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39920
39897
  "div",
@@ -39944,21 +39921,21 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
39944
39921
  if (header.isPlaceholder) return null;
39945
39922
  const column = header.column;
39946
39923
  const meta = column.columnDef.meta;
39947
- const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _829 => _829.filter]));
39948
- const keepOnTablet = hasFilter || _optionalChain([meta, 'optionalAccess', _830 => _830.alwaysShowHeader]) === true;
39949
- const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _831 => _831.align]), () => ( "left"));
39950
- const canSort = _optionalChain([meta, 'optionalAccess', _832 => _832.sortable]) === true;
39951
- const sortDir = _optionalChain([sort, 'optionalAccess', _833 => _833.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
39924
+ const hasFilter = Boolean(_optionalChain([meta, 'optionalAccess', _832 => _832.filter]));
39925
+ const keepOnTablet = hasFilter || _optionalChain([meta, 'optionalAccess', _833 => _833.alwaysShowHeader]) === true;
39926
+ const align = _nullishCoalesce(_optionalChain([meta, 'optionalAccess', _834 => _834.align]), () => ( "left"));
39927
+ const canSort = _optionalChain([meta, 'optionalAccess', _835 => _835.sortable]) === true;
39928
+ const sortDir = _optionalChain([sort, 'optionalAccess', _836 => _836.id]) === column.id ? sort.desc ? "desc" : "asc" : false;
39952
39929
  if (!isLgUp && !keepOnTablet) return null;
39953
39930
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39954
39931
  "div",
39955
39932
  {
39956
39933
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
39957
39934
  "flex items-stretch",
39958
- isLgUp && (_optionalChain([meta, 'optionalAccess', _834 => _834.width]) || "flex-1 min-w-0"),
39959
- _optionalChain([meta, 'optionalAccess', _835 => _835.headerClassName]),
39935
+ isLgUp && (_optionalChain([meta, 'optionalAccess', _837 => _837.width]) || "flex-1 min-w-0"),
39936
+ _optionalChain([meta, 'optionalAccess', _838 => _838.headerClassName]),
39960
39937
  // Don't apply hide classes if column is filterable on tablet (keep filter accessible)
39961
- !(keepOnTablet && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _836 => _836.hideAt]))
39938
+ !(keepOnTablet && !isLgUp) && getHideClasses2(_optionalChain([meta, 'optionalAccess', _839 => _839.hideAt]))
39962
39939
  ),
39963
39940
  children: hasFilter ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
39964
39941
  DataTableColumnFilter,
@@ -39977,7 +39954,7 @@ function HeaderCell({ header, isLgUp, sort, onSortChange }) {
39977
39954
  isLgUp && alignJustify(align),
39978
39955
  canSort && "group cursor-pointer"
39979
39956
  ),
39980
- onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _837 => _837(column.id)]) : void 0,
39957
+ onClick: canSort ? () => _optionalChain([onSortChange, 'optionalCall', _840 => _840(column.id)]) : void 0,
39981
39958
  children: [
39982
39959
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, HeaderLabel, { header }),
39983
39960
  canSort && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SortIcon, { sorted: sortDir })
@@ -40042,7 +40019,7 @@ function DataTableSkeleton({
40042
40019
  }) {
40043
40020
  const table = useDataTableContext();
40044
40021
  const columns = table.getVisibleFlatColumns();
40045
- const firstColumnId = _optionalChain([columns, 'access', _838 => _838[0], 'optionalAccess', _839 => _839.id]);
40022
+ const firstColumnId = _optionalChain([columns, 'access', _841 => _841[0], 'optionalAccess', _842 => _842.id]);
40046
40023
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
40047
40024
  "div",
40048
40025
  {
@@ -40066,7 +40043,7 @@ function DataTableSkeleton({
40066
40043
  {
40067
40044
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
40068
40045
  "flex flex-col justify-center shrink-0",
40069
- _optionalChain([meta, 'optionalAccess', _840 => _840.width]) || "flex-1"
40046
+ _optionalChain([meta, 'optionalAccess', _843 => _843.width]) || "flex-1"
40070
40047
  ),
40071
40048
  children: [
40072
40049
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-5 bg-ods-bg-surface rounded-sm w-3/4 mb-[var(--spacing-system-xxs)]" }),
@@ -40116,7 +40093,7 @@ function DataTableRowImpl({
40116
40093
  const handleClick = _react.useCallback.call(void 0,
40117
40094
  (e) => {
40118
40095
  const target = e.target;
40119
- if (!_optionalChain([containerRef, 'access', _841 => _841.current, 'optionalAccess', _842 => _842.contains, 'call', _843 => _843(target)])) {
40096
+ if (!_optionalChain([containerRef, 'access', _844 => _844.current, 'optionalAccess', _845 => _845.contains, 'call', _846 => _846(target)])) {
40120
40097
  if (isLinkMode) e.preventDefault();
40121
40098
  return;
40122
40099
  }
@@ -40124,7 +40101,7 @@ function DataTableRowImpl({
40124
40101
  if (isLinkMode) e.preventDefault();
40125
40102
  return;
40126
40103
  }
40127
- _optionalChain([onClick, 'optionalCall', _844 => _844(row.original)]);
40104
+ _optionalChain([onClick, 'optionalCall', _847 => _847(row.original)]);
40128
40105
  },
40129
40106
  [onClick, row.original, isLinkMode]
40130
40107
  );
@@ -40149,10 +40126,10 @@ function DataTableRowImpl({
40149
40126
  {
40150
40127
  className: _chunkFIG2RKZFcjs.cn.call(void 0,
40151
40128
  "flex flex-col overflow-hidden",
40152
- alignJustify(_optionalChain([meta, 'optionalAccess', _845 => _845.align])),
40153
- _optionalChain([meta, 'optionalAccess', _846 => _846.width]) || "flex-1 min-w-0",
40154
- _optionalChain([meta, 'optionalAccess', _847 => _847.cellClassName]),
40155
- getHideClasses2(_optionalChain([meta, 'optionalAccess', _848 => _848.hideAt]))
40129
+ alignJustify(_optionalChain([meta, 'optionalAccess', _848 => _848.align])),
40130
+ _optionalChain([meta, 'optionalAccess', _849 => _849.width]) || "flex-1 min-w-0",
40131
+ _optionalChain([meta, 'optionalAccess', _850 => _850.cellClassName]),
40132
+ getHideClasses2(_optionalChain([meta, 'optionalAccess', _851 => _851.hideAt]))
40156
40133
  ),
40157
40134
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CellContent, { children: _reacttable.flexRender.call(void 0, cell.column.columnDef.cell, cell.getContext()) })
40158
40135
  },
@@ -40232,7 +40209,7 @@ function DataTableBody({
40232
40209
  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: [
40233
40210
  rows.map((row, index) => {
40234
40211
  const item = row.original;
40235
- const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _849 => _849(item)]), () => ( void 0));
40212
+ const href = _nullishCoalesce(_optionalChain([rowHref, 'optionalCall', _852 => _852(item)]), () => ( void 0));
40236
40213
  const cls = typeof rowClassName === "function" ? rowClassName(item, index) : rowClassName;
40237
40214
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
40238
40215
  DataTableRow,
@@ -40243,7 +40220,7 @@ function DataTableBody({
40243
40220
  compact,
40244
40221
  autoHeight,
40245
40222
  className: cls,
40246
- subRow: _optionalChain([renderSubRow, 'optionalCall', _850 => _850(item)])
40223
+ subRow: _optionalChain([renderSubRow, 'optionalCall', _853 => _853(item)])
40247
40224
  },
40248
40225
  row.id
40249
40226
  );
@@ -40298,7 +40275,7 @@ function DataTableInfiniteFooter({
40298
40275
  if (!sentinel) return;
40299
40276
  const observer = new IntersectionObserver(
40300
40277
  (entries) => {
40301
- if (_optionalChain([entries, 'access', _851 => _851[0], 'optionalAccess', _852 => _852.isIntersecting])) onLoadMoreRef.current();
40278
+ if (_optionalChain([entries, 'access', _854 => _854[0], 'optionalAccess', _855 => _855.isIntersecting])) onLoadMoreRef.current();
40302
40279
  },
40303
40280
  { rootMargin }
40304
40281
  );
@@ -40346,7 +40323,7 @@ function DataTableRowCount({
40346
40323
  const table = useDataTableContext();
40347
40324
  const count = _nullishCoalesce(totalCount, () => ( table.getRowModel().rows.length));
40348
40325
  if (hideWhenEmpty && count === 0) return null;
40349
- const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _853 => _853(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
40326
+ const label = _nullishCoalesce(_optionalChain([pluralize, 'optionalCall', _856 => _856(count, itemName)]), () => ( (count === 1 ? itemName : `${itemName}s`)));
40350
40327
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
40351
40328
  "span",
40352
40329
  {
@@ -40505,7 +40482,7 @@ function SearchInput({
40505
40482
  if (!showHiddenTags) return;
40506
40483
  const handleClick = (e) => {
40507
40484
  const target = e.target;
40508
- if (!_optionalChain([hiddenTagsRef, 'access', _854 => _854.current, 'optionalAccess', _855 => _855.contains, 'call', _856 => _856(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _857 => _857.current, 'optionalAccess', _858 => _858.contains, 'call', _859 => _859(target)])) {
40485
+ if (!_optionalChain([hiddenTagsRef, 'access', _857 => _857.current, 'optionalAccess', _858 => _858.contains, 'call', _859 => _859(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _860 => _860.current, 'optionalAccess', _861 => _861.contains, 'call', _862 => _862(target)])) {
40509
40486
  setShowHiddenTags(false);
40510
40487
  }
40511
40488
  };
@@ -40553,10 +40530,10 @@ function SearchInput({
40553
40530
  } else {
40554
40531
  setInternalValue("");
40555
40532
  }
40556
- _optionalChain([inputRef, 'access', _860 => _860.current, 'optionalAccess', _861 => _861.focus, 'call', _862 => _862()]);
40533
+ _optionalChain([inputRef, 'access', _863 => _863.current, 'optionalAccess', _864 => _864.focus, 'call', _865 => _865()]);
40557
40534
  };
40558
40535
  const handleResultClick = (result, e) => {
40559
- _optionalChain([onResultSelect, 'optionalCall', _863 => _863(
40536
+ _optionalChain([onResultSelect, 'optionalCall', _866 => _866(
40560
40537
  result,
40561
40538
  e ? {
40562
40539
  metaKey: e.metaKey,
@@ -40588,7 +40565,7 @@ function SearchInput({
40588
40565
  if (highlightedIndex >= 0 && flatResults[highlightedIndex]) {
40589
40566
  handleResultClick(flatResults[highlightedIndex]);
40590
40567
  } else {
40591
- _optionalChain([onSubmit, 'optionalCall', _864 => _864(currentValue)]);
40568
+ _optionalChain([onSubmit, 'optionalCall', _867 => _867(currentValue)]);
40592
40569
  }
40593
40570
  break;
40594
40571
  case "Escape":
@@ -40666,7 +40643,7 @@ function SearchInput({
40666
40643
  dropdownVisible && "!border-ods-accent"
40667
40644
  ),
40668
40645
  onClick: () => {
40669
- _optionalChain([inputRef, 'access', _865 => _865.current, 'optionalAccess', _866 => _866.focus, 'call', _867 => _867()]);
40646
+ _optionalChain([inputRef, 'access', _868 => _868.current, 'optionalAccess', _869 => _869.focus, 'call', _870 => _870()]);
40670
40647
  setIsOpen(true);
40671
40648
  },
40672
40649
  children: [
@@ -40750,10 +40727,10 @@ function SearchInput({
40750
40727
  align: "start",
40751
40728
  onOpenAutoFocus: (e) => {
40752
40729
  e.preventDefault();
40753
- _optionalChain([inputRef, 'access', _868 => _868.current, 'optionalAccess', _869 => _869.focus, 'call', _870 => _870()]);
40730
+ _optionalChain([inputRef, 'access', _871 => _871.current, 'optionalAccess', _872 => _872.focus, 'call', _873 => _873()]);
40754
40731
  },
40755
40732
  onInteractOutside: (e) => {
40756
- if (_optionalChain([containerRef, 'access', _871 => _871.current, 'optionalAccess', _872 => _872.contains, 'call', _873 => _873(e.target)])) {
40733
+ if (_optionalChain([containerRef, 'access', _874 => _874.current, 'optionalAccess', _875 => _875.contains, 'call', _876 => _876(e.target)])) {
40757
40734
  e.preventDefault();
40758
40735
  }
40759
40736
  },
@@ -40770,10 +40747,10 @@ function SearchInput({
40770
40747
  ref: hiddenTagsPopupRef,
40771
40748
  items: hiddenChips.map((chip) => ({ label: chip.label, value: chip.id })),
40772
40749
  style: {
40773
- left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _874 => _874.current, 'optionalAccess', _875 => _875.getBoundingClientRect, 'call', _876 => _876(), 'access', _877 => _877.left]), () => ( 0))) : 0
40750
+ left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([containerRef, 'access', _877 => _877.current, 'optionalAccess', _878 => _878.getBoundingClientRect, 'call', _879 => _879(), 'access', _880 => _880.left]), () => ( 0))) : 0
40774
40751
  },
40775
40752
  onRemove: (value2) => {
40776
- _optionalChain([onFilterRemove, 'optionalCall', _878 => _878(value2)]);
40753
+ _optionalChain([onFilterRemove, 'optionalCall', _881 => _881(value2)]);
40777
40754
  if (hiddenCount <= 1) setShowHiddenTags(false);
40778
40755
  }
40779
40756
  }
@@ -40824,7 +40801,7 @@ function FilterListItem({
40824
40801
  }) {
40825
40802
  const handleToggle = () => {
40826
40803
  if (disabled) return;
40827
- _optionalChain([onToggle, 'optionalCall', _879 => _879(!selected)]);
40804
+ _optionalChain([onToggle, 'optionalCall', _882 => _882(!selected)]);
40828
40805
  };
40829
40806
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
40830
40807
  "div",
@@ -40871,7 +40848,7 @@ function FilterListItem({
40871
40848
  CheckboxPrimitive4.Root,
40872
40849
  {
40873
40850
  checked: selected,
40874
- onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _880 => _880(c === true)]),
40851
+ onCheckedChange: (c) => _optionalChain([onToggle, 'optionalCall', _883 => _883(c === true)]),
40875
40852
  onClick: (e) => e.stopPropagation(),
40876
40853
  disabled,
40877
40854
  "aria-label": title,
@@ -40970,7 +40947,7 @@ function TagSearchInput({
40970
40947
  if (!showHiddenTags) return;
40971
40948
  const handleClick = (e) => {
40972
40949
  const target = e.target;
40973
- if (!_optionalChain([hiddenTagsRef, 'access', _881 => _881.current, 'optionalAccess', _882 => _882.contains, 'call', _883 => _883(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _884 => _884.current, 'optionalAccess', _885 => _885.contains, 'call', _886 => _886(target)])) {
40950
+ if (!_optionalChain([hiddenTagsRef, 'access', _884 => _884.current, 'optionalAccess', _885 => _885.contains, 'call', _886 => _886(target)]) && !_optionalChain([hiddenTagsPopupRef, 'access', _887 => _887.current, 'optionalAccess', _888 => _888.contains, 'call', _889 => _889(target)])) {
40974
40951
  setShowHiddenTags(false);
40975
40952
  }
40976
40953
  };
@@ -40986,13 +40963,13 @@ function TagSearchInput({
40986
40963
  e.preventDefault();
40987
40964
  onSubmit(searchValue);
40988
40965
  }
40989
- _optionalChain([onKeyDown, 'optionalCall', _887 => _887(e)]);
40966
+ _optionalChain([onKeyDown, 'optionalCall', _890 => _890(e)]);
40990
40967
  };
40991
40968
  const handleClearAll = (e) => {
40992
40969
  e.stopPropagation();
40993
40970
  e.preventDefault();
40994
- _optionalChain([onClearAll, 'optionalCall', _888 => _888()]);
40995
- _optionalChain([inputRef, 'access', _889 => _889.current, 'optionalAccess', _890 => _890.focus, 'call', _891 => _891()]);
40971
+ _optionalChain([onClearAll, 'optionalCall', _891 => _891()]);
40972
+ _optionalChain([inputRef, 'access', _892 => _892.current, 'optionalAccess', _893 => _893.focus, 'call', _894 => _894()]);
40996
40973
  };
40997
40974
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: wrapperRef, className: "relative", children: [
40998
40975
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -41009,7 +40986,7 @@ function TagSearchInput({
41009
40986
  className
41010
40987
  ),
41011
40988
  onClick: () => {
41012
- if (!disabled) _optionalChain([inputRef, 'access', _892 => _892.current, 'optionalAccess', _893 => _893.focus, 'call', _894 => _894()]);
40989
+ if (!disabled) _optionalChain([inputRef, 'access', _895 => _895.current, 'optionalAccess', _896 => _896.focus, 'call', _897 => _897()]);
41013
40990
  },
41014
40991
  children: [
41015
40992
  /* @__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" }) }),
@@ -41081,7 +41058,7 @@ function TagSearchInput({
41081
41058
  items: hiddenTags,
41082
41059
  disabled,
41083
41060
  style: {
41084
- left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _895 => _895.current, 'optionalAccess', _896 => _896.getBoundingClientRect, 'call', _897 => _897(), 'access', _898 => _898.left]), () => ( 0))) : 0
41061
+ left: badgeRef.current ? badgeRef.current.getBoundingClientRect().left - (_nullishCoalesce(_optionalChain([wrapperRef, 'access', _898 => _898.current, 'optionalAccess', _899 => _899.getBoundingClientRect, 'call', _900 => _900(), 'access', _901 => _901.left]), () => ( 0))) : 0
41085
41062
  },
41086
41063
  onRemove: (value) => {
41087
41064
  onTagRemove(value);
@@ -41182,7 +41159,7 @@ function MarkdownEditor({
41182
41159
  const [defaultExtraCommands, setDefaultExtraCommands] = _react.useState.call(void 0, []);
41183
41160
  _react.useEffect.call(void 0, () => {
41184
41161
  Promise.resolve().then(() => _interopRequireWildcard(require("@uiw/react-md-editor"))).then((mod) => {
41185
- if (_optionalChain([mod, 'access', _899 => _899.commands, 'optionalAccess', _900 => _900.getExtraCommands])) {
41162
+ if (_optionalChain([mod, 'access', _902 => _902.commands, 'optionalAccess', _903 => _903.getExtraCommands])) {
41186
41163
  setDefaultExtraCommands(mod.commands.getExtraCommands());
41187
41164
  }
41188
41165
  });
@@ -41216,7 +41193,7 @@ function MarkdownEditor({
41216
41193
  const isImage = file.type.startsWith("image/");
41217
41194
  const markdown = isImage ? `![${file.name}](${url})` : `[${file.name}](${url})`;
41218
41195
  insertTextAtCursor(markdown);
41219
- _optionalChain([onFileUploaded, 'optionalCall', _901 => _901(url, file.name)]);
41196
+ _optionalChain([onFileUploaded, 'optionalCall', _904 => _904(url, file.name)]);
41220
41197
  } catch (error) {
41221
41198
  console.error("File upload failed:", error);
41222
41199
  setUploadProgress("Upload failed. Please try again.");
@@ -41229,7 +41206,7 @@ function MarkdownEditor({
41229
41206
  );
41230
41207
  const handleFileInputChange = _react.useCallback.call(void 0,
41231
41208
  (e) => {
41232
- const file = _optionalChain([e, 'access', _902 => _902.target, 'access', _903 => _903.files, 'optionalAccess', _904 => _904[0]]);
41209
+ const file = _optionalChain([e, 'access', _905 => _905.target, 'access', _906 => _906.files, 'optionalAccess', _907 => _907[0]]);
41233
41210
  if (file) {
41234
41211
  handleFileUpload(file);
41235
41212
  e.target.value = "";
@@ -41240,7 +41217,7 @@ function MarkdownEditor({
41240
41217
  const handlePaste = _react.useCallback.call(void 0,
41241
41218
  (e) => {
41242
41219
  if (!onUploadFile) return;
41243
- const items = _optionalChain([e, 'access', _905 => _905.clipboardData, 'optionalAccess', _906 => _906.items]);
41220
+ const items = _optionalChain([e, 'access', _908 => _908.clipboardData, 'optionalAccess', _909 => _909.items]);
41244
41221
  if (!items) return;
41245
41222
  for (const item of items) {
41246
41223
  if (item.type.startsWith("image/")) {
@@ -41265,7 +41242,7 @@ function MarkdownEditor({
41265
41242
  buttonProps: { "aria-label": "Upload file", title: "Upload file" },
41266
41243
  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" }),
41267
41244
  execute: () => {
41268
- _optionalChain([fileInputRef, 'access', _907 => _907.current, 'optionalAccess', _908 => _908.click, 'call', _909 => _909()]);
41245
+ _optionalChain([fileInputRef, 'access', _910 => _910.current, 'optionalAccess', _911 => _911.click, 'call', _912 => _912()]);
41269
41246
  }
41270
41247
  } : null;
41271
41248
  const extraCommands = uploadCommand ? [...defaultExtraCommands, uploadCommand] : defaultExtraCommands;
@@ -41277,7 +41254,7 @@ function MarkdownEditor({
41277
41254
  const EDGE_ZONE = 60;
41278
41255
  const MAX_SCROLL_SPEED = 15;
41279
41256
  const findScrollParent = _react.useCallback.call(void 0, (el) => {
41280
- let node = _optionalChain([el, 'optionalAccess', _910 => _910.parentElement]);
41257
+ let node = _optionalChain([el, 'optionalAccess', _913 => _913.parentElement]);
41281
41258
  while (node && node !== document.documentElement) {
41282
41259
  const { overflowY } = window.getComputedStyle(node);
41283
41260
  if ((overflowY === "auto" || overflowY === "scroll") && node.scrollHeight > node.clientHeight) {
@@ -41420,7 +41397,7 @@ function matchesAccept(file, accept) {
41420
41397
  });
41421
41398
  }
41422
41399
  function dragHasFiles(e) {
41423
- const types = _optionalChain([e, 'access', _911 => _911.dataTransfer, 'optionalAccess', _912 => _912.types]);
41400
+ const types = _optionalChain([e, 'access', _914 => _914.dataTransfer, 'optionalAccess', _915 => _915.types]);
41424
41401
  if (!types) return false;
41425
41402
  for (let i = 0; i < types.length; i++) {
41426
41403
  if (types[i] === "Files") return true;
@@ -41516,7 +41493,7 @@ function FileUpload({
41516
41493
  e.stopPropagation();
41517
41494
  setDragActive(false);
41518
41495
  if (disabled) return;
41519
- if (_optionalChain([e, 'access', _913 => _913.dataTransfer, 'access', _914 => _914.files, 'optionalAccess', _915 => _915.length])) {
41496
+ if (_optionalChain([e, 'access', _916 => _916.dataTransfer, 'access', _917 => _917.files, 'optionalAccess', _918 => _918.length])) {
41520
41497
  handleFiles(e.dataTransfer.files);
41521
41498
  }
41522
41499
  };
@@ -41544,7 +41521,7 @@ function FileUpload({
41544
41521
  e.preventDefault();
41545
41522
  dragCounter = 0;
41546
41523
  setDragActive(false);
41547
- if (_optionalChain([e, 'access', _916 => _916.dataTransfer, 'optionalAccess', _917 => _917.files, 'optionalAccess', _918 => _918.length])) {
41524
+ if (_optionalChain([e, 'access', _919 => _919.dataTransfer, 'optionalAccess', _920 => _920.files, 'optionalAccess', _921 => _921.length])) {
41548
41525
  handleFilesRef.current(e.dataTransfer.files);
41549
41526
  }
41550
41527
  };
@@ -41566,7 +41543,7 @@ function FileUpload({
41566
41543
  };
41567
41544
  }, [acceptWindowDrops, disabled]);
41568
41545
  const handleFileSelect = (e) => {
41569
- if (_optionalChain([e, 'access', _919 => _919.target, 'access', _920 => _920.files, 'optionalAccess', _921 => _921.length])) {
41546
+ if (_optionalChain([e, 'access', _922 => _922.target, 'access', _923 => _923.files, 'optionalAccess', _924 => _924.length])) {
41570
41547
  handleFiles(e.target.files);
41571
41548
  }
41572
41549
  };
@@ -41583,7 +41560,7 @@ function FileUpload({
41583
41560
  };
41584
41561
  const openDialog = async () => {
41585
41562
  if (disabled) return;
41586
- _optionalChain([fileInputRef, 'access', _922 => _922.current, 'optionalAccess', _923 => _923.click, 'call', _924 => _924()]);
41563
+ _optionalChain([fileInputRef, 'access', _925 => _925.current, 'optionalAccess', _926 => _926.click, 'call', _927 => _927()]);
41587
41564
  };
41588
41565
  const displayError = error || validationError || void 0;
41589
41566
  const hasFiles = isManaged ? managedFiles.length > 0 : files.length > 0;
@@ -41645,7 +41622,7 @@ function FileUpload({
41645
41622
  "button",
41646
41623
  {
41647
41624
  type: "button",
41648
- onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _925 => _925(entry.id)]),
41625
+ onClick: () => _optionalChain([onRemoveManagedFile, 'optionalCall', _928 => _928(entry.id)]),
41649
41626
  className: "shrink-0 text-ods-error hover:opacity-80 transition-opacity",
41650
41627
  "aria-label": `Remove ${entry.fileName}`,
41651
41628
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.TrashIcon, { className: "size-6" })
@@ -41776,7 +41753,7 @@ function ImageUploader({
41776
41753
  onChange(file);
41777
41754
  };
41778
41755
  const handleFileSelect = (e) => {
41779
- validateAndEmit(_optionalChain([e, 'access', _926 => _926.target, 'access', _927 => _927.files, 'optionalAccess', _928 => _928[0]]));
41756
+ validateAndEmit(_optionalChain([e, 'access', _929 => _929.target, 'access', _930 => _930.files, 'optionalAccess', _931 => _931[0]]));
41780
41757
  if (inputRef.current) inputRef.current.value = "";
41781
41758
  };
41782
41759
  const handleDrag = (e) => {
@@ -41791,11 +41768,11 @@ function ImageUploader({
41791
41768
  e.stopPropagation();
41792
41769
  setDragActive(false);
41793
41770
  if (!interactive) return;
41794
- validateAndEmit(_optionalChain([e, 'access', _929 => _929.dataTransfer, 'access', _930 => _930.files, 'optionalAccess', _931 => _931[0]]));
41771
+ validateAndEmit(_optionalChain([e, 'access', _932 => _932.dataTransfer, 'access', _933 => _933.files, 'optionalAccess', _934 => _934[0]]));
41795
41772
  };
41796
41773
  const openDialog = () => {
41797
41774
  if (!interactive) return;
41798
- _optionalChain([inputRef, 'access', _932 => _932.current, 'optionalAccess', _933 => _933.click, 'call', _934 => _934()]);
41775
+ _optionalChain([inputRef, 'access', _935 => _935.current, 'optionalAccess', _936 => _936.click, 'call', _937 => _937()]);
41799
41776
  };
41800
41777
  const handleRootKeyDown = (e) => {
41801
41778
  if (hasImage || !interactive) return;
@@ -41986,8 +41963,8 @@ function ColorPresetSelect({
41986
41963
  }) {
41987
41964
  const selectedPreset = presets.find((p) => p.key === presetKey);
41988
41965
  const isCustom = !selectedPreset;
41989
- const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _935 => _935.label]), () => ( "Custom"));
41990
- const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _936 => _936.color]), () => ( value));
41966
+ const displayLabel = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _938 => _938.label]), () => ( "Custom"));
41967
+ const displayColor = _nullishCoalesce(_optionalChain([selectedPreset, 'optionalAccess', _939 => _939.color]), () => ( value));
41991
41968
  const groups = [
41992
41969
  {
41993
41970
  items: [
@@ -42277,7 +42254,7 @@ function TicketStatusConfigRow({
42277
42254
  _chunkIMK6RUECcjs.Input,
42278
42255
  {
42279
42256
  value: name,
42280
- onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _937 => _937(e.target.value)]),
42257
+ onChange: (e) => _optionalChain([onNameChange, 'optionalCall', _940 => _940(e.target.value)]),
42281
42258
  disabled: isSystem,
42282
42259
  readOnly: isSystem,
42283
42260
  "aria-label": "Status name",
@@ -42650,14 +42627,14 @@ function TicketInfoSection({
42650
42627
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
42651
42628
  SquareAvatar,
42652
42629
  {
42653
- src: _optionalChain([organization, 'optionalAccess', _938 => _938.imageSrc]),
42654
- alt: _optionalChain([organization, 'optionalAccess', _939 => _939.name]),
42655
- fallback: _optionalChain([organization, 'optionalAccess', _940 => _940.name]) || "Org",
42630
+ src: _optionalChain([organization, 'optionalAccess', _941 => _941.imageSrc]),
42631
+ alt: _optionalChain([organization, 'optionalAccess', _942 => _942.name]),
42632
+ fallback: _optionalChain([organization, 'optionalAccess', _943 => _943.name]) || "Org",
42656
42633
  size: "md",
42657
42634
  className: "shrink-0"
42658
42635
  }
42659
42636
  ),
42660
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _941 => _941.name]) || "Unassigned", label: "Organization" })
42637
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, InfoCell2, { value: _optionalChain([organization, 'optionalAccess', _944 => _944.name]) || "Unassigned", label: "Organization" })
42661
42638
  ] }),
42662
42639
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "min-w-0", children: assigned ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
42663
42640
  AssigneeDropdown,
@@ -42678,10 +42655,10 @@ function TicketInfoSection({
42678
42655
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
42679
42656
  InfoCell2,
42680
42657
  {
42681
- value: _optionalChain([device, 'optionalAccess', _942 => _942.name]) || "Unassigned",
42658
+ value: _optionalChain([device, 'optionalAccess', _945 => _945.name]) || "Unassigned",
42682
42659
  label: "Device",
42683
- icon: _optionalChain([device, 'optionalAccess', _943 => _943.icon]),
42684
- onClick: _optionalChain([device, 'optionalAccess', _944 => _944.onClick])
42660
+ icon: _optionalChain([device, 'optionalAccess', _946 => _946.icon]),
42661
+ onClick: _optionalChain([device, 'optionalAccess', _947 => _947.onClick])
42685
42662
  }
42686
42663
  ),
42687
42664
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-4 min-w-0", children: [
@@ -43011,7 +42988,7 @@ function RoadmapCard({
43011
42988
  const compactHref = safeHref(_nullishCoalesce(href, () => ( null)));
43012
42989
  const hasVotes = (_nullishCoalesce(item.upvotes, () => ( 0))) > 0 || (_nullishCoalesce(item.downvotes, () => ( 0))) > 0;
43013
42990
  const hasFigma = !!item.figmaUrl;
43014
- const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _945 => _945.screenshots, 'optionalAccess', _946 => _946.length]), () => ( 0))) > 0;
42991
+ const hasScreenshots = (_nullishCoalesce(_optionalChain([item, 'access', _948 => _948.screenshots, 'optionalAccess', _949 => _949.length]), () => ( 0))) > 0;
43015
42992
  const typeLabel = getTaskTypeLabel(item.customItemId);
43016
42993
  const useTypeIcon = cardType === "internal_task" || !iconSrc && item.customItemId != null;
43017
42994
  const body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
@@ -43030,7 +43007,7 @@ function RoadmapCard({
43030
43007
  unoptimized: true,
43031
43008
  className: "h-8 w-8 object-contain"
43032
43009
  }
43033
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _947 => _947.title, 'optionalAccess', _948 => _948.substring, 'call', _949 => _949(0, 2)]) || "??" })
43010
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-[10px] font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _950 => _950.title, 'optionalAccess', _951 => _951.substring, 'call', _952 => _952(0, 2)]) || "??" })
43034
43011
  }
43035
43012
  ),
43036
43013
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
@@ -43105,7 +43082,7 @@ function RoadmapCard({
43105
43082
  unoptimized: true,
43106
43083
  className: "object-contain p-1"
43107
43084
  }
43108
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _950 => _950.title, 'optionalAccess', _951 => _951.substring, 'call', _952 => _952(0, 2)]) || "??" }) }),
43085
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "text-xs font-medium uppercase text-ods-text-secondary", children: _optionalChain([item, 'access', _953 => _953.title, 'optionalAccess', _954 => _954.substring, 'call', _955 => _955(0, 2)]) || "??" }) }),
43109
43086
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex-1 min-w-0 flex flex-col", children: [
43110
43087
  /* @__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 }) }),
43111
43088
  /* @__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: [
@@ -43615,7 +43592,7 @@ function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
43615
43592
  ] }) : null,
43616
43593
  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
43617
43594
  ] }),
43618
- _optionalChain([anchorProps, 'optionalAccess', _953 => _953.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
43595
+ _optionalChain([anchorProps, 'optionalAccess', _956 => _956.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
43619
43596
  ] });
43620
43597
  if (!anchorProps) {
43621
43598
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: `${COMPACT_CARD_OUTER_STATIC} ${_nullishCoalesce(className, () => ( ""))}`, "aria-label": "No link available", children: body });
@@ -43685,7 +43662,7 @@ function getDefaultOptions() {
43685
43662
  // node_modules/date-fns/startOfWeek.mjs
43686
43663
  function startOfWeek(date, options) {
43687
43664
  const defaultOptions2 = getDefaultOptions();
43688
- const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _954 => _954.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _955 => _955.locale, 'optionalAccess', _956 => _956.options, 'optionalAccess', _957 => _957.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _958 => _958.locale, 'optionalAccess', _959 => _959.options, 'optionalAccess', _960 => _960.weekStartsOn]))), () => ( 0));
43665
+ const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _957 => _957.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _958 => _958.locale, 'optionalAccess', _959 => _959.options, 'optionalAccess', _960 => _960.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _961 => _961.locale, 'optionalAccess', _962 => _962.options, 'optionalAccess', _963 => _963.weekStartsOn]))), () => ( 0));
43689
43666
  const _date = toDate2(date);
43690
43667
  const day = _date.getDay();
43691
43668
  const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
@@ -43860,7 +43837,7 @@ var formatDistance = (token, count, options) => {
43860
43837
  } else {
43861
43838
  result = tokenValue.other.replace("{{count}}", count.toString());
43862
43839
  }
43863
- if (_optionalChain([options, 'optionalAccess', _961 => _961.addSuffix])) {
43840
+ if (_optionalChain([options, 'optionalAccess', _964 => _964.addSuffix])) {
43864
43841
  if (options.comparison && options.comparison > 0) {
43865
43842
  return "in " + result;
43866
43843
  } else {
@@ -43927,15 +43904,15 @@ var formatRelative = (token, _date, _baseDate, _options) => formatRelativeLocale
43927
43904
  // node_modules/date-fns/locale/_lib/buildLocalizeFn.mjs
43928
43905
  function buildLocalizeFn(args) {
43929
43906
  return (value, options) => {
43930
- const context = _optionalChain([options, 'optionalAccess', _962 => _962.context]) ? String(options.context) : "standalone";
43907
+ const context = _optionalChain([options, 'optionalAccess', _965 => _965.context]) ? String(options.context) : "standalone";
43931
43908
  let valuesArray;
43932
43909
  if (context === "formatting" && args.formattingValues) {
43933
43910
  const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
43934
- const width = _optionalChain([options, 'optionalAccess', _963 => _963.width]) ? String(options.width) : defaultWidth;
43911
+ const width = _optionalChain([options, 'optionalAccess', _966 => _966.width]) ? String(options.width) : defaultWidth;
43935
43912
  valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
43936
43913
  } else {
43937
43914
  const defaultWidth = args.defaultWidth;
43938
- const width = _optionalChain([options, 'optionalAccess', _964 => _964.width]) ? String(options.width) : args.defaultWidth;
43915
+ const width = _optionalChain([options, 'optionalAccess', _967 => _967.width]) ? String(options.width) : args.defaultWidth;
43939
43916
  valuesArray = args.values[width] || args.values[defaultWidth];
43940
43917
  }
43941
43918
  const index = args.argumentCallback ? args.argumentCallback(value) : value;
@@ -44315,7 +44292,7 @@ function getWeekYear(date, options) {
44315
44292
  const _date = toDate2(date);
44316
44293
  const year = _date.getFullYear();
44317
44294
  const defaultOptions2 = getDefaultOptions();
44318
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _965 => _965.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _966 => _966.locale, 'optionalAccess', _967 => _967.options, 'optionalAccess', _968 => _968.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _969 => _969.locale, 'optionalAccess', _970 => _970.options, 'optionalAccess', _971 => _971.firstWeekContainsDate]))), () => ( 1));
44295
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _968 => _968.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _969 => _969.locale, 'optionalAccess', _970 => _970.options, 'optionalAccess', _971 => _971.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _972 => _972.locale, 'optionalAccess', _973 => _973.options, 'optionalAccess', _974 => _974.firstWeekContainsDate]))), () => ( 1));
44319
44296
  const firstWeekOfNextYear = constructFrom(date, 0);
44320
44297
  firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate);
44321
44298
  firstWeekOfNextYear.setHours(0, 0, 0, 0);
@@ -44336,7 +44313,7 @@ function getWeekYear(date, options) {
44336
44313
  // node_modules/date-fns/startOfWeekYear.mjs
44337
44314
  function startOfWeekYear(date, options) {
44338
44315
  const defaultOptions2 = getDefaultOptions();
44339
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _972 => _972.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _973 => _973.locale, 'optionalAccess', _974 => _974.options, 'optionalAccess', _975 => _975.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _976 => _976.locale, 'optionalAccess', _977 => _977.options, 'optionalAccess', _978 => _978.firstWeekContainsDate]))), () => ( 1));
44316
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _975 => _975.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _976 => _976.locale, 'optionalAccess', _977 => _977.options, 'optionalAccess', _978 => _978.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _979 => _979.locale, 'optionalAccess', _980 => _980.options, 'optionalAccess', _981 => _981.firstWeekContainsDate]))), () => ( 1));
44340
44317
  const year = getWeekYear(date, options);
44341
44318
  const firstWeek = constructFrom(date, 0);
44342
44319
  firstWeek.setFullYear(year, 0, firstWeekContainsDate);
@@ -45151,9 +45128,9 @@ var doubleQuoteRegExp = /''/g;
45151
45128
  var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
45152
45129
  function format2(date, formatStr, options) {
45153
45130
  const defaultOptions2 = getDefaultOptions();
45154
- const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _979 => _979.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
45155
- const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _980 => _980.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _981 => _981.locale, 'optionalAccess', _982 => _982.options, 'optionalAccess', _983 => _983.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _984 => _984.locale, 'optionalAccess', _985 => _985.options, 'optionalAccess', _986 => _986.firstWeekContainsDate]))), () => ( 1));
45156
- const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _987 => _987.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _988 => _988.locale, 'optionalAccess', _989 => _989.options, 'optionalAccess', _990 => _990.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _991 => _991.locale, 'optionalAccess', _992 => _992.options, 'optionalAccess', _993 => _993.weekStartsOn]))), () => ( 0));
45131
+ const locale = _nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _982 => _982.locale]), () => ( defaultOptions2.locale)), () => ( enUS));
45132
+ const firstWeekContainsDate = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _983 => _983.firstWeekContainsDate]), () => ( _optionalChain([options, 'optionalAccess', _984 => _984.locale, 'optionalAccess', _985 => _985.options, 'optionalAccess', _986 => _986.firstWeekContainsDate]))), () => ( defaultOptions2.firstWeekContainsDate)), () => ( _optionalChain([defaultOptions2, 'access', _987 => _987.locale, 'optionalAccess', _988 => _988.options, 'optionalAccess', _989 => _989.firstWeekContainsDate]))), () => ( 1));
45133
+ const weekStartsOn = _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_nullishCoalesce(_optionalChain([options, 'optionalAccess', _990 => _990.weekStartsOn]), () => ( _optionalChain([options, 'optionalAccess', _991 => _991.locale, 'optionalAccess', _992 => _992.options, 'optionalAccess', _993 => _993.weekStartsOn]))), () => ( defaultOptions2.weekStartsOn)), () => ( _optionalChain([defaultOptions2, 'access', _994 => _994.locale, 'optionalAccess', _995 => _995.options, 'optionalAccess', _996 => _996.weekStartsOn]))), () => ( 0));
45157
45134
  const originalDate = toDate2(date);
45158
45135
  if (!isValid(originalDate)) {
45159
45136
  throw new RangeError("Invalid time value");
@@ -45194,7 +45171,7 @@ function format2(date, formatStr, options) {
45194
45171
  return parts.map((part) => {
45195
45172
  if (!part.isToken) return part.value;
45196
45173
  const token = part.value;
45197
- if (!_optionalChain([options, 'optionalAccess', _994 => _994.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _995 => _995.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
45174
+ if (!_optionalChain([options, 'optionalAccess', _997 => _997.useAdditionalWeekYearTokens]) && isProtectedWeekYearToken(token) || !_optionalChain([options, 'optionalAccess', _998 => _998.useAdditionalDayOfYearTokens]) && isProtectedDayOfYearToken(token)) {
45198
45175
  warnOrThrowProtectedError(token, formatStr, String(date));
45199
45176
  }
45200
45177
  const formatter = formatters[token[0]];
@@ -45400,7 +45377,7 @@ function ProgramCard({
45400
45377
  const itemDate2 = compactDate;
45401
45378
  const compactCover = coverImage || placeholderUrl || null;
45402
45379
  const typeMeta = compactTypeMeta();
45403
- const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _996 => _996.labels, 'optionalAccess', _997 => _997.singular])].filter(
45380
+ const subtitleParts = [itemDate2, typeMeta, _optionalChain([config, 'access', _999 => _999.labels, 'optionalAccess', _1000 => _1000.singular])].filter(
45404
45381
  (s) => typeof s === "string" && s.length > 0
45405
45382
  );
45406
45383
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "a", { href, target, rel, className: _chunkFIG2RKZFcjs.cn.call(void 0, COMPACT_CARD_OUTER, className), children: [
@@ -45557,7 +45534,7 @@ function ProgramCard({
45557
45534
 
45558
45535
 
45559
45536
  function CampaignCardAdmin({ campaign, className, anchorProps }) {
45560
- const goalsCount = _optionalChain([campaign, 'access', _998 => _998.goals, 'optionalAccess', _999 => _999.length]) || 0;
45537
+ const goalsCount = _optionalChain([campaign, 'access', _1001 => _1001.goals, 'optionalAccess', _1002 => _1002.length]) || 0;
45561
45538
  const innerChildren = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
45562
45539
  /* @__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" }) }),
45563
45540
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: COMPACT_CARD_TEXT_COL, children: [
@@ -45719,7 +45696,7 @@ function resolveSourceRowCTA(row, ctx = {}) {
45719
45696
  if (row.path && shouldFallbackToPathNav(row) && !row.externalUrl) {
45720
45697
  const safePath = sanitizePath(row.path);
45721
45698
  if (safePath) {
45722
- const docTarget = row.documentType ? _optionalChain([ctx, 'access', _1000 => _1000.docPlatformTargets, 'optionalAccess', _1001 => _1001[row.documentType]]) : void 0;
45699
+ const docTarget = row.documentType ? _optionalChain([ctx, 'access', _1003 => _1003.docPlatformTargets, 'optionalAccess', _1004 => _1004[row.documentType]]) : void 0;
45723
45700
  if (docTarget) {
45724
45701
  const seg = docTarget.basePath.split("/").filter(Boolean).join("/");
45725
45702
  const base = `${_chunkFIG2RKZFcjs.getBaseUrl.call(void 0, docTarget.platform)}${seg ? `/${seg}` : ""}/`;
@@ -45934,8 +45911,8 @@ function cardMenuGroups(href, discuss, openDetails) {
45934
45911
  if (href) {
45935
45912
  items.push({
45936
45913
  id: "open-details",
45937
- label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _1002 => _1002.label]), () => ( "Open Details")),
45938
- icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _1003 => _1003.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.EyeIcon, { size: 20 }))),
45914
+ label: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _1005 => _1005.label]), () => ( "Open Details")),
45915
+ icon: _nullishCoalesce(_optionalChain([openDetails, 'optionalAccess', _1006 => _1006.icon]), () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.EyeIcon, { size: 20 }))),
45939
45916
  // Main row → open the entity (same tab, soft Link nav).
45940
45917
  href,
45941
45918
  // Trailing 40px ↗ side-button → open in a new tab.
@@ -45965,8 +45942,8 @@ function HubspotTicketChatCard({
45965
45942
  isNewTab,
45966
45943
  discuss
45967
45944
  }) {
45968
- const status = typeof _optionalChain([chatRef, 'access', _1004 => _1004.metadata, 'optionalAccess', _1005 => _1005.status]) === "string" ? chatRef.metadata.status : void 0;
45969
- const statusLabel = typeof _optionalChain([chatRef, 'access', _1006 => _1006.metadata, 'optionalAccess', _1007 => _1007.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
45945
+ const status = typeof _optionalChain([chatRef, 'access', _1007 => _1007.metadata, 'optionalAccess', _1008 => _1008.status]) === "string" ? chatRef.metadata.status : void 0;
45946
+ const statusLabel = typeof _optionalChain([chatRef, 'access', _1009 => _1009.metadata, 'optionalAccess', _1010 => _1010.statusLabel]) === "string" ? chatRef.metadata.statusLabel : void 0;
45970
45947
  const statusText = _nullishCoalesce(statusLabel, () => ( formatStatusToken(status)));
45971
45948
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
45972
45949
  MingoInfoCard,
@@ -45989,7 +45966,7 @@ function FaqChatCard({
45989
45966
  isNewTab,
45990
45967
  discuss
45991
45968
  }) {
45992
- const section = typeof _optionalChain([chatRef, 'access', _1008 => _1008.metadata, 'optionalAccess', _1009 => _1009.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
45969
+ const section = typeof _optionalChain([chatRef, 'access', _1011 => _1011.metadata, 'optionalAccess', _1012 => _1012.section]) === "string" ? chatRef.metadata.section.trim() : void 0;
45993
45970
  const statusLabel = section && section.length > 0 ? section : "FAQ";
45994
45971
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
45995
45972
  MingoInfoCard,
@@ -46009,7 +45986,7 @@ function SlackChatCard({
46009
45986
  isNewTab,
46010
45987
  discuss
46011
45988
  }) {
46012
- const channelName = typeof _optionalChain([chatRef, 'access', _1010 => _1010.metadata, 'optionalAccess', _1011 => _1011.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
45989
+ const channelName = typeof _optionalChain([chatRef, 'access', _1013 => _1013.metadata, 'optionalAccess', _1014 => _1014.channelName]) === "string" ? chatRef.metadata.channelName.trim() : void 0;
46013
45990
  const channelPretty = channelName ? channelName.startsWith("#") ? channelName : `#${channelName}` : void 0;
46014
45991
  const title = channelPretty ? `${chatRef.title} \xB7 ${channelPretty}` : chatRef.title;
46015
45992
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -46049,7 +46026,7 @@ function GenericFinancialChatCard({
46049
46026
  isNewTab,
46050
46027
  discuss
46051
46028
  }) {
46052
- const subtitle = typeof _optionalChain([chatRef, 'access', _1012 => _1012.metadata, 'optionalAccess', _1013 => _1013.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
46029
+ const subtitle = typeof _optionalChain([chatRef, 'access', _1015 => _1015.metadata, 'optionalAccess', _1016 => _1016.subtitle]) === "string" ? chatRef.metadata.subtitle : void 0;
46053
46030
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46054
46031
  MingoInfoCard,
46055
46032
  {
@@ -46118,12 +46095,12 @@ function ProductReleaseChatCard({
46118
46095
  discuss
46119
46096
  }) {
46120
46097
  const releaseProps = buildProps(item);
46121
- const status = _optionalChain([item, 'optionalAccess', _1014 => _1014.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
46098
+ const status = _optionalChain([item, 'optionalAccess', _1017 => _1017.version]) ? { label: String(item.version), variant: "grey" } : { label: "Release", variant: "grey" };
46122
46099
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46123
46100
  EntityMingoCard,
46124
46101
  {
46125
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1015 => _1015.title]), () => ( "")),
46126
- description: _optionalChain([item, 'optionalAccess', _1016 => _1016.summary]) || releaseProps.formattedDate || void 0,
46102
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1018 => _1018.title]), () => ( "")),
46103
+ description: _optionalChain([item, 'optionalAccess', _1019 => _1019.summary]) || releaseProps.formattedDate || void 0,
46127
46104
  cover: releaseProps.coverImage || void 0,
46128
46105
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.Rocket02Icon, { size: 24 }),
46129
46106
  status,
@@ -46140,17 +46117,17 @@ function CampaignChatCard({
46140
46117
  isNewTab,
46141
46118
  discuss
46142
46119
  }) {
46143
- const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _1017 => _1017.goals])) ? item.goals.length : 0;
46120
+ const goalsCount = Array.isArray(_optionalChain([item, 'optionalAccess', _1020 => _1020.goals])) ? item.goals.length : 0;
46144
46121
  const meta = [
46145
- _optionalChain([item, 'optionalAccess', _1018 => _1018.start_date]) ? formatDateShort(item.start_date) : null,
46122
+ _optionalChain([item, 'optionalAccess', _1021 => _1021.start_date]) ? formatDateShort(item.start_date) : null,
46146
46123
  goalsCount > 0 ? `${goalsCount} goal${goalsCount !== 1 ? "s" : ""}` : null,
46147
46124
  "Marketing campaign"
46148
46125
  ].filter(Boolean).join(" \xB7 ");
46149
46126
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46150
46127
  EntityMingoCard,
46151
46128
  {
46152
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1019 => _1019.name]), () => ( "")),
46153
- description: meta || _optionalChain([item, 'optionalAccess', _1020 => _1020.description]) || void 0,
46129
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1022 => _1022.name]), () => ( "")),
46130
+ description: meta || _optionalChain([item, 'optionalAccess', _1023 => _1023.description]) || void 0,
46154
46131
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.Megaphone01Icon, { size: 24 }),
46155
46132
  chatRef,
46156
46133
  isNewTab,
@@ -46203,14 +46180,14 @@ function BlogChatCard({
46203
46180
  hasEmbeddedVideo,
46204
46181
  discuss
46205
46182
  }) {
46206
- const category = Array.isArray(_optionalChain([item, 'optionalAccess', _1021 => _1021.categories])) ? _optionalChain([item, 'access', _1022 => _1022.categories, 'access', _1023 => _1023.find, 'call', _1024 => _1024((c) => c && c.name), 'optionalAccess', _1025 => _1025.name]) : void 0;
46183
+ const category = Array.isArray(_optionalChain([item, 'optionalAccess', _1024 => _1024.categories])) ? _optionalChain([item, 'access', _1025 => _1025.categories, 'access', _1026 => _1026.find, 'call', _1027 => _1027((c) => c && c.name), 'optionalAccess', _1028 => _1028.name]) : void 0;
46207
46184
  const status = hasEmbeddedVideo ? { label: "Video", variant: "primary" } : category ? { label: category, variant: "grey" } : void 0;
46208
46185
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46209
46186
  EntityMingoCard,
46210
46187
  {
46211
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1026 => _1026.title]), () => ( "")),
46212
- description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1027 => _1027.summary]), () => ( void 0)),
46213
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1028 => _1028.featured_image]), ogPlaceholder),
46188
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1029 => _1029.title]), () => ( "")),
46189
+ description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1030 => _1030.summary]), () => ( void 0)),
46190
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1031 => _1031.featured_image]), ogPlaceholder),
46214
46191
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.NewspaperIcon, { size: 24 }),
46215
46192
  status,
46216
46193
  chatRef,
@@ -46227,13 +46204,13 @@ function CaseStudyChatCard({
46227
46204
  ogPlaceholder,
46228
46205
  discuss
46229
46206
  }) {
46230
- const meta = [_optionalChain([item, 'optionalAccess', _1029 => _1029.msp, 'optionalAccess', _1030 => _1030.name]), _optionalChain([item, 'optionalAccess', _1031 => _1031.user, 'optionalAccess', _1032 => _1032.full_name])].filter(Boolean).join(" \xB7 ");
46207
+ const meta = [_optionalChain([item, 'optionalAccess', _1032 => _1032.msp, 'optionalAccess', _1033 => _1033.name]), _optionalChain([item, 'optionalAccess', _1034 => _1034.user, 'optionalAccess', _1035 => _1035.full_name])].filter(Boolean).join(" \xB7 ");
46231
46208
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46232
46209
  EntityMingoCard,
46233
46210
  {
46234
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1033 => _1033.title]), () => ( "")),
46235
- description: _optionalChain([item, 'optionalAccess', _1034 => _1034.summary]) || meta || void 0,
46236
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1035 => _1035.featured_image]), ogPlaceholder),
46211
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1036 => _1036.title]), () => ( "")),
46212
+ description: _optionalChain([item, 'optionalAccess', _1037 => _1037.summary]) || meta || void 0,
46213
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1038 => _1038.featured_image]), ogPlaceholder),
46237
46214
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.TrophyIcon, { size: 24 }),
46238
46215
  status: { label: "Case study", variant: "grey" },
46239
46216
  chatRef,
@@ -46250,13 +46227,13 @@ function CustomerInterviewChatCard({
46250
46227
  ogPlaceholder,
46251
46228
  discuss
46252
46229
  }) {
46253
- const meta = [_optionalChain([item, 'optionalAccess', _1036 => _1036.user, 'optionalAccess', _1037 => _1037.full_name]), _optionalChain([item, 'optionalAccess', _1038 => _1038.msp, 'optionalAccess', _1039 => _1039.name])].filter(Boolean).join(" \xB7 ");
46230
+ const meta = [_optionalChain([item, 'optionalAccess', _1039 => _1039.user, 'optionalAccess', _1040 => _1040.full_name]), _optionalChain([item, 'optionalAccess', _1041 => _1041.msp, 'optionalAccess', _1042 => _1042.name])].filter(Boolean).join(" \xB7 ");
46254
46231
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46255
46232
  EntityMingoCard,
46256
46233
  {
46257
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1040 => _1040.title]), () => ( "")),
46258
- description: _optionalChain([item, 'optionalAccess', _1041 => _1041.video_summary]) || meta || void 0,
46259
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1042 => _1042.featured_image]), ogPlaceholder),
46234
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1043 => _1043.title]), () => ( "")),
46235
+ description: _optionalChain([item, 'optionalAccess', _1044 => _1044.video_summary]) || meta || void 0,
46236
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1045 => _1045.featured_image]), ogPlaceholder),
46260
46237
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.MicrophoneIcon, { size: 24 }),
46261
46238
  status: { label: "Interview", variant: "grey" },
46262
46239
  chatRef,
@@ -46273,13 +46250,13 @@ function InvestorUpdateChatCard({
46273
46250
  ogPlaceholder,
46274
46251
  discuss
46275
46252
  }) {
46276
- const title = _optionalChain([item, 'optionalAccess', _1043 => _1043.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1044 => _1044.update_number]), () => ( "?"))}`;
46253
+ const title = _optionalChain([item, 'optionalAccess', _1046 => _1046.title]) || `Update #${_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1047 => _1047.update_number]), () => ( "?"))}`;
46277
46254
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46278
46255
  EntityMingoCard,
46279
46256
  {
46280
46257
  title,
46281
- description: _optionalChain([item, 'optionalAccess', _1045 => _1045.strategic_update]) || _optionalChain([item, 'optionalAccess', _1046 => _1046.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _1047 => _1047.period_start]), _optionalChain([item, 'optionalAccess', _1048 => _1048.period_end])) || void 0,
46282
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1049 => _1049.featured_image]), ogPlaceholder),
46258
+ description: _optionalChain([item, 'optionalAccess', _1048 => _1048.strategic_update]) || _optionalChain([item, 'optionalAccess', _1049 => _1049.content]) || formatInvestorUpdatePeriod(_optionalChain([item, 'optionalAccess', _1050 => _1050.period_start]), _optionalChain([item, 'optionalAccess', _1051 => _1051.period_end])) || void 0,
46259
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1052 => _1052.featured_image]), ogPlaceholder),
46283
46260
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.PresentationLineIcon, { size: 24 }),
46284
46261
  status: { label: "Investor update", variant: "grey" },
46285
46262
  chatRef,
@@ -46296,12 +46273,12 @@ function OnboardingGuideChatCard({
46296
46273
  ogPlaceholder,
46297
46274
  discuss
46298
46275
  }) {
46299
- const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _1050 => _1050.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1051 => _1051.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1052 => _1052.og_image_url]), ogPlaceholder)));
46276
+ const cover = _nullishCoalesce(_nullishCoalesce(entityCover(_optionalChain([item, 'optionalAccess', _1053 => _1053.featured_image])), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1054 => _1054.main_video_thumbnail])))), () => ( entityCover(_optionalChain([item, 'optionalAccess', _1055 => _1055.og_image_url]), ogPlaceholder)));
46300
46277
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46301
46278
  EntityMingoCard,
46302
46279
  {
46303
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1053 => _1053.title]), () => ( "")),
46304
- description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1054 => _1054.summary]), () => ( _optionalChain([item, 'optionalAccess', _1055 => _1055.description]))), () => ( void 0)),
46280
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1056 => _1056.title]), () => ( "")),
46281
+ description: _nullishCoalesce(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1057 => _1057.summary]), () => ( _optionalChain([item, 'optionalAccess', _1058 => _1058.description]))), () => ( void 0)),
46305
46282
  cover,
46306
46283
  fallbackIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBGD345ZVcjs.CompassIcon, { size: 24 }),
46307
46284
  status: { label: "Guide", variant: "grey" },
@@ -46322,25 +46299,25 @@ function ProgramChatCard({
46322
46299
  discuss
46323
46300
  }) {
46324
46301
  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 });
46325
- const isScheduled = _optionalChain([item, 'optionalAccess', _1056 => _1056.status]) === "scheduled";
46302
+ const isScheduled = _optionalChain([item, 'optionalAccess', _1059 => _1059.status]) === "scheduled";
46326
46303
  let typeMeta;
46327
- if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _1057 => _1057.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
46304
+ if (configKey === "podcast" && typeof _optionalChain([item, 'optionalAccess', _1060 => _1060.duration_seconds]) === "number" && item.duration_seconds > 0 && !isScheduled) {
46328
46305
  typeMeta = formatDurationCompact(item.duration_seconds);
46329
- } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _1058 => _1058.location_name]) === "string" && item.location_name.trim().length > 0) {
46306
+ } else if (configKey === "event" && typeof _optionalChain([item, 'optionalAccess', _1061 => _1061.location_name]) === "string" && item.location_name.trim().length > 0) {
46330
46307
  typeMeta = item.location_name;
46331
- } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _1059 => _1059.start_at])) {
46308
+ } else if (configKey === "webinar" && _optionalChain([item, 'optionalAccess', _1062 => _1062.start_at])) {
46332
46309
  const time = formatTimeWithTimezone(item.start_at, _nullishCoalesce(item.timezone, () => ( null)));
46333
46310
  const dur = formatDurationFromRange(item.start_at, item.end_at);
46334
46311
  typeMeta = dur ? `${time} \xB7 ${dur}` : time;
46335
46312
  }
46336
- const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1060 => _1060.date]), () => ( null)), { fallback: "", timezone: "local" });
46313
+ const itemDate = formatDateUTC(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1063 => _1063.date]), () => ( null)), { fallback: "", timezone: "local" });
46337
46314
  const meta = [itemDate, typeMeta].filter(Boolean).join(" \xB7 ");
46338
46315
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46339
46316
  EntityMingoCard,
46340
46317
  {
46341
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1061 => _1061.title]), () => ( "")),
46342
- description: meta || _optionalChain([item, 'optionalAccess', _1062 => _1062.description]) || void 0,
46343
- cover: entityCover(_optionalChain([item, 'optionalAccess', _1063 => _1063.cover_url]), ogPlaceholder),
46318
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1064 => _1064.title]), () => ( "")),
46319
+ description: meta || _optionalChain([item, 'optionalAccess', _1065 => _1065.description]) || void 0,
46320
+ cover: entityCover(_optionalChain([item, 'optionalAccess', _1066 => _1066.cover_url]), ogPlaceholder),
46344
46321
  fallbackIcon: icon,
46345
46322
  status: { label, variant: "grey" },
46346
46323
  chatRef,
@@ -46357,10 +46334,10 @@ function RoadmapChatCard({
46357
46334
  cardType,
46358
46335
  discuss
46359
46336
  }) {
46360
- const logoUrl = typeof _optionalChain([item, 'optionalAccess', _1064 => _1064.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
46361
- const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _1065 => _1065.customItemId]) != null;
46337
+ const logoUrl = typeof _optionalChain([item, 'optionalAccess', _1067 => _1067.icon]) === "string" && item.icon.startsWith("http") ? item.icon : void 0;
46338
+ const useTypeIcon = cardType === "internal_task" || !logoUrl && _optionalChain([item, 'optionalAccess', _1068 => _1068.customItemId]) != null;
46362
46339
  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 });
46363
- const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _1066 => _1066.customItemId]), className: "size-6" }) : logoUrl ? (
46340
+ const icon = useTypeIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TaskTypeIcon, { customItemId: _optionalChain([item, 'optionalAccess', _1069 => _1069.customItemId]), className: "size-6" }) : logoUrl ? (
46364
46341
  // Contained (not full-bleed) so the integration logo keeps its aspect
46365
46342
  // ratio inside the bordered icon box — matches RoadmapCard.
46366
46343
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: logoUrl, alt: "", className: "size-6 object-contain" })
@@ -46368,10 +46345,10 @@ function RoadmapChatCard({
46368
46345
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46369
46346
  EntityMingoCard,
46370
46347
  {
46371
- title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1067 => _1067.title]), () => ( "")),
46372
- description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1068 => _1068.description]), () => ( void 0)),
46348
+ title: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1070 => _1070.title]), () => ( "")),
46349
+ description: _nullishCoalesce(_optionalChain([item, 'optionalAccess', _1071 => _1071.description]), () => ( void 0)),
46373
46350
  fallbackIcon: icon,
46374
- status: statusPill(_optionalChain([item, 'optionalAccess', _1069 => _1069.status])),
46351
+ status: statusPill(_optionalChain([item, 'optionalAccess', _1072 => _1072.status])),
46375
46352
  chatRef,
46376
46353
  isNewTab,
46377
46354
  discuss,
@@ -46457,7 +46434,7 @@ function programRegistryEntries() {
46457
46434
  discuss: opts.discuss,
46458
46435
  configKey: cfg.configKey,
46459
46436
  label: cfg.configKey.charAt(0).toUpperCase() + cfg.configKey.slice(1),
46460
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1070 => _1070.extras, 'optionalAccess', _1071 => _1071.buildOgPlaceholderUrl, 'optionalCall', _1072 => _1072(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1073 => _1073.title]), () => ( "")))]), () => ( null))
46437
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1073 => _1073.extras, 'optionalAccess', _1074 => _1074.buildOgPlaceholderUrl, 'optionalCall', _1075 => _1075(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1076 => _1076.title]), () => ( "")))]), () => ( null))
46461
46438
  }
46462
46439
  )
46463
46440
  };
@@ -46609,8 +46586,8 @@ var CHAT_CARD_REGISTRY = {
46609
46586
  chatRef,
46610
46587
  isNewTab: opts.isNewTab,
46611
46588
  discuss: opts.discuss,
46612
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1074 => _1074.extras, 'optionalAccess', _1075 => _1075.buildOgPlaceholderUrl, 'optionalCall', _1076 => _1076(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1077 => _1077.title]), () => ( "")))]), () => ( null)),
46613
- hasEmbeddedVideo: _optionalChain([chatRef, 'access', _1078 => _1078.metadata, 'optionalAccess', _1079 => _1079.hasEmbeddedVideo]) === true
46589
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1077 => _1077.extras, 'optionalAccess', _1078 => _1078.buildOgPlaceholderUrl, 'optionalCall', _1079 => _1079(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1080 => _1080.title]), () => ( "")))]), () => ( null)),
46590
+ hasEmbeddedVideo: _optionalChain([chatRef, 'access', _1081 => _1081.metadata, 'optionalAccess', _1082 => _1082.hasEmbeddedVideo]) === true
46614
46591
  }
46615
46592
  )
46616
46593
  },
@@ -46627,7 +46604,7 @@ var CHAT_CARD_REGISTRY = {
46627
46604
  chatRef,
46628
46605
  isNewTab: opts.isNewTab,
46629
46606
  discuss: opts.discuss,
46630
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1080 => _1080.extras, 'optionalAccess', _1081 => _1081.buildOgPlaceholderUrl, 'optionalCall', _1082 => _1082(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1083 => _1083.title]), () => ( "")))]), () => ( null))
46607
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1083 => _1083.extras, 'optionalAccess', _1084 => _1084.buildOgPlaceholderUrl, 'optionalCall', _1085 => _1085(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1086 => _1086.title]), () => ( "")))]), () => ( null))
46631
46608
  }
46632
46609
  )
46633
46610
  },
@@ -46644,7 +46621,7 @@ var CHAT_CARD_REGISTRY = {
46644
46621
  chatRef,
46645
46622
  isNewTab: opts.isNewTab,
46646
46623
  discuss: opts.discuss,
46647
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1084 => _1084.extras, 'optionalAccess', _1085 => _1085.buildOgPlaceholderUrl, 'optionalCall', _1086 => _1086(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1087 => _1087.title]), () => ( "")))]), () => ( null))
46624
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1087 => _1087.extras, 'optionalAccess', _1088 => _1088.buildOgPlaceholderUrl, 'optionalCall', _1089 => _1089(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1090 => _1090.title]), () => ( "")))]), () => ( null))
46648
46625
  }
46649
46626
  )
46650
46627
  },
@@ -46655,7 +46632,7 @@ var CHAT_CARD_REGISTRY = {
46655
46632
  bareInline: true,
46656
46633
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ProductReleaseCardSkeleton, { size: "sm" }),
46657
46634
  render: (item, chatRef, opts) => {
46658
- const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1088 => _1088.extras, 'optionalAccess', _1089 => _1089.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
46635
+ const builder = _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1091 => _1091.extras, 'optionalAccess', _1092 => _1092.buildProductReleaseCardProps]), () => ( defaultBuildProductReleaseCardProps));
46659
46636
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46660
46637
  ProductReleaseChatCard,
46661
46638
  {
@@ -46682,7 +46659,7 @@ var CHAT_CARD_REGISTRY = {
46682
46659
  chatRef,
46683
46660
  isNewTab: opts.isNewTab,
46684
46661
  discuss: opts.discuss,
46685
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1090 => _1090.extras, 'optionalAccess', _1091 => _1091.buildOgPlaceholderUrl, 'optionalCall', _1092 => _1092(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1093 => _1093.title]), () => ( "")))]), () => ( null))
46662
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1093 => _1093.extras, 'optionalAccess', _1094 => _1094.buildOgPlaceholderUrl, 'optionalCall', _1095 => _1095(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1096 => _1096.title]), () => ( "")))]), () => ( null))
46686
46663
  }
46687
46664
  )
46688
46665
  },
@@ -46701,7 +46678,7 @@ var CHAT_CARD_REGISTRY = {
46701
46678
  chatRef,
46702
46679
  isNewTab: opts.isNewTab,
46703
46680
  discuss: opts.discuss,
46704
- ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1094 => _1094.extras, 'optionalAccess', _1095 => _1095.buildOgPlaceholderUrl, 'optionalCall', _1096 => _1096(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1097 => _1097.title]), () => ( "")))]), () => ( null))
46681
+ ogPlaceholder: _nullishCoalesce(_optionalChain([opts, 'optionalAccess', _1097 => _1097.extras, 'optionalAccess', _1098 => _1098.buildOgPlaceholderUrl, 'optionalCall', _1099 => _1099(_nullishCoalesce(_optionalChain([item, 'optionalAccess', _1100 => _1100.title]), () => ( "")))]), () => ( null))
46705
46682
  }
46706
46683
  )
46707
46684
  },
@@ -46713,7 +46690,7 @@ var CHAT_CARD_REGISTRY = {
46713
46690
  skeleton: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CampaignCardAdminSkeleton, {}),
46714
46691
  // No public viewer — synthesize the hub-internal admin URL post-fetch
46715
46692
  // so the wrapper + isNewTab computation see the actual destination.
46716
- fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1098 => _1098.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
46693
+ fallbackHref: (item) => _optionalChain([item, 'optionalAccess', _1101 => _1101.id]) ? `/admin/campaigns/${encodeURIComponent(item.id)}` : null,
46717
46694
  render: (item, chatRef, opts) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46718
46695
  CampaignChatCard,
46719
46696
  {
@@ -46739,12 +46716,12 @@ function ChatCardNavWrap({
46739
46716
  const onClickCapture = (e) => {
46740
46717
  if (!href) return;
46741
46718
  const targetEl = e.target;
46742
- if (_optionalChain([targetEl, 'optionalAccess', _1099 => _1099.closest, 'optionalCall', _1100 => _1100("button")])) return;
46743
- if (!_optionalChain([targetEl, 'optionalAccess', _1101 => _1101.closest, 'optionalCall', _1102 => _1102("a")])) return;
46719
+ if (_optionalChain([targetEl, 'optionalAccess', _1102 => _1102.closest, 'optionalCall', _1103 => _1103("button")])) return;
46720
+ if (!_optionalChain([targetEl, 'optionalAccess', _1104 => _1104.closest, 'optionalCall', _1105 => _1105("a")])) return;
46744
46721
  const handled = handleChatNavClick(e, runtime, { href, path, targetPlatform }, router.push);
46745
46722
  if (!handled) return;
46746
46723
  e.stopPropagation();
46747
- if (!isNewTab && _optionalChain([panel, 'optionalAccess', _1103 => _1103.closeChat])) panel.closeChat();
46724
+ if (!isNewTab && _optionalChain([panel, 'optionalAccess', _1106 => _1106.closeChat])) panel.closeChat();
46748
46725
  };
46749
46726
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "contents", onClickCapture, children });
46750
46727
  }
@@ -46766,7 +46743,7 @@ function ChatCardLoader({
46766
46743
  title: chatRef.title,
46767
46744
  externalUrl: chatRef.url,
46768
46745
  targetPlatform: chatRef.targetPlatform,
46769
- path: typeof _optionalChain([chatRef, 'access', _1104 => _1104.metadata, 'optionalAccess', _1105 => _1105.path]) === "string" ? chatRef.metadata.path : null
46746
+ path: typeof _optionalChain([chatRef, 'access', _1107 => _1107.metadata, 'optionalAccess', _1108 => _1108.path]) === "string" ? chatRef.metadata.path : null
46770
46747
  },
46771
46748
  sourceRowCtxFromRuntime(runtime, { baseRoute, chipBasePlatform })
46772
46749
  );
@@ -46780,7 +46757,7 @@ function ChatCardLoader({
46780
46757
  const entry = CHAT_CARD_REGISTRY[resolvedChatRef.type];
46781
46758
  const fetchEntry = entry && entry.mode === "fetch" ? entry : null;
46782
46759
  const { item, isLoading } = useChatCardItem(
46783
- _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _1106 => _1106.contentRefType]), () => ( "")),
46760
+ _nullishCoalesce(_optionalChain([fetchEntry, 'optionalAccess', _1109 => _1109.contentRefType]), () => ( "")),
46784
46761
  fetchEntry ? resolvedChatRef.id : ""
46785
46762
  );
46786
46763
  if (!entry) return null;
@@ -46811,7 +46788,7 @@ function ChatCardLoader({
46811
46788
  isNewTab,
46812
46789
  discuss
46813
46790
  };
46814
- const path = typeof _optionalChain([finalChatRef, 'access', _1107 => _1107.metadata, 'optionalAccess', _1108 => _1108.path]) === "string" ? finalChatRef.metadata.path : null;
46791
+ const path = typeof _optionalChain([finalChatRef, 'access', _1110 => _1110.metadata, 'optionalAccess', _1111 => _1111.path]) === "string" ? finalChatRef.metadata.path : null;
46815
46792
  const navWrap = (children) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46816
46793
  ChatCardNavWrap,
46817
46794
  {
@@ -47091,7 +47068,7 @@ function useChunkCatchup({
47091
47068
 
47092
47069
  var EMPTY_FRAME = { messages: [], phase: "idle", typing: false, delayMs: 0 };
47093
47070
  function prefersReducedMotion() {
47094
- return typeof window !== "undefined" && _optionalChain([window, 'access', _1109 => _1109.matchMedia, 'optionalCall', _1110 => _1110("(prefers-reduced-motion: reduce)"), 'access', _1111 => _1111.matches]) === true;
47071
+ return typeof window !== "undefined" && _optionalChain([window, 'access', _1112 => _1112.matchMedia, 'optionalCall', _1113 => _1113("(prefers-reduced-motion: reduce)"), 'access', _1114 => _1114.matches]) === true;
47095
47072
  }
47096
47073
  function useScriptedStream(frames, resetKey, enabled = true) {
47097
47074
  const [index, setIndex] = _react.useState.call(void 0, 0);
@@ -47103,7 +47080,7 @@ function useScriptedStream(frames, resetKey, enabled = true) {
47103
47080
  }
47104
47081
  _react.useEffect.call(void 0, () => {
47105
47082
  setReducedMotion(prefersReducedMotion());
47106
- const mq = _optionalChain([window, 'access', _1112 => _1112.matchMedia, 'optionalCall', _1113 => _1113("(prefers-reduced-motion: reduce)")]);
47083
+ const mq = _optionalChain([window, 'access', _1115 => _1115.matchMedia, 'optionalCall', _1116 => _1116("(prefers-reduced-motion: reduce)")]);
47107
47084
  if (!mq) return;
47108
47085
  const onChange = () => setReducedMotion(mq.matches);
47109
47086
  mq.addEventListener("change", onChange);
@@ -47232,7 +47209,7 @@ function useJetStreamDialogSubscription({
47232
47209
  const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
47233
47210
  conn: sharedConn,
47234
47211
  wsUrl,
47235
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1114 => _1114.current, 'optionalCall', _1115 => _1115()]),
47212
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1117 => _1117.current, 'optionalCall', _1118 => _1118()]),
47236
47213
  backoff: reconnectionBackoffRef.current,
47237
47214
  getFreshUrl: () => getNatsWsUrlRef.current(),
47238
47215
  // JetStream emits 'error' for protocol-level failures (e.g. -ERR Permissions
@@ -47247,7 +47224,7 @@ function useJetStreamDialogSubscription({
47247
47224
  setReconnectionCount((c) => c + 1);
47248
47225
  }
47249
47226
  hadConnectionBeforeRef.current = true;
47250
- _optionalChain([onConnectRef, 'access', _1116 => _1116.current, 'optionalCall', _1117 => _1117()]);
47227
+ _optionalChain([onConnectRef, 'access', _1119 => _1119.current, 'optionalCall', _1120 => _1120()]);
47251
47228
  }
47252
47229
  if (status === "error") {
47253
47230
  console.warn("[JetStream] NATS protocol error:", evt.data);
@@ -47257,7 +47234,7 @@ function useJetStreamDialogSubscription({
47257
47234
  setIsConnected(false);
47258
47235
  setIsSubscribed(false);
47259
47236
  tearDownSubscription();
47260
- _optionalChain([onDisconnectRef, 'access', _1118 => _1118.current, 'optionalCall', _1119 => _1119()]);
47237
+ _optionalChain([onDisconnectRef, 'access', _1121 => _1121.current, 'optionalCall', _1122 => _1122()]);
47261
47238
  }
47262
47239
  }
47263
47240
  });
@@ -47336,7 +47313,7 @@ function useJetStreamDialogSubscription({
47336
47313
  }
47337
47314
  subscriptionRef.current = handle;
47338
47315
  setIsSubscribed(true);
47339
- _optionalChain([onSubscribedRef, 'access', _1120 => _1120.current, 'optionalCall', _1121 => _1121()]);
47316
+ _optionalChain([onSubscribedRef, 'access', _1123 => _1123.current, 'optionalCall', _1124 => _1124()]);
47340
47317
  } catch (e52) {
47341
47318
  if (!cancelled) {
47342
47319
  setIsSubscribed(false);
@@ -47449,20 +47426,20 @@ function useNatsDialogSubscription({
47449
47426
  const tearDownSubscriptions = () => {
47450
47427
  subscriptionRefs.current.forEach((sub) => {
47451
47428
  try {
47452
- _optionalChain([sub, 'optionalAccess', _1122 => _1122.unsubscribe, 'call', _1123 => _1123()]);
47429
+ _optionalChain([sub, 'optionalAccess', _1125 => _1125.unsubscribe, 'call', _1126 => _1126()]);
47453
47430
  } catch (e54) {
47454
47431
  }
47455
47432
  });
47456
47433
  subscriptionRefs.current.clear();
47457
47434
  lastSubscribedDialogIdRef.current = null;
47458
- _optionalChain([abortControllerRef, 'access', _1124 => _1124.current, 'optionalAccess', _1125 => _1125.abort, 'call', _1126 => _1126()]);
47435
+ _optionalChain([abortControllerRef, 'access', _1127 => _1127.current, 'optionalAccess', _1128 => _1128.abort, 'call', _1129 => _1129()]);
47459
47436
  abortControllerRef.current = null;
47460
47437
  };
47461
47438
  const isDisconnectStatus = (status) => status === "closed" || status === "disconnected";
47462
47439
  const lifecycle = _chunkPXXS27EEcjs.startConnectionLifecycle.call(void 0, {
47463
47440
  conn: sharedConn,
47464
47441
  wsUrl,
47465
- onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1127 => _1127.current, 'optionalCall', _1128 => _1128()]),
47442
+ onBeforeReconnect: () => _optionalChain([onBeforeReconnectRef, 'access', _1130 => _1130.current, 'optionalCall', _1131 => _1131()]),
47466
47443
  backoff: reconnectionBackoffRef.current,
47467
47444
  getFreshUrl: () => getNatsWsUrlRef.current(),
47468
47445
  shouldRetryOn: isDisconnectStatus,
@@ -47473,7 +47450,7 @@ function useNatsDialogSubscription({
47473
47450
  setReconnectionCount((c) => c + 1);
47474
47451
  }
47475
47452
  hadConnectionBeforeRef.current = true;
47476
- _optionalChain([onConnectRef, 'access', _1129 => _1129.current, 'optionalCall', _1130 => _1130()]);
47453
+ _optionalChain([onConnectRef, 'access', _1132 => _1132.current, 'optionalCall', _1133 => _1133()]);
47477
47454
  }
47478
47455
  if (status === "error") {
47479
47456
  console.warn("[NATS] protocol error:", evt.data);
@@ -47483,7 +47460,7 @@ function useNatsDialogSubscription({
47483
47460
  setIsConnected(false);
47484
47461
  setIsSubscribed(false);
47485
47462
  tearDownSubscriptions();
47486
- _optionalChain([onDisconnectRef, 'access', _1131 => _1131.current, 'optionalCall', _1132 => _1132()]);
47463
+ _optionalChain([onDisconnectRef, 'access', _1134 => _1134.current, 'optionalCall', _1135 => _1135()]);
47487
47464
  }
47488
47465
  }
47489
47466
  });
@@ -47514,13 +47491,13 @@ function useNatsDialogSubscription({
47514
47491
  setIsSubscribed(false);
47515
47492
  subscriptionRefs.current.forEach((sub) => {
47516
47493
  try {
47517
- _optionalChain([sub, 'optionalAccess', _1133 => _1133.unsubscribe, 'call', _1134 => _1134()]);
47494
+ _optionalChain([sub, 'optionalAccess', _1136 => _1136.unsubscribe, 'call', _1137 => _1137()]);
47518
47495
  } catch (e55) {
47519
47496
  }
47520
47497
  });
47521
47498
  subscriptionRefs.current.clear();
47522
47499
  lastSubscribedDialogIdRef.current = null;
47523
- _optionalChain([abortControllerRef, 'access', _1135 => _1135.current, 'optionalAccess', _1136 => _1136.abort, 'call', _1137 => _1137()]);
47500
+ _optionalChain([abortControllerRef, 'access', _1138 => _1138.current, 'optionalAccess', _1139 => _1139.abort, 'call', _1140 => _1140()]);
47524
47501
  abortControllerRef.current = null;
47525
47502
  }
47526
47503
  return;
@@ -47532,12 +47509,12 @@ function useNatsDialogSubscription({
47532
47509
  if (subscriptionRefs.current.size > 0) {
47533
47510
  subscriptionRefs.current.forEach((sub) => {
47534
47511
  try {
47535
- _optionalChain([sub, 'optionalAccess', _1138 => _1138.unsubscribe, 'call', _1139 => _1139()]);
47512
+ _optionalChain([sub, 'optionalAccess', _1141 => _1141.unsubscribe, 'call', _1142 => _1142()]);
47536
47513
  } catch (e56) {
47537
47514
  }
47538
47515
  });
47539
47516
  subscriptionRefs.current.clear();
47540
- _optionalChain([abortControllerRef, 'access', _1140 => _1140.current, 'optionalAccess', _1141 => _1141.abort, 'call', _1142 => _1142()]);
47517
+ _optionalChain([abortControllerRef, 'access', _1143 => _1143.current, 'optionalAccess', _1144 => _1144.abort, 'call', _1145 => _1145()]);
47541
47518
  }
47542
47519
  abortControllerRef.current = new AbortController();
47543
47520
  const abort = abortControllerRef.current;
@@ -47569,7 +47546,7 @@ function useNatsDialogSubscription({
47569
47546
  });
47570
47547
  lastSubscribedDialogIdRef.current = dialogId;
47571
47548
  setIsSubscribed(true);
47572
- _optionalChain([onSubscribedRef, 'access', _1143 => _1143.current, 'optionalCall', _1144 => _1144()]);
47549
+ _optionalChain([onSubscribedRef, 'access', _1146 => _1146.current, 'optionalCall', _1147 => _1147()]);
47573
47550
  };
47574
47551
  if (isConnectedRef.current) {
47575
47552
  createSubscriptions();
@@ -47579,7 +47556,7 @@ function useNatsDialogSubscription({
47579
47556
  abort.abort();
47580
47557
  subscriptionRefs.current.forEach((sub) => {
47581
47558
  try {
47582
- _optionalChain([sub, 'optionalAccess', _1145 => _1145.unsubscribe, 'call', _1146 => _1146()]);
47559
+ _optionalChain([sub, 'optionalAccess', _1148 => _1148.unsubscribe, 'call', _1149 => _1149()]);
47583
47560
  } catch (e58) {
47584
47561
  }
47585
47562
  });
@@ -47620,7 +47597,7 @@ function useNatsDialogSubscription({
47620
47597
  });
47621
47598
  lastSubscribedDialogIdRef.current = dialogId2;
47622
47599
  setIsSubscribed(true);
47623
- _optionalChain([onSubscribedRef, 'access', _1147 => _1147.current, 'optionalCall', _1148 => _1148()]);
47600
+ _optionalChain([onSubscribedRef, 'access', _1150 => _1150.current, 'optionalCall', _1151 => _1151()]);
47624
47601
  } else if (subscriptionRefs.current.size > 0) {
47625
47602
  setIsSubscribed(true);
47626
47603
  }
@@ -47628,10 +47605,10 @@ function useNatsDialogSubscription({
47628
47605
  return { isConnected, isSubscribed, reconnectionCount };
47629
47606
  }
47630
47607
  function buildNatsWsUrl(apiBaseUrl, options) {
47631
- const path = _optionalChain([options, 'optionalAccess', _1149 => _1149.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
47608
+ const path = _optionalChain([options, 'optionalAccess', _1152 => _1152.source]) === "dashboard" ? "/ws/nats-api" : "/ws/nats";
47632
47609
  const u = new URL(path, apiBaseUrl);
47633
47610
  u.protocol = u.protocol === "https:" ? "wss:" : "ws:";
47634
- if (_optionalChain([options, 'optionalAccess', _1150 => _1150.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _1151 => _1151.token])) {
47611
+ if (_optionalChain([options, 'optionalAccess', _1153 => _1153.includeAuthParam]) && _optionalChain([options, 'optionalAccess', _1154 => _1154.token])) {
47635
47612
  u.searchParams.set("authorization", options.token);
47636
47613
  }
47637
47614
  return u.toString();
@@ -47767,7 +47744,7 @@ function parseChunkToAction(chunk) {
47767
47744
  // is REQUIRED on `ChatContextItem`, so fall back to the id (same as the
47768
47745
  // historical path in `process-historical-messages.ts`) — keeps both
47769
47746
  // message sources producing an identical shape.
47770
- contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1152 => _1152.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1153 => _1153.id]) === "string").map((it) => ({ type: it.type, id: it.id, label: it.id })) : void 0
47747
+ contextItems: Array.isArray(data.contextItems) ? data.contextItems.filter((it) => typeof _optionalChain([it, 'optionalAccess', _1155 => _1155.type]) === "string" && typeof _optionalChain([it, 'optionalAccess', _1156 => _1156.id]) === "string").map((it) => ({ type: it.type, id: it.id, label: it.id })) : void 0
47771
47748
  };
47772
47749
  case MESSAGE_TYPE.TOKEN_USAGE:
47773
47750
  return {
@@ -47959,8 +47936,8 @@ var MessageSegmentAccumulator = class {
47959
47936
  type: "tool_execution",
47960
47937
  data: {
47961
47938
  ...toolData,
47962
- toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1154 => _1154.data, 'access', _1155 => _1155.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1156 => _1156.toolTitle]))),
47963
- parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1157 => _1157.parameters])
47939
+ toolTitle: _nullishCoalesce(_nullishCoalesce(toolData.toolTitle, () => ( _optionalChain([existingExecuting, 'optionalAccess', _1157 => _1157.data, 'access', _1158 => _1158.toolTitle]))), () => ( _optionalChain([executingTool, 'optionalAccess', _1159 => _1159.toolTitle]))),
47940
+ parameters: toolData.parameters || _optionalChain([executingTool, 'optionalAccess', _1160 => _1160.parameters])
47964
47941
  }
47965
47942
  };
47966
47943
  if (existingIndex !== -1) {
@@ -47984,8 +47961,8 @@ var MessageSegmentAccumulator = class {
47984
47961
  if (seg.type !== "approval_batch") return seg;
47985
47962
  const hasCall = seg.data.toolCalls.some((c) => c.toolExecutionRequestId === execId);
47986
47963
  if (!hasCall) return seg;
47987
- const prev = _optionalChain([seg, 'access', _1158 => _1158.data, 'access', _1159 => _1159.executions, 'optionalAccess', _1160 => _1160[execId]]);
47988
- const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _1161 => _1161.result]), success: _optionalChain([prev, 'optionalAccess', _1162 => _1162.success]) };
47964
+ const prev = _optionalChain([seg, 'access', _1161 => _1161.data, 'access', _1162 => _1162.executions, 'optionalAccess', _1163 => _1163[execId]]);
47965
+ const next = toolData.type === "EXECUTED_TOOL" ? { status: "done", result: toolData.result, success: toolData.success } : { status: "executing", result: _optionalChain([prev, 'optionalAccess', _1164 => _1164.result]), success: _optionalChain([prev, 'optionalAccess', _1165 => _1165.success]) };
47989
47966
  matched = true;
47990
47967
  return {
47991
47968
  ...seg,
@@ -48107,10 +48084,10 @@ var MessageSegmentAccumulator = class {
48107
48084
  const segment = {
48108
48085
  type: "approval_request",
48109
48086
  data: {
48110
- command: _optionalChain([pendingApproval, 'optionalAccess', _1163 => _1163.command]) || "",
48111
- explanation: _optionalChain([pendingApproval, 'optionalAccess', _1164 => _1164.explanation]),
48087
+ command: _optionalChain([pendingApproval, 'optionalAccess', _1166 => _1166.command]) || "",
48088
+ explanation: _optionalChain([pendingApproval, 'optionalAccess', _1167 => _1167.explanation]),
48112
48089
  requestId,
48113
- approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1165 => _1165.approvalType]) || approvalType
48090
+ approvalType: _optionalChain([pendingApproval, 'optionalAccess', _1168 => _1168.approvalType]) || approvalType
48114
48091
  },
48115
48092
  status,
48116
48093
  onApprove: this.callbacks.onApprove,
@@ -48302,7 +48279,7 @@ function useRealtimeChunkProcessor(options) {
48302
48279
  if (initialState.escalatedApprovals) {
48303
48280
  pendingEscalatedRef.current = new Map(initialState.escalatedApprovals);
48304
48281
  initialState.escalatedApprovals.forEach((data, requestId) => {
48305
- _optionalChain([callbacks, 'access', _1166 => _1166.onEscalatedApproval, 'optionalCall', _1167 => _1167(requestId, data)]);
48282
+ _optionalChain([callbacks, 'access', _1169 => _1169.onEscalatedApproval, 'optionalCall', _1170 => _1170(requestId, data)]);
48306
48283
  });
48307
48284
  }
48308
48285
  hasEverStreamedRef.current = true;
@@ -48324,13 +48301,13 @@ function useRealtimeChunkProcessor(options) {
48324
48301
  if (!action) return;
48325
48302
  const accumulator = accumulatorRef.current;
48326
48303
  const streamSeq = chunk && typeof chunk === "object" && typeof chunk.streamSeq === "number" ? chunk.streamSeq : void 0;
48327
- const emitSegments = (s, meta) => _optionalChain([callbacks, 'access', _1168 => _1168.onSegmentsUpdate, 'optionalCall', _1169 => _1169(s, streamSeq != null ? { ...meta, streamSeq } : meta)]);
48304
+ const emitSegments = (s, meta) => _optionalChain([callbacks, 'access', _1171 => _1171.onSegmentsUpdate, 'optionalCall', _1172 => _1172(s, streamSeq != null ? { ...meta, streamSeq } : meta)]);
48328
48305
  if (action.action === "direct_message") sawDirectMessageRef.current = true;
48329
48306
  if ((directModeFlagRef.current || sawDirectMessageRef.current) && !DIRECT_MODE_ALLOWED.has(action.action)) {
48330
48307
  if (isInStreamRef.current || !directTeardownFiredRef.current) {
48331
48308
  isInStreamRef.current = false;
48332
48309
  directTeardownFiredRef.current = true;
48333
- _optionalChain([callbacks, 'access', _1170 => _1170.onStreamEnd, 'optionalCall', _1171 => _1171()]);
48310
+ _optionalChain([callbacks, 'access', _1173 => _1173.onStreamEnd, 'optionalCall', _1174 => _1174()]);
48334
48311
  accumulator.resetSegments();
48335
48312
  }
48336
48313
  return;
@@ -48339,16 +48316,16 @@ function useRealtimeChunkProcessor(options) {
48339
48316
  case "message_start":
48340
48317
  isInStreamRef.current = true;
48341
48318
  hasEverStreamedRef.current = true;
48342
- _optionalChain([callbacks, 'access', _1172 => _1172.onStreamStart, 'optionalCall', _1173 => _1173()]);
48319
+ _optionalChain([callbacks, 'access', _1175 => _1175.onStreamStart, 'optionalCall', _1176 => _1176()]);
48343
48320
  accumulator.resetSegments();
48344
48321
  break;
48345
48322
  case "message_end":
48346
48323
  isInStreamRef.current = false;
48347
- _optionalChain([callbacks, 'access', _1174 => _1174.onStreamEnd, 'optionalCall', _1175 => _1175()]);
48324
+ _optionalChain([callbacks, 'access', _1177 => _1177.onStreamEnd, 'optionalCall', _1178 => _1178()]);
48348
48325
  accumulator.resetSegments();
48349
48326
  break;
48350
48327
  case "metadata":
48351
- _optionalChain([callbacks, 'access', _1176 => _1176.onMetadata, 'optionalCall', _1177 => _1177(action)]);
48328
+ _optionalChain([callbacks, 'access', _1179 => _1179.onMetadata, 'optionalCall', _1180 => _1180(action)]);
48352
48329
  break;
48353
48330
  case "text": {
48354
48331
  const segments = accumulator.appendText(action.text);
@@ -48370,7 +48347,7 @@ function useRealtimeChunkProcessor(options) {
48370
48347
  }
48371
48348
  case "tool_execution": {
48372
48349
  if (action.segment.data.type === "EXECUTING_TOOL") {
48373
- _optionalChain([callbacks, 'access', _1178 => _1178.onAgentBusy, 'optionalCall', _1179 => _1179()]);
48350
+ _optionalChain([callbacks, 'access', _1181 => _1181.onAgentBusy, 'optionalCall', _1182 => _1182()]);
48374
48351
  }
48375
48352
  if (!isInStreamRef.current && callbacks.onToolExecuted) {
48376
48353
  callbacks.onToolExecuted(action.segment);
@@ -48394,7 +48371,7 @@ function useRealtimeChunkProcessor(options) {
48394
48371
  emitSegments(segments);
48395
48372
  } else {
48396
48373
  pendingEscalatedRef.current.set(requestId, { command, explanation, approvalType });
48397
- _optionalChain([callbacks, 'access', _1180 => _1180.onEscalatedApproval, 'optionalCall', _1181 => _1181(requestId, { command, explanation, approvalType })]);
48374
+ _optionalChain([callbacks, 'access', _1183 => _1183.onEscalatedApproval, 'optionalCall', _1184 => _1184(requestId, { command, explanation, approvalType })]);
48398
48375
  }
48399
48376
  break;
48400
48377
  }
@@ -48406,13 +48383,13 @@ function useRealtimeChunkProcessor(options) {
48406
48383
  const summary = required ? getCommandText(required) : `Batch of ${toolCalls.length} tool calls`;
48407
48384
  pendingEscalatedRef.current.set(requestId, {
48408
48385
  command: summary,
48409
- explanation: _optionalChain([required, 'optionalAccess', _1182 => _1182.toolExplanation]),
48386
+ explanation: _optionalChain([required, 'optionalAccess', _1185 => _1185.toolExplanation]),
48410
48387
  approvalType,
48411
48388
  toolCalls
48412
48389
  });
48413
- _optionalChain([callbacks, 'access', _1183 => _1183.onEscalatedApproval, 'optionalCall', _1184 => _1184(requestId, {
48390
+ _optionalChain([callbacks, 'access', _1186 => _1186.onEscalatedApproval, 'optionalCall', _1187 => _1187(requestId, {
48414
48391
  command: summary,
48415
- explanation: _optionalChain([required, 'optionalAccess', _1185 => _1185.toolExplanation]),
48392
+ explanation: _optionalChain([required, 'optionalAccess', _1188 => _1188.toolExplanation]),
48416
48393
  approvalType
48417
48394
  })]);
48418
48395
  break;
@@ -48438,12 +48415,12 @@ function useRealtimeChunkProcessor(options) {
48438
48415
  }
48439
48416
  case "approval_result": {
48440
48417
  const { requestId, approved, approvalType, resolvedByName } = action;
48441
- if (approved) _optionalChain([callbacks, 'access', _1186 => _1186.onAgentBusy, 'optionalCall', _1187 => _1187()]);
48418
+ if (approved) _optionalChain([callbacks, 'access', _1189 => _1189.onAgentBusy, 'optionalCall', _1190 => _1190()]);
48442
48419
  const escalatedData = pendingEscalatedRef.current.get(requestId);
48443
48420
  const status = approved ? "approved" : "rejected";
48444
48421
  if (escalatedData) {
48445
48422
  pendingEscalatedRef.current.delete(requestId);
48446
- _optionalChain([callbacks, 'access', _1188 => _1188.onEscalatedApprovalResult, 'optionalCall', _1189 => _1189(requestId, approved, {
48423
+ _optionalChain([callbacks, 'access', _1191 => _1191.onEscalatedApprovalResult, 'optionalCall', _1192 => _1192(requestId, approved, {
48447
48424
  command: escalatedData.command,
48448
48425
  explanation: escalatedData.explanation,
48449
48426
  approvalType: escalatedData.approvalType
@@ -48489,29 +48466,29 @@ function useRealtimeChunkProcessor(options) {
48489
48466
  emitSegments(accumulator.getSegments());
48490
48467
  }
48491
48468
  }
48492
- _optionalChain([callbacks, 'access', _1190 => _1190.onApprovalResolved, 'optionalCall', _1191 => _1191(requestId, status, approvalType, resolvedByName)]);
48469
+ _optionalChain([callbacks, 'access', _1193 => _1193.onApprovalResolved, 'optionalCall', _1194 => _1194(requestId, status, approvalType, resolvedByName)]);
48493
48470
  break;
48494
48471
  }
48495
48472
  case "error": {
48496
48473
  let message2;
48497
- if ("details" in action && _optionalChain([action, 'optionalAccess', _1192 => _1192.details])) {
48474
+ if ("details" in action && _optionalChain([action, 'optionalAccess', _1195 => _1195.details])) {
48498
48475
  try {
48499
- message2 = _optionalChain([JSON, 'access', _1193 => _1193.parse, 'call', _1194 => _1194(action.details), 'optionalAccess', _1195 => _1195.error, 'optionalAccess', _1196 => _1196.message]);
48476
+ message2 = _optionalChain([JSON, 'access', _1196 => _1196.parse, 'call', _1197 => _1197(action.details), 'optionalAccess', _1198 => _1198.error, 'optionalAccess', _1199 => _1199.message]);
48500
48477
  } catch (e60) {
48501
48478
  message2 = action.details;
48502
48479
  }
48503
48480
  }
48504
48481
  const segments = accumulator.addError(action.error, message2);
48505
48482
  emitSegments(segments);
48506
- _optionalChain([callbacks, 'access', _1197 => _1197.onError, 'optionalCall', _1198 => _1198(action.error, message2)]);
48483
+ _optionalChain([callbacks, 'access', _1200 => _1200.onError, 'optionalCall', _1201 => _1201(action.error, message2)]);
48507
48484
  break;
48508
48485
  }
48509
48486
  case "system": {
48510
- _optionalChain([callbacks, 'access', _1199 => _1199.onSystemMessage, 'optionalCall', _1200 => _1200(action.text, { streamSeq })]);
48487
+ _optionalChain([callbacks, 'access', _1202 => _1202.onSystemMessage, 'optionalCall', _1203 => _1203(action.text, { streamSeq })]);
48511
48488
  break;
48512
48489
  }
48513
48490
  case "direct_message": {
48514
- _optionalChain([callbacks, 'access', _1201 => _1201.onDirectMessage, 'optionalCall', _1202 => _1202(action.text, {
48491
+ _optionalChain([callbacks, 'access', _1204 => _1204.onDirectMessage, 'optionalCall', _1205 => _1205(action.text, {
48515
48492
  ownerType: action.ownerType,
48516
48493
  displayName: action.displayName,
48517
48494
  userId: action.userId,
@@ -48520,7 +48497,7 @@ function useRealtimeChunkProcessor(options) {
48520
48497
  break;
48521
48498
  }
48522
48499
  case "message_request":
48523
- _optionalChain([callbacks, 'access', _1203 => _1203.onUserMessage, 'optionalCall', _1204 => _1204(action.text, {
48500
+ _optionalChain([callbacks, 'access', _1206 => _1206.onUserMessage, 'optionalCall', _1207 => _1207(action.text, {
48524
48501
  ownerType: action.ownerType,
48525
48502
  displayName: action.displayName,
48526
48503
  userId: action.userId,
@@ -48529,7 +48506,7 @@ function useRealtimeChunkProcessor(options) {
48529
48506
  })]);
48530
48507
  break;
48531
48508
  case "token_usage":
48532
- _optionalChain([callbacks, 'access', _1205 => _1205.onTokenUsage, 'optionalCall', _1206 => _1206(action.data)]);
48509
+ _optionalChain([callbacks, 'access', _1208 => _1208.onTokenUsage, 'optionalCall', _1209 => _1209(action.data)]);
48533
48510
  break;
48534
48511
  case "context_compaction_start": {
48535
48512
  const standalone = !isInStreamRef.current;
@@ -48544,7 +48521,7 @@ function useRealtimeChunkProcessor(options) {
48544
48521
  break;
48545
48522
  }
48546
48523
  case "dialog_closed":
48547
- _optionalChain([callbacks, 'access', _1207 => _1207.onDialogClosed, 'optionalCall', _1208 => _1208()]);
48524
+ _optionalChain([callbacks, 'access', _1210 => _1210.onDialogClosed, 'optionalCall', _1211 => _1211()]);
48548
48525
  break;
48549
48526
  default:
48550
48527
  break;
@@ -48592,7 +48569,7 @@ async function fetchSlashCommands(prefix, signal, commandsUrl) {
48592
48569
  const data = await res.json();
48593
48570
  return _nullishCoalesce(data.commands, () => ( []));
48594
48571
  } catch (err) {
48595
- if (_optionalChain([err, 'optionalAccess', _1209 => _1209.name]) === "AbortError") throw err;
48572
+ if (_optionalChain([err, 'optionalAccess', _1212 => _1212.name]) === "AbortError") throw err;
48596
48573
  console.warn("[chat] slash-commands fetch failed, showing none:", err);
48597
48574
  return [];
48598
48575
  }
@@ -48613,7 +48590,7 @@ function useSlashCommands(prefix, commandsUrl) {
48613
48590
  const next = await fetchSlashCommands(prefix, ctrl.signal, commandsUrl);
48614
48591
  if (!cancelled) setCommands(next);
48615
48592
  } catch (err) {
48616
- if (!cancelled && _optionalChain([err, 'optionalAccess', _1210 => _1210.name]) !== "AbortError") {
48593
+ if (!cancelled && _optionalChain([err, 'optionalAccess', _1213 => _1213.name]) !== "AbortError") {
48617
48594
  console.warn("[use-slash-commands] fetch failed:", err);
48618
48595
  }
48619
48596
  } finally {
@@ -48632,7 +48609,7 @@ function useSlashCommandRegistry(commandsUrl, options) {
48632
48609
  const query = _reactquery.useQuery.call(void 0, {
48633
48610
  queryKey: ["chat-slash-commands", commandsUrl],
48634
48611
  queryFn: ({ signal }) => fetchSlashCommands("", signal, commandsUrl),
48635
- enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1211 => _1211.enabled]), () => ( true)),
48612
+ enabled: _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1214 => _1214.enabled]), () => ( true)),
48636
48613
  staleTime: Infinity,
48637
48614
  gcTime: Infinity,
48638
48615
  // The commands registry is non-critical chrome — a failure degrades to an
@@ -48671,21 +48648,21 @@ async function fetchEmptyStateConfig(signal, emptyStateUrl) {
48671
48648
  }
48672
48649
  const data = await res.json();
48673
48650
  return {
48674
- name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1212 => _1212.name]), () => ( null)),
48675
- icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1213 => _1213.icon]), () => ( null)),
48676
- greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1214 => _1214.greeting]), () => ( null)),
48677
- enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1215 => _1215.enabledRagTableIds]), () => ( [])),
48678
- quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1216 => _1216.quickActions]), () => ( [])),
48679
- suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1217 => _1217.suggestedQueries]), () => ( []))
48651
+ name: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1215 => _1215.name]), () => ( null)),
48652
+ icon: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1216 => _1216.icon]), () => ( null)),
48653
+ greeting: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1217 => _1217.greeting]), () => ( null)),
48654
+ enabledRagTableIds: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1218 => _1218.enabledRagTableIds]), () => ( [])),
48655
+ quickActions: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1219 => _1219.quickActions]), () => ( [])),
48656
+ suggestedQueries: _nullishCoalesce(_optionalChain([data, 'optionalAccess', _1220 => _1220.suggestedQueries]), () => ( []))
48680
48657
  };
48681
48658
  } catch (err) {
48682
- if (_optionalChain([err, 'optionalAccess', _1218 => _1218.name]) === "AbortError") throw err;
48659
+ if (_optionalChain([err, 'optionalAccess', _1221 => _1221.name]) === "AbortError") throw err;
48683
48660
  console.warn("[chat] empty-state config fetch failed, using neutral defaults:", err);
48684
48661
  return EMPTY_STATE_FALLBACK;
48685
48662
  }
48686
48663
  }
48687
48664
  function useEmptyStateConfig(emptyStateUrl, options) {
48688
- const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1219 => _1219.enabled]), () => ( true))) && !!emptyStateUrl;
48665
+ const enabled = (_nullishCoalesce(_optionalChain([options, 'optionalAccess', _1222 => _1222.enabled]), () => ( true))) && !!emptyStateUrl;
48689
48666
  const query = _reactquery.useQuery.call(void 0, {
48690
48667
  queryKey: ["chat-empty-state", emptyStateUrl],
48691
48668
  queryFn: ({ signal }) => fetchEmptyStateConfig(signal, emptyStateUrl),
@@ -48714,7 +48691,7 @@ var CHAT_ATTACHMENT_MAX_SIZE_BYTES = 25 * 1024 * 1024;
48714
48691
  var STORAGE_CACHE_CONTROL_IMMUTABLE = "public, max-age=31536000, immutable";
48715
48692
  function uploadWithProgress(url, file, token, onProgress, signal) {
48716
48693
  return new Promise((resolve, reject) => {
48717
- if (_optionalChain([signal, 'optionalAccess', _1220 => _1220.aborted])) {
48694
+ if (_optionalChain([signal, 'optionalAccess', _1223 => _1223.aborted])) {
48718
48695
  reject(new Error("Upload cancelled"));
48719
48696
  return;
48720
48697
  }
@@ -48728,7 +48705,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
48728
48705
  xhr.removeEventListener("error", handleError);
48729
48706
  xhr.removeEventListener("abort", handleAbort);
48730
48707
  xhr.removeEventListener("timeout", handleTimeout);
48731
- _optionalChain([signal, 'optionalAccess', _1221 => _1221.removeEventListener, 'call', _1222 => _1222("abort", handleSignalAbort)]);
48708
+ _optionalChain([signal, 'optionalAccess', _1224 => _1224.removeEventListener, 'call', _1225 => _1225("abort", handleSignalAbort)]);
48732
48709
  if (xhr.readyState !== XMLHttpRequest.DONE) xhr.abort();
48733
48710
  };
48734
48711
  const handleProgress = (event) => {
@@ -48764,7 +48741,7 @@ function uploadWithProgress(url, file, token, onProgress, signal) {
48764
48741
  const handleSignalAbort = () => {
48765
48742
  xhr.abort();
48766
48743
  };
48767
- _optionalChain([signal, 'optionalAccess', _1223 => _1223.addEventListener, 'call', _1224 => _1224("abort", handleSignalAbort, { once: true })]);
48744
+ _optionalChain([signal, 'optionalAccess', _1226 => _1226.addEventListener, 'call', _1227 => _1227("abort", handleSignalAbort, { once: true })]);
48768
48745
  xhr.upload.addEventListener("progress", handleProgress);
48769
48746
  xhr.addEventListener("load", handleLoad);
48770
48747
  xhr.addEventListener("error", handleError);
@@ -48808,12 +48785,12 @@ function useChatAttachments() {
48808
48785
  try {
48809
48786
  sniffed = await _filetype.fileTypeFromBlob.call(void 0, att.file);
48810
48787
  } catch (err) {
48811
- if (_optionalChain([ctrl, 'optionalAccess', _1225 => _1225.signal, 'access', _1226 => _1226.aborted])) return;
48788
+ if (_optionalChain([ctrl, 'optionalAccess', _1228 => _1228.signal, 'access', _1229 => _1229.aborted])) return;
48812
48789
  throw new Error(
48813
48790
  `Could not read file content: ${err instanceof Error ? err.message : String(err)}`
48814
48791
  );
48815
48792
  }
48816
- if (_optionalChain([ctrl, 'optionalAccess', _1227 => _1227.signal, 'access', _1228 => _1228.aborted])) return;
48793
+ if (_optionalChain([ctrl, 'optionalAccess', _1230 => _1230.signal, 'access', _1231 => _1231.aborted])) return;
48817
48794
  if (!sniffed) {
48818
48795
  throw new Error("Unrecognized file format");
48819
48796
  }
@@ -48827,7 +48804,7 @@ function useChatAttachments() {
48827
48804
  const urlResp = await _chunkN2TJ3HAMcjs.embedAuthedFetch.call(void 0, uploadUrlEndpoint, {
48828
48805
  method: "POST",
48829
48806
  headers: { "Content-Type": "application/json" },
48830
- signal: _optionalChain([ctrl, 'optionalAccess', _1229 => _1229.signal]),
48807
+ signal: _optionalChain([ctrl, 'optionalAccess', _1232 => _1232.signal]),
48831
48808
  body: JSON.stringify({
48832
48809
  fileName: att.file.name,
48833
48810
  // Pass the SNIFFED MIME (not `file.type`, which can be a
@@ -48853,9 +48830,9 @@ function useChatAttachments() {
48853
48830
  (pct) => {
48854
48831
  updateOne(att.id, { progress: pct });
48855
48832
  },
48856
- _optionalChain([ctrl, 'optionalAccess', _1230 => _1230.signal])
48833
+ _optionalChain([ctrl, 'optionalAccess', _1233 => _1233.signal])
48857
48834
  );
48858
- if (_optionalChain([ctrl, 'optionalAccess', _1231 => _1231.signal, 'access', _1232 => _1232.aborted])) return;
48835
+ if (_optionalChain([ctrl, 'optionalAccess', _1234 => _1234.signal, 'access', _1235 => _1235.aborted])) return;
48859
48836
  updateOne(att.id, {
48860
48837
  status: "ready",
48861
48838
  progress: 100,
@@ -48863,7 +48840,7 @@ function useChatAttachments() {
48863
48840
  viewToken: mintData.viewToken
48864
48841
  });
48865
48842
  } catch (err) {
48866
- if (_optionalChain([ctrl, 'optionalAccess', _1233 => _1233.signal, 'access', _1234 => _1234.aborted])) return;
48843
+ if (_optionalChain([ctrl, 'optionalAccess', _1236 => _1236.signal, 'access', _1237 => _1237.aborted])) return;
48867
48844
  const message2 = err instanceof Error ? err.message : String(err);
48868
48845
  updateOne(att.id, { status: "error", progress: 0, errorMessage: message2 });
48869
48846
  } finally {
@@ -49014,7 +48991,7 @@ var ANON_DEFAULTS = {
49014
48991
  function useResolveChatIdentity(enabled) {
49015
48992
  const runtime = _chunk2B6773QMcjs.useRequiredChatRuntime.call(void 0, );
49016
48993
  const url = runtime.endpoints.identityUrl;
49017
- const proxyEmail = _nullishCoalesce(_optionalChain([_chunkN2TJ3HAMcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1235 => _1235.email]), () => ( null));
48994
+ const proxyEmail = _nullishCoalesce(_optionalChain([_chunkN2TJ3HAMcjs.getEmbedProxyAuth.call(void 0, ), 'optionalAccess', _1238 => _1238.email]), () => ( null));
49018
48995
  const [data, setData] = _react.useState.call(void 0, ANON_DEFAULTS);
49019
48996
  const [isLoading, setIsLoading] = _react.useState.call(void 0, enabled);
49020
48997
  _react.useEffect.call(void 0, () => {
@@ -49105,7 +49082,7 @@ function useSSE({ useMock = true, debugMode = false, streamFn } = {}) {
49105
49082
  yield chunk;
49106
49083
  }
49107
49084
  } catch (err) {
49108
- if (_optionalChain([err, 'optionalAccess', _1236 => _1236.name]) === "AbortError" || ctrl.signal.aborted) {
49085
+ if (_optionalChain([err, 'optionalAccess', _1239 => _1239.name]) === "AbortError" || ctrl.signal.aborted) {
49109
49086
  return;
49110
49087
  }
49111
49088
  const errorMessage = err instanceof Error ? err.message : "An error occurred";
@@ -49156,7 +49133,7 @@ function useChat({
49156
49133
  const onMessagesChangeRef = _react.useRef.call(void 0, onMessagesChange);
49157
49134
  onMessagesChangeRef.current = onMessagesChange;
49158
49135
  _react.useEffect.call(void 0, () => {
49159
- _optionalChain([onMessagesChangeRef, 'access', _1237 => _1237.current, 'optionalCall', _1238 => _1238(messages)]);
49136
+ _optionalChain([onMessagesChangeRef, 'access', _1240 => _1240.current, 'optionalCall', _1241 => _1241(messages)]);
49160
49137
  }, [messages]);
49161
49138
  const {
49162
49139
  streamMessage,
@@ -49193,7 +49170,7 @@ function useChat({
49193
49170
  name: "You",
49194
49171
  content: text,
49195
49172
  timestamp: /* @__PURE__ */ new Date(),
49196
- ..._optionalChain([options, 'optionalAccess', _1239 => _1239.hidden]) ? { hidden: true } : {}
49173
+ ..._optionalChain([options, 'optionalAccess', _1242 => _1242.hidden]) ? { hidden: true } : {}
49197
49174
  };
49198
49175
  addMessage(userMessage);
49199
49176
  setIsTyping(true);
@@ -49255,7 +49232,7 @@ function useChat({
49255
49232
  currentTextSegment = "";
49256
49233
  }
49257
49234
  const seg = segment;
49258
- const proposalId = _optionalChain([seg, 'access', _1240 => _1240.data, 'optionalAccess', _1241 => _1241.requestId]);
49235
+ const proposalId = _optionalChain([seg, 'access', _1243 => _1243.data, 'optionalAccess', _1244 => _1244.requestId]);
49259
49236
  const updateApprovalMessage = (transform) => {
49260
49237
  setMessages((prev) => {
49261
49238
  for (let i = prev.length - 1; i >= 0; i--) {
@@ -49264,7 +49241,7 @@ function useChat({
49264
49241
  if (!Array.isArray(m.content)) continue;
49265
49242
  const segments = m.content;
49266
49243
  const hasMatch = segments.some(
49267
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1242 => _1242.data, 'optionalAccess', _1243 => _1243.requestId]) === proposalId
49244
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1245 => _1245.data, 'optionalAccess', _1246 => _1246.requestId]) === proposalId
49268
49245
  );
49269
49246
  if (!hasMatch) continue;
49270
49247
  const next = [...prev];
@@ -49306,11 +49283,11 @@ function useChat({
49306
49283
  if (!Array.isArray(m.content)) continue;
49307
49284
  const segments = m.content;
49308
49285
  const hasMatch = segments.some(
49309
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1244 => _1244.data, 'optionalAccess', _1245 => _1245.requestId]) === decision.proposalId
49286
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1247 => _1247.data, 'optionalAccess', _1248 => _1248.requestId]) === decision.proposalId
49310
49287
  );
49311
49288
  if (!hasMatch) continue;
49312
49289
  const flipped = segments.map(
49313
- (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1246 => _1246.data, 'optionalAccess', _1247 => _1247.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
49290
+ (s) => s.type === "approval_request" && _optionalChain([s, 'access', _1249 => _1249.data, 'optionalAccess', _1250 => _1250.requestId]) === decision.proposalId ? { ...s, status: decision.action } : s
49314
49291
  );
49315
49292
  const next = [...prev];
49316
49293
  next[i] = { ...m, content: flipped };
@@ -49472,8 +49449,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
49472
49449
  })),
49473
49450
  { role: "user", content: message2 }
49474
49451
  ];
49475
- const targetPath = _optionalChain([extra, 'optionalAccess', _1248 => _1248.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
49476
- const requestBody = _optionalChain([extra, 'optionalAccess', _1249 => _1249.approvalAction]) ? {
49452
+ const targetPath = _optionalChain([extra, 'optionalAccess', _1251 => _1251.approvalAction]) ? endpoints.approvalToolUrl : endpoints.chatStreamUrl;
49453
+ const requestBody = _optionalChain([extra, 'optionalAccess', _1252 => _1252.approvalAction]) ? {
49477
49454
  proposal_id: extra.approvalAction.proposalId,
49478
49455
  action: extra.approvalAction.action,
49479
49456
  messages: currentMessages.filter((m) => (m.role === "user" || m.role === "assistant") && !m.hidden).map((m) => ({
@@ -49482,8 +49459,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
49482
49459
  }))
49483
49460
  } : {
49484
49461
  messages: apiMessages,
49485
- ..._optionalChain([extra, 'optionalAccess', _1250 => _1250.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
49486
- ..._optionalChain([extra, 'optionalAccess', _1251 => _1251.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
49462
+ ..._optionalChain([extra, 'optionalAccess', _1253 => _1253.commandOverride]) ? { commandOverride: extra.commandOverride } : {},
49463
+ ..._optionalChain([extra, 'optionalAccess', _1254 => _1254.pendingAttachments]) && extra.pendingAttachments.length > 0 ? { pendingAttachments: extra.pendingAttachments } : {}
49487
49464
  };
49488
49465
  const response = await _chunkN2TJ3HAMcjs.embedAuthedFetch.call(void 0, targetPath, {
49489
49466
  method: "POST",
@@ -49493,7 +49470,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
49493
49470
  if (!response.ok) {
49494
49471
  throw new Error(`Chat request failed: ${response.status}`);
49495
49472
  }
49496
- const reader = _optionalChain([response, 'access', _1252 => _1252.body, 'optionalAccess', _1253 => _1253.getReader, 'call', _1254 => _1254()]);
49473
+ const reader = _optionalChain([response, 'access', _1255 => _1255.body, 'optionalAccess', _1256 => _1256.getReader, 'call', _1257 => _1257()]);
49497
49474
  if (!reader) throw new Error("No response body");
49498
49475
  const decoder = new TextDecoder();
49499
49476
  let buffer = "";
@@ -49576,7 +49553,7 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
49576
49553
  const toolName = typeof meta.tool_name === "string" ? meta.tool_name : void 0;
49577
49554
  const result = _nullishCoalesce(meta.result, () => ( null));
49578
49555
  const card = _nullishCoalesce(meta.card, () => ( null));
49579
- if (_optionalChain([card, 'optionalAccess', _1255 => _1255.ref, 'optionalAccess', _1256 => _1256.id]) && _optionalChain([card, 'optionalAccess', _1257 => _1257.type])) {
49556
+ if (_optionalChain([card, 'optionalAccess', _1258 => _1258.ref, 'optionalAccess', _1259 => _1259.id]) && _optionalChain([card, 'optionalAccess', _1260 => _1260.type])) {
49580
49557
  const existing = _nullishCoalesce(refsMapRef.current.get(sendIdx), () => ( {}));
49581
49558
  const key = buildChatRefKey(card.type, card.ref.id);
49582
49559
  refsMapRef.current.set(sendIdx, { ...existing, [key]: card.ref });
@@ -49589,8 +49566,8 @@ function createDocStreamFn(source, endpoints, messagesRef, sourcesMapRef, refsMa
49589
49566
  willAutoContinue: meta.willAutoContinue === true,
49590
49567
  ...toolName ? { toolName } : {},
49591
49568
  ...result ? { result } : {},
49592
- ..._optionalChain([card, 'optionalAccess', _1258 => _1258.marker]) ? { marker: card.marker } : {},
49593
- ..._optionalChain([card, 'optionalAccess', _1259 => _1259.ref]) ? { cardRef: card.ref } : {},
49569
+ ..._optionalChain([card, 'optionalAccess', _1261 => _1261.marker]) ? { marker: card.marker } : {},
49570
+ ..._optionalChain([card, 'optionalAccess', _1262 => _1262.ref]) ? { cardRef: card.ref } : {},
49594
49571
  ...typeof meta.receiptText === "string" ? { receiptText: meta.receiptText } : {},
49595
49572
  proposalId: typeof meta.proposalId === "string" ? meta.proposalId : void 0
49596
49573
  };
@@ -49709,7 +49686,7 @@ var DEFAULT_CHAT_SOURCE = "embed";
49709
49686
  var chatStorageKey = (source) => {
49710
49687
  const base = `mingo-chat-${source}-v${CHAT_STORAGE_VERSION}`;
49711
49688
  const auth = _chunkN2TJ3HAMcjs.getEmbedProxyAuth.call(void 0, );
49712
- if (_optionalChain([auth, 'optionalAccess', _1260 => _1260.email])) {
49689
+ if (_optionalChain([auth, 'optionalAccess', _1263 => _1263.email])) {
49713
49690
  return `${base}-u-${encodeURIComponent(auth.email.toLowerCase())}`;
49714
49691
  }
49715
49692
  return base;
@@ -49764,7 +49741,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
49764
49741
  const { active = true } = runtimeOptions;
49765
49742
  const runtime = _chunk2B6773QMcjs.useRequiredChatRuntime.call(void 0, );
49766
49743
  const source = runtime.source || DEFAULT_CHAT_SOURCE;
49767
- const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1261 => _1261.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
49744
+ const tableIdForDocumentType = _nullishCoalesce(_optionalChain([options, 'optionalAccess', _1264 => _1264.tableIdForDocumentType]), () => ( defaultTableIdForDocumentType));
49768
49745
  const persistedRef = _react.useRef.call(void 0, null);
49769
49746
  if (persistedRef.current === null) {
49770
49747
  pruneStaleChatStorage(source);
@@ -49869,7 +49846,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
49869
49846
  const lookupIdx = sendIdx >= 0 ? sendIdx : 0;
49870
49847
  sources = sourcesMapRef.current.get(lookupIdx);
49871
49848
  chatRefs = _nullishCoalesce(m.chatRefs, () => ( refsMapRef.current.get(lookupIdx)));
49872
- scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1262 => _1262.current, 'access', _1263 => _1263.get, 'call', _1264 => _1264(lookupIdx), 'optionalAccess', _1265 => _1265.scrollAnchor]), () => ( void 0));
49849
+ scrollAnchor = _nullishCoalesce(_optionalChain([metaMapRef, 'access', _1265 => _1265.current, 'access', _1266 => _1266.get, 'call', _1267 => _1267(lookupIdx), 'optionalAccess', _1268 => _1268.scrollAnchor]), () => ( void 0));
49873
49850
  }
49874
49851
  return {
49875
49852
  id: m.id,
@@ -49917,7 +49894,7 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
49917
49894
  );
49918
49895
  return;
49919
49896
  }
49920
- const refSlug = typeof _optionalChain([reference, 'access', _1266 => _1266.metadata, 'optionalAccess', _1267 => _1267.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
49897
+ const refSlug = typeof _optionalChain([reference, 'access', _1269 => _1269.metadata, 'optionalAccess', _1270 => _1270.slug]) === "string" && reference.metadata.slug.length > 0 ? reference.metadata.slug : "";
49921
49898
  const queryValue = refSlug || sanitizeTitleForChat(reference.title) || reference.id;
49922
49899
  const escaped = queryValue.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
49923
49900
  const text = `/${cmdId} display "${escaped}"`;
@@ -49989,18 +49966,18 @@ function useSseChatAdapter(options, runtimeOptions = {}) {
49989
49966
  clearMessages,
49990
49967
  streamingPhase,
49991
49968
  /** Provider key for the lib's `<ModelDisplay>` icon. */
49992
- currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1268 => _1268.provider]), () => ( null)),
49993
- currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1269 => _1269.modelLabel]), () => ( null)),
49994
- currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1270 => _1270.contextWindowMaxTokens]), () => ( null)),
49969
+ currentProvider: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1271 => _1271.provider]), () => ( null)),
49970
+ currentModelLabel: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1272 => _1272.modelLabel]), () => ( null)),
49971
+ currentContextWindowMaxTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1273 => _1273.contextWindowMaxTokens]), () => ( null)),
49995
49972
  /** Input tokens (known after server's message_start frame; null until). */
49996
- currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1271 => _1271.inputTokens]), () => ( null)),
49973
+ currentInputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1274 => _1274.inputTokens]), () => ( null)),
49997
49974
  /** Output tokens (known only after server's trailing usage frame). */
49998
- currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1272 => _1272.outputTokens]), () => ( null)),
49975
+ currentOutputTokens: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1275 => _1275.outputTokens]), () => ( null)),
49999
49976
  /** Cache hit % (read / total-input × 100). null during streaming. */
50000
- currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1273 => _1273.cacheHitRatePct]), () => ( null)),
49977
+ currentCacheHitRatePct: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1276 => _1276.cacheHitRatePct]), () => ( null)),
50001
49978
  /** Cross-call usage breakdown (Haiku rewriter/classifier/summarizer
50002
49979
  * token counts). null until the trailing usage frame lands. */
50003
- currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1274 => _1274.breakdown]), () => ( null)),
49980
+ currentUsageBreakdown: _nullishCoalesce(_optionalChain([latestMeta, 'optionalAccess', _1277 => _1277.breakdown]), () => ( null)),
50004
49981
  // ─── Dialog management — stubs for v1 ────────────────────────────────
50005
49982
  // Guide mode currently keeps its history in `localStorage` opaquely
50006
49983
  // under the hood (`runtime.source` namespaced key). Surfacing that
@@ -50058,15 +50035,15 @@ var noopRejectRequest = async (_id, _reason) => {
50058
50035
 
50059
50036
  // src/components/chat/utils/process-historical-messages.ts
50060
50037
  function getOwnerDisplayName(owner) {
50061
- if (_optionalChain([owner, 'optionalAccess', _1275 => _1275.type]) === OWNER_TYPE.ADMIN && owner.user) {
50038
+ if (_optionalChain([owner, 'optionalAccess', _1278 => _1278.type]) === OWNER_TYPE.ADMIN && owner.user) {
50062
50039
  const { firstName, lastName } = owner.user;
50063
50040
  const name = [firstName, lastName].filter(Boolean).join(" ");
50064
50041
  if (name) return name;
50065
50042
  }
50066
- return _optionalChain([owner, 'optionalAccess', _1276 => _1276.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
50043
+ return _optionalChain([owner, 'optionalAccess', _1279 => _1279.type]) === OWNER_TYPE.ADMIN ? "Admin" : "You";
50067
50044
  }
50068
50045
  function getOwnerAvatar(owner) {
50069
- return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1277 => _1277.user, 'optionalAccess', _1278 => _1278.image, 'optionalAccess', _1279 => _1279.imageUrl]), () => ( void 0));
50046
+ return _nullishCoalesce(_optionalChain([owner, 'optionalAccess', _1280 => _1280.user, 'optionalAccess', _1281 => _1281.image, 'optionalAccess', _1282 => _1282.imageUrl]), () => ( void 0));
50070
50047
  }
50071
50048
  function pushStandaloneMessages(processedMessages, msg, messageDataArray) {
50072
50049
  messageDataArray.forEach((data) => {
@@ -50129,14 +50106,14 @@ function processHistoricalMessages(messages, options = {}) {
50129
50106
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
50130
50107
  return;
50131
50108
  }
50132
- const isUserMessage = _optionalChain([msg, 'access', _1280 => _1280.owner, 'optionalAccess', _1281 => _1281.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1282 => _1282.owner, 'optionalAccess', _1283 => _1283.type]) === OWNER_TYPE.ADMIN;
50109
+ const isUserMessage = _optionalChain([msg, 'access', _1283 => _1283.owner, 'optionalAccess', _1284 => _1284.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1285 => _1285.owner, 'optionalAccess', _1286 => _1286.type]) === OWNER_TYPE.ADMIN;
50133
50110
  if (isUserMessage) {
50134
50111
  flushAssistantMessage();
50135
- const userAuthorType = _optionalChain([msg, 'access', _1284 => _1284.owner, 'optionalAccess', _1285 => _1285.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
50112
+ const userAuthorType = _optionalChain([msg, 'access', _1287 => _1287.owner, 'optionalAccess', _1288 => _1288.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
50136
50113
  messageDataArray.forEach((data) => {
50137
50114
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
50138
50115
  const rawContext = data.contextItems;
50139
- const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1286 => _1286.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1287 => _1287.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
50116
+ const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1289 => _1289.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1290 => _1290.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
50140
50117
  processedMessages.push({
50141
50118
  id: msg.id,
50142
50119
  role: "user",
@@ -50160,7 +50137,7 @@ function processHistoricalMessages(messages, options = {}) {
50160
50137
  });
50161
50138
  const nextMsg = messages[index + 1];
50162
50139
  const isLastMessage = index === messages.length - 1;
50163
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1288 => _1288.owner, 'optionalAccess', _1289 => _1289.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1290 => _1290.owner, 'optionalAccess', _1291 => _1291.type]) === OWNER_TYPE.ADMIN);
50140
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1291 => _1291.owner, 'optionalAccess', _1292 => _1292.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1293 => _1293.owner, 'optionalAccess', _1294 => _1294.type]) === OWNER_TYPE.ADMIN);
50164
50141
  if (isLastMessage || nextIsFromUser) {
50165
50142
  flushAssistantMessage();
50166
50143
  }
@@ -50270,7 +50247,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
50270
50247
  }
50271
50248
  }
50272
50249
  } else {
50273
- _optionalChain([escalatedApprovals, 'optionalAccess', _1292 => _1292.set, 'call', _1293 => _1293(data.approvalRequestId, {
50250
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1295 => _1295.set, 'call', _1296 => _1296(data.approvalRequestId, {
50274
50251
  command: data.command || "",
50275
50252
  explanation: data.explanation,
50276
50253
  approvalType,
@@ -50284,8 +50261,8 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
50284
50261
  const existingStatus = approvalStatuses[data.approvalRequestId];
50285
50262
  const status = existingStatus || (data.approved ? "approved" : "rejected");
50286
50263
  const resolvedByName = "resolvedByName" in data ? data.resolvedByName : void 0;
50287
- const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1294 => _1294.get, 'call', _1295 => _1295(data.approvalRequestId)]);
50288
- if (_optionalChain([escalatedData, 'optionalAccess', _1296 => _1296.toolCalls]) && escalatedData.toolCalls.length > 0) {
50264
+ const escalatedData = _optionalChain([escalatedApprovals, 'optionalAccess', _1297 => _1297.get, 'call', _1298 => _1298(data.approvalRequestId)]);
50265
+ if (_optionalChain([escalatedData, 'optionalAccess', _1299 => _1299.toolCalls]) && escalatedData.toolCalls.length > 0) {
50289
50266
  if (batchApprovalsEnabled) {
50290
50267
  accumulator.addApprovalBatch(
50291
50268
  data.approvalRequestId,
@@ -50307,7 +50284,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
50307
50284
  );
50308
50285
  }
50309
50286
  }
50310
- _optionalChain([escalatedApprovals, 'optionalAccess', _1297 => _1297.delete, 'call', _1298 => _1298(data.approvalRequestId)]);
50287
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1300 => _1300.delete, 'call', _1301 => _1301(data.approvalRequestId)]);
50311
50288
  break;
50312
50289
  }
50313
50290
  if (escalatedData) {
@@ -50316,7 +50293,7 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
50316
50293
  explanation: escalatedData.explanation,
50317
50294
  approvalType: escalatedData.approvalType
50318
50295
  });
50319
- _optionalChain([escalatedApprovals, 'optionalAccess', _1299 => _1299.delete, 'call', _1300 => _1300(data.approvalRequestId)]);
50296
+ _optionalChain([escalatedApprovals, 'optionalAccess', _1302 => _1302.delete, 'call', _1303 => _1303(data.approvalRequestId)]);
50320
50297
  }
50321
50298
  const before = accumulator.getSegments();
50322
50299
  const after = accumulator.updateApprovalStatus(data.approvalRequestId, status, resolvedByName);
@@ -50332,9 +50309,9 @@ function processMessageData(data, accumulator, approvalStatuses, options = {}, e
50332
50309
  case MESSAGE_TYPE.ERROR:
50333
50310
  if ("error" in data) {
50334
50311
  let message2;
50335
- if ("details" in data && _optionalChain([data, 'optionalAccess', _1301 => _1301.details])) {
50312
+ if ("details" in data && _optionalChain([data, 'optionalAccess', _1304 => _1304.details])) {
50336
50313
  try {
50337
- message2 = _optionalChain([JSON, 'access', _1302 => _1302.parse, 'call', _1303 => _1303(data.details), 'optionalAccess', _1304 => _1304.error, 'optionalAccess', _1305 => _1305.message]);
50314
+ message2 = _optionalChain([JSON, 'access', _1305 => _1305.parse, 'call', _1306 => _1306(data.details), 'optionalAccess', _1307 => _1307.error, 'optionalAccess', _1308 => _1308.message]);
50338
50315
  } catch (e67) {
50339
50316
  message2 = data.details;
50340
50317
  }
@@ -50417,14 +50394,14 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
50417
50394
  pushStandaloneMessages(processedMessages, msg, messageDataArray);
50418
50395
  return;
50419
50396
  }
50420
- const isUserMessage = _optionalChain([msg, 'access', _1306 => _1306.owner, 'optionalAccess', _1307 => _1307.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1308 => _1308.owner, 'optionalAccess', _1309 => _1309.type]) === OWNER_TYPE.ADMIN;
50397
+ const isUserMessage = _optionalChain([msg, 'access', _1309 => _1309.owner, 'optionalAccess', _1310 => _1310.type]) === OWNER_TYPE.CLIENT || _optionalChain([msg, 'access', _1311 => _1311.owner, 'optionalAccess', _1312 => _1312.type]) === OWNER_TYPE.ADMIN;
50421
50398
  if (isUserMessage) {
50422
50399
  flushAssistantMessage();
50423
- const userAuthorType = _optionalChain([msg, 'access', _1310 => _1310.owner, 'optionalAccess', _1311 => _1311.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
50400
+ const userAuthorType = _optionalChain([msg, 'access', _1313 => _1313.owner, 'optionalAccess', _1314 => _1314.type]) === OWNER_TYPE.ADMIN ? "admin" : "user";
50424
50401
  messageDataArray.forEach((data) => {
50425
50402
  if (data.type === MESSAGE_TYPE.TEXT && "text" in data && data.text) {
50426
50403
  const rawContext = data.contextItems;
50427
- const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1312 => _1312.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1313 => _1313.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
50404
+ const contextItems = Array.isArray(rawContext) ? rawContext.filter((c) => typeof _optionalChain([c, 'optionalAccess', _1315 => _1315.type]) === "string" && typeof _optionalChain([c, 'optionalAccess', _1316 => _1316.id]) === "string").map((c) => ({ type: c.type, id: c.id, label: c.id })) : void 0;
50428
50405
  processedMessages.push({
50429
50406
  id: msg.id,
50430
50407
  role: "user",
@@ -50448,7 +50425,7 @@ function processHistoricalMessagesWithErrors(messages, options = {}) {
50448
50425
  });
50449
50426
  const nextMsg = messages[index + 1];
50450
50427
  const isLastMessage = index === messages.length - 1;
50451
- const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1314 => _1314.owner, 'optionalAccess', _1315 => _1315.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1316 => _1316.owner, 'optionalAccess', _1317 => _1317.type]) === OWNER_TYPE.ADMIN);
50428
+ const nextIsFromUser = nextMsg && (_optionalChain([nextMsg, 'access', _1317 => _1317.owner, 'optionalAccess', _1318 => _1318.type]) === OWNER_TYPE.CLIENT || _optionalChain([nextMsg, 'access', _1319 => _1319.owner, 'optionalAccess', _1320 => _1320.type]) === OWNER_TYPE.ADMIN);
50452
50429
  if (isLastMessage || nextIsFromUser) {
50453
50430
  flushAssistantMessage();
50454
50431
  }
@@ -50817,7 +50794,7 @@ function useNatsChatAdapter(config, options = {}) {
50817
50794
  }, [active, fetchDialogs, loadDialogsPage]);
50818
50795
  const sendMessage = _react.useCallback.call(void 0,
50819
50796
  async (text, sendOptions) => {
50820
- const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1318 => _1318.hidden]), () => ( false));
50797
+ const hidden = _nullishCoalesce(_optionalChain([sendOptions, 'optionalAccess', _1321 => _1321.hidden]), () => ( false));
50821
50798
  setMessages((prev) => [
50822
50799
  ...prev,
50823
50800
  {
@@ -50981,11 +50958,11 @@ function useNatsChatAdapter(config, options = {}) {
50981
50958
  // Tokens: live `token_usage` frame / dialog snapshot (`dialogTokenUsage`).
50982
50959
  // contextWindow uses the dialog's `contextSize` (the "X / Y" denominator,
50983
50960
  // matching the /mingo page). cacheHitRate/breakdown are SSE-only → null.
50984
- currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1319 => _1319.provider]), () => ( modelProvider)), () => ( null)),
50985
- currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1320 => _1320.modelLabel]), () => ( modelLabel)), () => ( null)),
50986
- currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1321 => _1321.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1322 => _1322.contextWindowMaxTokens]))), () => ( null)),
50987
- currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1323 => _1323.inputTokensSize]), () => ( null)),
50988
- currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1324 => _1324.outputTokensSize]), () => ( null)),
50961
+ currentProvider: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1322 => _1322.provider]), () => ( modelProvider)), () => ( null)),
50962
+ currentModelLabel: _nullishCoalesce(_nullishCoalesce(_optionalChain([liveModel, 'optionalAccess', _1323 => _1323.modelLabel]), () => ( modelLabel)), () => ( null)),
50963
+ currentContextWindowMaxTokens: _nullishCoalesce(_nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1324 => _1324.contextSize]), () => ( _optionalChain([liveModel, 'optionalAccess', _1325 => _1325.contextWindowMaxTokens]))), () => ( null)),
50964
+ currentInputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1326 => _1326.inputTokensSize]), () => ( null)),
50965
+ currentOutputTokens: _nullishCoalesce(_optionalChain([dialogTokenUsage, 'optionalAccess', _1327 => _1327.outputTokensSize]), () => ( null)),
50989
50966
  currentCacheHitRatePct: null,
50990
50967
  currentUsageBreakdown: null,
50991
50968
  // Dialog management
@@ -51233,7 +51210,7 @@ function extractIncompleteMessageState(lastMessage) {
51233
51210
  break;
51234
51211
  case "approval_batch": {
51235
51212
  const allDone = !!segment.data.executions && segment.data.toolCalls.every(
51236
- (c) => _optionalChain([segment, 'access', _1325 => _1325.data, 'access', _1326 => _1326.executions, 'optionalAccess', _1327 => _1327[c.toolExecutionRequestId], 'optionalAccess', _1328 => _1328.status]) === "done"
51213
+ (c) => _optionalChain([segment, 'access', _1328 => _1328.data, 'access', _1329 => _1329.executions, 'optionalAccess', _1330 => _1330[c.toolExecutionRequestId], 'optionalAccess', _1331 => _1331.status]) === "done"
51237
51214
  );
51238
51215
  if (segment.status !== "rejected" && !allDone) {
51239
51216
  hasIncompleteState = true;
@@ -51301,20 +51278,20 @@ function mergeHistoryWithRealtime(input) {
51301
51278
  const seqCoverageKnown = realtimeSeenStreamSeq > 0 && historyMaxStreamSeq > 0;
51302
51279
  const historyCoversRealtime = seqCoverageKnown ? historyMaxStreamSeq >= realtimeSeenStreamSeq : null;
51303
51280
  const trailing = processedHistory[processedHistory.length - 1];
51304
- const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1329 => _1329.role]) === "assistant" ? trailing : null;
51305
- const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1330 => _1330.content, 'access', _1331 => _1331.find, 'call', _1332 => _1332((s) => s.type === "approval_batch"), 'optionalAccess', _1333 => _1333.data, 'optionalAccess', _1334 => _1334.approvalRequestId]), () => ( null)) : null;
51281
+ const historyTrailingAssistant = _optionalChain([trailing, 'optionalAccess', _1332 => _1332.role]) === "assistant" ? trailing : null;
51282
+ const historyBatchId = historyTrailingAssistant && Array.isArray(historyTrailingAssistant.content) ? _nullishCoalesce(_optionalChain([historyTrailingAssistant, 'access', _1333 => _1333.content, 'access', _1334 => _1334.find, 'call', _1335 => _1335((s) => s.type === "approval_batch"), 'optionalAccess', _1336 => _1336.data, 'optionalAccess', _1337 => _1337.approvalRequestId]), () => ( null)) : null;
51306
51283
  let processedToUse = processedHistory;
51307
51284
  const pinnedSyntheticIds = /* @__PURE__ */ new Set();
51308
51285
  const droppedSyntheticIds = /* @__PURE__ */ new Set();
51309
51286
  if (historyBatchId) {
51310
51287
  const batchTwins = existingMessages.filter(
51311
51288
  (m) => m.role === "assistant" && Array.isArray(m.content) && m.content.some(
51312
- (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1335 => _1335.data, 'optionalAccess', _1336 => _1336.approvalRequestId]) === historyBatchId
51289
+ (s) => s.type === "approval_batch" && _optionalChain([s, 'access', _1338 => _1338.data, 'optionalAccess', _1339 => _1339.approvalRequestId]) === historyBatchId
51313
51290
  )
51314
51291
  );
51315
51292
  const existingWithSameBatch = _nullishCoalesce(batchTwins.find((m) => m.id === streamingMessageId), () => ( batchTwins[batchTwins.length - 1]));
51316
51293
  if (existingWithSameBatch && Array.isArray(existingWithSameBatch.content)) {
51317
- const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1337 => _1337.content])) ? historyTrailingAssistant.content.length : 0;
51294
+ const histSize = Array.isArray(_optionalChain([historyTrailingAssistant, 'optionalAccess', _1340 => _1340.content])) ? historyTrailingAssistant.content.length : 0;
51318
51295
  const realtimeSize = existingWithSameBatch.content.length;
51319
51296
  if (existingWithSameBatch.id === streamingMessageId || realtimeSize > histSize) {
51320
51297
  processedToUse = processedHistory.slice(0, -1);
@@ -51330,16 +51307,16 @@ function mergeHistoryWithRealtime(input) {
51330
51307
  if (pinnedSyntheticIds.has(m.id)) return true;
51331
51308
  if (droppedSyntheticIds.has(m.id)) return false;
51332
51309
  if (processedIds.has(m.id)) return false;
51333
- if (_optionalChain([rawHistoryIds, 'optionalAccess', _1338 => _1338.has, 'call', _1339 => _1339(m.id)])) return false;
51310
+ if (_optionalChain([rawHistoryIds, 'optionalAccess', _1341 => _1341.has, 'call', _1342 => _1342(m.id)])) return false;
51334
51311
  if (m.role === "user" && m.id.startsWith("optimistic-") && typeof m.content === "string") {
51335
- const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1340 => _1340.timestamp, 'optionalAccess', _1341 => _1341.getTime, 'call', _1342 => _1342()]), () => ( 0))) <= historyFetchedAt;
51312
+ const canBeInSnapshot = (_nullishCoalesce(_optionalChain([m, 'access', _1343 => _1343.timestamp, 'optionalAccess', _1344 => _1344.getTime, 'call', _1345 => _1345()]), () => ( 0))) <= historyFetchedAt;
51336
51313
  return !(canBeInSnapshot && processedToUse.some((pm) => pm.role === "user" && pm.content === m.content));
51337
51314
  }
51338
51315
  if (isSyntheticRealtimeId(m.id) && m.id !== streamingMessageId) {
51339
51316
  if (m.role === "assistant" && trailingAssistantText && assistantAnswerText(m.content) === trailingAssistantText) {
51340
51317
  return false;
51341
51318
  }
51342
- const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1343 => _1343.timestamp, 'optionalAccess', _1344 => _1344.getTime, 'call', _1345 => _1345()]), () => ( 0))) <= historyFetchedAt;
51319
+ const covered = typeof m.streamSeq === "number" && historyMaxStreamSeq > 0 ? historyMaxStreamSeq >= m.streamSeq : historyCoversRealtime !== null ? historyCoversRealtime : (_nullishCoalesce(_optionalChain([m, 'access', _1346 => _1346.timestamp, 'optionalAccess', _1347 => _1347.getTime, 'call', _1348 => _1348()]), () => ( 0))) <= historyFetchedAt;
51343
51320
  if (covered) return false;
51344
51321
  }
51345
51322
  return true;
@@ -51394,7 +51371,7 @@ function normalizeHistoricalMessageData(md) {
51394
51371
  function isHistoricalUserTurn(m) {
51395
51372
  return !!m.owner;
51396
51373
  }
51397
- var isTextSegment = (d) => _optionalChain([d, 'optionalAccess', _1346 => _1346.type]) === "TEXT" && typeof d.text === "string";
51374
+ var isTextSegment = (d) => _optionalChain([d, 'optionalAccess', _1349 => _1349.type]) === "TEXT" && typeof d.text === "string";
51398
51375
  var THINK_MS = 550;
51399
51376
  var TOKEN_MS = 55;
51400
51377
  var USER_MS = 480;
@@ -51617,7 +51594,7 @@ function useChatDialogManager({
51617
51594
  const handleConfirmRestore = _react.useCallback.call(void 0, async () => {
51618
51595
  if (restoreTarget) {
51619
51596
  try {
51620
- await _optionalChain([unarchiveDialog, 'optionalCall', _1347 => _1347(restoreTarget.id)]);
51597
+ await _optionalChain([unarchiveDialog, 'optionalCall', _1350 => _1350(restoreTarget.id)]);
51621
51598
  } catch (err) {
51622
51599
  console.error("[useChatDialogManager] unarchive failed:", err);
51623
51600
  return;
@@ -52035,7 +52012,7 @@ function EmbeddableChatInner({
52035
52012
  }),
52036
52013
  [commandsUrl]
52037
52014
  );
52038
- const userName = _optionalChain([identityUser, 'optionalAccess', _1348 => _1348.firstName, 'optionalAccess', _1349 => _1349.trim, 'call', _1350 => _1350()]) || _optionalChain([identityUser, 'optionalAccess', _1351 => _1351.name, 'optionalAccess', _1352 => _1352.split, 'call', _1353 => _1353(" "), 'access', _1354 => _1354[0], 'optionalAccess', _1355 => _1355.trim, 'call', _1356 => _1356()]) || void 0;
52015
+ const userName = _optionalChain([identityUser, 'optionalAccess', _1351 => _1351.firstName, 'optionalAccess', _1352 => _1352.trim, 'call', _1353 => _1353()]) || _optionalChain([identityUser, 'optionalAccess', _1354 => _1354.name, 'optionalAccess', _1355 => _1355.split, 'call', _1356 => _1356(" "), 'access', _1357 => _1357[0], 'optionalAccess', _1358 => _1358.trim, 'call', _1359 => _1359()]) || void 0;
52039
52016
  const effectiveModes = _react.useMemo.call(void 0, () => {
52040
52017
  if (modes) return modes;
52041
52018
  const guideOptions = tableIdForDocumentType ? { tableIdForDocumentType } : {};
@@ -52044,19 +52021,19 @@ function EmbeddableChatInner({
52044
52021
  const mingoCaps = _react.useMemo.call(void 0, () => {
52045
52022
  if (mingoState) {
52046
52023
  return {
52047
- canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1357 => _1357.canRename]), () => ( false)),
52048
- canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1358 => _1358.canArchive]), () => ( false)),
52049
- fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1359 => _1359.fetchArchivedDialogs]),
52050
- unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1360 => _1360.unarchiveDialog]),
52051
- searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1361 => _1361.searchQuery]),
52052
- onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1362 => _1362.onSearchChange])
52024
+ canRename: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1360 => _1360.canRename]), () => ( false)),
52025
+ canArchive: _nullishCoalesce(_optionalChain([mingoDialogCapabilities, 'optionalAccess', _1361 => _1361.canArchive]), () => ( false)),
52026
+ fetchArchivedDialogs: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1362 => _1362.fetchArchivedDialogs]),
52027
+ unarchiveDialog: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1363 => _1363.unarchiveDialog]),
52028
+ searchQuery: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1364 => _1364.searchQuery]),
52029
+ onSearchChange: _optionalChain([mingoDialogCapabilities, 'optionalAccess', _1365 => _1365.onSearchChange])
52053
52030
  };
52054
52031
  }
52055
52032
  return {
52056
- canRename: !!_optionalChain([effectiveModes, 'access', _1363 => _1363.mingo, 'optionalAccess', _1364 => _1364.renameDialog]),
52057
- canArchive: !!_optionalChain([effectiveModes, 'access', _1365 => _1365.mingo, 'optionalAccess', _1366 => _1366.archiveDialog]),
52058
- fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1367 => _1367.mingo, 'optionalAccess', _1368 => _1368.fetchArchivedDialogs]),
52059
- unarchiveDialog: _optionalChain([effectiveModes, 'access', _1369 => _1369.mingo, 'optionalAccess', _1370 => _1370.unarchiveDialog]),
52033
+ canRename: !!_optionalChain([effectiveModes, 'access', _1366 => _1366.mingo, 'optionalAccess', _1367 => _1367.renameDialog]),
52034
+ canArchive: !!_optionalChain([effectiveModes, 'access', _1368 => _1368.mingo, 'optionalAccess', _1369 => _1369.archiveDialog]),
52035
+ fetchArchivedDialogs: _optionalChain([effectiveModes, 'access', _1370 => _1370.mingo, 'optionalAccess', _1371 => _1371.fetchArchivedDialogs]),
52036
+ unarchiveDialog: _optionalChain([effectiveModes, 'access', _1372 => _1372.mingo, 'optionalAccess', _1373 => _1373.unarchiveDialog]),
52060
52037
  searchQuery: void 0,
52061
52038
  onSearchChange: void 0
52062
52039
  };
@@ -52070,7 +52047,7 @@ function EmbeddableChatInner({
52070
52047
  if (controlledActiveMode === void 0) {
52071
52048
  setUncontrolledActiveMode(next);
52072
52049
  }
52073
- _optionalChain([onActiveModeChange, 'optionalCall', _1371 => _1371(next)]);
52050
+ _optionalChain([onActiveModeChange, 'optionalCall', _1374 => _1374(next)]);
52074
52051
  },
52075
52052
  [controlledActiveMode, onActiveModeChange]
52076
52053
  );
@@ -52092,7 +52069,7 @@ function EmbeddableChatInner({
52092
52069
  const effectiveQuickActions = emptyStateUrl ? emptyStateConfig.quickActions : [];
52093
52070
  const effectiveAssistantName = emptyStateConfig.name;
52094
52071
  const effectiveAssistantIcon = emptyStateConfig.icon;
52095
- const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1372 => _1372.title]) === "string" ? guideWelcome.title : null)));
52072
+ const headerAssistantName = _nullishCoalesce(effectiveAssistantName, () => ( (typeof _optionalChain([guideWelcome, 'optionalAccess', _1375 => _1375.title]) === "string" ? guideWelcome.title : null)));
52096
52073
  const {
52097
52074
  messages: rawMessages,
52098
52075
  isLoading: chatLoading,
@@ -52132,7 +52109,7 @@ function EmbeddableChatInner({
52132
52109
  if (activeMode !== "guide" || guidePromptSentRef.current) return;
52133
52110
  guidePromptSentRef.current = true;
52134
52111
  void sendMessage(guidePendingPrompt);
52135
- _optionalChain([onGuidePromptConsumed, 'optionalCall', _1373 => _1373()]);
52112
+ _optionalChain([onGuidePromptConsumed, 'optionalCall', _1376 => _1376()]);
52136
52113
  }, [guidePendingPrompt, activeMode, sendMessage, onGuidePromptConsumed]);
52137
52114
  const {
52138
52115
  attachments: stagedAttachments,
@@ -52143,7 +52120,7 @@ function EmbeddableChatInner({
52143
52120
  clear: clearAttachments
52144
52121
  } = useChatAttachments();
52145
52122
  const { panelRef: galleryPanelRef, modal: galleryModal } = useChatAttachmentImageGallery();
52146
- const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1374 => _1374.maxItems]), () => ( 10));
52123
+ const contextMaxItems = _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1377 => _1377.maxItems]), () => ( 10));
52147
52124
  const contextPickerForMode = activeMode === "mingo" ? contextPicker : void 0;
52148
52125
  const [contextItems, setContextItems] = _react.useState.call(void 0, []);
52149
52126
  const [contextPickerOpen, setContextPickerOpen] = _react.useState.call(void 0, false);
@@ -52160,10 +52137,10 @@ function EmbeddableChatInner({
52160
52137
  }, [activeDialogId, activeMode]);
52161
52138
  const mentionMarkerByType = _react.useMemo.call(void 0, () => {
52162
52139
  const m = /* @__PURE__ */ new Map();
52163
- for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1375 => _1375.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
52140
+ for (const t of _nullishCoalesce(_optionalChain([contextPicker, 'optionalAccess', _1378 => _1378.entityTypes]), () => ( []))) if (t.marker) m.set(t.type, t.marker);
52164
52141
  return m;
52165
- }, [_optionalChain([contextPicker, 'optionalAccess', _1376 => _1376.entityTypes])]);
52166
- const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1377 => _1377.entityTypes]);
52142
+ }, [_optionalChain([contextPicker, 'optionalAccess', _1379 => _1379.entityTypes])]);
52143
+ const contextEntityTypes = _optionalChain([contextPicker, 'optionalAccess', _1380 => _1380.entityTypes]);
52167
52144
  const resolveContextIcon = _react.useMemo.call(void 0, () => {
52168
52145
  const byType = /* @__PURE__ */ new Map();
52169
52146
  for (const t of _nullishCoalesce(contextEntityTypes, () => ( []))) byType.set(t.type, t.icon);
@@ -52175,7 +52152,7 @@ function EmbeddableChatInner({
52175
52152
  if (mentionActiveRef.current) {
52176
52153
  if (contextItems.some((p) => `${p.type}:${p.id}` === key)) return;
52177
52154
  if (contextItems.length >= contextMaxItems) return;
52178
- _optionalChain([chatInputRef, 'access', _1378 => _1378.current, 'optionalAccess', _1379 => _1379.commitMention, 'call', _1380 => _1380(mentionTokenOf(key, mentionMarkerByType), {
52155
+ _optionalChain([chatInputRef, 'access', _1381 => _1381.current, 'optionalAccess', _1382 => _1382.commitMention, 'call', _1383 => _1383(mentionTokenOf(key, mentionMarkerByType), {
52179
52156
  label: item.label,
52180
52157
  icon: resolveContextIcon(item)
52181
52158
  })]);
@@ -52197,9 +52174,9 @@ function EmbeddableChatInner({
52197
52174
  setContextItems((prev) => prev.filter((p) => `${p.type}:${p.id}` !== key));
52198
52175
  if (mentionKeysRef.current.has(key)) {
52199
52176
  mentionKeysRef.current.delete(key);
52200
- const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1381 => _1381.current, 'optionalAccess', _1382 => _1382.getValue, 'call', _1383 => _1383()]), () => ( ""));
52177
+ const cur = _nullishCoalesce(_optionalChain([chatInputRef, 'access', _1384 => _1384.current, 'optionalAccess', _1385 => _1385.getValue, 'call', _1386 => _1386()]), () => ( ""));
52201
52178
  const next = cur.replace(`@${mentionTokenOf(key, mentionMarkerByType)}`, "").replace(/\s{2,}/g, " ").trimStart();
52202
- _optionalChain([chatInputRef, 'access', _1384 => _1384.current, 'optionalAccess', _1385 => _1385.setValue, 'call', _1386 => _1386(next)]);
52179
+ _optionalChain([chatInputRef, 'access', _1387 => _1387.current, 'optionalAccess', _1388 => _1388.setValue, 'call', _1389 => _1389(next)]);
52203
52180
  }
52204
52181
  }, [mentionMarkerByType]);
52205
52182
  const handleContextValueChange = _react.useCallback.call(void 0, (value) => {
@@ -52216,7 +52193,7 @@ function EmbeddableChatInner({
52216
52193
  }, []);
52217
52194
  const closeContextPicker = _react.useCallback.call(void 0, () => {
52218
52195
  if (mentionActiveRef.current) {
52219
- _optionalChain([chatInputRef, 'access', _1387 => _1387.current, 'optionalAccess', _1388 => _1388.removeMentionTrigger, 'call', _1389 => _1389()]);
52196
+ _optionalChain([chatInputRef, 'access', _1390 => _1390.current, 'optionalAccess', _1391 => _1391.removeMentionTrigger, 'call', _1392 => _1392()]);
52220
52197
  }
52221
52198
  setContextPickerOpen(false);
52222
52199
  setMentionQuery(null);
@@ -52250,8 +52227,8 @@ function EmbeddableChatInner({
52250
52227
  [effectiveAssistantIcon]
52251
52228
  );
52252
52229
  const timestampCacheRef = _react.useRef.call(void 0, /* @__PURE__ */ new Map());
52253
- const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1390 => _1390.firstName]), _optionalChain([identityUser, 'optionalAccess', _1391 => _1391.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1392 => _1392.name, 'optionalAccess', _1393 => _1393.trim, 'call', _1394 => _1394()]) || void 0 : void 0;
52254
- const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1395 => _1395.avatarUrl, 'optionalAccess', _1396 => _1396.trim, 'call', _1397 => _1397()]) || void 0 : void 0;
52230
+ const guideUserName = activeMode === "guide" ? [_optionalChain([identityUser, 'optionalAccess', _1393 => _1393.firstName]), _optionalChain([identityUser, 'optionalAccess', _1394 => _1394.lastName])].filter(Boolean).join(" ").trim() || _optionalChain([identityUser, 'optionalAccess', _1395 => _1395.name, 'optionalAccess', _1396 => _1396.trim, 'call', _1397 => _1397()]) || void 0 : void 0;
52231
+ const guideUserAvatar = activeMode === "guide" ? _optionalChain([identityUser, 'optionalAccess', _1398 => _1398.avatarUrl, 'optionalAccess', _1399 => _1399.trim, 'call', _1400 => _1400()]) || void 0 : void 0;
52255
52232
  const messages = _react.useMemo.call(void 0, () => {
52256
52233
  const cache = timestampCacheRef.current;
52257
52234
  const seenIds = /* @__PURE__ */ new Set();
@@ -52429,9 +52406,9 @@ function EmbeddableChatInner({
52429
52406
  const lastAssistantMsg = [...rawMessages].reverse().find((m) => m.role === "assistant");
52430
52407
  const lastSources = _react.useMemo.call(void 0, () => {
52431
52408
  if (chatLoading) return void 0;
52432
- const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1398 => _1398.sources]);
52409
+ const sources = _optionalChain([lastAssistantMsg, 'optionalAccess', _1401 => _1401.sources]);
52433
52410
  if (!sources || sources.length === 0) return void 0;
52434
- const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1399 => _1399.content]) || "";
52411
+ const content = _optionalChain([lastAssistantMsg, 'optionalAccess', _1402 => _1402.content]) || "";
52435
52412
  const citationOrder = [...content.matchAll(/\[(\d+)\]/g)].map(
52436
52413
  (m) => parseInt(m[1], 10)
52437
52414
  );
@@ -52479,7 +52456,7 @@ function EmbeddableChatInner({
52479
52456
  {
52480
52457
  compact: previewMode,
52481
52458
  showBack: hasConversation || guideCanReturnToMingo,
52482
- title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1400 => _1400.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats",
52459
+ title: hasConversation ? _optionalChain([activeDialog, 'optionalAccess', _1403 => _1403.title]) || "New Chat" : isGuideEmpty ? _nullishCoalesce(headerAssistantName, () => ( "Mingo Guide")) : "Current Chats",
52483
52460
  backAriaLabel: hasConversation ? isViewingArchived ? "Back to archive" : "Back" : "Back to Mingo",
52484
52461
  isArchivedView: isViewingArchived,
52485
52462
  onBack: hasConversation ? handleBack : () => handleActiveModeChange("mingo"),
@@ -52607,9 +52584,9 @@ function EmbeddableChatInner({
52607
52584
  subtitle: _nullishCoalesce(effectiveGreeting, () => ( void 0)),
52608
52585
  subtitleLoading: emptyStateLoading,
52609
52586
  ...guideWelcome,
52610
- title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1401 => _1401.title]))),
52611
- icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1402 => _1402.icon]))),
52612
- quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1403 => _1403.quickActions]), () => ( guideSuggestedActions)),
52587
+ title: _nullishCoalesce(effectiveAssistantName, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1404 => _1404.title]))),
52588
+ icon: _nullishCoalesce(effectiveAssistantIcon, () => ( _optionalChain([guideWelcome, 'optionalAccess', _1405 => _1405.icon]))),
52589
+ quickActions: agentConfigUrl && guideSuggestedActions.length > 0 ? guideSuggestedActions : _nullishCoalesce(_optionalChain([guideWelcome, 'optionalAccess', _1406 => _1406.quickActions]), () => ( guideSuggestedActions)),
52613
52590
  onQuickAction: (action) => {
52614
52591
  setQuickActionPreview(null);
52615
52592
  handleSend(_nullishCoalesce(action.prompt, () => ( action.label)));
@@ -53761,4 +53738,4 @@ function EmbeddableChatInner({
53761
53738
 
53762
53739
 
53763
53740
  exports.Label = Label; exports.AllowedDomainsInput = AllowedDomainsInput; exports.HiddenTagsPopup = HiddenTagsPopup; exports.tagVariants = tagVariants; exports.Tag = Tag; exports.Autocomplete = Autocomplete; exports.Card = Card; exports.CardHeader = CardHeader; exports.CardTitle = CardTitle; exports.CardDescription = CardDescription; exports.CardContent = CardContent; exports.CardFooter = CardFooter; exports.CardHorizontal = CardHorizontal; exports.CheckboxBlock = CheckboxBlock; exports.CheckboxWithDescription = CheckboxWithDescription; exports.Select = Select; exports.SelectGroup = SelectGroup; exports.SelectValue = SelectValue; exports.SelectTrigger = SelectTrigger; exports.SelectScrollUpButton = SelectScrollUpButton; exports.SelectScrollDownButton = SelectScrollDownButton; exports.SelectContent = SelectContent; exports.SelectLabel = SelectLabel; exports.SelectItem = SelectItem; exports.SelectSeparator = SelectSeparator; exports.DatePicker = DatePicker; exports.DatePickerInput = DatePickerInput; exports.DatePickerInputSimple = DatePickerInputSimple; exports.DateFilterPanel = DateFilterPanel; exports.DateFilterMenu = DateFilterMenu; exports.DurationInput = DurationInput; exports.HoneypotField = HoneypotField; exports.ProgressBar = ProgressBar; exports.InfoCard = InfoCard; exports.InfoRow = InfoRow; exports.formatDate = formatDate; exports.formatNumber = formatNumber; exports.formatPrice = formatPrice; exports.formatBytes = formatBytes; exports.formatBytesShort = formatBytesShort; exports.formatFileSize = formatFileSize; exports.formatLargeNumber = formatLargeNumber; exports.formatAbbreviatedNumber = formatAbbreviatedNumber; exports.getFirstLastInitials = getFirstLastInitials; exports.nameInitials = nameInitials; exports.formatDurationMMSS = formatDurationMMSS; exports.formatDurationCompact = formatDurationCompact; exports.formatTimeWithTimezone = formatTimeWithTimezone; exports.formatDurationFromRange = formatDurationFromRange; exports.formatDateUTC = formatDateUTC; exports.formatEntryMonthUTC = formatEntryMonthUTC; exports.formatLegalDate = formatLegalDate; exports.formatCurrency = formatCurrency; exports.formatPercent = formatPercent; exports.formatWholeDollars = formatWholeDollars; exports.formatCompactMetric = formatCompactMetric; exports.getTrendColors = getTrendColors; exports.formatDateRange = formatDateRange; exports.formatDateTimeAt = formatDateTimeAt; exports.formatDurationFromMs = formatDurationFromMs; exports.formatDuration = formatDuration; exports.formatUnderscoreText = formatUnderscoreText; exports.stripHtml = stripHtml; exports.formatClassification = formatClassification; exports.formatPricingModel = formatPricingModel; exports.formatBioText = formatBioText; exports.SquareAvatar = SquareAvatar; exports.AssigneeDropdown = AssigneeDropdown; exports.ActionsMenu = ActionsMenu; exports.ActionsMenuDropdown = ActionsMenuDropdown; exports.ColorSwatch = ColorSwatch; exports.DESIGN_PALETTE = DESIGN_PALETTE; exports.getContrastRatio = getContrastRatio; exports.pickReadableTextColor = pickReadableTextColor; exports.extractDominantColor = extractDominantColor; exports.getBestContrastColor = getBestContrastColor; exports.analyzeImageColor = analyzeImageColor; exports.extractImageEdgeColorAsync = extractImageEdgeColorAsync; exports.getPlatformAccentColor = getPlatformAccentColor; exports.getCurrentPlatform = getCurrentPlatform; exports.getReadableTextColor = getReadableTextColor; exports.HEX_PATTERN = HEX_PATTERN; exports.hexToRgb = hexToRgb2; exports.rgbToHex = rgbToHex; exports.deriveHoverColor = deriveHoverColor; exports.deriveActiveColor = deriveActiveColor; exports.resolveTicketStatus = resolveTicketStatus; exports.getTicketStatusConfig = getTicketStatusConfig; exports.getTicketStatusTag = getTicketStatusTag; exports.kindToCanonicalStatus = kindToCanonicalStatus; exports.usesCanonicalStatusStyle = usesCanonicalStatusStyle; exports.resolveStatusTagProps = resolveStatusTagProps; exports.TicketStatusTag = TicketStatusTag; exports.InfoSection = InfoSection; exports.InputTrigger = InputTrigger; exports.InteractiveCard = InteractiveCard; exports.MediaTypeSelector = MediaTypeSelector; exports.noDataIconClasses = noDataIconClasses; exports.noDataActionsVariants = noDataActionsVariants; exports.NoDataMessage = NoDataMessage; exports.NoDataAction = NoDataAction; exports.NoDataActions = NoDataActions; exports.NoData = NoData; exports.PageLoader = PageLoader; exports.CompactPageLoader = CompactPageLoader; exports.RadioGroup = RadioGroup; exports.RadioGroupItem = RadioGroupItem; exports.RadioGroupBlock = RadioGroupBlock; exports.useScrollFade = useScrollFade; exports.ScrollFadeOverlay = ScrollFadeOverlay; exports.Switch = Switch; exports.TagSelectDropdown = TagSelectDropdown; exports.badgeVariants = badgeVariants; exports.Badge = Badge; exports.TagsInput = TagsInput; exports.TagsManager = TagsManager; exports.Textarea = Textarea; exports.AlertDialog = AlertDialog; exports.AlertDialogTrigger = AlertDialogTrigger; exports.AlertDialogPortal = AlertDialogPortal; exports.AlertDialogOverlay = AlertDialogOverlay; exports.AlertDialogContent = AlertDialogContent; exports.AlertDialogHeader = AlertDialogHeader; exports.AlertDialogFooter = AlertDialogFooter; exports.AlertDialogTitle = AlertDialogTitle; exports.AlertDialogDescription = AlertDialogDescription; exports.AlertDialogAction = AlertDialogAction; exports.AlertDialogCancel = AlertDialogCancel; exports.AspectRatio = AspectRatio; exports.Dialog = Dialog; exports.DialogTrigger = DialogTrigger; exports.DialogPortal = DialogPortal; exports.DialogClose = DialogClose; exports.DialogOverlay = DialogOverlay; exports.DialogContent = DialogContent; exports.DialogHeader = DialogHeader; exports.DialogFooter = DialogFooter; exports.DialogTitle = DialogTitle; exports.DialogDescription = DialogDescription; exports.ImageGalleryModal = ImageGalleryModal; exports.Modal = Modal2; exports.ModalContent = ModalContent2; exports.ModalHeader = ModalHeader2; exports.ModalTitle = ModalTitle2; exports.ModalFooter = ModalFooter2; exports.Modal2 = Modal; exports.ModalContent2 = ModalContent; exports.ModalHeader2 = ModalHeader; exports.ModalTitle2 = ModalTitle; exports.ModalFooter2 = ModalFooter; exports.Separator = Separator2; exports.Sheet = Sheet; exports.SheetTrigger = SheetTrigger; exports.SheetClose = SheetClose; exports.SheetPortal = SheetPortal; exports.SheetOverlay = SheetOverlay; exports.SheetContent = SheetContent; exports.SheetHeader = SheetHeader; exports.SheetFooter = SheetFooter; exports.SheetTitle = SheetTitle; exports.SheetDescription = SheetDescription; exports.OVERLAY_BACKDROP_CLASS = OVERLAY_BACKDROP_CLASS; exports.Drawer = Drawer; exports.DrawerTrigger = DrawerTrigger; exports.DrawerClose = DrawerClose; exports.DrawerPortal = DrawerPortal; exports.DrawerOverlay = DrawerOverlay; exports.DrawerContent = DrawerContent; exports.DrawerHeader = DrawerHeader; exports.DrawerTitle = DrawerTitle; exports.DrawerDescription = DrawerDescription; exports.DrawerBody = DrawerBody; exports.DrawerFooter = DrawerFooter; exports.Tabs = Tabs; exports.TabsList = TabsList; exports.TabsTrigger = TabsTrigger; exports.TabsContent = TabsContent; exports.Accordion = Accordion; exports.AccordionItem = AccordionItem; exports.AccordionTrigger = AccordionTrigger; exports.AccordionContent = AccordionContent; exports.Breadcrumb = Breadcrumb; exports.BreadcrumbList = BreadcrumbList; exports.BreadcrumbItem = BreadcrumbItem; exports.BreadcrumbLink = BreadcrumbLink; exports.BreadcrumbPage = BreadcrumbPage; exports.BreadcrumbSeparator = BreadcrumbSeparator; exports.BreadcrumbEllipsis = BreadcrumbEllipsis; exports.MenubarMenu = MenubarMenu; exports.MenubarGroup = MenubarGroup; exports.MenubarPortal = MenubarPortal; exports.MenubarSub = MenubarSub; exports.MenubarRadioGroup = MenubarRadioGroup; exports.Menubar = Menubar; exports.MenubarTrigger = MenubarTrigger; exports.MenubarSubTrigger = MenubarSubTrigger; exports.MenubarSubContent = MenubarSubContent; exports.MenubarContent = MenubarContent; exports.MenubarItem = MenubarItem; exports.MenubarCheckboxItem = MenubarCheckboxItem; exports.MenubarRadioItem = MenubarRadioItem; exports.MenubarLabel = MenubarLabel; exports.MenubarSeparator = MenubarSeparator; exports.MenubarShortcut = MenubarShortcut; exports.NavigationMenu = NavigationMenu; exports.NavigationMenuList = NavigationMenuList; exports.NavigationMenuItem = NavigationMenuItem; exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle; exports.NavigationMenuTrigger = NavigationMenuTrigger; exports.NavigationMenuContent = NavigationMenuContent; exports.NavigationMenuLink = NavigationMenuLink; exports.NavigationMenuViewport = NavigationMenuViewport; exports.NavigationMenuIndicator = NavigationMenuIndicator; exports.CrossfadePanels = CrossfadePanels; exports.TabContent = TabContent; exports.TabNavigation = TabNavigation; exports.getTabById = getTabById; exports.getTabComponent = getTabComponent; exports.Alert = Alert; exports.AlertTitle = AlertTitle; exports.AlertDescription = AlertDescription; exports.AIGeneratedBadge = AIGeneratedBadge; exports.FadePreview = FadePreview; exports.Progress = Progress; exports.VideoPlayBadge = VideoPlayBadge; exports.VideoUnmuteGlyph = VideoUnmuteGlyph; exports.fetchPriorityProp = fetchPriorityProp; exports.extractYouTubeId = extractYouTubeId; exports.Video = Video2; exports.MediaCarousel = MediaCarousel; exports.EMBED_SIZES = EMBED_SIZES; exports.EmbedContainer = EmbedContainer; exports.YouTubeContainer = YouTubeContainer; exports.TwitterContainer = TwitterContainer; exports.RedditContainer = RedditContainer; exports.LinkPreviewContainer = LinkPreviewContainer; exports.LinkedInContainer = LinkedInContainer; exports.RichMarkdownRuntimeProvider = RichMarkdownRuntimeProvider; exports.useRichMarkdownRuntime = useRichMarkdownRuntime; exports.RedditEmbedClient = RedditEmbedClient; exports.TwitterEmbedClient = TwitterEmbedClient; exports.LinkedInEmbedClient = LinkedInEmbedClient; exports.OGLinkErrorBoundary = OGLinkErrorBoundary; exports.OGLinkPreview = OGLinkPreview; exports.toGoogleSheetsEmbedUrl = toGoogleSheetsEmbedUrl; exports.toGoogleSheetsOriginalUrl = toGoogleSheetsOriginalUrl; exports.toFigmaEmbedUrl = toFigmaEmbedUrl; exports.isFigmaSlidesUrl = isFigmaSlidesUrl; exports.toFigmaOriginalUrl = toFigmaOriginalUrl; exports.EmbedIframe = EmbedIframe; exports.FigmaEmbed = FigmaEmbed; exports.MarkdownImage = MarkdownImage; exports.RichMarkdownRenderer = RichMarkdownRenderer; exports.ReleaseChangelogSection = ReleaseChangelogSection; exports.StackedRowsPanel = StackedRowsPanel; exports.SlackChannelChip = SlackChannelChip; exports.statusBadgeVariants = statusBadgeVariants; exports.genBadgeBgOpacity = genBadgeBgOpacity; exports.generationTierFromLabel = generationTierFromLabel; exports.StatusBadge = StatusBadge; exports.StatusIndicator = StatusIndicator; exports.HoverDropdown = HoverDropdown; exports.ExpandChevron = ExpandChevron; exports.useCollapsible = useCollapsible; exports.getCommandText = getCommandText; exports.ArgRow = ArgRow; exports.ResultBlock = ResultBlock; exports.CommandBlock = CommandBlock; exports.ApprovalStatusTag = ApprovalStatusTag; exports.ApprovalBatchMessage = ApprovalBatchMessage; exports.ApprovalRequestMessage = ApprovalRequestMessage; exports.ContextCompactionDisplay = ContextCompactionDisplay; exports.SimpleMarkdownRenderer = SimpleMarkdownRenderer; exports.ThinkingDisplay = ThinkingDisplay; exports.ErrorMessageDisplay = ErrorMessageDisplay; exports.MspOrganizationCard = MspOrganizationCard; exports.MspOrganizationCardSkeleton = MspOrganizationCardSkeleton; exports.ChatContainer = ChatContainer; exports.ChatHeader = ChatHeader; exports.ChatContent = ChatContent; exports.ChatFooter = ChatFooter; exports.ChatTypingIndicator = ChatTypingIndicator; exports.MingoOnboardingCard = MingoOnboardingCard; exports.ICON_REGISTRY = ICON_REGISTRY; exports.normalizeIconKey = normalizeIconKey; exports.getIconComponent = getIconComponent; exports.getDynamicIcon = getDynamicIcon; exports.ICON_ALIASES = ICON_ALIASES; exports.resolveIcon = resolveIcon; exports.ICON_OPTIONS = ICON_OPTIONS; exports.SlashCommandSuggestions = SlashCommandSuggestions; exports.ChatInput = ChatInput; exports.formatTicketRelativeTime = formatTicketRelativeTime; exports.formatTicketFullTimestamp = formatTicketFullTimestamp; exports.formatRelativeTime = formatRelativeTime; exports.formatAbsoluteDate = formatAbsoluteDate; exports.formatDateTime = formatDateTime; exports.getDetailedTimeDifference = getDetailedTimeDifference; exports.isToday = isToday; exports.isWithinMinutes = isWithinMinutes; exports.createUTCTimestamp = createUTCTimestamp; exports.ToolExecutionDisplay = ToolExecutionDisplay; exports.remarkCardLinks = remarkCardLinks; exports.remarkMentionChips = remarkMentionChips; exports.BlockCard = BlockCard; exports.CONTEXT_ROW_CLASS = CONTEXT_ROW_CLASS; exports.CONTEXT_ICON_CLASS = CONTEXT_ICON_CLASS; exports.CONTEXT_LABEL_CLASS = CONTEXT_LABEL_CLASS; exports.CONTEXT_BACK_CLASS = CONTEXT_BACK_CLASS; exports.CONTEXT_STATE_CLASS = CONTEXT_STATE_CLASS; exports.ContextMenuRow = ContextMenuRow; exports.ContextItemsSkeleton = ContextItemsSkeleton; exports.ContextItemsList = ContextItemsList; exports.ContextErrorBoundary = ContextErrorBoundary; exports.CHAT_CONTEXT_ITEMS_DEFAULT_MAX = CHAT_CONTEXT_ITEMS_DEFAULT_MAX; exports.ChatComposerPlusMenu = ChatComposerPlusMenu; exports.ChatContextPicker = ChatContextPicker; exports.ChatContextChipStrip = ChatContextChipStrip; exports.MemoizedChatMessageEnhanced = MemoizedChatMessageEnhanced; exports.ChatMessageSkeleton = ChatMessageSkeleton; exports.ChatMessageListSkeleton = ChatMessageListSkeleton; exports.MESSAGE_TYPE = MESSAGE_TYPE; exports.SCROLL_ANCHOR = SCROLL_ANCHOR; exports.ChatMessageList = ChatMessageList; exports.getProxiedImageUrl = getProxiedImageUrl; exports.urlPathLooksLikeSvg = urlPathLooksLikeSvg; exports.shouldProxyImage = shouldProxyImage; exports.generateImageSizes = generateImageSizes; exports.useProxiedImageUrl = useProxiedImageUrl; exports.ChatMessageRow = ChatMessageRow; exports.ChatMessageRowSkeleton = ChatMessageRowSkeleton; exports.ChatQuickAction = ChatQuickAction; exports.FAE_AVATAR_DATA_URI = FAE_AVATAR_DATA_URI; exports.AgentMark = AgentMark; exports.EntityIcon = EntityIcon; exports.getAgentAccent = getAgentAccent; exports.accentFromIdentityIcon = accentFromIdentityIcon; exports.renderQuickActionIcon = renderQuickActionIcon; exports.QuickActionChipSkeleton = QuickActionChipSkeleton; exports.QuickActionChipButton = QuickActionChipButton; exports.ChatQuickActionRow = ChatQuickActionRow; exports.ChatQuickActionRowSkeleton = ChatQuickActionRowSkeleton; exports.QuickActionMarquee = QuickActionMarquee; exports.ChatTicketItem = ChatTicketItem; exports.ChatTicketList = ChatTicketList; exports.MingoOnboardingCardSkeleton = MingoOnboardingCardSkeleton; exports.MingoOnboardingListSkeleton = MingoOnboardingListSkeleton; exports.MingoChatHistorySkeleton = MingoChatHistorySkeleton; exports.MingoChatHistory = MingoChatHistory; exports.MingoWelcome = MingoWelcome; exports.GuideWelcome = GuideWelcome; exports.TooltipProvider = TooltipProvider; exports.Tooltip = Tooltip; exports.TooltipTrigger = TooltipTrigger; exports.TooltipContent = TooltipContent; exports.GuideModeBanner = GuideModeBanner; exports.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.useCoverImageFallback = useCoverImageFallback; exports.hideOnError = hideOnError; exports.EntityPortraitCard = EntityPortraitCard; exports.FlamingoLogo = FlamingoLogo2; exports.PlatformBadge = PlatformBadge; exports.AdminContentCard = AdminContentCard; exports.getProxiedImageUrl2 = getProxiedImageUrl2; exports.WhatIShippedCard = WhatIShippedCard; exports.WhatIShippedCardSkeleton = WhatIShippedCardSkeleton; exports.MUX_STREAM_ORIGIN = MUX_STREAM_ORIGIN; exports.MUX_IMAGE_ORIGIN = MUX_IMAGE_ORIGIN; exports.useVideoOriginPreconnect = useVideoOriginPreconnect; exports.useVideoWarmup = useVideoWarmup; exports.RATIO_GRID_CLASS = RATIO_GRID_CLASS; exports.RATIO_TO_CSS_ASPECT = RATIO_TO_CSS_ASPECT; exports.RatioTabs = RatioTabs; exports.detectAspectRatio = detectAspectRatio; exports.ratioToCategory = ratioToCategory; exports.groupByAspectRatio = groupByAspectRatio; exports.DEFAULT_VIDEO_BITES_TITLE = DEFAULT_VIDEO_BITES_TITLE; exports.toStripProfile = toStripProfile; exports.sortBitesByCreatedAtDesc = sortBitesByCreatedAtDesc; exports.PAGE_HEADING_CLASS = PAGE_HEADING_CLASS; exports.SECTION_HEADING_CLASS = SECTION_HEADING_CLASS; exports.PageHeading = PageHeading; exports.STRIP_CELL_MAX_WIDTH = STRIP_CELL_MAX_WIDTH; exports.CardsStrip = CardsStrip; exports.SquareAvatar2 = SquareAvatar2; exports.UserDisplay = UserDisplay; exports.VideoBitesStrip = VideoBitesStrip; exports.VideoBiteCard = VideoBiteCard; exports.EntityVideoSection = EntityVideoSection; exports.ChatVideoEntityCard = ChatVideoEntityCard; exports.ProductReleaseCard = ProductReleaseCard; exports.ProductReleaseCardSkeleton = ProductReleaseCardSkeleton; exports.formatReleaseDate = formatReleaseDate; exports.formatDateShort = formatDateShort; exports.formatDateSlashUTC = formatDateSlashUTC; exports.resolveReleaseCover = resolveReleaseCover; exports.releaseTypeToBadgeColor = releaseTypeToBadgeColor; exports.defaultBuildProductReleaseCardProps = defaultBuildProductReleaseCardProps; exports.buildProductReleaseCardProps = buildProductReleaseCardProps; exports.useEntityCardLink = useEntityCardLink; exports.COMPACT_CARD_OUTER = COMPACT_CARD_OUTER; exports.COMPACT_CARD_OUTER_STATIC = COMPACT_CARD_OUTER_STATIC; exports.COMPACT_CARD_SKELETON_OUTER = COMPACT_CARD_SKELETON_OUTER; exports.COMPACT_CARD_IMAGE_SLOT = COMPACT_CARD_IMAGE_SLOT; exports.COMPACT_CARD_SKELETON_IMAGE_SLOT = COMPACT_CARD_SKELETON_IMAGE_SLOT; exports.COMPACT_CARD_ICON_SLOT = COMPACT_CARD_ICON_SLOT; exports.COMPACT_CARD_TEXT_COL = COMPACT_CARD_TEXT_COL; exports.COMPACT_CARD_TITLE_ROW = COMPACT_CARD_TITLE_ROW; exports.COMPACT_CARD_META_ROW_BOX = COMPACT_CARD_META_ROW_BOX; exports.COMPACT_CARD_TITLE = COMPACT_CARD_TITLE; exports.COMPACT_CARD_SUBTITLE = COMPACT_CARD_SUBTITLE; exports.COMPACT_CARD_SUMMARY = COMPACT_CARD_SUMMARY; exports.COMPACT_CARD_META_ROW = COMPACT_CARD_META_ROW; exports.COMPACT_CARD_ROW_FILLER = COMPACT_CARD_ROW_FILLER; exports.safeHref = safeHref; exports.BlogCardSkeleton = BlogCardSkeleton; exports.BlogCard = BlogCard; exports.CaseStudyCardSkeleton = CaseStudyCardSkeleton; exports.CaseStudyCard = CaseStudyCard; exports.CustomerInterviewCardSkeleton = CustomerInterviewCardSkeleton; exports.CustomerInterviewCard = CustomerInterviewCard; exports.formatInvestorUpdatePeriod = formatInvestorUpdatePeriod; exports.InvestorUpdateCardSkeleton = InvestorUpdateCardSkeleton; exports.InvestorUpdateCard = InvestorUpdateCard; exports.OnboardingGuideCardSkeleton = OnboardingGuideCardSkeleton; exports.OnboardingGuideCard = OnboardingGuideCard; exports.RoadmapVoteButton = RoadmapVoteButton; exports.getStatusColorScheme = getStatusColorScheme; exports.CUSTOM_ITEM_ID = CUSTOM_ITEM_ID; exports.getTaskTypeLabel = getTaskTypeLabel; exports.TaskTypeIcon = TaskTypeIcon; exports.RoadmapCardSkeleton = RoadmapCardSkeleton; exports.RoadmapCard = RoadmapCard; exports.GitHubActivityCard = GitHubActivityCard; exports.GitHubActivityCardSkeleton = GitHubActivityCardSkeleton; exports.SlackMessageCard = SlackMessageCard; exports.SlackMessageCardSkeleton = SlackMessageCardSkeleton; exports.HubspotTicketCard = HubspotTicketCard; exports.HubspotTicketCardSkeleton = HubspotTicketCardSkeleton; exports.DataRoomDocCard = DataRoomDocCard; exports.DataRoomDocCardSkeleton = DataRoomDocCardSkeleton; exports.programItemToStripProfile = programItemToStripProfile; exports.transformEventToProgram = transformEventToProgram; exports.transformPodcastToProgram = transformPodcastToProgram; exports.transformWebinarToProgram = transformWebinarToProgram; exports.ProgramCardSkeleton = ProgramCardSkeleton; exports.ProgramCard = ProgramCard; exports.CampaignCardAdmin = CampaignCardAdmin; exports.CampaignCardAdminSkeleton = CampaignCardAdminSkeleton; exports.GenericEntityCard = GenericEntityCard; exports.GenericEntityCardSkeleton = GenericEntityCardSkeleton; exports.extractItems = extractItems; exports.extractItemId = extractItemId; exports.useChatCardItem = useChatCardItem; exports.SOURCE_ICON_NAMES = SOURCE_ICON_NAMES; exports.getSourceIconName = getSourceIconName; exports.SOURCE_LABELS_BY_TABLE = SOURCE_LABELS_BY_TABLE; exports.getSourceLabel = getSourceLabel; exports.DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID = DEFAULT_DOCUMENT_TYPE_TO_TABLE_ID; exports.defaultTableIdForDocumentType = defaultTableIdForDocumentType; exports.resolveSourceRowCTA = resolveSourceRowCTA; exports.resolveSourceIcon = resolveSourceIcon; exports.ChatCardLoader = ChatCardLoader; exports.renderChatInlineEntityCard = renderChatInlineEntityCard; exports.CHAT_TYPE = CHAT_TYPE; exports.OWNER_TYPE = OWNER_TYPE; exports.MESSAGE_ROLE = MESSAGE_ROLE; exports.ASSISTANT_TYPE = ASSISTANT_TYPE; exports.AUTHOR_TYPE = AUTHOR_TYPE; exports.APPROVAL_STATUS = APPROVAL_STATUS; exports.APPROVAL_BLOCK_VARIANT = APPROVAL_BLOCK_VARIANT; exports.CONNECTION_STATUS = CONNECTION_STATUS; exports.buildChatRefKey = buildChatRefKey; exports.isStructuredContent = isStructuredContent; exports.normalizeContent = normalizeContent2; exports.NETWORK_CONFIG = NETWORK_CONFIG; exports.useChunkCatchup = useChunkCatchup; exports.useScriptedStream = useScriptedStream; exports.useJetStreamDialogSubscription = useJetStreamDialogSubscription; exports.useNatsDialogSubscription = useNatsDialogSubscription; exports.buildNatsWsUrl = buildNatsWsUrl; exports.parseChunkToAction = parseChunkToAction; exports.isControlChunk = isControlChunk; exports.isErrorChunk = isErrorChunk; exports.isMetadataChunk = isMetadataChunk; exports.extractTextFromChunk = extractTextFromChunk; exports.MessageSegmentAccumulator = MessageSegmentAccumulator; exports.createMessageSegmentAccumulator = createMessageSegmentAccumulator; exports.useRealtimeChunkProcessor = useRealtimeChunkProcessor; exports.fetchSlashCommands = fetchSlashCommands; exports.useSlashCommands = useSlashCommands; exports.useSlashCommandRegistry = useSlashCommandRegistry; exports.fetchEmptyStateConfig = fetchEmptyStateConfig; exports.useEmptyStateConfig = useEmptyStateConfig; exports.useChatAttachments = useChatAttachments; exports.useChatAttachmentImageGallery = useChatAttachmentImageGallery; exports.ChatIdentityProvider = ChatIdentityProvider; exports.useChatIdentity = useChatIdentity; exports.useCloseOnNavigation = useCloseOnNavigation; exports.useSSE = useSSE; exports.useChat = useChat; exports.SCROLL_ANCHOR_WIRE_KEY = SCROLL_ANCHOR_WIRE_KEY; exports.parseScrollAnchor = parseScrollAnchor; exports.AUTO_CONTINUATION_DIRECTIVE_PREFIX = AUTO_CONTINUATION_DIRECTIVE_PREFIX; exports.buildAutoContinuationDirective = buildAutoContinuationDirective; exports.flattenAssistantContent = flattenAssistantContent; exports.parseWireCommandOverride = parseWireCommandOverride; exports.sanitizeTitleForChat = sanitizeTitleForChat; exports.formatSingularLookupInvocation = formatSingularLookupInvocation; exports.extractEntityIdFilter = extractEntityIdFilter; exports.buildDiscussAddendum = buildDiscussAddendum; exports.useSseChatAdapter = useSseChatAdapter; exports.processHistoricalMessages = processHistoricalMessages; exports.extractErrorMessages = extractErrorMessages; exports.processHistoricalMessagesWithErrors = processHistoricalMessagesWithErrors; exports.mapProcessedToUnified = mapProcessedToUnified; exports.historicalToUnified = historicalToUnified; 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.normalizeHistoricalMessageData = normalizeHistoricalMessageData; exports.isHistoricalUserTurn = isHistoricalUserTurn; exports.buildStreamFrames = buildStreamFrames; exports.EmbeddableChat = EmbeddableChat; exports.FilterCheckboxItem = FilterCheckboxItem; exports.TagKeyValueFilter = TagKeyValueFilter; exports.FilterModal = FilterModal; exports.PageActions = PageActions; exports.usePageActionsBottomPadding = usePageActionsBottomPadding; exports.PageContainer = PageContainer; exports.ListPageContainer = ListPageContainer; exports.DetailPageContainer = DetailPageContainer; exports.FormPageContainer = FormPageContainer; exports.ContentPageContainer = ContentPageContainer; exports.ListPageLayout = ListPageLayout; exports.EntityImage = EntityImage; exports.TITLE_BLOCK_MIN_HEIGHT = TITLE_BLOCK_MIN_HEIGHT; exports.TitleBlock = TitleBlock; exports.PageLayout = PageLayout; exports.PageShell = PageShell; exports.ArticleDetailLayout = ArticleDetailLayout; exports.toggleVariants = toggleVariants; exports.Toggle = Toggle; exports.ToggleGroup = ToggleGroup; exports.ToggleGroupItem = ToggleGroupItem; exports.delay = delay; exports.generateRandomString = generateRandomString; exports.truncateString = truncateString; exports.serializeJsonLd = serializeJsonLd; exports.deepClone = deepClone; exports.getSlackCommunityJoinUrl = getSlackCommunityJoinUrl; exports.SEO_TITLE_MAX_LENGTH = SEO_TITLE_MAX_LENGTH; exports.SEO_DESCRIPTION_MAX_LENGTH = SEO_DESCRIPTION_MAX_LENGTH; exports.BRAND_MARK_SVGS = BRAND_MARK_SVGS; exports.brandMarkDataUri = brandMarkDataUri; exports.OS_PLATFORMS = OS_PLATFORMS; exports.DEFAULT_OS_PLATFORM = DEFAULT_OS_PLATFORM; exports.isValidEmailDomain = isValidEmailDomain; exports.validateEmailDomain = validateEmailDomain; exports.validateEmailDomainList = validateEmailDomainList; exports.cleanEmailDomain = cleanEmailDomain; exports.getConfidenceColorClass = getConfidenceColorClass; exports.getConfidenceLevel = getConfidenceLevel; exports.getConfidenceBorderClass = getConfidenceBorderClass; exports.getConfidenceTextClass = getConfidenceTextClass; exports.getConfidenceBgClass = getConfidenceBgClass; exports.getConfidenceLabel = getConfidenceLabel; exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS; exports.devSectionAnchorId = devSectionAnchorId; exports.normalizeToolType = normalizeToolType; exports.normalizeToolTypeWithFallback = normalizeToolTypeWithFallback; exports.toToolLabel = toToolLabel; exports.isValidToolType = isValidToolType; exports.getToolTypeAliases = getToolTypeAliases; exports.getToolLabel = getToolLabel; exports.ShellTypeValues = ShellTypeValues; exports.SHELL_TYPES = SHELL_TYPES; exports.shellLabels = shellLabels; exports.getShellLabel = getShellLabel; exports.getShellIcon = getShellIcon; exports.OSTypeValues = OSTypeValues; exports.OS_TYPES = OS_TYPES; exports.osLabels = osLabels; exports.normalizeOSType = normalizeOSType; exports.getOSLabel = getOSLabel; exports.getOSIcon = getOSIcon; exports.getOSTypeDefinition = getOSTypeDefinition; exports.getOSPlatformId = getOSPlatformId; exports.isOSPlatform = isOSPlatform; exports.getCountryPhoneData = getCountryPhoneData; exports.getCountryByCode = getCountryByCode; exports.validatePhoneNumber = validatePhoneNumber; exports.formatPhoneE164 = formatPhoneE164; exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS; exports.extractDomainFromEmail = extractDomainFromEmail; exports.normalizeDomain = normalizeDomain; exports.isGenericDomain = isGenericDomain; exports.hasGenericEmailDomain = hasGenericEmailDomain; exports.isGenericWebsiteDomain = isGenericWebsiteDomain; exports.announcementDismissCookieName = announcementDismissCookieName; exports.isDismissedCookieValue = isDismissedCookieValue; exports.dismissAnnouncement = dismissAnnouncement; exports.isAnnouncementDismissed = isAnnouncementDismissed; exports.clearAnnouncementDismissals = clearAnnouncementDismissals; exports.clearLegacyAnnouncementCache = clearLegacyAnnouncementCache; exports.readLeadingDecisionFrame = readLeadingDecisionFrame; exports.ANNOUNCEMENT_CTA_DEFAULTS = ANNOUNCEMENT_CTA_DEFAULTS; exports.AVAILABLE_SVG_ICONS = AVAILABLE_SVG_ICONS; exports.releaseTypeOptions = releaseTypeOptions; exports.releaseStatusOptions = releaseStatusOptions; exports.changelogLabels = changelogLabels; exports.SEMVER_REGEX = SEMVER_REGEX; exports.TASK_TYPE_LABELS = TASK_TYPE_LABELS; exports.TASK_TYPE_TEXT_COLORS = TASK_TYPE_TEXT_COLORS; exports.TMCG_ROLES = TMCG_ROLES; exports.TMCG_ROLE_DISPLAY_NAMES = TMCG_ROLE_DISPLAY_NAMES; exports.TMCG_SOCIAL_PLATFORMS = TMCG_SOCIAL_PLATFORMS; exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS; exports.DELIVERY_TASK_TYPE_OPTIONS = DELIVERY_TASK_TYPE_OPTIONS; exports.TICKET_STATUS_OPTIONS = TICKET_STATUS_OPTIONS; exports.OPENFRAME_DEV_SECTIONS = OPENFRAME_DEV_SECTIONS; exports.canonicalContentRefType = canonicalContentRefType; exports.buildListUrl = buildListUrl; exports.faqSectionSlug = faqSectionSlug; exports.faqItemAnchor = faqItemAnchor; exports.parseFaqHash = parseFaqHash; exports.CONTENT_REF_GROUPS = CONTENT_REF_GROUPS; exports.getContentRefLabel = getContentRefLabel; exports.getContentRefLabelOrTitleCase = getContentRefLabelOrTitleCase; exports.orderContentRefTypes = orderContentRefTypes; exports.buildSuggestionUrl = buildSuggestionUrl; exports.DEFAULT_CONTENT_SUFFIXES = DEFAULT_CONTENT_SUFFIXES; exports.makeComposeContentUrl = makeComposeContentUrl; exports.buildDefaultHref = buildDefaultHref; exports.resolveContentHref = resolveContentHref; exports.DEFAULT_FOLDER_INDEX_FILE = DEFAULT_FOLDER_INDEX_FILE; exports.stripFolderIndexFromPath = stripFolderIndexFromPath; exports.findDocNodeByPath = findDocNodeByPath; exports.getDocAncestorNodeIds = getDocAncestorNodeIds; exports.resolveContentFetchPath = resolveContentFetchPath; exports.getInitialExpandedNodeIds = getInitialExpandedNodeIds; exports.getDocSourceDefaultPath = getDocSourceDefaultPath; exports.toDocSlug = toDocSlug; exports.pathToNodeId = pathToNodeId; exports.normalizeDocPath = normalizeDocPath; exports.formatDocName = formatDocName; exports.sortTreeChildren = sortTreeChildren; exports.buildDocumentTree = buildDocumentTree; exports.stripInlineMarkdown = stripInlineMarkdown; exports.markdownToPlainText = markdownToPlainText; exports.extractSections = extractSections; exports.SECTION_HERO_ICON_CLASS = SECTION_HERO_ICON_CLASS; exports.BenefitCard = BenefitCard; exports.BenefitCardGrid = BenefitCardGrid; exports.BrandAssociationCard = BrandAssociationCard; exports.BrandAssociationGrid = BrandAssociationGrid; exports.BulletList = BulletList; exports.ChevronButton = ChevronButton; exports.CircularProgress = CircularProgress; exports.CheckIcon = CheckIcon2; exports.XIcon = XIcon2; exports.MinusIcon = MinusIcon; exports.CheckCircleIcon = CheckCircleIcon2; exports.XCircleIcon = XCircleIcon; exports.FloatingTooltip = FloatingTooltip; exports.DashboardInfoCard = DashboardInfoCard; exports.InfoCardRow = InfoCardRow; exports.OSTypeBadge = OSTypeBadge; exports.OSTypeIcon = OSTypeIcon; exports.OSTypeLabel = OSTypeLabel; exports.DeviceCard = DeviceCard; exports.DeviceCardCompact = DeviceCardCompact; exports.FeatureCardGrid = FeatureCardGrid; exports.FeatureList = FeatureList; exports.TruncateText = TruncateText; exports.HighlightCard = HighlightCard; exports.HighlightCardGrid = HighlightCardGrid; exports.IconsBlock = IconsBlock; exports.DropdownButton = DropdownButton; exports.MoreActionsMenu = MoreActionsMenu; exports.OrganizationCard = OrganizationCard; exports.ServiceCard = ServiceCard; exports.Slider = Slider; exports.TabSelector = TabSelector; exports.TitleContentBlock = TitleContentBlock; exports.ErrorState = ErrorState; exports.PageError = PageError; exports.LoadError = LoadError; exports.NotFoundError = NotFoundError; exports.ContentLoader = ContentLoader; exports.CardLoader = CardLoader; exports.FormLoader = FormLoader; exports.DetailLoader = DetailLoader; exports.ListLoader = ListLoader; exports.Pagination = Pagination; exports.PaginationContent = PaginationContent; exports.PaginationItem = PaginationItem; exports.PaginationLink = PaginationLink; exports.PaginationEllipsis = PaginationEllipsis; exports.PaginationPrevious = PaginationPrevious; exports.PaginationNext = PaginationNext; exports.init_pagination = init_pagination; exports.CursorPagination = CursorPagination; exports.CursorPaginationSimple = CursorPaginationSimple; exports.TableEmptyState = TableEmptyState; exports.DynamicThemeProvider = DynamicThemeProvider; exports.useDynamicTheme = useDynamicTheme; exports.THEME_STORAGE_KEY = THEME_STORAGE_KEY; exports.THEME_ATTRIBUTE = THEME_ATTRIBUTE; exports.DEFAULT_THEME = DEFAULT_THEME; exports.ThemeProvider = ThemeProvider; exports.useTheme = useTheme; exports.useThemeToggle = useThemeToggle; exports.ArrayEntryManager = ArrayEntryManager; exports.AuthBenefitsPanel = AuthBenefitsPanel; exports.OpenFrameWordmark = OpenFrameWordmark; exports.PoweredByFlamingo = PoweredByFlamingo; exports.AuthShell = AuthShell; exports.BackToLoginLink = BackToLoginLink; exports.PasswordInput = PasswordInput; exports.PROVIDER_META = PROVIDER_META; exports.SsoProviderButtons = SsoProviderButtons; exports.CompleteAccountForm = CompleteAccountForm; exports.TermsAgreementLabel = TermsAgreementLabel; exports.CreateOrganizationForm = CreateOrganizationForm; exports.InviteLinkInvalidModal = InviteLinkInvalidModal; exports.LoginForm = LoginForm; exports.OpenFrameSsoLoginForm = OpenFrameSsoLoginForm; exports.OpenFrameSsoSignUpForm = OpenFrameSsoSignUpForm; exports.PasswordResetForm = PasswordResetForm; exports.SsoAuthShell = SsoAuthShell; exports.ProviderButton = ProviderButton; exports.AuthProvidersList = AuthProvidersList; exports.ChangelogManager = ChangelogManager; exports.ChangelogSectionsManager = ChangelogSectionsManager; exports.ClickUpTasksManager = ClickUpTasksManager; exports.CommandBox = CommandBox; exports.TAG_BADGE_CLASS = TAG_BADGE_CLASS; exports.EntityTagBadges = EntityTagBadges; exports.ErrorBoundary = ErrorBoundary; exports.SectionSelector = SectionSelector; exports.FigmaPrototypeViewer = FigmaPrototypeViewer; exports.FiltersDropdown = FiltersDropdown; exports.useFiltersDropdown = useFiltersDropdown; exports.GitHubReleasesManager = GitHubReleasesManager; exports.KnowledgeBaseLinksManager = KnowledgeBaseLinksManager; exports.LoadingProvider = LoadingProvider; exports.useLoading = useLoading; exports.MediaGalleryManager = MediaGalleryManager; exports.MoreAboutButton = MoreAboutButton; exports.OSTypeBadgeGroup = OSTypeBadgeGroup; exports.ParallaxImageShowcase = ParallaxImageShowcase; exports.PathsDisplay = PathsDisplay; exports.OPENFRAME_PATHS = OPENFRAME_PATHS; exports.getOpenFramePaths = getOpenFramePaths; exports.OPENFRAME_DOCTOR_COMMANDS = OPENFRAME_DOCTOR_COMMANDS; exports.getOpenFrameDoctorCommand = getOpenFrameDoctorCommand; exports.PlatformFilterComponent = PlatformFilterComponent; exports.PushButtonSelector = PushButtonSelector; exports.ReleaseMediaManager = ReleaseMediaManager; exports.SelectButton = SelectButton; exports.SEOEditorPreview = SEOEditorPreview; exports.SocialLinksManager = SocialLinksManager; exports.StartWithOpenFrameButton = StartWithOpenFrameButton; exports.StatusFilterComponent = StatusFilterComponent; exports.TagsSelector = TagsSelector; exports.WarningBlock = WarningBlock; exports.VideoBitesDisplay = VideoBitesDisplay; exports.getCaptionsUrl = getCaptionsUrl; exports.VideoSourceSelector = VideoSourceSelector; exports.ConfidenceBadge = ConfidenceBadge; exports.TranscriptSummaryEditor = TranscriptSummaryEditor; exports.AIEnrichButton = AIEnrichButton; exports.AIWarningsSection = AIWarningsSection; exports.AIEnrichSection = AIEnrichSection; exports.HighlightVideoSection = HighlightVideoSection; exports.HighlightConfigSection = HighlightConfigSection; exports.EntitySummaryEditor = EntitySummaryEditor; exports.AIStatusIndicator = AIStatusIndicator; exports.AIRequiredBadge = AIRequiredBadge; exports.TranscribeSummarizeSection = TranscribeSummarizeSection; exports.VideoClipsSection = VideoClipsSection; exports.HighlightGenerationSection = HighlightGenerationSection; exports.HighlightVideoPreview = HighlightVideoPreview; exports.TranscribeAndSummarizeCombinedSection = TranscribeAndSummarizeCombinedSection; exports.HighlightVideoCombinedSection = HighlightVideoCombinedSection; exports.ViewToggle = ViewToggle; exports.PolicyConfigurationPanel = PolicyConfigurationPanel; exports.PhoneInput = PhoneInput; exports.WaitlistForm = WaitlistForm; exports.NotificationsProvider = NotificationsProvider; exports.useNotifications = useNotifications; exports.useOptionalNotifications = useOptionalNotifications; exports.useAppLayoutDrawerContainer = useAppLayoutDrawerContainer; exports.AppLayoutDrawerRoot = AppLayoutDrawerRoot; exports.AppLayoutDrawerTrigger = AppLayoutDrawerTrigger; exports.AppLayoutDrawerClose = AppLayoutDrawerClose; exports.AppLayoutDrawerContent = AppLayoutDrawerContent; exports.AppLayoutDrawerHeader = AppLayoutDrawerHeader; exports.AppLayoutDrawerTitle = AppLayoutDrawerTitle; exports.AppLayoutDrawerDescription = AppLayoutDrawerDescription; exports.AppLayoutDrawerBody = AppLayoutDrawerBody; exports.AppLayoutDrawerFooter = AppLayoutDrawerFooter; exports.NotificationTile = NotificationTile; exports.NotificationDrawer = NotificationDrawer; exports.NotificationPopups = NotificationPopups; exports.ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE = ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE; exports.isApprovalNotification = isApprovalNotification; exports.getApprovalMeta = getApprovalMeta; exports.resolutionToStatus = resolutionToStatus; exports.approvalMetaToBatchData = approvalMetaToBatchData; exports.ApprovalRequestNotificationTile = ApprovalRequestNotificationTile; exports.TimeTrackerProvider = TimeTrackerProvider; exports.useTimeTracker = useTimeTracker; exports.useOptionalTimeTracker = useOptionalTimeTracker; exports.useTrackerClock = useTrackerClock; exports.TimeTrackerPanel = TimeTrackerPanel; exports.HeaderButton = HeaderButton; exports.TimeTrackerHeaderButton = TimeTrackerHeaderButton; exports.BoardColumnHeader = BoardColumnHeader; exports.tintOnDark = tintOnDark; exports.BoardTicketApproval = BoardTicketApproval; exports.TicketCardBody = TicketCardBody; exports.TicketCardView = TicketCardView; exports.TicketCard = TicketCard; exports.TicketCardSkeleton = TicketCardSkeleton; exports.BoardColumn = BoardColumn; exports.useBoardCollapse = useBoardCollapse; exports.Board = Board; exports.columnFromTicketStatus = columnFromTicketStatus; exports.groupTicketsByStatus = groupTicketsByStatus; exports.TicketStatusConfigList = TicketStatusConfigList; exports.TableHeader = TableHeader; exports.TableCell = TableCell; exports.TableCardSkeleton = TableCardSkeleton; exports.TableRow = TableRow; exports.Table = Table; exports.TableDescriptionCell = TableDescriptionCell; exports.TableTimestampCell = TableTimestampCell; exports.QueryReportTableHeader = QueryReportTableHeader; exports.QueryReportTableRow = QueryReportTableRow; exports.QueryReportTableSkeleton = QueryReportTableSkeleton; exports.deriveColumns = deriveColumns; exports.exportToCSV = exportToCSV; exports.QueryReportTable = QueryReportTable; exports.useDataTableContext = useDataTableContext; exports.DataTableRoot = DataTableRoot; exports.getHideClasses = getHideClasses2; exports.alignJustify = alignJustify; exports.multiSelectFilterFn = multiSelectFilterFn; exports.DataTableHeader = DataTableHeader; exports.DataTableEmpty = DataTableEmpty; exports.ROW_HEIGHT_DESKTOP = ROW_HEIGHT_DESKTOP2; exports.ROW_HEIGHT_MOBILE = ROW_HEIGHT_MOBILE2; exports.DataTableSkeleton = DataTableSkeleton; exports.DataTableRow = DataTableRow; exports.DataTableBody = DataTableBody; exports.DataTableInfiniteFooter = DataTableInfiniteFooter; exports.DataTableCursorFooter = DataTableCursorFooter; exports.DataTableRowCount = DataTableRowCount; exports.useDataTable = useDataTable; exports.DataTable = DataTable; exports.flexRender = _reacttable.flexRender; exports.createColumnHelper = _reacttable.createColumnHelper; exports.getCoreRowModel = _reacttable.getCoreRowModel; exports.getExpandedRowModel = _reacttable.getExpandedRowModel; exports.getFacetedRowModel = _reacttable.getFacetedRowModel; exports.getFacetedUniqueValues = _reacttable.getFacetedUniqueValues; exports.getFilteredRowModel = _reacttable.getFilteredRowModel; exports.getGroupedRowModel = _reacttable.getGroupedRowModel; exports.getPaginationRowModel = _reacttable.getPaginationRowModel; exports.getSortedRowModel = _reacttable.getSortedRowModel; exports.SearchInput = SearchInput; exports.FilterListItem = FilterListItem; exports.FilterList = FilterList; exports.TagSearchInput = TagSearchInput; exports.MarkdownEditor = MarkdownEditor; exports.FileUpload = FileUpload; exports.ImageUploader = ImageUploader; exports.TICKET_STATUS_COLOR_PRESETS = TICKET_STATUS_COLOR_PRESETS; exports.CUSTOM_PRESET_KEY = CUSTOM_PRESET_KEY; exports.DEFAULT_CUSTOM_STATUS_COLOR = DEFAULT_CUSTOM_STATUS_COLOR; exports.ColorPresetSelect = ColorPresetSelect; exports.ColorPickerInput = ColorPickerInput; exports.TicketStatusConfigRow = TicketStatusConfigRow; exports.TicketDetailSection = TicketDetailSection; exports.TicketAttachmentsList = TicketAttachmentsList; exports.TicketNoteCard = TicketNoteCard; exports.TicketNotesSection = TicketNotesSection; exports.TicketInfoSection = TicketInfoSection; exports.FilterPillRow = FilterPillRow; exports.MOBILE_NAV_PANEL_ID = MOBILE_NAV_PANEL_ID; exports.MobileNavPanel = MobileNavPanel; exports.MingoAiButton = MingoAiButton; exports.Header = Header2; exports.HeaderSkeleton = HeaderSkeleton; exports.ClientOnlyHeader = ClientOnlyHeader; exports.SlidingSidebar = SlidingSidebar; exports.StickySectionNav = StickySectionNav; exports.useSectionNavigation = useSectionNavigation; exports.NavigationSidebar = NavigationSidebar; exports.HeaderGlobalSearch = HeaderGlobalSearch; exports.HeaderMingoButton = HeaderMingoButton; exports.HeaderOrganizationFilter = HeaderOrganizationFilter; exports.AppHeader = AppHeader; exports.MobileBurgerMenu = MobileBurgerMenu; exports.AppLayout = AppLayout; exports.MultiLevelNavigation = MultiLevelNavigation; exports.MobileNavigationDropdown = MobileNavigationDropdown; exports.SoftwareInfo = SoftwareInfo; exports.SoftwareSourceBadge = SoftwareSourceBadge; exports.CveLink = CveLink; exports.ToolBadge = ToolBadge; exports.ShellTypeBadge = ShellTypeBadge; exports.ScriptInfoSection = ScriptInfoSection; exports.ScriptArguments = ScriptArguments; exports.OnboardingStepCard = OnboardingStepCard; exports.OnboardingWalkthrough = OnboardingWalkthrough; exports.LOG_SEVERITY_COLORS = LOG_SEVERITY_COLORS; exports.LOG_SEVERITY_LABELS = LOG_SEVERITY_LABELS; exports.LogSeverityDot = LogSeverityDot; exports.LogsList = LogsList; exports.assets = assets;
53764
- //# sourceMappingURL=chunk-7R3PASHE.cjs.map
53741
+ //# sourceMappingURL=chunk-3V5UQ5TU.cjs.map