@flamingo-stack/openframe-frontend-core 0.0.380 → 0.0.381-snapshot.20260708122906

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 (112) hide show
  1. package/dist/{chunk-U5WZLNNP.js → chunk-23PZFAET.js} +4 -4
  2. package/dist/{chunk-AIWSELEM.cjs → chunk-32YONDMH.cjs} +30 -30
  3. package/dist/{chunk-AIWSELEM.cjs.map → chunk-32YONDMH.cjs.map} +1 -1
  4. package/dist/{chunk-QQJJJSYG.js → chunk-3GGIVFSI.js} +3 -3
  5. package/dist/{chunk-WE6PHQMR.js → chunk-4A4DA7OX.js} +2 -2
  6. package/dist/{chunk-ZM6IITQ6.cjs → chunk-7IQK3Y3G.cjs} +25 -25
  7. package/dist/{chunk-ZM6IITQ6.cjs.map → chunk-7IQK3Y3G.cjs.map} +1 -1
  8. package/dist/{chunk-NZ7UWZDX.cjs → chunk-AS6FET7G.cjs} +19 -19
  9. package/dist/{chunk-NZ7UWZDX.cjs.map → chunk-AS6FET7G.cjs.map} +1 -1
  10. package/dist/{chunk-T3RWEEML.js → chunk-DQJCWNRT.js} +3 -3
  11. package/dist/{chunk-RHBCKJVP.cjs → chunk-EE26RXMG.cjs} +12 -12
  12. package/dist/{chunk-RHBCKJVP.cjs.map → chunk-EE26RXMG.cjs.map} +1 -1
  13. package/dist/{chunk-PRA7467B.js → chunk-GZ5N76H2.js} +4 -4
  14. package/dist/{chunk-N4PA44BJ.js → chunk-GZIHB6TH.js} +90 -99
  15. package/dist/{chunk-N4PA44BJ.js.map → chunk-GZIHB6TH.js.map} +1 -1
  16. package/dist/{chunk-NC53B5ZJ.js → chunk-HDWY2SXF.js} +4 -4
  17. package/dist/{chunk-2D7HO6RK.cjs → chunk-IENK6OY5.cjs} +5 -5
  18. package/dist/{chunk-2D7HO6RK.cjs.map → chunk-IENK6OY5.cjs.map} +1 -1
  19. package/dist/{chunk-752ULO73.cjs → chunk-JQT7PD6Z.cjs} +57 -57
  20. package/dist/{chunk-752ULO73.cjs.map → chunk-JQT7PD6Z.cjs.map} +1 -1
  21. package/dist/{chunk-EQO6DKVS.js → chunk-K5P6XKIT.js} +2 -2
  22. package/dist/{chunk-EASN3OWV.cjs → chunk-L3DRZ2WE.cjs} +82 -82
  23. package/dist/{chunk-EASN3OWV.cjs.map → chunk-L3DRZ2WE.cjs.map} +1 -1
  24. package/dist/{chunk-QM4UDTZ3.js → chunk-LIK575RM.js} +2 -2
  25. package/dist/{chunk-FVKRKWAT.js → chunk-LRA7FGQC.js} +5 -5
  26. package/dist/{chunk-3Y4XNSHE.js → chunk-MGDDM2UI.js} +3 -3
  27. package/dist/{chunk-QJGRP2YE.cjs → chunk-NYIZVI4I.cjs} +7 -4
  28. package/dist/chunk-NYIZVI4I.cjs.map +1 -0
  29. package/dist/{chunk-CTEN4ADV.js → chunk-PI3XFKEW.js} +2 -2
  30. package/dist/{chunk-2MYFKIPD.cjs → chunk-QI3PW4F7.cjs} +12 -12
  31. package/dist/{chunk-2MYFKIPD.cjs.map → chunk-QI3PW4F7.cjs.map} +1 -1
  32. package/dist/{chunk-5YJJLD66.cjs → chunk-QQAHEWSR.cjs} +31 -31
  33. package/dist/{chunk-5YJJLD66.cjs.map → chunk-QQAHEWSR.cjs.map} +1 -1
  34. package/dist/{chunk-2RQKK2BY.cjs → chunk-SZSBHBXE.cjs} +838 -847
  35. package/dist/chunk-SZSBHBXE.cjs.map +1 -0
  36. package/dist/{chunk-AI5X5JTD.js → chunk-X2FPWS3P.js} +7 -4
  37. package/dist/chunk-X2FPWS3P.js.map +1 -0
  38. package/dist/{chunk-4U3AHQTQ.cjs → chunk-XHCRZDM6.cjs} +37 -37
  39. package/dist/{chunk-4U3AHQTQ.cjs.map → chunk-XHCRZDM6.cjs.map} +1 -1
  40. package/dist/{chunk-NP2BBKUM.cjs → chunk-Z56MCQ6X.cjs} +9 -9
  41. package/dist/{chunk-NP2BBKUM.cjs.map → chunk-Z56MCQ6X.cjs.map} +1 -1
  42. package/dist/components/badge.d.ts +1 -1
  43. package/dist/components/case-studies/index.cjs +9 -9
  44. package/dist/components/case-studies/index.js +3 -3
  45. package/dist/components/chat/index.cjs +3 -3
  46. package/dist/components/chat/index.js +2 -2
  47. package/dist/components/contact/index.cjs +4 -4
  48. package/dist/components/contact/index.js +3 -3
  49. package/dist/components/docs/index.cjs +6 -6
  50. package/dist/components/docs/index.js +5 -5
  51. package/dist/components/embeds/index.cjs +4 -4
  52. package/dist/components/embeds/index.js +3 -3
  53. package/dist/components/faq/index.cjs +4 -4
  54. package/dist/components/faq/index.js +3 -3
  55. package/dist/components/features/auth/accept-invitation-form.d.ts +3 -9
  56. package/dist/components/features/auth/accept-invitation-form.d.ts.map +1 -1
  57. package/dist/components/features/auth/create-organization-form.d.ts +6 -1
  58. package/dist/components/features/auth/create-organization-form.d.ts.map +1 -1
  59. package/dist/components/features/auth/invite-link-invalid-modal.d.ts +3 -2
  60. package/dist/components/features/auth/invite-link-invalid-modal.d.ts.map +1 -1
  61. package/dist/components/features/auth/password-reset-form.d.ts +3 -1
  62. package/dist/components/features/auth/password-reset-form.d.ts.map +1 -1
  63. package/dist/components/features/index.cjs +3 -3
  64. package/dist/components/features/index.js +2 -2
  65. package/dist/components/help-center-pages/index.cjs +21 -21
  66. package/dist/components/help-center-pages/index.js +12 -12
  67. package/dist/components/index.cjs +144 -144
  68. package/dist/components/index.js +10 -10
  69. package/dist/components/navigation/index.cjs +3 -3
  70. package/dist/components/navigation/index.js +2 -2
  71. package/dist/components/onboarding-guides/index.cjs +6 -6
  72. package/dist/components/onboarding-guides/index.js +5 -5
  73. package/dist/components/related-content/index.cjs +4 -4
  74. package/dist/components/related-content/index.js +3 -3
  75. package/dist/components/tickets/index.cjs +6 -6
  76. package/dist/components/tickets/index.js +5 -5
  77. package/dist/components/ui/badge.d.ts +1 -1
  78. package/dist/components/ui/field-wrapper.d.ts +3 -3
  79. package/dist/components/ui/field-wrapper.d.ts.map +1 -1
  80. package/dist/components/ui/file-manager/index.cjs +50 -50
  81. package/dist/components/ui/file-manager/index.js +1 -1
  82. package/dist/components/ui/index.cjs +3 -3
  83. package/dist/components/ui/index.js +2 -2
  84. package/dist/components/ui/input.d.ts +4 -3
  85. package/dist/components/ui/input.d.ts.map +1 -1
  86. package/dist/components/ui/status-badge.d.ts +1 -1
  87. package/dist/components/ui/tag.d.ts +1 -1
  88. package/dist/index.cjs +3 -3
  89. package/dist/index.js +2 -2
  90. package/package.json +1 -1
  91. package/src/components/features/auth/accept-invitation-form.tsx +4 -26
  92. package/src/components/features/auth/create-organization-form.tsx +5 -1
  93. package/src/components/features/auth/invite-link-invalid-modal.tsx +6 -4
  94. package/src/components/features/auth/password-reset-form.tsx +7 -0
  95. package/src/components/ui/field-wrapper.tsx +5 -3
  96. package/src/components/ui/input.tsx +8 -5
  97. package/src/stories/auth/AcceptInvitation.stories.tsx +4 -16
  98. package/src/stories/auth/PasswordReset.stories.tsx +1 -0
  99. package/dist/chunk-2RQKK2BY.cjs.map +0 -1
  100. package/dist/chunk-AI5X5JTD.js.map +0 -1
  101. package/dist/chunk-QJGRP2YE.cjs.map +0 -1
  102. /package/dist/{chunk-U5WZLNNP.js.map → chunk-23PZFAET.js.map} +0 -0
  103. /package/dist/{chunk-QQJJJSYG.js.map → chunk-3GGIVFSI.js.map} +0 -0
  104. /package/dist/{chunk-WE6PHQMR.js.map → chunk-4A4DA7OX.js.map} +0 -0
  105. /package/dist/{chunk-T3RWEEML.js.map → chunk-DQJCWNRT.js.map} +0 -0
  106. /package/dist/{chunk-PRA7467B.js.map → chunk-GZ5N76H2.js.map} +0 -0
  107. /package/dist/{chunk-NC53B5ZJ.js.map → chunk-HDWY2SXF.js.map} +0 -0
  108. /package/dist/{chunk-EQO6DKVS.js.map → chunk-K5P6XKIT.js.map} +0 -0
  109. /package/dist/{chunk-QM4UDTZ3.js.map → chunk-LIK575RM.js.map} +0 -0
  110. /package/dist/{chunk-FVKRKWAT.js.map → chunk-LRA7FGQC.js.map} +0 -0
  111. /package/dist/{chunk-3Y4XNSHE.js.map → chunk-MGDDM2UI.js.map} +0 -0
  112. /package/dist/{chunk-CTEN4ADV.js.map → chunk-PI3XFKEW.js.map} +0 -0
