@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__ */ jsx194("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__ */ jsx194(Icon2, { className: "h-5 w-5" }),
26031
26032
  onClick: () => onSsoClick?.(provider),
@@ -26227,7 +26228,7 @@ function TermsAgreementLabel({ termsUrl = "#", privacyPolicyUrl = "#" }) {
26227
26228
  }
26228
26229
 
26229
26230
  // src/components/features/auth/create-organization-form.tsx
26230
- import { jsx as jsx197, jsxs as jsxs151 } from "react/jsx-runtime";
26231
+ import { Fragment as Fragment41, jsx as jsx197, jsxs as jsxs151 } from "react/jsx-runtime";
26231
26232
  function CreateOrganizationForm({
26232
26233
  email,
26233
26234
  organizationName,
@@ -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 = useDeferredError(errors?.email, email);
26261
26264
  const orgNameErr = useDeferredError(errors?.organizationName, organizationName);
26262
26265
  const domainErr = useDeferredError(errors?.domain, domain);
@@ -26335,27 +26338,31 @@ function CreateOrganizationForm({
26335
26338
  onCheckedChange: onAgreedToTermsChange
26336
26339
  }
26337
26340
  ),
26338
- isSsoMode ? /* @__PURE__ */ jsx197(
26339
- SsoProviderButtons,
26341
+ /* @__PURE__ */ jsx197(
26342
+ 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__ */ jsxs151("div", { className: "flex items-center gap-[var(--spacing-system-l)]", children: [
26347
- /* @__PURE__ */ jsx197("div", { className: "hidden flex-1 md:block" }),
26352
+ ),
26353
+ hasSso && /* @__PURE__ */ jsxs151(Fragment41, { children: [
26354
+ /* @__PURE__ */ jsxs151("div", { className: "flex items-center gap-[var(--spacing-system-s)]", children: [
26355
+ /* @__PURE__ */ jsx197("div", { className: "h-px flex-1 bg-ods-border" }),
26356
+ /* @__PURE__ */ jsx197("span", { className: "text-h6 text-ods-text-secondary", children: dividerLabel }),
26357
+ /* @__PURE__ */ jsx197("div", { className: "h-px flex-1 bg-ods-border" })
26358
+ ] }),
26348
26359
  /* @__PURE__ */ jsx197(
26349
- 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
  init_cn();
26394
- init_button2();
26395
26401
  import { jsx as jsx199, jsxs as jsxs153 } from "react/jsx-runtime";
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 = useDeferredError(errors?.email, email);
26416
26420
  const handleKeyDown = (event) => {
26417
26421
  if (event.key === "Enter" && !fieldDisabled) {
26418
- onSubmit();
26422
+ onSubmit?.();
26419
26423
  }
26420
26424
  };
26421
26425
  return /* @__PURE__ */ jsxs153(
@@ -26437,51 +26441,24 @@ function LoginForm({
26437
26441
  label: "Email",
26438
26442
  placeholder: emailPlaceholder,
26439
26443
  value: email,
26440
- error: emailErr.error,
26444
+ error: emailErr.error ?? emailStatus?.message,
26445
+ errorVariant: emailErr.error ? "error" : emailStatus?.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__ */ jsx199(
26452
+ /* @__PURE__ */ jsx199(
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__ */ jsxs153("div", { className: "flex items-center gap-[var(--spacing-system-l)]", children: [
26456
- onForgotPassword ? /* @__PURE__ */ jsx199(
26457
- 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__ */ jsx199("div", { className: "hidden flex-1 md:block" })
26470
- ),
26471
- /* @__PURE__ */ jsx199(
26472
- 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
  );
@@ -29501,7 +29478,7 @@ SelectButton.displayName = "SelectButton";
29501
29478
  // src/components/features/seo-editor-preview.tsx
29502
29479
  import { useState as useState66 } from "react";
29503
29480
  import { Globe as Globe3, ExternalLink as ExternalLink6, Upload as Upload3, X as X6, Loader2 as Loader25 } from "lucide-react";
29504
- import { Fragment as Fragment41, jsx as jsx226, jsxs as jsxs175 } from "react/jsx-runtime";
29481
+ import { Fragment as Fragment42, jsx as jsx226, jsxs as jsxs175 } from "react/jsx-runtime";
29505
29482
  function SEOEditorPreview({
29506
29483
  seoTitle,
29507
29484
  seoDescription,
@@ -29554,7 +29531,7 @@ function SEOEditorPreview({
29554
29531
  /* @__PURE__ */ jsxs175("div", { className: "space-y-2", children: [
29555
29532
  /* @__PURE__ */ jsxs175("div", { className: "flex items-center gap-2", children: [
29556
29533
  /* @__PURE__ */ jsx226(Label, { className: "font-['DM_Sans'] text-[14px] font-medium text-ods-text-primary", children: "SEO Title" }),
29557
- aiConfidenceSeoTitle !== void 0 && /* @__PURE__ */ jsxs175(Fragment41, { children: [
29534
+ aiConfidenceSeoTitle !== void 0 && /* @__PURE__ */ jsxs175(Fragment42, { children: [
29558
29535
  /* @__PURE__ */ jsx226(AIGeneratedBadge, {}),
29559
29536
  /* @__PURE__ */ jsx226(
29560
29537
  ConfidenceBadge,
@@ -29601,7 +29578,7 @@ function SEOEditorPreview({
29601
29578
  /* @__PURE__ */ jsxs175("div", { className: "space-y-2", children: [
29602
29579
  /* @__PURE__ */ jsxs175("div", { className: "flex items-center gap-2", children: [
29603
29580
  /* @__PURE__ */ jsx226(Label, { className: "font-['DM_Sans'] text-[14px] font-medium text-ods-text-primary", children: "SEO Keywords" }),
29604
- aiConfidenceSeoKeywords !== void 0 && /* @__PURE__ */ jsxs175(Fragment41, { children: [
29581
+ aiConfidenceSeoKeywords !== void 0 && /* @__PURE__ */ jsxs175(Fragment42, { children: [
29605
29582
  /* @__PURE__ */ jsx226(AIGeneratedBadge, {}),
29606
29583
  /* @__PURE__ */ jsx226(
29607
29584
  ConfidenceBadge,
@@ -29630,7 +29607,7 @@ function SEOEditorPreview({
29630
29607
  /* @__PURE__ */ jsxs175("div", { className: "space-y-2 flex flex-col h-full", children: [
29631
29608
  /* @__PURE__ */ jsxs175("div", { className: "flex items-center gap-2", children: [
29632
29609
  /* @__PURE__ */ jsx226(Label, { className: "font-['DM_Sans'] text-[14px] font-medium text-ods-text-primary", children: "SEO Description" }),
29633
- aiConfidenceSeoDescription !== void 0 && /* @__PURE__ */ jsxs175(Fragment41, { children: [
29610
+ aiConfidenceSeoDescription !== void 0 && /* @__PURE__ */ jsxs175(Fragment42, { children: [
29634
29611
  /* @__PURE__ */ jsx226(AIGeneratedBadge, {}),
29635
29612
  /* @__PURE__ */ jsx226(
29636
29613
  ConfidenceBadge,
@@ -29720,7 +29697,7 @@ function SEOEditorPreview({
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
29699
  onClick: () => onOgImageUpload && fileInputRef?.click(),
29723
- children: isUploading ? /* @__PURE__ */ jsx226(Loader25, { className: "h-8 w-8 animate-spin text-ods-accent" }) : /* @__PURE__ */ jsxs175(Fragment41, { children: [
29700
+ children: isUploading ? /* @__PURE__ */ jsx226(Loader25, { className: "h-8 w-8 animate-spin text-ods-accent" }) : /* @__PURE__ */ jsxs175(Fragment42, { children: [
29724
29701
  /* @__PURE__ */ jsx226(Upload3, { className: "h-8 w-8 text-ods-text-secondary mb-2" }),
29725
29702
  /* @__PURE__ */ jsx226("span", { className: "text-sm text-ods-text-secondary font-['DM_Sans']", children: onOgImageUpload ? "Click to upload OG image" : "No image" })
29726
29703
  ] })
@@ -31917,7 +31894,7 @@ var DropdownMenuShortcut = ({
31917
31894
  DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
31918
31895
 
31919
31896
  // src/components/features/policy-configuration-panel.tsx
31920
- import { Fragment as Fragment42, jsx as jsx252, jsxs as jsxs195 } from "react/jsx-runtime";
31897
+ import { Fragment as Fragment43, jsx as jsx252, jsxs as jsxs195 } from "react/jsx-runtime";
31921
31898
  var approvalLevelOptions = [
31922
31899
  { value: "ALLOW", label: "Allow" },
31923
31900
  { value: "ASK_USER", label: "Ask User" },
@@ -31979,7 +31956,7 @@ var CategorySection = ({
31979
31956
  onPolicyPermissionChange
31980
31957
  }) => {
31981
31958
  const { contentRef, height } = useAnimatedHeight(category.isExpanded);
31982
- return /* @__PURE__ */ jsxs195(Fragment42, { children: [
31959
+ return /* @__PURE__ */ jsxs195(Fragment43, { children: [
31983
31960
  /* @__PURE__ */ jsxs195(
31984
31961
  "div",
31985
31962
  {
@@ -32222,7 +32199,7 @@ function CountryOption({ country }) {
32222
32199
  init_cn();
32223
32200
  import { getCountries as getCountries2 } from "libphonenumber-js";
32224
32201
  import { useEffect as useEffect53, useState as useState72 } from "react";
32225
- import { Fragment as Fragment43, jsx as jsx254, jsxs as jsxs197 } from "react/jsx-runtime";
32202
+ import { Fragment as Fragment44, jsx as jsx254, jsxs as jsxs197 } from "react/jsx-runtime";
32226
32203
  function WaitlistForm({
32227
32204
  id = "waitlist-form",
32228
32205
  className,
@@ -32367,7 +32344,7 @@ function WaitlistForm({
32367
32344
  error: showConsentError ? "Please agree to SMS notifications to continue." : void 0,
32368
32345
  disabled: isSubmitting,
32369
32346
  label: smsCheckboxLabel,
32370
- description: /* @__PURE__ */ jsxs197(Fragment43, { children: [
32347
+ description: /* @__PURE__ */ jsxs197(Fragment44, { children: [
32371
32348
  consentText,
32372
32349
  " View our ",
32373
32350
  /* @__PURE__ */ jsx254(
@@ -33293,7 +33270,7 @@ function NotificationTile({
33293
33270
  }
33294
33271
 
33295
33272
  // src/components/features/notifications/notification-drawer.tsx
33296
- import { Fragment as Fragment44, jsx as jsx258, jsxs as jsxs200 } from "react/jsx-runtime";
33273
+ import { Fragment as Fragment45, jsx as jsx258, jsxs as jsxs200 } from "react/jsx-runtime";
33297
33274
  function NotificationDrawer({
33298
33275
  className,
33299
33276
  liveDurationMs,
@@ -33326,7 +33303,7 @@ function NotificationDrawer({
33326
33303
  } = ctx;
33327
33304
  const renderTile = renderTileProp ?? ctxRenderTile;
33328
33305
  const unreadNotifications = notifications.filter((n) => !n.read);
33329
- const content = /* @__PURE__ */ jsxs200(Fragment44, { children: [
33306
+ const content = /* @__PURE__ */ jsxs200(Fragment45, { children: [
33330
33307
  /* @__PURE__ */ jsx258("div", { className: "px-[var(--spacing-system-m)] pt-[var(--spacing-system-m)]", children: /* @__PURE__ */ jsx258(
33331
33308
  DrawerTitle,
33332
33309
  {
@@ -33436,7 +33413,7 @@ function DrawerScrollList({
33436
33413
  {
33437
33414
  ref: scrollRef,
33438
33415
  className: "flex flex-1 flex-col gap-[var(--spacing-system-xs)] overflow-y-auto px-[var(--spacing-system-m)]",
33439
- children: isEmpty && !isLoadingMore ? /* @__PURE__ */ jsx258(EmptyState, {}) : /* @__PURE__ */ jsxs200(Fragment44, { children: [
33416
+ children: isEmpty && !isLoadingMore ? /* @__PURE__ */ jsx258(EmptyState, {}) : /* @__PURE__ */ jsxs200(Fragment45, { children: [
33440
33417
  unreadNotifications.map((n) => {
33441
33418
  const custom = renderTile?.(n, { onComplete, onSettle, liveDurationMs });
33442
33419
  if (custom) return /* @__PURE__ */ jsx258("div", { children: custom }, n.id);
@@ -33458,7 +33435,7 @@ function DrawerScrollList({
33458
33435
  );
33459
33436
  }
33460
33437
  function DrawerLoadingTiles() {
33461
- return /* @__PURE__ */ jsxs200(Fragment44, { children: [
33438
+ return /* @__PURE__ */ jsxs200(Fragment45, { children: [
33462
33439
  /* @__PURE__ */ jsx258(
33463
33440
  "div",
33464
33441
  {
@@ -33841,7 +33818,7 @@ function approvalMetaToBatchData(approval) {
33841
33818
  }
33842
33819
 
33843
33820
  // src/components/features/notifications/approval-request-notification-tile.tsx
33844
- import { Fragment as Fragment45, jsx as jsx260, jsxs as jsxs201 } from "react/jsx-runtime";
33821
+ import { Fragment as Fragment46, jsx as jsx260, jsxs as jsxs201 } from "react/jsx-runtime";
33845
33822
  function ApprovalRequestNotificationTile({
33846
33823
  notification,
33847
33824
  onApprove,
@@ -33891,7 +33868,7 @@ function ApprovalRequestNotificationTile({
33891
33868
  className,
33892
33869
  paused: pinned || processing,
33893
33870
  actions: /* @__PURE__ */ jsxs201("div", { className: "flex w-full items-center gap-[var(--spacing-system-xs)]", children: [
33894
- status === "pending" ? /* @__PURE__ */ jsxs201(Fragment45, { children: [
33871
+ status === "pending" ? /* @__PURE__ */ jsxs201(Fragment46, { children: [
33895
33872
  /* @__PURE__ */ jsx260(Button, { variant: "accent", size: "small", onClick: () => resolve("approved", onApprove), disabled: processing, children: "Approve" }),
33896
33873
  /* @__PURE__ */ jsx260(Button, { variant: "outline", size: "small", onClick: () => resolve("rejected", onReject), disabled: processing, children: "Reject" })
33897
33874
  ] }) : /* @__PURE__ */ jsxs201("span", { className: "flex min-w-0 items-center gap-[var(--spacing-system-xsf)]", children: [
@@ -34311,7 +34288,7 @@ function HeaderButton({
34311
34288
  }
34312
34289
 
34313
34290
  // src/components/features/time-tracker/time-tracker-header-button.tsx
34314
- import { Fragment as Fragment46, jsx as jsx264, jsxs as jsxs203 } from "react/jsx-runtime";
34291
+ import { Fragment as Fragment47, jsx as jsx264, jsxs as jsxs203 } from "react/jsx-runtime";
34315
34292
  function TimeTrackerHeaderButton({ className, disabled }) {
34316
34293
  const ctx = useOptionalTimeTracker();
34317
34294
  const elapsedLabel = useTrackerClock({
@@ -34357,7 +34334,7 @@ function TimeTrackerHeaderButton({ className, disabled }) {
34357
34334
  isActive && "w-auto gap-[var(--spacing-system-xsf)] px-[var(--spacing-system-sf)] md:w-auto",
34358
34335
  className
34359
34336
  ),
34360
- icon: /* @__PURE__ */ jsxs203(Fragment46, { children: [
34337
+ icon: /* @__PURE__ */ jsxs203(Fragment47, { children: [
34361
34338
  /* @__PURE__ */ jsx264(
34362
34339
  ClockHistoryIcon,
34363
34340
  {
@@ -34599,7 +34576,7 @@ function BoardTicketApproval({ pendingApproval, onApprove, onReject }) {
34599
34576
  }
34600
34577
 
34601
34578
  // src/components/features/board/ticket-card.tsx
34602
- import { Fragment as Fragment47, jsx as jsx267, jsxs as jsxs206 } from "react/jsx-runtime";
34579
+ import { Fragment as Fragment48, jsx as jsx267, jsxs as jsxs206 } from "react/jsx-runtime";
34603
34580
  var PRIORITY_COLOR_CLASS = {
34604
34581
  low: "text-ods-text-secondary",
34605
34582
  medium: "text-ods-info",
@@ -34643,7 +34620,7 @@ function TicketCardBody({ ticket, columnColor, renderAssignSlot, onApprove, onRe
34643
34620
  ] }) : null;
34644
34621
  const timestampLabel = ticket.createdAt ? formatTicketRelativeTime(ticket.createdAt) : null;
34645
34622
  const tooltipLabel = ticket.createdAt ? formatTicketFullTimestamp(ticket.createdAt) : null;
34646
- return /* @__PURE__ */ jsxs206(Fragment47, { children: [
34623
+ return /* @__PURE__ */ jsxs206(Fragment48, { children: [
34647
34624
  /* @__PURE__ */ jsxs206("div", { className: "flex items-start gap-[var(--spacing-system-sf)]", children: [
34648
34625
  /* @__PURE__ */ jsxs206("div", { className: "flex min-w-0 flex-1 flex-col gap-[var(--spacing-system-zero)]", title: ticket.title, children: [
34649
34626
  /* @__PURE__ */ jsx267("p", { className: "text-h3 truncate text-ods-text-primary", children: ticket.title }),
@@ -34809,7 +34786,7 @@ var TicketCardSkeleton = React104.forwardRef(
34809
34786
  TicketCardSkeleton.displayName = "TicketCardSkeleton";
34810
34787
 
34811
34788
  // src/components/features/board/board-column.tsx
34812
- import { Fragment as Fragment48, jsx as jsx269, jsxs as jsxs208 } from "react/jsx-runtime";
34789
+ import { Fragment as Fragment49, jsx as jsx269, jsxs as jsxs208 } from "react/jsx-runtime";
34813
34790
  function BoardColumn({
34814
34791
  column,
34815
34792
  collapsed = false,
@@ -34848,7 +34825,7 @@ function BoardColumn({
34848
34825
  onArchive: !collapsed && column.archivable && onArchive ? () => onArchive(column.id) : void 0
34849
34826
  }
34850
34827
  ),
34851
- !collapsed && /* @__PURE__ */ jsxs208(Fragment48, { children: [
34828
+ !collapsed && /* @__PURE__ */ jsxs208(Fragment49, { children: [
34852
34829
  /* @__PURE__ */ jsx269("div", { "aria-hidden": true, className: "-mx-[var(--spacing-system-sf)] h-px shrink-0 bg-ods-border" }),
34853
34830
  /* @__PURE__ */ jsx269(
34854
34831
  ColumnBody,
@@ -34941,7 +34918,7 @@ function SkeletonStack({ count = 4 }) {
34941
34918
  () => Array.from({ length: count }, () => Math.random().toString(36).slice(2)),
34942
34919
  [count]
34943
34920
  );
34944
- return /* @__PURE__ */ jsx269(Fragment48, { children: keys.map((k) => /* @__PURE__ */ jsx269(TicketCardSkeleton, {}, k)) });
34921
+ return /* @__PURE__ */ jsx269(Fragment49, { children: keys.map((k) => /* @__PURE__ */ jsx269(TicketCardSkeleton, {}, k)) });
34945
34922
  }
34946
34923
  function EmptyState2() {
34947
34924
  return /* @__PURE__ */ jsxs208("div", { className: "flex flex-1 flex-col items-center justify-center gap-[var(--spacing-system-lf)] p-[var(--spacing-system-lf)] text-center text-ods-text-secondary", children: [
@@ -35359,7 +35336,7 @@ import { useRef as useRef44 } from "react";
35359
35336
  import { usePreventScroll as usePreventScroll3 } from "@react-aria/overlays";
35360
35337
  init_button2();
35361
35338
  import { X as X10 } from "lucide-react";
35362
- import { Fragment as Fragment50, jsx as jsx272, jsxs as jsxs210 } from "react/jsx-runtime";
35339
+ import { Fragment as Fragment51, jsx as jsx272, jsxs as jsxs210 } from "react/jsx-runtime";
35363
35340
  var MOBILE_NAV_PANEL_ID = "mobile-nav-panel";
35364
35341
  function MobileNavPanel({ isOpen, config }) {
35365
35342
  const panelRef = useRef44(null);
@@ -35415,7 +35392,7 @@ function MobileNavPanel({ isOpen, config }) {
35415
35392
  item.id
35416
35393
  );
35417
35394
  };
35418
- return /* @__PURE__ */ jsxs210(Fragment50, { children: [
35395
+ return /* @__PURE__ */ jsxs210(Fragment51, { children: [
35419
35396
  /* @__PURE__ */ jsx272(
35420
35397
  "div",
35421
35398
  {
@@ -35518,7 +35495,7 @@ function MingoAiButton({ source, icon, label = "Mingo AI", className, onClick, .
35518
35495
  }
35519
35496
 
35520
35497
  // src/components/navigation/header.tsx
35521
- import { Fragment as Fragment51, jsx as jsx274, jsxs as jsxs212 } from "react/jsx-runtime";
35498
+ import { Fragment as Fragment52, jsx as jsx274, jsxs as jsxs212 } from "react/jsx-runtime";
35522
35499
  function Header2({ config, platform }) {
35523
35500
  const [show, setShow] = useState83(true);
35524
35501
  const [lastScrollY, setLastScrollY] = useState83(0);
@@ -35663,7 +35640,7 @@ function Header2({ config, platform }) {
35663
35640
  },
35664
35641
  child.id
35665
35642
  )) }),
35666
- item.dropdownContent && /* @__PURE__ */ jsxs212(Fragment51, { children: [
35643
+ item.dropdownContent && /* @__PURE__ */ jsxs212(Fragment52, { children: [
35667
35644
  item.showDropdownDivider !== false && /* @__PURE__ */ jsx274("div", { className: "h-px my-2 mx-2 bg-ods-border" }),
35668
35645
  /* @__PURE__ */ jsx274("div", { className: "px-2 pb-2", children: item.dropdownContent })
35669
35646
  ] })
@@ -35854,7 +35831,7 @@ import { useState as useState85, useEffect as useEffect65, useRef as useRef46 }
35854
35831
  import { motion as motion2, AnimatePresence, useReducedMotion } from "framer-motion";
35855
35832
  import { usePreventScroll as usePreventScroll4 } from "@react-aria/overlays";
35856
35833
  init_button2();
35857
- import { Fragment as Fragment52, jsx as jsx277, jsxs as jsxs214 } from "react/jsx-runtime";
35834
+ import { Fragment as Fragment53, jsx as jsx277, jsxs as jsxs214 } from "react/jsx-runtime";
35858
35835
  function SlidingSidebar({ config }) {
35859
35836
  const [expandedItems, setExpandedItems] = useState85(/* @__PURE__ */ new Set());
35860
35837
  const [mounted, setMounted] = useState85(false);
@@ -35980,7 +35957,7 @@ function SlidingSidebar({ config }) {
35980
35957
  if (!mounted) {
35981
35958
  return null;
35982
35959
  }
35983
- return /* @__PURE__ */ jsxs214(Fragment52, { children: [
35960
+ return /* @__PURE__ */ jsxs214(Fragment53, { children: [
35984
35961
  /* @__PURE__ */ jsx277(AnimatePresence, { children: config.isOpen && /* @__PURE__ */ jsx277(
35985
35962
  motion2.div,
35986
35963
  {
@@ -36281,7 +36258,7 @@ function NavigationSidebarToggle({
36281
36258
  }
36282
36259
 
36283
36260
  // src/components/navigation/navigation-sidebar.tsx
36284
- import { Fragment as Fragment53, jsx as jsx282, jsxs as jsxs219 } from "react/jsx-runtime";
36261
+ import { Fragment as Fragment54, jsx as jsx282, jsxs as jsxs219 } from "react/jsx-runtime";
36285
36262
  var MINIMIZED_WIDTH = 56;
36286
36263
  var EXPANDED_WIDTH = 224;
36287
36264
  var STORAGE_KEY = "of.navigationSidebar.minimized";
@@ -36346,7 +36323,7 @@ function NavigationSidebar({ config, disabled = false }) {
36346
36323
  return () => cancelAnimationFrame(id);
36347
36324
  }
36348
36325
  }, [isHydrated, transitionsEnabled]);
36349
- return /* @__PURE__ */ jsxs219(Fragment53, { children: [
36326
+ return /* @__PURE__ */ jsxs219(Fragment54, { children: [
36350
36327
  /* @__PURE__ */ jsx282(
36351
36328
  "div",
36352
36329
  {
@@ -36385,7 +36362,7 @@ function NavigationSidebar({ config, disabled = false }) {
36385
36362
  ),
36386
36363
  style: { width: sidebarWidth },
36387
36364
  "aria-label": "Main navigation sidebar",
36388
- children: isHydrated && /* @__PURE__ */ jsxs219(Fragment53, { children: [
36365
+ children: isHydrated && /* @__PURE__ */ jsxs219(Fragment54, { children: [
36389
36366
  /* @__PURE__ */ jsx282(NavigationSidebarHeader, { minimized }),
36390
36367
  /* @__PURE__ */ jsxs219("div", { className: "flex-1 flex flex-col justify-between py-4 overflow-y-auto", children: [
36391
36368
  /* @__PURE__ */ jsx282("nav", { className: "flex flex-col", "aria-label": "Primary navigation", children: primaryItems.map((item) => /* @__PURE__ */ jsx282(
@@ -36798,7 +36775,7 @@ import { Suspense as Suspense2, useCallback as useCallback37, useMemo as useMemo
36798
36775
  // src/components/navigation/mobile-burger-menu.tsx
36799
36776
  import React114, { useCallback as useCallback36, useRef as useRef48 } from "react";
36800
36777
  import { usePreventScroll as usePreventScroll5 } from "@react-aria/overlays";
36801
- import { Fragment as Fragment54, jsx as jsx287, jsxs as jsxs224 } from "react/jsx-runtime";
36778
+ import { Fragment as Fragment55, jsx as jsx287, jsxs as jsxs224 } from "react/jsx-runtime";
36802
36779
  var HEADER_HEIGHT = 48;
36803
36780
  var MobileBurgerMenu = React114.memo(function MobileBurgerMenu2({
36804
36781
  isOpen,
@@ -36866,7 +36843,7 @@ var MobileBurgerMenu = React114.memo(function MobileBurgerMenu2({
36866
36843
  row.length === 1 && /* @__PURE__ */ jsx287("div", { className: "flex-1" })
36867
36844
  ] }, rowIndex)) });
36868
36845
  };
36869
- return /* @__PURE__ */ jsxs224(Fragment54, { children: [
36846
+ return /* @__PURE__ */ jsxs224(Fragment55, { children: [
36870
36847
  /* @__PURE__ */ jsx287(
36871
36848
  "div",
36872
36849
  {
@@ -37630,7 +37607,7 @@ import React116, { useRef as useRef50, useCallback as useCallback38 } from "reac
37630
37607
  import React115 from "react";
37631
37608
  init_button2();
37632
37609
  init_cn();
37633
- import { Fragment as Fragment55, jsx as jsx297, jsxs as jsxs234 } from "react/jsx-runtime";
37610
+ import { Fragment as Fragment56, jsx as jsx297, jsxs as jsxs234 } from "react/jsx-runtime";
37634
37611
  function OnboardingStepCard({
37635
37612
  step,
37636
37613
  isCompleted,
@@ -37672,10 +37649,10 @@ function OnboardingStepCard({
37672
37649
  /* @__PURE__ */ jsx297("h3", { className: "text-h4 text-ods-text-primary truncate", title: step.title, children: step.title }),
37673
37650
  /* @__PURE__ */ jsx297("p", { className: "font-['DM_Sans'] font-medium text-[14px] leading-[20px] text-ods-text-secondary truncate h-[20px]", title: step.description, children: step.description })
37674
37651
  ] }),
37675
- /* @__PURE__ */ jsx297("div", { className: "flex items-center gap-2 w-full md:w-auto justify-start md:justify-end shrink-0", onClick: (e) => e.stopPropagation(), children: isCheckingCompletion ? /* @__PURE__ */ jsxs234(Fragment55, { children: [
37652
+ /* @__PURE__ */ jsx297("div", { className: "flex items-center gap-2 w-full md:w-auto justify-start md:justify-end shrink-0", onClick: (e) => e.stopPropagation(), children: isCheckingCompletion ? /* @__PURE__ */ jsxs234(Fragment56, { children: [
37676
37653
  /* @__PURE__ */ jsx297("div", { className: "h-[32px] w-[100px] bg-ods-border rounded-[6px] animate-pulse" }),
37677
37654
  /* @__PURE__ */ jsx297("div", { className: "h-[32px] w-[120px] bg-ods-border rounded-[6px] animate-pulse" })
37678
- ] }) : isCompleted ? /* @__PURE__ */ jsxs234(Fragment55, { children: [
37655
+ ] }) : isCompleted ? /* @__PURE__ */ jsxs234(Fragment56, { children: [
37679
37656
  /* @__PURE__ */ jsx297(
37680
37657
  StatusBadge,
37681
37658
  {
@@ -37694,14 +37671,14 @@ function OnboardingStepCard({
37694
37671
  children: step.completedText
37695
37672
  }
37696
37673
  )
37697
- ] }) : isSkipped ? /* @__PURE__ */ jsx297(Fragment55, { children: /* @__PURE__ */ jsx297(
37674
+ ] }) : isSkipped ? /* @__PURE__ */ jsx297(Fragment56, { children: /* @__PURE__ */ jsx297(
37698
37675
  StatusBadge,
37699
37676
  {
37700
37677
  text: "SKIPPED",
37701
37678
  variant: "card",
37702
37679
  colorScheme: "default"
37703
37680
  }
37704
- ) }) : /* @__PURE__ */ jsxs234(Fragment55, { children: [
37681
+ ) }) : /* @__PURE__ */ jsxs234(Fragment56, { children: [
37705
37682
  /* @__PURE__ */ jsx297(
37706
37683
  Button,
37707
37684
  {
@@ -38708,7 +38685,7 @@ function getHideClasses(hideAt) {
38708
38685
  }
38709
38686
 
38710
38687
  // src/components/ui/table/table-header.tsx
38711
- import { Fragment as Fragment56, jsx as jsx311, jsxs as jsxs245 } from "react/jsx-runtime";
38688
+ import { Fragment as Fragment57, jsx as jsx311, jsxs as jsxs245 } from "react/jsx-runtime";
38712
38689
  function TableHeader({
38713
38690
  columns,
38714
38691
  className,
@@ -38819,10 +38796,10 @@ function TableHeader({
38819
38796
  column.sortable && "cursor-pointer hover:text-ods-text-primary transition-colors"
38820
38797
  ),
38821
38798
  onClick: () => handleSort(column),
38822
- children: column.renderHeader ? /* @__PURE__ */ jsxs245(Fragment56, { children: [
38799
+ children: column.renderHeader ? /* @__PURE__ */ jsxs245(Fragment57, { children: [
38823
38800
  column.renderHeader(),
38824
38801
  getSortIcon(column)
38825
- ] }) : /* @__PURE__ */ jsxs245(Fragment56, { children: [
38802
+ ] }) : /* @__PURE__ */ jsxs245(Fragment57, { children: [
38826
38803
  /* @__PURE__ */ jsx311("span", { className: "text-h5 text-ods-text-secondary uppercase whitespace-nowrap", children: column.label }),
38827
38804
  getSortIcon(column)
38828
38805
  ] })
@@ -38877,7 +38854,7 @@ function TableCell({
38877
38854
 
38878
38855
  // src/components/ui/table/table-skeleton.tsx
38879
38856
  init_cn();
38880
- import { Fragment as Fragment57, jsx as jsx313, jsxs as jsxs246 } from "react/jsx-runtime";
38857
+ import { Fragment as Fragment58, jsx as jsx313, jsxs as jsxs246 } from "react/jsx-runtime";
38881
38858
  var ROW_HEIGHT_DESKTOP = "h-[68px] md:h-[80px]";
38882
38859
  var ROW_HEIGHT_MOBILE = "h-[68px]";
38883
38860
  function TableCardSkeleton({
@@ -38889,7 +38866,7 @@ function TableCardSkeleton({
38889
38866
  rowClassName
38890
38867
  }) {
38891
38868
  const primaryKey = (columns.find((c) => /flex-(1|\[)/.test(c.width || "")) ?? columns[0])?.key;
38892
- return /* @__PURE__ */ jsx313(Fragment57, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ jsxs246(
38869
+ return /* @__PURE__ */ jsx313(Fragment58, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ jsxs246(
38893
38870
  "div",
38894
38871
  {
38895
38872
  className: cn(
@@ -39068,7 +39045,7 @@ function useTableMotion(enabled) {
39068
39045
  }
39069
39046
 
39070
39047
  // src/components/ui/table/table.tsx
39071
- import { Fragment as Fragment58, jsx as jsx315, jsxs as jsxs248 } from "react/jsx-runtime";
39048
+ import { Fragment as Fragment59, jsx as jsx315, jsxs as jsxs248 } from "react/jsx-runtime";
39072
39049
  function injectSyntheticColumns(columns, rowActions, renderRowActions, rowHref) {
39073
39050
  const hasActions = Boolean(rowActions?.length) || Boolean(renderRowActions);
39074
39051
  const result = [...columns];
@@ -39270,7 +39247,7 @@ function Table({
39270
39247
  hasActions: Boolean(rowActions) && rowActions.length > 0,
39271
39248
  hasChevron: Boolean(rowHref)
39272
39249
  }
39273
- ) : data.length === 0 ? /* @__PURE__ */ jsx315(TableEmptyState, { message: emptyMessage }) : /* @__PURE__ */ jsxs248(Fragment58, { children: [
39250
+ ) : data.length === 0 ? /* @__PURE__ */ jsx315(TableEmptyState, { message: emptyMessage }) : /* @__PURE__ */ jsxs248(Fragment59, { children: [
39274
39251
  (() => {
39275
39252
  const rows = data.map((item, index) => /* @__PURE__ */ jsx315(
39276
39253
  TableRow,
@@ -39897,7 +39874,7 @@ function DataTableColumnFilter({
39897
39874
  }
39898
39875
 
39899
39876
  // src/components/ui/data-table/data-table-header.tsx
39900
- import { Fragment as Fragment59, jsx as jsx324, jsxs as jsxs255 } from "react/jsx-runtime";
39877
+ import { Fragment as Fragment60, jsx as jsx324, jsxs as jsxs255 } from "react/jsx-runtime";
39901
39878
  function DataTableHeader({
39902
39879
  className,
39903
39880
  stickyHeader,
@@ -39993,7 +39970,7 @@ function HeaderLabel({ header }) {
39993
39970
  if (typeof headerDef === "string") {
39994
39971
  return /* @__PURE__ */ jsx324("span", { className: "text-h5 text-ods-text-secondary uppercase whitespace-nowrap transition-colors duration-200 group-hover:text-ods-text-primary", children: headerDef });
39995
39972
  }
39996
- return /* @__PURE__ */ jsx324(Fragment59, { children: flexRender(headerDef, header.getContext()) });
39973
+ return /* @__PURE__ */ jsx324(Fragment60, { children: flexRender(headerDef, header.getContext()) });
39997
39974
  }
39998
39975
  function SortIcon({ sorted }) {
39999
39976
  if (sorted === "asc") return /* @__PURE__ */ jsx324(Arrow01UpIcon, { className: "w-4 h-4 text-ods-accent" });
@@ -40032,7 +40009,7 @@ import { flexRender as flexRender2 } from "@tanstack/react-table";
40032
40009
 
40033
40010
  // src/components/ui/data-table/data-table-skeleton.tsx
40034
40011
  init_cn();
40035
- import { Fragment as Fragment60, jsx as jsx326, jsxs as jsxs256 } from "react/jsx-runtime";
40012
+ import { Fragment as Fragment61, jsx as jsx326, jsxs as jsxs256 } from "react/jsx-runtime";
40036
40013
  var ROW_HEIGHT_DESKTOP2 = "h-[68px] md:h-[80px]";
40037
40014
  var ROW_HEIGHT_MOBILE2 = "h-[68px]";
40038
40015
  function DataTableSkeleton({
@@ -40043,7 +40020,7 @@ function DataTableSkeleton({
40043
40020
  const table = useDataTableContext();
40044
40021
  const columns = table.getVisibleFlatColumns();
40045
40022
  const firstColumnId = columns[0]?.id;
40046
- return /* @__PURE__ */ jsx326(Fragment60, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ jsxs256(
40023
+ return /* @__PURE__ */ jsx326(Fragment61, { children: Array.from({ length: rows }).map((_, index) => /* @__PURE__ */ jsxs256(
40047
40024
  "div",
40048
40025
  {
40049
40026
  className: cn(
@@ -40099,7 +40076,7 @@ function DataTableSkeleton({
40099
40076
  }
40100
40077
 
40101
40078
  // src/components/ui/data-table/data-table-row.tsx
40102
- import { Fragment as Fragment61, jsx as jsx327, jsxs as jsxs257 } from "react/jsx-runtime";
40079
+ import { Fragment as Fragment62, jsx as jsx327, jsxs as jsxs257 } from "react/jsx-runtime";
40103
40080
  function DataTableRowImpl({
40104
40081
  row,
40105
40082
  onClick,
@@ -40201,7 +40178,7 @@ function CellContent({ children }) {
40201
40178
  if (typeof children === "string" || typeof children === "number") {
40202
40179
  return /* @__PURE__ */ jsx327("span", { className: "text-h4 text-ods-text-primary truncate", title: String(children), children });
40203
40180
  }
40204
- return /* @__PURE__ */ jsx327(Fragment61, { children });
40181
+ return /* @__PURE__ */ jsx327(Fragment62, { children });
40205
40182
  }
40206
40183
 
40207
40184
  // src/components/ui/data-table/data-table-body.tsx
@@ -40281,7 +40258,7 @@ function DataTableBody({
40281
40258
 
40282
40259
  // src/components/ui/data-table/data-table-infinite-footer.tsx
40283
40260
  import { useEffect as useEffect70, useRef as useRef56 } from "react";
40284
- import { Fragment as Fragment62, jsx as jsx329, jsxs as jsxs259 } from "react/jsx-runtime";
40261
+ import { Fragment as Fragment63, jsx as jsx329, jsxs as jsxs259 } from "react/jsx-runtime";
40285
40262
  function DataTableInfiniteFooter({
40286
40263
  hasNextPage,
40287
40264
  isFetchingNextPage,
@@ -40305,7 +40282,7 @@ function DataTableInfiniteFooter({
40305
40282
  observer.observe(sentinel);
40306
40283
  return () => observer.disconnect();
40307
40284
  }, [hasNextPage, isFetchingNextPage, rootMargin]);
40308
- return /* @__PURE__ */ jsxs259(Fragment62, { children: [
40285
+ return /* @__PURE__ */ jsxs259(Fragment63, { children: [
40309
40286
  isFetchingNextPage && /* @__PURE__ */ jsx329(DataTableSkeleton, { rows: skeletonRows }),
40310
40287
  hasNextPage && /* @__PURE__ */ jsx329("div", { ref: sentinelRef, className: "h-1", "aria-hidden": "true" })
40311
40288
  ] });
@@ -41715,7 +41692,7 @@ function FileUpload({
41715
41692
  import * as React127 from "react";
41716
41693
  import { Loader2 as Loader211 } from "lucide-react";
41717
41694
  init_cn();
41718
- import { Fragment as Fragment64, jsx as jsx336, jsxs as jsxs266 } from "react/jsx-runtime";
41695
+ import { Fragment as Fragment65, jsx as jsx336, jsxs as jsxs266 } from "react/jsx-runtime";
41719
41696
  var DEFAULT_MAX_SIZE = 25 * 1024 * 1024;
41720
41697
  function formatSize(bytes) {
41721
41698
  const mb = bytes / (1024 * 1024);
@@ -41843,7 +41820,7 @@ function ImageUploader({
41843
41820
  !hasImage && !interactive && "cursor-not-allowed",
41844
41821
  dropzoneClassName
41845
41822
  ),
41846
- children: hasImage ? /* @__PURE__ */ jsxs266(Fragment64, { children: [
41823
+ children: hasImage ? /* @__PURE__ */ jsxs266(Fragment65, { children: [
41847
41824
  /* @__PURE__ */ jsx336("div", { className: "relative min-h-0 w-full flex-1 overflow-hidden rounded-md", children: /* @__PURE__ */ jsx336(
41848
41825
  "img",
41849
41826
  {
@@ -41880,7 +41857,7 @@ function ImageUploader({
41880
41857
  )
41881
41858
  ] }),
41882
41859
  loading && /* @__PURE__ */ jsx336("div", { className: "absolute inset-0 flex items-center justify-center rounded-md bg-ods-overlay", children: /* @__PURE__ */ jsx336(Loader211, { className: "size-8 animate-spin text-ods-text-on-dark" }) })
41883
- ] }) : loading ? /* @__PURE__ */ jsx336(Loader211, { className: "size-8 animate-spin text-ods-accent" }) : /* @__PURE__ */ jsxs266(Fragment64, { children: [
41860
+ ] }) : loading ? /* @__PURE__ */ jsx336(Loader211, { className: "size-8 animate-spin text-ods-accent" }) : /* @__PURE__ */ jsxs266(Fragment65, { children: [
41884
41861
  /* @__PURE__ */ jsx336("div", { className: "flex shrink-0 items-center justify-center rounded-full border border-ods-border bg-ods-card p-[var(--spacing-system-s)]", children: /* @__PURE__ */ jsx336(ImagePlusIcon, { className: "size-6 text-ods-text-primary" }) }),
41885
41862
  /* @__PURE__ */ jsxs266("div", { className: "flex w-full flex-col items-center text-center", children: [
41886
41863
  /* @__PURE__ */ jsx336("p", { className: "text-h4 text-ods-text-primary", children: label }),
@@ -41950,7 +41927,7 @@ PopoverContent.displayName = PopoverPrimitive7.Content.displayName;
41950
41927
 
41951
41928
  // src/components/ui/color-preset-select.tsx
41952
41929
  init_cn();
41953
- import { Fragment as Fragment65, jsx as jsx338, jsxs as jsxs267 } from "react/jsx-runtime";
41930
+ import { Fragment as Fragment66, jsx as jsx338, jsxs as jsxs267 } from "react/jsx-runtime";
41954
41931
  var TICKET_STATUS_COLOR_PRESETS = [
41955
41932
  { key: "green", label: "Green", color: "#5ea62e" },
41956
41933
  { key: "lime", label: "Lime", color: "#8bc34a" },
@@ -42101,7 +42078,7 @@ function RgbInputs({ value, onChange }) {
42101
42078
  const b = next.b ?? rgb.b;
42102
42079
  onChange(rgbToHex(r, g, b));
42103
42080
  };
42104
- return /* @__PURE__ */ jsxs267(Fragment65, { children: [
42081
+ return /* @__PURE__ */ jsxs267(Fragment66, { children: [
42105
42082
  /* @__PURE__ */ jsx338(ChannelInput, { value: rgb.r, min: 0, max: 255, ariaLabel: "Red", onCommit: (r) => update({ r }) }),
42106
42083
  /* @__PURE__ */ jsx338(ChannelInput, { value: rgb.g, min: 0, max: 255, ariaLabel: "Green", onCommit: (g) => update({ g }) }),
42107
42084
  /* @__PURE__ */ jsx338(ChannelInput, { value: rgb.b, min: 0, max: 255, ariaLabel: "Blue", onCommit: (b) => update({ b }) })
@@ -42117,7 +42094,7 @@ function HslInputs({ value, onChange }) {
42117
42094
  const out = hslToRgb(h, s, l);
42118
42095
  onChange(rgbToHex(out.r, out.g, out.b));
42119
42096
  };
42120
- return /* @__PURE__ */ jsxs267(Fragment65, { children: [
42097
+ return /* @__PURE__ */ jsxs267(Fragment66, { children: [
42121
42098
  /* @__PURE__ */ jsx338(ChannelInput, { value: hsl.h, min: 0, max: 360, ariaLabel: "Hue", onCommit: (h) => update({ h }) }),
42122
42099
  /* @__PURE__ */ jsx338(ChannelInput, { value: hsl.s, min: 0, max: 100, ariaLabel: "Saturation", onCommit: (s) => update({ s }) }),
42123
42100
  /* @__PURE__ */ jsx338(ChannelInput, { value: hsl.l, min: 0, max: 100, ariaLabel: "Lightness", onCommit: (l) => update({ l }) })
@@ -42414,7 +42391,7 @@ init_cn();
42414
42391
  // src/components/ui/ticket-note-card.tsx
42415
42392
  import * as React131 from "react";
42416
42393
  init_cn();
42417
- import { Fragment as Fragment66, jsx as jsx342, jsxs as jsxs271 } from "react/jsx-runtime";
42394
+ import { Fragment as Fragment67, jsx as jsx342, jsxs as jsxs271 } from "react/jsx-runtime";
42418
42395
  function TicketNoteCard({ note, onEdit, onDelete, className }) {
42419
42396
  const [isEditing, setIsEditing] = React131.useState(false);
42420
42397
  const [editText, setEditText] = React131.useState(note.text);
@@ -42488,7 +42465,7 @@ function TicketNoteCard({ note, onEdit, onDelete, className }) {
42488
42465
  children: /* @__PURE__ */ jsx342(XmarkIcon, { className: "size-5" })
42489
42466
  }
42490
42467
  )
42491
- ] }) : /* @__PURE__ */ jsxs271(Fragment66, { children: [
42468
+ ] }) : /* @__PURE__ */ jsxs271(Fragment67, { children: [
42492
42469
  /* @__PURE__ */ jsx342("p", { className: "text-h4 text-ods-text-primary", children: note.text }),
42493
42470
  /* @__PURE__ */ jsxs271(
42494
42471
  "p",
@@ -42595,7 +42572,7 @@ function TicketNotesSection({
42595
42572
  }
42596
42573
 
42597
42574
  // src/components/ui/ticket-info-section.tsx
42598
- import { Fragment as Fragment67, jsx as jsx344, jsxs as jsxs273 } from "react/jsx-runtime";
42575
+ import { Fragment as Fragment68, jsx as jsx344, jsxs as jsxs273 } from "react/jsx-runtime";
42599
42576
  function InfoCell2({ value, label, icon, onClick }) {
42600
42577
  return /* @__PURE__ */ jsx344("div", { className: "flex-1 min-w-0 overflow-hidden", children: /* @__PURE__ */ jsxs273("div", { className: "flex flex-col justify-center", children: [
42601
42578
  /* @__PURE__ */ jsxs273("div", { className: "flex items-center gap-1 w-full min-w-0", children: [
@@ -42720,7 +42697,7 @@ function TicketInfoSection({
42720
42697
  )
42721
42698
  ] })
42722
42699
  ] }),
42723
- expanded && /* @__PURE__ */ jsxs273(Fragment67, { children: [
42700
+ expanded && /* @__PURE__ */ jsxs273(Fragment68, { children: [
42724
42701
  createdAt && /* @__PURE__ */ jsx344("div", { className: "grid grid-cols-2 gap-4 px-4 py-3 bg-ods-bg border-b border-ods-border items-center", children: /* @__PURE__ */ jsx344(InfoCell2, { value: createdAt, label: "Created" }) }),
42725
42702
  /* @__PURE__ */ jsxs273("div", { className: "flex flex-col gap-4 p-4 bg-ods-bg border-b border-ods-border", children: [
42726
42703
  description && /* @__PURE__ */ jsx344(SimpleMarkdownRenderer, { content: description }),
@@ -42778,7 +42755,7 @@ function FilterPillRow({
42778
42755
 
42779
42756
  // src/components/ui/image-gallery-modal.tsx
42780
42757
  import { ChevronLeft as ChevronLeft4, ChevronRight as ChevronRight10 } from "lucide-react";
42781
- import { Fragment as Fragment68, jsx as jsx346, jsxs as jsxs275 } from "react/jsx-runtime";
42758
+ import { Fragment as Fragment69, jsx as jsx346, jsxs as jsxs275 } from "react/jsx-runtime";
42782
42759
  function ImageGalleryModal({
42783
42760
  images,
42784
42761
  isOpen,
@@ -42834,7 +42811,7 @@ function ImageGalleryModal({
42834
42811
  onClose,
42835
42812
  className: "max-w-[95vw]",
42836
42813
  children: /* @__PURE__ */ jsxs275("div", { className: "relative flex items-center justify-center bg-black rounded-lg", children: [
42837
- images.length > 1 && /* @__PURE__ */ jsxs275(Fragment68, { children: [
42814
+ images.length > 1 && /* @__PURE__ */ jsxs275(Fragment69, { children: [
42838
42815
  selectedImageIndex > 0 && /* @__PURE__ */ jsx346("div", { className: "absolute left-4 top-1/2 -translate-y-1/2 z-[10000]", children: /* @__PURE__ */ jsx346(
42839
42816
  Button,
42840
42817
  {
@@ -42952,7 +42929,7 @@ function TaskTypeIcon({ customItemId, className = "h-5 w-5" }) {
42952
42929
  }
42953
42930
 
42954
42931
  // src/components/chat/entity-cards/roadmap-card.tsx
42955
- import { Fragment as Fragment69, jsx as jsx348, jsxs as jsxs276 } from "react/jsx-runtime";
42932
+ import { Fragment as Fragment70, jsx as jsx348, jsxs as jsxs276 } from "react/jsx-runtime";
42956
42933
  function RoadmapCardSkeleton({ size: size2 = "default" }) {
42957
42934
  if (size2 === "sm") {
42958
42935
  return /* @__PURE__ */ jsxs276("span", { className: COMPACT_CARD_SKELETON_OUTER, children: [
@@ -43014,7 +42991,7 @@ function RoadmapCard({
43014
42991
  const hasScreenshots = (item.screenshots?.length ?? 0) > 0;
43015
42992
  const typeLabel = getTaskTypeLabel(item.customItemId);
43016
42993
  const useTypeIcon = cardType === "internal_task" || !iconSrc && item.customItemId != null;
43017
- const body = /* @__PURE__ */ jsxs276(Fragment69, { children: [
42994
+ const body = /* @__PURE__ */ jsxs276(Fragment70, { children: [
43018
42995
  /* @__PURE__ */ jsx348(
43019
42996
  "span",
43020
42997
  {
@@ -43206,7 +43183,7 @@ function RoadmapCard({
43206
43183
  // src/components/chat/entity-cards/github-activity-card.tsx
43207
43184
  import React134 from "react";
43208
43185
  import { GitPullRequest, Eye as Eye4, ExternalLink as ExternalLink8 } from "lucide-react";
43209
- import { Fragment as Fragment70, jsx as jsx349, jsxs as jsxs277 } from "react/jsx-runtime";
43186
+ import { Fragment as Fragment71, jsx as jsx349, jsxs as jsxs277 } from "react/jsx-runtime";
43210
43187
  function parseRepoFromUrl(url) {
43211
43188
  if (!url) return null;
43212
43189
  try {
@@ -43338,7 +43315,7 @@ function GitHubActivityCard({ item, variant = "compact", className, anchorProps
43338
43315
  if (repo) metaParts.push(/* @__PURE__ */ jsx349("span", { className: "font-mono truncate", children: repo }, "repo"));
43339
43316
  if (dateText) metaParts.push(/* @__PURE__ */ jsx349("span", { className: "whitespace-nowrap", children: dateText }, "date"));
43340
43317
  const href = safeHref(item.url);
43341
- const body = /* @__PURE__ */ jsxs277(Fragment70, { children: [
43318
+ const body = /* @__PURE__ */ jsxs277(Fragment71, { children: [
43342
43319
  /* @__PURE__ */ jsx349("span", { className: COMPACT_CARD_ICON_SLOT, children: kindIcon(kind, "h-5 w-5") }),
43343
43320
  /* @__PURE__ */ jsxs277("span", { className: COMPACT_CARD_TEXT_COL, children: [
43344
43321
  /* @__PURE__ */ jsxs277("span", { className: `${COMPACT_CARD_TITLE_ROW} flex-nowrap gap-1.5`, children: [
@@ -43393,7 +43370,7 @@ function GitHubActivityCardSkeleton({ variant = "compact", className }) {
43393
43370
  // src/components/chat/entity-cards/slack-message-card.tsx
43394
43371
  import React135 from "react";
43395
43372
  import { ExternalLink as ExternalLink9, Hash } from "lucide-react";
43396
- import { Fragment as Fragment71, jsx as jsx350, jsxs as jsxs278 } from "react/jsx-runtime";
43373
+ import { Fragment as Fragment72, jsx as jsx350, jsxs as jsxs278 } from "react/jsx-runtime";
43397
43374
  function parseChannelFromUrl(url) {
43398
43375
  if (!url) return null;
43399
43376
  try {
@@ -43432,7 +43409,7 @@ function SlackMessageCard({ item, variant = "compact", className, anchorProps })
43432
43409
  }
43433
43410
  if (dateText) metaParts.push(/* @__PURE__ */ jsx350("span", { className: "whitespace-nowrap", children: dateText }, "date"));
43434
43411
  const href = safeHref(item.url);
43435
- const body = /* @__PURE__ */ jsxs278(Fragment71, { children: [
43412
+ const body = /* @__PURE__ */ jsxs278(Fragment72, { children: [
43436
43413
  /* @__PURE__ */ jsx350("span", { className: COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ jsx350(SlackIcon, { className: "h-5 w-5" }) }),
43437
43414
  /* @__PURE__ */ jsxs278("span", { className: COMPACT_CARD_TEXT_COL, children: [
43438
43415
  /* @__PURE__ */ jsx350("span", { className: COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ jsx350("span", { className: COMPACT_CARD_TITLE, children: item.title }) }),
@@ -43482,7 +43459,7 @@ function SlackMessageCardSkeleton({ variant = "compact", className }) {
43482
43459
  // src/components/chat/entity-cards/hubspot-ticket-card.tsx
43483
43460
  import React136 from "react";
43484
43461
  import { ExternalLink as ExternalLink10 } from "lucide-react";
43485
- import { Fragment as Fragment72, jsx as jsx351, jsxs as jsxs279 } from "react/jsx-runtime";
43462
+ import { Fragment as Fragment73, jsx as jsx351, jsxs as jsxs279 } from "react/jsx-runtime";
43486
43463
  function formatToken(token) {
43487
43464
  if (!token) return null;
43488
43465
  const lower = token.toLowerCase().replace(/_/g, " ");
@@ -43521,7 +43498,7 @@ function HubspotTicketCard({ item, variant = "compact", className, anchorProps }
43521
43498
  }
43522
43499
  if (dateText) metaParts.push(/* @__PURE__ */ jsx351("span", { className: "whitespace-nowrap", children: dateText }, "date"));
43523
43500
  const href = safeHref(item.url);
43524
- const body = /* @__PURE__ */ jsxs279(Fragment72, { children: [
43501
+ const body = /* @__PURE__ */ jsxs279(Fragment73, { children: [
43525
43502
  /* @__PURE__ */ jsxs279("span", { className: COMPACT_CARD_TEXT_COL, children: [
43526
43503
  /* @__PURE__ */ jsxs279("span", { className: "flex flex-wrap items-center gap-1.5 min-w-0", children: [
43527
43504
  /* @__PURE__ */ jsx351("span", { className: `${COMPACT_CARD_TITLE} shrink min-w-0`, children: item.title }),
@@ -43601,9 +43578,9 @@ function HubspotTicketCardSkeleton({ variant = "compact", className }) {
43601
43578
 
43602
43579
  // src/components/chat/entity-cards/data-room-doc-card.tsx
43603
43580
  import { ExternalLink as ExternalLink11 } from "lucide-react";
43604
- import { Fragment as Fragment73, jsx as jsx352, jsxs as jsxs280 } from "react/jsx-runtime";
43581
+ import { Fragment as Fragment74, jsx as jsx352, jsxs as jsxs280 } from "react/jsx-runtime";
43605
43582
  function DataRoomDocCard({ item, className, badgeText, anchorProps }) {
43606
- const body = /* @__PURE__ */ jsxs280(Fragment73, { children: [
43583
+ const body = /* @__PURE__ */ jsxs280(Fragment74, { children: [
43607
43584
  /* @__PURE__ */ jsxs280("span", { className: COMPACT_CARD_TEXT_COL, children: [
43608
43585
  /* @__PURE__ */ jsxs280("span", { className: "flex flex-wrap items-center gap-1.5 min-w-0", children: [
43609
43586
  /* @__PURE__ */ jsx352("span", { className: `${COMPACT_CARD_TITLE} shrink min-w-0`, children: item.title }),
@@ -45213,7 +45190,7 @@ function cleanEscapedString(input) {
45213
45190
  init_button();
45214
45191
  import { ExternalLink as ExternalLink12, Clock as Clock2, Play as Play4, Video as Video8 } from "lucide-react";
45215
45192
  init_cn();
45216
- import { Fragment as Fragment74, jsx as jsx353, jsxs as jsxs281 } from "react/jsx-runtime";
45193
+ import { Fragment as Fragment75, jsx as jsx353, jsxs as jsxs281 } from "react/jsx-runtime";
45217
45194
  function formatUtc(date, fmt) {
45218
45195
  return format2(new Date(date.getTime() + date.getTimezoneOffset() * 6e4), fmt);
45219
45196
  }
@@ -45288,7 +45265,7 @@ function MediaGallery({ images, title }) {
45288
45265
  setIsModalOpen(false);
45289
45266
  setSelectedImageIndex(null);
45290
45267
  };
45291
- return /* @__PURE__ */ jsxs281(Fragment74, { children: [
45268
+ return /* @__PURE__ */ jsxs281(Fragment75, { children: [
45292
45269
  /* @__PURE__ */ jsx353("div", { className: "p-6 pt-4", children: /* @__PURE__ */ jsx353("div", { className: "overflow-x-auto mb-4", children: /* @__PURE__ */ jsx353("div", { className: "flex gap-3 pb-2", style: { width: "max-content" }, children: images.map((mediaItem, index) => /* @__PURE__ */ jsxs281(
45293
45270
  "div",
45294
45271
  {
@@ -45430,7 +45407,7 @@ function ProgramCard({
45430
45407
  const dateFormat = formatUtc(itemDate, "EEEE d MMMM");
45431
45408
  const defaultRenderMeta = () => {
45432
45409
  if (config.type === "podcast" && "duration_seconds" in item && !isScheduled) {
45433
- return /* @__PURE__ */ jsxs281(Fragment74, { children: [
45410
+ return /* @__PURE__ */ jsxs281(Fragment75, { children: [
45434
45411
  /* @__PURE__ */ jsx353(Clock2, { className: "w-4 h-4 text-ods-text-secondary" }),
45435
45412
  /* @__PURE__ */ jsx353("span", { className: "font-['DM_Sans'] text-ods-text-secondary", children: formatDurationCompact(item.duration_seconds) })
45436
45413
  ] });
@@ -45441,7 +45418,7 @@ function ProgramCard({
45441
45418
  if (config.type === "webinar" && "start_at" in item) {
45442
45419
  const webinarItem = item;
45443
45420
  const duration = formatDurationFromRange(webinarItem.start_at, webinarItem.end_at);
45444
- return /* @__PURE__ */ jsxs281(Fragment74, { children: [
45421
+ return /* @__PURE__ */ jsxs281(Fragment75, { children: [
45445
45422
  /* @__PURE__ */ jsx353(Video8, { className: "w-4 h-4 text-ods-text-secondary" }),
45446
45423
  /* @__PURE__ */ jsxs281("span", { className: "font-['DM_Sans'] text-ods-text-secondary", children: [
45447
45424
  formatTimeWithTimezone(webinarItem.start_at, webinarItem.timezone ?? null),
@@ -45475,10 +45452,10 @@ function ProgramCard({
45475
45452
  /* @__PURE__ */ jsx353("h3", { className: "font-['Azeret_Mono'] font-semibold text-xl md:text-2xl text-ods-text-primary leading-tight mb-3 min-h-[3rem] md:min-h-[3.5rem] line-clamp-2 flex items-center", children: item.title }),
45476
45453
  /* @__PURE__ */ jsxs281("div", { className: "flex flex-col md:flex-row md:items-center gap-2 md:gap-4 mb-4", children: [
45477
45454
  /* @__PURE__ */ jsx353("span", { className: "font-['DM_Sans'] font-medium", style: { color: accentColor }, children: dateFormat }),
45478
- renderMeta ? /* @__PURE__ */ jsxs281(Fragment74, { children: [
45455
+ renderMeta ? /* @__PURE__ */ jsxs281(Fragment75, { children: [
45479
45456
  /* @__PURE__ */ jsx353("span", { className: "hidden md:inline text-ods-text-secondary", children: "\u2022" }),
45480
45457
  renderMeta(item)
45481
- ] }) : defaultRenderMeta() && /* @__PURE__ */ jsxs281(Fragment74, { children: [
45458
+ ] }) : defaultRenderMeta() && /* @__PURE__ */ jsxs281(Fragment75, { children: [
45482
45459
  /* @__PURE__ */ jsx353("span", { className: "hidden md:inline text-ods-text-secondary", children: "\u2022" }),
45483
45460
  /* @__PURE__ */ jsx353("div", { className: "flex items-center gap-2", children: defaultRenderMeta() })
45484
45461
  ] })
@@ -45555,10 +45532,10 @@ function ProgramCard({
45555
45532
 
45556
45533
  // src/components/chat/entity-cards/campaign-card-admin.tsx
45557
45534
  import { Megaphone as Megaphone3 } from "lucide-react";
45558
- import { Fragment as Fragment75, jsx as jsx354, jsxs as jsxs282 } from "react/jsx-runtime";
45535
+ import { Fragment as Fragment76, jsx as jsx354, jsxs as jsxs282 } from "react/jsx-runtime";
45559
45536
  function CampaignCardAdmin({ campaign, className, anchorProps }) {
45560
45537
  const goalsCount = campaign.goals?.length || 0;
45561
- const innerChildren = /* @__PURE__ */ jsxs282(Fragment75, { children: [
45538
+ const innerChildren = /* @__PURE__ */ jsxs282(Fragment76, { children: [
45562
45539
  /* @__PURE__ */ jsx354("span", { className: COMPACT_CARD_ICON_SLOT, children: /* @__PURE__ */ jsx354(Megaphone3, { className: "h-5 w-5" }) }),
45563
45540
  /* @__PURE__ */ jsxs282("span", { className: COMPACT_CARD_TEXT_COL, children: [
45564
45541
  /* @__PURE__ */ jsx354("span", { className: COMPACT_CARD_TITLE_ROW, children: /* @__PURE__ */ jsx354("span", { className: COMPACT_CARD_TITLE, children: campaign.name }) }),
@@ -45588,11 +45565,11 @@ function CampaignCardAdminSkeleton({ className }) {
45588
45565
 
45589
45566
  // src/components/chat/entity-cards/generic-entity-card.tsx
45590
45567
  import { ExternalLink as ExternalLink13 } from "lucide-react";
45591
- import { Fragment as Fragment76, jsx as jsx355, jsxs as jsxs283 } from "react/jsx-runtime";
45568
+ import { Fragment as Fragment77, jsx as jsx355, jsxs as jsxs283 } from "react/jsx-runtime";
45592
45569
  function GenericEntityCard({ item, className, anchorProps }) {
45593
45570
  const href = safeHref(item.url);
45594
45571
  const dateText = formatDateUTC(item.dateUpdated, { fallback: "", timezone: "local" });
45595
- const body = /* @__PURE__ */ jsxs283(Fragment76, { children: [
45572
+ const body = /* @__PURE__ */ jsxs283(Fragment77, { children: [
45596
45573
  /* @__PURE__ */ jsxs283("span", { className: COMPACT_CARD_TEXT_COL, children: [
45597
45574
  /* @__PURE__ */ jsxs283("span", { className: "flex flex-wrap items-center gap-1.5 min-w-0", children: [
45598
45575
  /* @__PURE__ */ jsx355("span", { className: `${COMPACT_CARD_TITLE} shrink min-w-0`, children: item.title }),
@@ -45777,7 +45754,7 @@ function resolveSourceIcon(input, ctx = {}) {
45777
45754
 
45778
45755
  // src/components/chat/mingo-info-card.tsx
45779
45756
  init_cn();
45780
- import { Fragment as Fragment77, jsx as jsx356, jsxs as jsxs284 } from "react/jsx-runtime";
45757
+ import { Fragment as Fragment78, jsx as jsx356, jsxs as jsxs284 } from "react/jsx-runtime";
45781
45758
  function CardMedia({
45782
45759
  imageSrc,
45783
45760
  imageAlt,
@@ -45821,7 +45798,7 @@ function MingoInfoCard({
45821
45798
  const hasMenu = !!menuGroups && menuGroups.length > 0;
45822
45799
  const isAnchor = !!anchorProps;
45823
45800
  const isInteractive = isAnchor || !!onClick;
45824
- const content = /* @__PURE__ */ jsxs284(Fragment77, { children: [
45801
+ const content = /* @__PURE__ */ jsxs284(Fragment78, { children: [
45825
45802
  hasMedia && /* @__PURE__ */ jsx356(CardMedia, { imageSrc, imageAlt, icon }),
45826
45803
  /* @__PURE__ */ jsxs284("span", { className: "flex min-w-0 flex-1 flex-col justify-center", children: [
45827
45804
  /* @__PURE__ */ jsx356("span", { className: "truncate text-h4 font-medium text-ods-text-primary", children: title }),
@@ -45870,7 +45847,7 @@ function MingoInfoCard({
45870
45847
  }
45871
45848
 
45872
45849
  // src/components/chat/entity-cards/dispatch.tsx
45873
- import { Fragment as Fragment78, jsx as jsx357, jsxs as jsxs285 } from "react/jsx-runtime";
45850
+ import { Fragment as Fragment79, jsx as jsx357, jsxs as jsxs285 } from "react/jsx-runtime";
45874
45851
  function githubKindIcon(kind) {
45875
45852
  switch (kind) {
45876
45853
  case "pull_request":
@@ -46838,10 +46815,10 @@ function ChatCardLoader({
46838
46815
  }
46839
46816
  );
46840
46817
  }
46841
- if (isLoading) return /* @__PURE__ */ jsx357(Fragment78, { children: entry.skeleton() });
46818
+ if (isLoading) return /* @__PURE__ */ jsx357(Fragment79, { children: entry.skeleton() });
46842
46819
  if (!item) return null;
46843
46820
  if (entry.bareInline) {
46844
- return /* @__PURE__ */ jsx357(Fragment78, { children: navWrap(entry.render(item, finalChatRef, renderOpts)) });
46821
+ return /* @__PURE__ */ jsx357(Fragment79, { children: navWrap(entry.render(item, finalChatRef, renderOpts)) });
46845
46822
  }
46846
46823
  return /* @__PURE__ */ jsx357(
46847
46824
  ChatCardWithDiscuss,
@@ -51675,7 +51652,7 @@ function useChatDialogManager({
51675
51652
 
51676
51653
  // src/components/chat/embeddable-chat.tsx
51677
51654
  init_next_navigation();
51678
- import { Fragment as Fragment79, jsx as jsx361, jsxs as jsxs286 } from "react/jsx-runtime";
51655
+ import { Fragment as Fragment80, jsx as jsx361, jsxs as jsxs286 } from "react/jsx-runtime";
51679
51656
  var formatRelativePath = (p) => p.replace(/^\/+/, "").replace(/\/+$/, "");
51680
51657
  var mentionTokenOf = (key, markerByType) => {
51681
51658
  const ci = key.indexOf(":");
@@ -51795,7 +51772,7 @@ function SourceChip({
51795
51772
  );
51796
51773
  }
51797
51774
  const displayName = src.name || formatRelativePath(src.path);
51798
- const chipBody = (label) => /* @__PURE__ */ jsxs286(Fragment79, { children: [
51775
+ const chipBody = (label) => /* @__PURE__ */ jsxs286(Fragment80, { children: [
51799
51776
  icon,
51800
51777
  /* @__PURE__ */ jsxs286("span", { className: "truncate max-w-[160px]", children: [
51801
51778
  "[",
@@ -52759,7 +52736,7 @@ function EmbeddableChatInner({
52759
52736
  ]
52760
52737
  }
52761
52738
  ) }) });
52762
- return /* @__PURE__ */ jsxs286(Fragment79, { children: [
52739
+ return /* @__PURE__ */ jsxs286(Fragment80, { children: [
52763
52740
  showInternalTrigger && !shellLess && /* @__PURE__ */ jsx361(
52764
52741
  "div",
52765
52742
  {
@@ -53761,4 +53738,4 @@ export {
53761
53738
  LogsList,
53762
53739
  assets
53763
53740
  };
53764
- //# sourceMappingURL=chunk-6PTETC3Z.js.map
53741
+ //# sourceMappingURL=chunk-ZH2OEMQJ.js.map