@@ -179,7 +179,7 @@ import {
179
179
  init_button2,
180
180
  init_split_button,
181
181
  usePortalContainer
182
- } from "./chunk-AI5X5JTD.js";
182
+ } from "./chunk-X2FPWS3P.js";
183
183
  import {
184
184
  CheckboxCheckmarkIcon,
185
185
  SearchIcon
@@ -24401,50 +24401,14 @@ function SsoProviderButtons({
24401
24401
  }) });
24402
24402
  }
24403
24403
 
24404
- // src/components/features/auth/terms-agreement-label.tsx
24405
- import { jsx as jsx183, jsxs as jsxs142 } from "react/jsx-runtime";
24406
- function TermsAgreementLabel({ termsUrl = "#", privacyPolicyUrl = "#" }) {
24407
- return /* @__PURE__ */ jsxs142("span", { className: "text-h4 text-ods-text-primary", children: [
24408
- "Agree to ",
24409
- /* @__PURE__ */ jsx183(
24410
- "a",
24411
- {
24412
- href: termsUrl,
24413
- target: "_blank",
24414
- rel: "noopener noreferrer",
24415
- className: "text-ods-text-secondary underline",
24416
- onClick: (event) => event.stopPropagation(),
24417
- children: "Terms"
24418
- }
24419
- ),
24420
- " & ",
24421
- /* @__PURE__ */ jsx183(
24422
- "a",
24423
- {
24424
- href: privacyPolicyUrl,
24425
- target: "_blank",
24426
- rel: "noopener noreferrer",
24427
- className: "text-ods-text-secondary underline",
24428
- onClick: (event) => event.stopPropagation(),
24429
- children: "Privacy Policy"
24430
- }
24431
- ),
24432
- " by signing up."
24433
- ] });
24434
- }
24435
-
24436
24404
  // src/components/features/auth/accept-invitation-form.tsx
24437
- import { jsx as jsx184, jsxs as jsxs143 } from "react/jsx-runtime";
24405
+ import { jsx as jsx183, jsxs as jsxs142 } from "react/jsx-runtime";
24438
24406
  function AcceptInvitationForm({
24439
24407
  email,
24440
- agreedToTerms,
24441
- onAgreedToTermsChange,
24442
24408
  ssoProviders,
24443
24409
  onSsoClick,
24444
24410
  onBackToLogin,
24445
24411
  ssoActionLabel = "Sign Up with",
24446
- termsUrl = "#",
24447
- privacyPolicyUrl = "#",
24448
24412
  emailLabel = "Email",
24449
24413
  title = "Accept Invitation",
24450
24414
  subtitle = "Complete your registration to join the organization",
@@ -24452,7 +24416,7 @@ function AcceptInvitationForm({
24452
24416
  disabled = false,
24453
24417
  className
24454
24418
  }) {
24455
- return /* @__PURE__ */ jsxs143(
24419
+ return /* @__PURE__ */ jsxs142(
24456
24420
  "div",
24457
24421
  {
24458
24422
  className: cn(
@@ -24460,32 +24424,21 @@ function AcceptInvitationForm({
24460
24424
  className
24461
24425
  ),
24462
24426
  children: [
24463
- /* @__PURE__ */ jsxs143("div", { className: "flex flex-col", children: [
24464
- /* @__PURE__ */ jsx184("h1", { className: "text-h2 text-ods-text-primary tracking-[-0.64px]", children: title }),
24465
- /* @__PURE__ */ jsx184("p", { className: "text-h4 text-ods-text-secondary", children: subtitle })
24427
+ /* @__PURE__ */ jsxs142("div", { className: "flex flex-col", children: [
24428
+ /* @__PURE__ */ jsx183("h1", { className: "text-h2 text-ods-text-primary tracking-[-0.64px]", children: title }),
24429
+ /* @__PURE__ */ jsx183("p", { className: "text-h4 text-ods-text-secondary", children: subtitle })
24466
24430
  ] }),
24467
- /* @__PURE__ */ jsx184(Input, { type: "email", label: emailLabel, value: email, disabled: true, readOnly: true }),
24468
- /* @__PURE__ */ jsx184(
24469
- CheckboxBlock,
24470
- {
24471
- id: "accept-invite-terms",
24472
- label: /* @__PURE__ */ jsx184(TermsAgreementLabel, { termsUrl, privacyPolicyUrl }),
24473
- truncateLabel: true,
24474
- checked: agreedToTerms,
24475
- disabled: disabled || loading,
24476
- onCheckedChange: onAgreedToTermsChange
24477
- }
24478
- ),
24479
- /* @__PURE__ */ jsx184(
24431
+ /* @__PURE__ */ jsx183(Input, { type: "email", label: emailLabel, value: email, disabled: true, readOnly: true }),
24432
+ /* @__PURE__ */ jsx183(
24480
24433
  SsoProviderButtons,
24481
24434
  {
24482
24435
  providers: ssoProviders,
24483
24436
  onSsoClick,
24484
24437
  actionLabel: ssoActionLabel,
24485
- disabled: disabled || loading || !agreedToTerms
24438
+ disabled: disabled || loading
24486
24439
  }
24487
24440
  ),
24488
- /* @__PURE__ */ jsx184(BackToLoginLink, { onClick: onBackToLogin, className: "self-start lg:hidden" })
24441
+ /* @__PURE__ */ jsx183(BackToLoginLink, { onClick: onBackToLogin, className: "self-start lg:hidden" })
24489
24442
  ]
24490
24443
  }
24491
24444
  );
@@ -24494,14 +24447,14 @@ function AcceptInvitationForm({
24494
24447
  // src/components/features/auth/auth-benefits-panel.tsx
24495
24448
  init_cn();
24496
24449
  init_button2();
24497
- import { jsx as jsx185, jsxs as jsxs144 } from "react/jsx-runtime";
24450
+ import { jsx as jsx184, jsxs as jsxs143 } from "react/jsx-runtime";
24498
24451
  var DEFAULT_TITLE2 = "The All-in-One Open Platform for MSPs";
24499
24452
  var DEFAULT_DESCRIPTION = "All your core ops in one place - built for MSPs who are done duct-taping tools together. Open-source, AI-ready, no vendor tax. Just solid software that lets you run lean and fast.";
24500
24453
  var DEFAULT_BENEFITS = [
24501
- { icon: /* @__PURE__ */ jsx185(CreditCardXmarkIcon, {}), label: "No card required" },
24502
- { icon: /* @__PURE__ */ jsx185(XmarkAltIcon, {}), label: "Cancel Anytime" },
24503
- { icon: /* @__PURE__ */ jsx185(FlaskVialIcon, {}), label: "14 day free trial" },
24504
- { icon: /* @__PURE__ */ jsx185(FileOffIcon, {}), label: "No Contract" }
24454
+ { icon: /* @__PURE__ */ jsx184(CreditCardXmarkIcon, {}), label: "No card required" },
24455
+ { icon: /* @__PURE__ */ jsx184(XmarkAltIcon, {}), label: "Cancel Anytime" },
24456
+ { icon: /* @__PURE__ */ jsx184(FlaskVialIcon, {}), label: "14 day free trial" },
24457
+ { icon: /* @__PURE__ */ jsx184(FileOffIcon, {}), label: "No Contract" }
24505
24458
  ];
24506
24459
  function AuthBenefitsPanel({
24507
24460
  title = DEFAULT_TITLE2,
@@ -24511,7 +24464,7 @@ function AuthBenefitsPanel({
24511
24464
  learnMoreUrl = "https://openframe.ai",
24512
24465
  className
24513
24466
  }) {
24514
- return /* @__PURE__ */ jsxs144(
24467
+ return /* @__PURE__ */ jsxs143(
24515
24468
  "div",
24516
24469
  {
24517
24470
  className: cn(
@@ -24519,19 +24472,19 @@ function AuthBenefitsPanel({
24519
24472
  className
24520
24473
  ),
24521
24474
  children: [
24522
- /* @__PURE__ */ jsx185("h2", { className: "text-h2 text-ods-text-primary tracking-[-0.64px]", children: title }),
24523
- /* @__PURE__ */ jsx185("p", { className: "text-h4 text-ods-text-primary", children: description }),
24524
- /* @__PURE__ */ jsx185("div", { className: "flex flex-wrap content-center items-center gap-[var(--spacing-system-m)]", children: benefits.map((benefit) => /* @__PURE__ */ jsxs144("div", { className: "flex items-center gap-[var(--spacing-system-xs)]", children: [
24525
- /* @__PURE__ */ jsx185("span", { className: "flex size-4 shrink-0 items-center justify-center text-ods-text-secondary [&_svg]:size-4", children: benefit.icon }),
24526
- /* @__PURE__ */ jsx185("span", { className: "whitespace-nowrap text-h4 text-ods-text-primary", children: benefit.label })
24475
+ /* @__PURE__ */ jsx184("h2", { className: "text-h2 text-ods-text-primary tracking-[-0.64px]", children: title }),
24476
+ /* @__PURE__ */ jsx184("p", { className: "text-h4 text-ods-text-primary", children: description }),
24477
+ /* @__PURE__ */ jsx184("div", { className: "flex flex-wrap content-center items-center gap-[var(--spacing-system-m)]", children: benefits.map((benefit) => /* @__PURE__ */ jsxs143("div", { className: "flex items-center gap-[var(--spacing-system-xs)]", children: [
24478
+ /* @__PURE__ */ jsx184("span", { className: "flex size-4 shrink-0 items-center justify-center text-ods-text-secondary [&_svg]:size-4", children: benefit.icon }),
24479
+ /* @__PURE__ */ jsx184("span", { className: "whitespace-nowrap text-h4 text-ods-text-primary", children: benefit.label })
24527
24480
  ] }, benefit.label)) }),
24528
- /* @__PURE__ */ jsx185(
24481
+ /* @__PURE__ */ jsx184(
24529
24482
  Button,
24530
24483
  {
24531
24484
  variant: "outline",
24532
24485
  href: learnMoreUrl,
24533
24486
  openInNewTab: true,
24534
- leftIcon: /* @__PURE__ */ jsx185(
24487
+ leftIcon: /* @__PURE__ */ jsx184(
24535
24488
  OpenFrameLogo,
24536
24489
  {
24537
24490
  className: "h-6 w-6",
@@ -24549,10 +24502,10 @@ function AuthBenefitsPanel({
24549
24502
  }
24550
24503
 
24551
24504
  // src/components/features/auth/auth-branding.tsx
24552
- import { jsx as jsx186, jsxs as jsxs145 } from "react/jsx-runtime";
24505
+ import { jsx as jsx185, jsxs as jsxs144 } from "react/jsx-runtime";
24553
24506
  function OpenFrameWordmark() {
24554
- return /* @__PURE__ */ jsxs145("div", { className: "flex items-center gap-[var(--spacing-system-xs)]", children: [
24555
- /* @__PURE__ */ jsx186(
24507
+ return /* @__PURE__ */ jsxs144("div", { className: "flex items-center gap-[var(--spacing-system-xs)]", children: [
24508
+ /* @__PURE__ */ jsx185(
24556
24509
  OpenFrameLogo,
24557
24510
  {
24558
24511
  className: "h-10 w-10",
@@ -24560,23 +24513,23 @@ function OpenFrameWordmark() {
24560
24513
  upperPathColor: "var(--color-text-primary)"
24561
24514
  }
24562
24515
  ),
24563
- /* @__PURE__ */ jsx186("span", { className: "text-h2 text-ods-text-primary tracking-[-0.64px]", children: "OpenFrame" })
24516
+ /* @__PURE__ */ jsx185("span", { className: "text-h2 text-ods-text-primary tracking-[-0.64px]", children: "OpenFrame" })
24564
24517
  ] });
24565
24518
  }
24566
24519
  function PoweredByFlamingo({ compact = false }) {
24567
- return /* @__PURE__ */ jsxs145("div", { className: "flex items-center gap-[var(--spacing-system-xs)] text-ods-text-secondary", children: [
24568
- /* @__PURE__ */ jsx186("span", { className: "text-h6", children: "Powered by" }),
24569
- /* @__PURE__ */ jsx186(FlamingoLogoIcon, { className: compact ? "h-4 w-14" : "h-4 w-14 md:h-6 md:w-[83px]" })
24520
+ return /* @__PURE__ */ jsxs144("div", { className: "flex items-center gap-[var(--spacing-system-xs)] text-ods-text-secondary", children: [
24521
+ /* @__PURE__ */ jsx185("span", { className: "text-h6", children: "Powered by" }),
24522
+ /* @__PURE__ */ jsx185(FlamingoLogoIcon, { className: compact ? "h-4 w-14" : "h-4 w-14 md:h-6 md:w-[83px]" })
24570
24523
  ] });
24571
24524
  }
24572
24525
 
24573
24526
  // src/components/features/auth/auth-shell.tsx
24574
24527
  init_cn();
24575
- import { jsx as jsx187, jsxs as jsxs146 } from "react/jsx-runtime";
24528
+ import { jsx as jsx186, jsxs as jsxs145 } from "react/jsx-runtime";
24576
24529
  function AuthShell({ tabs, children, benefits, mobileTagline, footer, className }) {
24577
- const benefitsNode = benefits ?? /* @__PURE__ */ jsx187(AuthBenefitsPanel, {});
24578
- return /* @__PURE__ */ jsxs146("div", { className: cn("min-h-screen w-full bg-ods-bg lg:flex lg:h-screen lg:overflow-hidden", className), children: [
24579
- /* @__PURE__ */ jsx187("div", { className: "flex min-h-screen w-full flex-col items-center p-[var(--spacing-system-l)] lg:h-full lg:min-h-0 lg:w-1/2 lg:justify-start lg:overflow-y-auto lg:px-[var(--spacing-system-xl)] lg:py-[var(--spacing-system-xxl)]", children: /* @__PURE__ */ jsxs146(
24530
+ const benefitsNode = benefits ?? /* @__PURE__ */ jsx186(AuthBenefitsPanel, {});
24531
+ return /* @__PURE__ */ jsxs145("div", { className: cn("min-h-screen w-full bg-ods-bg lg:flex lg:h-screen lg:overflow-hidden", className), children: [
24532
+ /* @__PURE__ */ jsx186("div", { className: "flex min-h-screen w-full flex-col items-center p-[var(--spacing-system-l)] lg:h-full lg:min-h-0 lg:w-1/2 lg:justify-start lg:overflow-y-auto lg:px-[var(--spacing-system-xl)] lg:py-[var(--spacing-system-xxl)]", children: /* @__PURE__ */ jsxs145(
24580
24533
  "div",
24581
24534
  {
24582
24535
  className: cn(
@@ -24584,24 +24537,24 @@ function AuthShell({ tabs, children, benefits, mobileTagline, footer, className
24584
24537
  footer && "lg:min-h-full"
24585
24538
  ),
24586
24539
  children: [
24587
- /* @__PURE__ */ jsxs146("div", { className: "flex w-full flex-col items-center gap-[var(--spacing-system-l)] lg:hidden", children: [
24588
- /* @__PURE__ */ jsx187(OpenFrameWordmark, {}),
24589
- mobileTagline && /* @__PURE__ */ jsx187("div", { className: "w-full text-center text-h4 text-ods-text-primary [&>p]:truncate md:hidden", children: mobileTagline })
24540
+ /* @__PURE__ */ jsxs145("div", { className: "flex w-full flex-col items-center gap-[var(--spacing-system-l)] lg:hidden", children: [
24541
+ /* @__PURE__ */ jsx186(OpenFrameWordmark, {}),
24542
+ mobileTagline && /* @__PURE__ */ jsx186("div", { className: "w-full text-center text-h4 text-ods-text-primary [&>p]:truncate md:hidden", children: mobileTagline })
24590
24543
  ] }),
24591
- tabs && /* @__PURE__ */ jsx187("div", { className: "w-full md:max-w-[320px]", children: tabs }),
24592
- /* @__PURE__ */ jsx187("div", { className: "w-full", children }),
24593
- /* @__PURE__ */ jsxs146("div", { className: "flex w-full flex-col items-center gap-[var(--spacing-system-l)] lg:hidden", children: [
24544
+ tabs && /* @__PURE__ */ jsx186("div", { className: "w-full md:max-w-[320px]", children: tabs }),
24545
+ /* @__PURE__ */ jsx186("div", { className: "w-full", children }),
24546
+ /* @__PURE__ */ jsxs145("div", { className: "flex w-full flex-col items-center gap-[var(--spacing-system-l)] lg:hidden", children: [
24594
24547
  benefitsNode,
24595
- /* @__PURE__ */ jsx187(PoweredByFlamingo, {})
24548
+ /* @__PURE__ */ jsx186(PoweredByFlamingo, {})
24596
24549
  ] }),
24597
- footer && /* @__PURE__ */ jsx187("div", { className: "hidden w-full self-start lg:mt-auto lg:block", children: footer })
24550
+ footer && /* @__PURE__ */ jsx186("div", { className: "hidden w-full self-start lg:mt-auto lg:block", children: footer })
24598
24551
  ]
24599
24552
  }
24600
24553
  ) }),
24601
- /* @__PURE__ */ jsxs146("div", { className: "hidden border-l border-ods-border bg-ods-card lg:flex lg:h-full lg:w-1/2 lg:flex-col lg:items-center lg:justify-start lg:gap-[var(--spacing-system-xxl)] lg:overflow-y-auto lg:px-[var(--spacing-system-xl)] lg:py-[var(--spacing-system-xxl)]", children: [
24602
- /* @__PURE__ */ jsx187(OpenFrameWordmark, {}),
24603
- /* @__PURE__ */ jsx187("div", { className: "w-full max-w-lg", children: benefitsNode }),
24604
- /* @__PURE__ */ jsx187(PoweredByFlamingo, {})
24554
+ /* @__PURE__ */ jsxs145("div", { className: "hidden border-l border-ods-border bg-ods-card lg:flex lg:h-full lg:w-1/2 lg:flex-col lg:items-center lg:justify-start lg:gap-[var(--spacing-system-xxl)] lg:overflow-y-auto lg:px-[var(--spacing-system-xl)] lg:py-[var(--spacing-system-xxl)]", children: [
24555
+ /* @__PURE__ */ jsx186(OpenFrameWordmark, {}),
24556
+ /* @__PURE__ */ jsx186("div", { className: "w-full max-w-lg", children: benefitsNode }),
24557
+ /* @__PURE__ */ jsx186(PoweredByFlamingo, {})
24605
24558
  ] })
24606
24559
  ] });
24607
24560
  }
@@ -24609,6 +24562,40 @@ function AuthShell({ tabs, children, benefits, mobileTagline, footer, className
24609
24562
  // src/components/features/auth/create-organization-form.tsx
24610
24563
  init_cn();
24611
24564
  init_button2();
24565
+
24566
+ // src/components/features/auth/terms-agreement-label.tsx
24567
+ import { jsx as jsx187, jsxs as jsxs146 } from "react/jsx-runtime";
24568
+ function TermsAgreementLabel({ termsUrl = "#", privacyPolicyUrl = "#" }) {
24569
+ return /* @__PURE__ */ jsxs146("span", { className: "text-h4 text-ods-text-primary", children: [
24570
+ "Agree to ",
24571
+ /* @__PURE__ */ jsx187(
24572
+ "a",
24573
+ {
24574
+ href: termsUrl,
24575
+ target: "_blank",
24576
+ rel: "noopener noreferrer",
24577
+ className: "text-ods-text-secondary underline",
24578
+ onClick: (event) => event.stopPropagation(),
24579
+ children: "Terms"
24580
+ }
24581
+ ),
24582
+ " & ",
24583
+ /* @__PURE__ */ jsx187(
24584
+ "a",
24585
+ {
24586
+ href: privacyPolicyUrl,
24587
+ target: "_blank",
24588
+ rel: "noopener noreferrer",
24589
+ className: "text-ods-text-secondary underline",
24590
+ onClick: (event) => event.stopPropagation(),
24591
+ children: "Privacy Policy"
24592
+ }
24593
+ ),
24594
+ " by signing up."
24595
+ ] });
24596
+ }
24597
+
24598
+ // src/components/features/auth/create-organization-form.tsx
24612
24599
  import { jsx as jsx188, jsxs as jsxs147 } from "react/jsx-runtime";
24613
24600
  function CreateOrganizationForm({
24614
24601
  email,
@@ -24629,6 +24616,7 @@ function CreateOrganizationForm({
24629
24616
  loading = false,
24630
24617
  disabled = false,
24631
24618
  errors,
24619
+ emailStatus,
24632
24620
  ssoProviders,
24633
24621
  onSsoClick,
24634
24622
  ssoActionLabel = "Sign Up with",
@@ -24661,7 +24649,8 @@ function CreateOrganizationForm({
24661
24649
  label: "Email",
24662
24650
  placeholder: "username@mail.com",
24663
24651
  value: email,
24664
- error: errors?.email,
24652
+ error: errors?.email ?? emailStatus?.message,
24653
+ errorVariant: errors?.email ? "error" : emailStatus?.variant,
24665
24654
  disabled: fieldsDisabled,
24666
24655
  onChange: (event) => onEmailChange(event.target.value),
24667
24656
  onKeyDown: handleKeyDown
@@ -24746,10 +24735,10 @@ function InviteLinkInvalidModal({
24746
24735
  backLabel = "Back to Login",
24747
24736
  className
24748
24737
  }) {
24749
- return /* @__PURE__ */ jsx189("div", { className: cn("flex min-h-screen w-full items-center justify-center bg-ods-bg p-[var(--spacing-system-l)]", className), children: /* @__PURE__ */ jsxs148("div", { className: "flex w-full max-w-[600px] flex-col gap-[var(--spacing-system-l)] rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-xl)]", children: [
24738
+ return /* @__PURE__ */ jsx189("div", { className: cn("flex min-h-screen w-full items-end justify-center bg-ods-bg p-[var(--spacing-system-l)] md:items-center", className), children: /* @__PURE__ */ jsxs148("div", { className: "flex w-full max-w-[600px] flex-col gap-[var(--spacing-system-l)] rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-xl)]", children: [
24750
24739
  /* @__PURE__ */ jsxs148("div", { className: "flex items-center gap-[var(--spacing-system-mf)]", children: [
24751
24740
  /* @__PURE__ */ jsx189("h1", { className: "flex-1 text-h2 text-ods-text-primary tracking-[-0.64px]", children: title }),
24752
- /* @__PURE__ */ jsx189("button", { type: "button", "aria-label": "Close", onClick: onClose ?? onBackToLogin, className: "shrink-0 text-ods-text-primary", children: /* @__PURE__ */ jsx189(XmarkIcon, { className: "h-6 w-6" }) })
24741
+ /* @__PURE__ */ jsx189("button", { type: "button", "aria-label": "Close", onClick: onClose ?? onBackToLogin, className: "hidden shrink-0 text-ods-text-primary md:block", children: /* @__PURE__ */ jsx189(XmarkIcon, { className: "h-6 w-6" }) })
24753
24742
  ] }),
24754
24743
  /* @__PURE__ */ jsx189("p", { className: "text-h4 text-ods-text-primary", children: description }),
24755
24744
  /* @__PURE__ */ jsxs148("div", { className: "flex items-center gap-[var(--spacing-system-l)]", children: [
@@ -25137,6 +25126,7 @@ function PasswordResetForm({
25137
25126
  onConfirmPasswordChange,
25138
25127
  onSubmit,
25139
25128
  onCancel,
25129
+ onBackToLogin,
25140
25130
  submitDisabled = false,
25141
25131
  loading = false,
25142
25132
  disabled = false,
@@ -25221,7 +25211,8 @@ function PasswordResetForm({
25221
25211
  children: submitLabel
25222
25212
  }
25223
25213
  )
25224
- ] })
25214
+ ] }),
25215
+ onBackToLogin && /* @__PURE__ */ jsx194(BackToLoginLink, { onClick: onBackToLogin, className: "self-start lg:hidden" })
25225
25216
  ]
25226
25217
  }
25227
25218
  );
@@ -51561,12 +51552,12 @@ export {
51561
51552
  BackToLoginLink,
51562
51553
  PROVIDER_META,
51563
51554
  SsoProviderButtons,
51564
- TermsAgreementLabel,
51565
51555
  AcceptInvitationForm,
51566
51556
  AuthBenefitsPanel,
51567
51557
  OpenFrameWordmark,
51568
51558
  PoweredByFlamingo,
51569
51559
  AuthShell,
51560
+ TermsAgreementLabel,
51570
51561
  CreateOrganizationForm,
51571
51562
  InviteLinkInvalidModal,
51572
51563
  LoginForm,
@@ -51767,4 +51758,4 @@ export {
51767
51758
  LogsList,
51768
51759
  assets
51769
51760
  };
51770
- //# sourceMappingURL=chunk-N4PA44BJ.js.map
51761
+ //# sourceMappingURL=chunk-GZIHB6TH.js.map