@levo-so/studio 0.1.7 → 0.1.8

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.
@@ -0,0 +1,30 @@
1
+ "use client";
2
+ import { jsxs as e, jsx as s } from "react/jsx-runtime";
3
+ import { u as i, a } from "./index-2NFcpkxw.js";
4
+ const g = "_footnote_v8hnh_1", r = "_footnoteText_v8hnh_11", c = "_logoutButton_v8hnh_17", t = {
5
+ footnote: g,
6
+ footnoteText: r,
7
+ logoutButton: c
8
+ }, d = () => {
9
+ const { account: o, isSignOutLoading: n } = i(), { signOut: u } = a(), l = () => {
10
+ u();
11
+ };
12
+ return o != null && o.email ? /* @__PURE__ */ e("div", { className: t.footnote, children: [
13
+ /* @__PURE__ */ e("span", { className: t.footnoteText, children: [
14
+ "You are logged in as ",
15
+ /* @__PURE__ */ s("strong", { children: o.email })
16
+ ] }),
17
+ /* @__PURE__ */ s(
18
+ "button",
19
+ {
20
+ className: t.logoutButton,
21
+ onClick: l,
22
+ disabled: n,
23
+ children: n ? "Logging out..." : "Logout"
24
+ }
25
+ )
26
+ ] }) : null;
27
+ };
28
+ export {
29
+ d as M
30
+ };
@@ -0,0 +1,49 @@
1
+ "use client";
2
+ import { jsxs as n, jsx as e } from "react/jsx-runtime";
3
+ import { A as o } from "./index-QRx1kG5G.js";
4
+ import { M as r } from "./index-BcbNOVub.js";
5
+ const c = "_header_1vjty_1", l = "_iconContainer_1vjty_6", d = "_icon_1vjty_6", m = "_title_1vjty_18", _ = "_subtitle_1vjty_26", h = "_messageContainer_1vjty_33", v = "_message_1vjty_33", s = {
6
+ header: c,
7
+ iconContainer: l,
8
+ icon: d,
9
+ title: m,
10
+ subtitle: _,
11
+ messageContainer: h,
12
+ message: v
13
+ }, j = ({
14
+ logo: a,
15
+ siteName: t,
16
+ message: i
17
+ }) => /* @__PURE__ */ n(o, { logo: a, siteName: t, maxWidth: "sm", children: [
18
+ /* @__PURE__ */ n("div", { className: s.header, children: [
19
+ /* @__PURE__ */ e("div", { className: s.iconContainer, children: /* @__PURE__ */ e(
20
+ "svg",
21
+ {
22
+ className: s.icon,
23
+ fill: "none",
24
+ viewBox: "0 0 24 24",
25
+ strokeWidth: 1.5,
26
+ stroke: "currentColor",
27
+ children: /* @__PURE__ */ e(
28
+ "path",
29
+ {
30
+ strokeLinecap: "round",
31
+ strokeLinejoin: "round",
32
+ d: "M16.5 10.5V6.75a4.5 4.5 0 10-9 0v3.75m-.75 11.25h10.5a2.25 2.25 0 002.25-2.25v-6.75a2.25 2.25 0 00-2.25-2.25H6.75a2.25 2.25 0 00-2.25 2.25v6.75a2.25 2.25 0 002.25 2.25z"
33
+ }
34
+ )
35
+ }
36
+ ) }),
37
+ /* @__PURE__ */ e("h1", { className: s.title, children: "Access Restricted" }),
38
+ t && /* @__PURE__ */ n("p", { className: s.subtitle, children: [
39
+ "Content on ",
40
+ /* @__PURE__ */ e("strong", { children: t }),
41
+ " is currently restricted"
42
+ ] })
43
+ ] }),
44
+ /* @__PURE__ */ e("div", { className: s.messageContainer, children: /* @__PURE__ */ e("p", { className: s.message, children: i }) }),
45
+ /* @__PURE__ */ e(r, {})
46
+ ] });
47
+ export {
48
+ j as default
49
+ };
@@ -0,0 +1,38 @@
1
+ "use client";
2
+ import { jsx as c, jsxs as l } from "react/jsx-runtime";
3
+ const e = "_container_t4trl_1", _ = "_card_t4trl_16", i = "_cardSm_t4trl_27", m = "_cardMd_t4trl_31", g = "_cardLg_t4trl_35", C = "_logoContainer_t4trl_39", S = "_logo_t4trl_39", N = "_content_t4trl_53", t = {
4
+ container: e,
5
+ card: _,
6
+ cardSm: i,
7
+ cardMd: m,
8
+ cardLg: g,
9
+ logoContainer: C,
10
+ logo: S,
11
+ content: N
12
+ }, L = ({
13
+ logo: r,
14
+ siteName: o,
15
+ children: n,
16
+ maxWidth: a = "md",
17
+ className: s = ""
18
+ }) => {
19
+ const d = {
20
+ sm: t.cardSm,
21
+ md: t.cardMd,
22
+ lg: t.cardLg
23
+ }[a];
24
+ return /* @__PURE__ */ c("div", { className: t.container, children: /* @__PURE__ */ l("div", { className: `${t.card} ${d} ${s}`, children: [
25
+ r && /* @__PURE__ */ c("div", { className: t.logoContainer, children: /* @__PURE__ */ c(
26
+ "img",
27
+ {
28
+ className: t.logo,
29
+ src: r,
30
+ alt: o || "Site logo"
31
+ }
32
+ ) }),
33
+ /* @__PURE__ */ c("div", { className: t.content, children: n })
34
+ ] }) });
35
+ };
36
+ export {
37
+ L as A
38
+ };
@@ -0,0 +1,54 @@
1
+ "use client";
2
+ import { jsxs as a, jsx as r } from "react/jsx-runtime";
3
+ import { CollectionFormBuilder as c } from "@levo-so/react-collection";
4
+ import { A as n } from "./index-QRx1kG5G.js";
5
+ import { M as o } from "./index-BcbNOVub.js";
6
+ import { u as h } from "./index-2NFcpkxw.js";
7
+ const u = "_header_emo7t_1", f = "_title_emo7t_8", _ = "_subtitle_emo7t_15", C = "_formContainer_emo7t_21", i = {
8
+ header: u,
9
+ title: f,
10
+ subtitle: _,
11
+ formContainer: C
12
+ }, j = ({
13
+ logo: d,
14
+ siteName: l,
15
+ workspaceId: s,
16
+ options: e,
17
+ onSuccess: m
18
+ }) => {
19
+ const { account: t } = h();
20
+ return /* @__PURE__ */ a(n, { logo: d, siteName: l, maxWidth: "md", children: [
21
+ /* @__PURE__ */ a("div", { className: i.header, children: [
22
+ /* @__PURE__ */ r("h1", { className: i.title, children: "Access Required" }),
23
+ l && /* @__PURE__ */ a("p", { className: i.subtitle, children: [
24
+ "Please fill out this form to access content on",
25
+ " ",
26
+ /* @__PURE__ */ r("strong", { children: l })
27
+ ] })
28
+ ] }),
29
+ /* @__PURE__ */ r(o, {}),
30
+ (t == null ? void 0 : t.email) && /* @__PURE__ */ r("div", { className: i.formContainer, children: /* @__PURE__ */ r(
31
+ c,
32
+ {
33
+ collection_id: (e == null ? void 0 : e.collection) || "",
34
+ workspace_id: s,
35
+ uiConfig: {
36
+ hideFormHeading: !0,
37
+ hideSectionHeadings: !0
38
+ },
39
+ submitButtonConfig: {
40
+ show: !0,
41
+ text: "Submit"
42
+ },
43
+ externalInitialValues: {
44
+ [(e == null ? void 0 : e.field) ?? "email"]: t == null ? void 0 : t.email
45
+ },
46
+ hiddenFields: (e == null ? void 0 : e.hidden) ?? [],
47
+ onSuccess: m
48
+ }
49
+ ) })
50
+ ] });
51
+ };
52
+ export {
53
+ j as default
54
+ };
@@ -0,0 +1,23 @@
1
+ "use client";
2
+ import { jsxs as r, jsx as t } from "react/jsx-runtime";
3
+ import { L as i } from "./index-2NFcpkxw.js";
4
+ import { A as n } from "./index-QRx1kG5G.js";
5
+ const a = "_header_s7k8g_1", c = "_title_s7k8g_7", l = "_subtitle_s7k8g_14", d = "_formWrapper_s7k8g_20", e = {
6
+ header: a,
7
+ title: c,
8
+ subtitle: l,
9
+ formWrapper: d
10
+ }, _ = ({ logo: o, siteName: s }) => /* @__PURE__ */ r(n, { logo: o, siteName: s, maxWidth: "sm", children: [
11
+ /* @__PURE__ */ r("div", { className: e.header, children: [
12
+ /* @__PURE__ */ t("h1", { className: e.title, children: "Sign in to continue" }),
13
+ s && /* @__PURE__ */ r("p", { className: e.subtitle, children: [
14
+ "You need to sign in to access this page on",
15
+ " ",
16
+ /* @__PURE__ */ t("strong", { children: s })
17
+ ] })
18
+ ] }),
19
+ /* @__PURE__ */ t("div", { className: e.formWrapper, children: /* @__PURE__ */ t(i, { className: e.form, oAuthTitle: s || "Studio" }) })
20
+ ] });
21
+ export {
22
+ _ as default
23
+ };
package/dist/index.css CHANGED
@@ -1 +1 @@
1
- ._Overlay_zxori_1{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background-color:#00000080;animation:_overlayShow_zxori_1 .15s cubic-bezier(.16,1,.3,1)}._Overlay_zxori_1[data-state=open]{animation:_fadeIn_zxori_1 .2s ease-out}._Overlay_zxori_1[data-state=closed]{animation:_fadeOut_zxori_1 .2s ease-out}._Content_zxori_17{position:fixed;left:50%;top:50%;z-index:50;display:grid;width:100%;max-width:calc(100% - 2rem);transform:translate(-50%,-50%);grid-gap:1rem;gap:1rem;border-radius:.5rem;border:1px solid hsl(var(--border));background:hsl(var(--background));padding:1.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;transition-duration:.2s}@media (min-width: 640px){._Content_zxori_17{max-width:32rem}}._Content_zxori_17[data-state=open]{animation:_contentShow_zxori_1 .2s cubic-bezier(.16,1,.3,1)}._Content_zxori_17[data-state=closed]{animation:_contentHide_zxori_1 .2s cubic-bezier(.16,1,.3,1)}._Content_zxori_17:focus{outline:none}._Title_zxori_53{font-size:1.125rem;font-weight:600;line-height:1}._Description_zxori_59{font-size:.875rem;color:hsl(var(--muted-foreground))}._Button_zxori_64{all:unset;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;padding:0 15px;font-size:15px;line-height:1;font-weight:500;height:35px;-webkit-user-select:none;-moz-user-select:none;user-select:none}._Button_zxori_64:focus:not(:focus-visible){outline:0}._Button_zxori_64:focus-visible{outline:2px solid var(--violet-6);outline-offset:1px}._Button_zxori_64.violet{background-color:var(--violet-4);color:var(--violet-12);outline-color:var(--violet-6)}._Button_zxori_64.violet:hover{background-color:var(--mauve-3)}._Button_zxori_64.violet:focus{box-shadow:0 0 0 2px #000}._Button_zxori_64.green{background-color:var(--green-4);color:var(--green-11);outline-color:var(--green-7)}._Button_zxori_64.green:hover{background-color:var(--green-5)}._CloseButton_zxori_107{position:absolute;right:1rem;top:1rem;opacity:.7;border-radius:.25rem;transition:opacity .2s;outline:none;background:transparent;border:none;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center}._CloseButton_zxori_107:hover{opacity:1}._CloseButton_zxori_107:focus{outline:2px solid hsl(var(--ring));outline-offset:2px}._CloseButton_zxori_107:disabled{pointer-events:none}._CloseButton_zxori_107[data-state=open]{background-color:hsl(var(--accent));color:hsl(var(--muted-foreground))}._CloseButton_zxori_107 svg:not([class*=size-]){width:1rem;height:1rem}._CloseButton_zxori_107 svg{pointer-events:none;flex-shrink:0}._Fieldset_zxori_152{all:unset;display:flex;gap:20px;align-items:center;margin-bottom:15px}._Label_zxori_160{font-size:15px;color:var(--violet-11);width:90px;text-align:right}._Input_zxori_167{all:unset;width:100%;flex:1 1;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;padding:0 10px;font-size:15px;line-height:1;color:var(--violet-11);box-shadow:0 0 0 1px var(--violet-7);height:35px}._Input_zxori_167:focus{box-shadow:0 0 0 2px var(--violet-8)}._Header_zxori_186{display:flex;flex-direction:column;gap:.5rem;text-align:center}@media (min-width: 640px){._Header_zxori_186{text-align:left}}._Footer_zxori_199{display:flex;flex-direction:column-reverse;gap:.5rem}@media (min-width: 640px){._Footer_zxori_199{flex-direction:row;justify-content:flex-end}}._SrOnly_zxori_212{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes _fadeIn_zxori_1{0%{opacity:0}to{opacity:1}}@keyframes _fadeOut_zxori_1{0%{opacity:1}to{opacity:0}}@keyframes _contentShow_zxori_1{0%{opacity:0;transform:translate(-50%,-48%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes _contentHide_zxori_1{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-48%) scale(.95)}}._button_1je4h_2{display:flex;align-items:center;justify-content:center;font-size:.875rem;border-radius:.375rem;font-weight:500;transition:all .15s ease-in-out;cursor:pointer;border:1px solid transparent;background-color:var(--color-brand);color:var(--color-brand-foreground)}._button_1je4h_2:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-brand)}._button_1je4h_2:disabled{pointer-events:none;opacity:.6;cursor:not-allowed}._button_1je4h_2[data-variant=default]:hover:not(:disabled){background-color:var(--color-brand);opacity:.9}._button_1je4h_2[data-variant=outline]{border:1px solid #d1d5db;background-color:transparent;color:#374151}._button_1je4h_2[data-variant=outline]:hover:not(:disabled){background-color:#f3f4f6;color:#111827}._button_1je4h_2[data-variant=destructive]{background-color:#ef4444;color:#fff}._button_1je4h_2[data-variant=destructive]:hover:not(:disabled){background-color:#dc2626}._button_1je4h_2[data-variant=success]{background-color:#dcfce7;color:#166534;border:1px solid #16a34a}._button_1je4h_2[data-size=default]{height:2.25rem;padding:0 .75rem}._button_1je4h_2[data-size=lg]{height:2.5rem;padding:.5rem 1rem}._content_1je4h_70{display:flex;align-items:center;gap:.5rem}._icon_1je4h_77{display:flex;align-items:center;justify-content:center}._icon_1je4h_77 svg{width:1rem;height:1rem}._spinner_1je4h_89{animation:_spin_1je4h_89 1s linear infinite}@keyframes _spin_1je4h_89{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._iconEnter_1je4h_103{animation:_iconScale_1je4h_1 .3s ease-in-out}@keyframes _iconScale_1je4h_1{0%{transform:scale(0)}50%{transform:scale(1.1)}to{transform:scale(1)}}._text_1je4h_119{white-space:nowrap}._label_1c70c_5{display:block;margin-bottom:.25rem;font-size:.875rem;font-weight:500;color:#374151}._inputWrapper_1c70c_13{display:flex;gap:.5rem}._input_1c70c_13{flex:1 1;border-radius:.375rem;border:1px solid #d1d5db;padding:.5rem .75rem;font-size:.875rem;transition:all .15s ease-in-out}._input_1c70c_13:focus{border-color:var(--color-brand);outline:none;box-shadow:0 0 0 1px var(--color-brand)}._input_1c70c_13:disabled{background-color:#f9fafb;color:#6b7280}._editButton_1c70c_38{font-size:.875rem}._label_1c9qn_5{display:block;margin-bottom:.25rem;font-size:.875rem;font-weight:500;color:#374151}._inputGroup_1c9qn_13{display:flex;gap:.5rem;margin-bottom:1rem}._input_1c9qn_13{width:3rem;height:3rem;text-align:center;border-radius:.375rem;border:1px solid #d1d5db;font-size:1.125rem;font-weight:500;transition:all .15s ease-in-out}._input_1c9qn_13:focus{border-color:var(--color-brand);outline:none;box-shadow:0 0 0 1px var(--color-brand)}._resendButton_1c9qn_36{font-size:.875rem;color:var(--color-brand);background:none;border:none;cursor:pointer;transition:color .15s ease-in-out}._resendButton_1c9qn_36:hover:not(:disabled){color:var(--color-brand);opacity:.8}._resendButton_1c9qn_36:disabled{opacity:.5;cursor:not-allowed}._errorContainer_1rjrx_5{margin-bottom:1rem}._divider_1rjrx_9{margin:1rem 0;display:flex;align-items:center}._dividerLine_1rjrx_15{flex:1 1;height:1px;background-color:#e5e7eb}._dividerText_1rjrx_21{padding:0 .75rem;font-size:.875rem;color:#6b7280}._formSection_1rjrx_27{display:flex;flex-direction:column;gap:1rem}._fullWidthButton_1rjrx_36{width:100%}._googleButton_1rjrx_41{display:inline-flex;align-items:center;justify-content:center;width:100%;height:2.5rem;padding:0 1rem;border:1px solid hsl(var(--border));border-radius:.375rem;background:hsl(var(--background));font-size:.875rem;font-weight:500;color:hsl(var(--foreground));cursor:pointer;transition:background-color .2s}._googleButton_1rjrx_41:hover{background:hsl(var(--accent))}._googleButton_1rjrx_41:disabled{opacity:.5;cursor:not-allowed}._googleIcon_1rjrx_67{width:1.25rem;height:1.25rem;margin-right:.5rem}._errorContainer_1rjrx_5{margin-top:1rem;width:100%}._errorContent_1rjrx_79{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:hsl(var(--destructive) / .1);border:1px solid hsl(var(--destructive) / .3);border-radius:.375rem}._errorIcon_1rjrx_89{flex-shrink:0;font-size:1.125rem;color:hsl(var(--destructive));margin-top:.125rem}._errorText_1rjrx_96{flex:1 1;min-width:0}._errorTitle_1rjrx_101{font-size:.875rem;font-weight:600;color:hsl(var(--destructive));margin-bottom:.25rem}._errorMessage_1rjrx_108{font-size:.875rem;color:hsl(var(--destructive));line-height:1.4}._errorDismiss_1rjrx_114{flex-shrink:0;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:.25rem;color:hsl(var(--destructive));cursor:pointer;font-size:1.125rem;line-height:1;transition:background-color .2s}._errorDismiss_1rjrx_114:hover{background:hsl(var(--destructive) / .1)}._errorDismiss_1rjrx_114:focus{outline:none;background:hsl(var(--destructive) / .1);box-shadow:0 0 0 2px hsl(var(--ring) / .2)}._container_9e3ze_1{display:flex;flex-direction:column;gap:1rem;width:100%}._divider_9e3ze_8{position:relative;height:1px;width:100%;background-color:hsl(var(--border))}._dividerText_9e3ze_15{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);white-space:nowrap;background:hsl(var(--background));padding:0 1rem;font-size:.875rem;color:hsl(var(--muted-foreground))}._formSection_9e3ze_27{display:flex;flex-direction:column;gap:1rem;width:100%}._googleButton_9e3ze_34{display:inline-flex;align-items:center;justify-content:center;width:100%;height:2.5rem;padding:0 1rem;border:1px solid hsl(var(--border));border-radius:.375rem;background:hsl(var(--background));font-size:.875rem;font-weight:500;color:hsl(var(--foreground));cursor:pointer;transition:background-color .2s}._googleButton_9e3ze_34:hover{background:hsl(var(--accent))}._googleButton_9e3ze_34:disabled{opacity:.5;cursor:not-allowed}._googleIcon_9e3ze_60{width:1.25rem;height:1.25rem;margin-right:.5rem}._primaryButton_9e3ze_67{width:100%}._errorContainer_9e3ze_71{margin-top:1rem;width:100%}._errorContent_9e3ze_76{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:hsl(var(--destructive) / .1);border:1px solid hsl(var(--destructive) / .3);border-radius:.375rem}._errorIcon_9e3ze_86{flex-shrink:0;font-size:1.125rem;color:hsl(var(--destructive));margin-top:.125rem}._errorText_9e3ze_93{flex:1 1;min-width:0}._errorTitle_9e3ze_98{font-size:.875rem;font-weight:600;color:hsl(var(--destructive));margin-bottom:.25rem}._errorMessage_9e3ze_105{font-size:.875rem;color:hsl(var(--destructive));line-height:1.4}._errorDismiss_9e3ze_111{flex-shrink:0;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:.25rem;color:hsl(var(--destructive));cursor:pointer;font-size:1.125rem;line-height:1;transition:background-color .2s}._errorDismiss_9e3ze_111:hover{background:hsl(var(--destructive) / .1)}._errorDismiss_9e3ze_111:focus{outline:none;background:hsl(var(--destructive) / .1);box-shadow:0 0 0 2px hsl(var(--ring) / .2)}._accordionItem_ol1j4_1{overflow:hidden}._accordionItem_ol1j4_1:focus-within{position:relative;z-index:1}._accordionHeader_ol1j4_10{display:flex}._accordionTrigger_ol1j4_14{flex:1 1;display:flex;align-items:center;justify-content:space-between}._accordionContent_ol1j4_21{overflow:hidden}._accordionContent_ol1j4_21[data-state=open]{animation:_slideDown_ol1j4_1 .3s cubic-bezier(.87,0,.13,1)}._accordionContent_ol1j4_21[data-state=closed]{animation:_slideUp_ol1j4_1 .3s cubic-bezier(.87,0,.13,1)}._accordionChevron_ol1j4_33{flex-shrink:0;transition:transform .3s cubic-bezier(.87,0,.13,1)}._accordionTrigger_ol1j4_14[data-state=open]>._accordionChevron_ol1j4_33{transform:rotate(180deg)}@keyframes _slideDown_ol1j4_1{0%{height:0}to{height:var(--radix-accordion-content-height)}}@keyframes _slideUp_ol1j4_1{0%{height:var(--radix-accordion-content-height)}to{height:0}}._popoverContent_e5njk_1{z-index:50;width:18rem;border-radius:.375rem;border:1px solid hsl(var(--border));background-color:hsl(var(--popover));padding:1rem;color:hsl(var(--popover-foreground));box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;outline:none}._popoverContent_e5njk_1[data-state=open]{animation:_fadeIn_e5njk_1 .2s ease-out,_zoomIn_e5njk_1 .2s ease-out}._popoverContent_e5njk_1[data-state=closed]{animation:_fadeOut_e5njk_1 .2s ease-out,_zoomOut_e5njk_1 .2s ease-out}._popoverContent_e5njk_1[data-side=bottom]{animation:_slideFromTop_e5njk_1 .2s ease-out}._popoverContent_e5njk_1[data-side=left]{animation:_slideFromRight_e5njk_1 .2s ease-out}._popoverContent_e5njk_1[data-side=right]{animation:_slideFromLeft_e5njk_1 .2s ease-out}._popoverContent_e5njk_1[data-side=top]{animation:_slideFromBottom_e5njk_1 .2s ease-out}@keyframes _fadeIn_e5njk_1{0%{opacity:0}to{opacity:1}}@keyframes _fadeOut_e5njk_1{0%{opacity:1}to{opacity:0}}@keyframes _zoomIn_e5njk_1{0%{transform:scale(.95)}to{transform:scale(1)}}@keyframes _zoomOut_e5njk_1{0%{transform:scale(1)}to{transform:scale(.95)}}@keyframes _slideFromTop_e5njk_1{0%{transform:translateY(-.5rem)}to{transform:translateY(0)}}@keyframes _slideFromRight_e5njk_1{0%{transform:translate(.5rem)}to{transform:translate(0)}}@keyframes _slideFromLeft_e5njk_1{0%{transform:translate(-.5rem)}to{transform:translate(0)}}@keyframes _slideFromBottom_e5njk_1{0%{transform:translateY(.5rem)}to{transform:translateY(0)}}._userMenu_366z5_1{position:relative}._userAvatar_366z5_5{cursor:pointer;transition:opacity .2s ease}._userAvatar_366z5_5:hover{opacity:.8}._avatarCircle_366z5_14{width:40px;height:40px;border-radius:50%;background:var(--color-brand);display:flex;align-items:center;justify-content:center;color:var(--color-brand-foreground);font-weight:600;font-size:14px;-webkit-user-select:none;-moz-user-select:none;user-select:none}._userMenuPopover_366z5_28{width:250px;padding:0;border-radius:8px;box-shadow:0 10px 38px -10px #16171859,0 10px 20px -15px #16171833;background:#fff;border:1px solid #e5e7eb}._userMenuHeader_366z5_39{padding:16px;border-bottom:1px solid #f3f4f6}._userInfo_366z5_44{display:flex;align-items:center;gap:12px}._userAvatarSmall_366z5_50{width:32px;height:32px;border-radius:50%;background:var(--color-brand);display:flex;align-items:center;justify-content:center;color:var(--color-brand-foreground);font-weight:600;font-size:12px;-webkit-user-select:none;-moz-user-select:none;user-select:none}._userDetails_366z5_64{flex:1 1;min-width:0}._userName_366z5_69{font-weight:600;font-size:14px;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._userEmail_366z5_78{font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._userMenuActions_366z5_86{padding:8px}._userMenuItem_366z5_90{width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;border:none;background:none;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:14px;color:#374151;text-align:left}._userMenuItem_366z5_90:hover{background-color:#f9fafb;color:#111827}._userMenuItem_366z5_90:active{background-color:#f3f4f6}._logoutItem_366z5_115:hover{background-color:#fef2f2;color:#dc2626}._logoutItem_366z5_115:active{background-color:#fee2e2}._spinner_366z5_124{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:_spin_366z5_124 1s linear infinite}@keyframes _spin_366z5_124{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._userMenuItem_366z5_90:disabled{opacity:.6;cursor:not-allowed}._userMenuItem_366z5_90:disabled:hover{background-color:transparent;color:inherit}._logoutItem_366z5_115:disabled:hover{background-color:transparent;color:inherit}._container_t4trl_1{position:fixed;top:0;left:0;right:0;bottom:0;background:color-mix(in oklch,var(--color-brand) 5%,transparent);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:50}._card_t4trl_16{background:#fff;border-radius:1rem;box-shadow:0 25px 50px #0000001a;width:100%;overflow:hidden;max-height:90vh;display:flex;flex-direction:column}._cardSm_t4trl_27{max-width:28rem}._cardMd_t4trl_31{max-width:32rem}._cardLg_t4trl_35{max-width:36rem}._logoContainer_t4trl_39{display:flex;justify-content:center;padding:2rem 2rem 1rem;background:color-mix(in oklch,var(--color-brand) 15%,transparent);flex-shrink:0}._logo_t4trl_39{height:3rem;width:auto;object-fit:contain}._content_t4trl_53{flex:1 1;display:flex;flex-direction:column;overflow-y:auto;padding:2rem 0}@media (max-width: 640px){._container_t4trl_1{padding:.5rem}._card_t4trl_16{max-width:100%;max-height:95vh}._content_t4trl_53{padding:1.5rem 0}._logoContainer_t4trl_39{padding:1.5rem 1.5rem 1rem}._logo_t4trl_39{height:2.5rem}}._header_s7k8g_1{text-align:center;margin-bottom:2rem;padding:0 2rem}._title_s7k8g_7{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0 0 .5rem}._subtitle_s7k8g_14{color:#6b7280;margin:0;line-height:1.5}._formWrapper_s7k8g_20{padding:0 2rem}@media (max-width: 640px){._header_s7k8g_1,._formWrapper_s7k8g_20{padding:0 1.5rem}._title_s7k8g_7{font-size:1.25rem}}._footnote_v8hnh_1{margin:0 2rem;padding-top:1rem;border-top:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between;gap:1rem}._footnoteText_v8hnh_11{font-size:.875rem;color:#6b7280;flex:1 1}._logoutButton_v8hnh_17{padding:.25rem .75rem;font-size:.875rem;font-weight:500;color:#374151;background:transparent;border:1px solid #d1d5db;border-radius:.375rem;cursor:pointer;transition:all .2s;white-space:nowrap}._logoutButton_v8hnh_17:hover{background:#f3f4f6;border-color:#9ca3af}._logoutButton_v8hnh_17:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 640px){._footnote_v8hnh_1{margin:1.5rem 1.5rem 0;flex-direction:column;align-items:flex-start;gap:.5rem}._footnoteText_v8hnh_11{font-size:.8125rem}._logoutButton_v8hnh_17{align-self:stretch;text-align:center}}._header_emo7t_1{text-align:center;margin-bottom:1rem;flex-shrink:0;padding:0 2rem}._title_emo7t_8{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0 0 .5rem}._subtitle_emo7t_15{color:#6b7280;margin:0;line-height:1.5}._formContainer_emo7t_21{flex:1 1;margin-top:1rem;padding:0 2rem}@media (max-width: 640px){._header_emo7t_1,._formContainer_emo7t_21{padding:0 1.5rem}._title_emo7t_8{font-size:1.25rem}}._header_1vjty_1{margin-bottom:1.5rem;padding:0 2rem}._iconContainer_1vjty_6{display:flex;justify-content:center;margin-bottom:1rem}._icon_1vjty_6{width:3rem;height:3rem;color:#000}._title_1vjty_18{font-size:1.5rem;font-weight:600;color:var(--color-text-1);text-align:center;margin:0 0 .5rem}._subtitle_1vjty_26{color:var(--color-text-2);text-align:center;margin:0;line-height:1.5}._messageContainer_1vjty_33{padding:1rem;background:#f9fafb;border-radius:.5rem;border-left:4px solid #ef4444;margin:0 2rem 2rem}._message_1vjty_33{color:#374151;margin:0;line-height:1.6}@media (max-width: 640px){._header_1vjty_1{padding:0 1.5rem}._messageContainer_1vjty_33{margin:0 1.5rem}._icon_1vjty_6{width:2.5rem;height:2.5rem}._title_1vjty_18{font-size:1.25rem}}._loadingContainer_1d4on_1{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;gap:1rem;font-size:1.4rem;z-index:50}
1
+ ._Overlay_w33mq_1{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background-color:#00000080;animation:_overlayShow_w33mq_1 .15s cubic-bezier(.16,1,.3,1)}._Overlay_w33mq_1[data-state=open]{animation:_fadeIn_w33mq_1 .2s ease-out}._Overlay_w33mq_1[data-state=closed]{animation:_fadeOut_w33mq_1 .2s ease-out}._Content_w33mq_17{position:fixed;left:50%;top:50%;z-index:50;display:grid;width:100%;max-width:calc(100% - 2rem);transform:translate(-50%,-50%);gap:1rem;border-radius:.5rem;border:1px solid var(--border);background:var(--background);padding:1.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;transition-duration:.2s}@media (min-width: 640px){._Content_w33mq_17{max-width:32rem}}._Content_w33mq_17[data-state=open]{animation:_contentShow_w33mq_1 .2s cubic-bezier(.16,1,.3,1)}._Content_w33mq_17[data-state=closed]{animation:_contentHide_w33mq_1 .2s cubic-bezier(.16,1,.3,1)}._Content_w33mq_17:focus{outline:none}._Title_w33mq_55{font-size:1.125rem;font-weight:600;line-height:1}._Description_w33mq_61{font-size:.875rem;color:var(--muted-foreground)}._Button_w33mq_66{all:unset;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;padding:0 15px;font-size:15px;line-height:1;font-weight:500;height:35px;-webkit-user-select:none;user-select:none}._Button_w33mq_66:focus:not(:focus-visible){outline:0}._Button_w33mq_66:focus-visible{outline:2px solid var(--violet-6);outline-offset:1px}._Button_w33mq_66.violet{background-color:var(--violet-4);color:var(--violet-12);outline-color:var(--violet-6)}._Button_w33mq_66.violet:hover{background-color:var(--mauve-3)}._Button_w33mq_66.violet:focus{box-shadow:0 0 0 2px #000}._Button_w33mq_66.green{background-color:var(--green-4);color:var(--green-11);outline-color:var(--green-7)}._Button_w33mq_66.green:hover{background-color:var(--green-5)}._CloseButton_w33mq_109{position:absolute;right:1rem;top:1rem;opacity:.7;border-radius:.25rem;transition:opacity .2s;outline:none;background:transparent;border:none;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center}._CloseButton_w33mq_109:hover{opacity:1}._CloseButton_w33mq_109:focus{outline:2px solid var(--ring);outline-offset:2px}._CloseButton_w33mq_109:disabled{pointer-events:none}._CloseButton_w33mq_109[data-state=open]{background-color:var(--accent);color:var(--muted-foreground)}._CloseButton_w33mq_109 svg:not([class*=size-]){width:1rem;height:1rem}._CloseButton_w33mq_109 svg{pointer-events:none;flex-shrink:0}._Fieldset_w33mq_154{all:unset;display:flex;gap:20px;align-items:center;margin-bottom:15px}._Label_w33mq_162{font-size:15px;color:var(--violet-11);width:90px;text-align:right}._Input_w33mq_169{all:unset;width:100%;flex:1;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;padding:0 10px;font-size:15px;line-height:1;color:var(--violet-11);box-shadow:0 0 0 1px var(--violet-7);height:35px}._Input_w33mq_169:focus{box-shadow:0 0 0 2px var(--violet-8)}._Header_w33mq_188{display:flex;flex-direction:column;gap:.5rem;text-align:center}@media (min-width: 640px){._Header_w33mq_188{text-align:left}}._Footer_w33mq_201{display:flex;flex-direction:column-reverse;gap:.5rem}@media (min-width: 640px){._Footer_w33mq_201{flex-direction:row;justify-content:flex-end}}._SrOnly_w33mq_214{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes _fadeIn_w33mq_1{0%{opacity:0}to{opacity:1}}@keyframes _fadeOut_w33mq_1{0%{opacity:1}to{opacity:0}}@keyframes _contentShow_w33mq_1{0%{opacity:0;transform:translate(-50%,-48%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes _contentHide_w33mq_1{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-48%) scale(.95)}}._button_1je4h_2{display:flex;align-items:center;justify-content:center;font-size:.875rem;border-radius:.375rem;font-weight:500;transition:all .15s ease-in-out;cursor:pointer;border:1px solid transparent;background-color:var(--color-brand);color:var(--color-brand-foreground)}._button_1je4h_2:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-brand)}._button_1je4h_2:disabled{pointer-events:none;opacity:.6;cursor:not-allowed}._button_1je4h_2[data-variant=default]:hover:not(:disabled){background-color:var(--color-brand);opacity:.9}._button_1je4h_2[data-variant=outline]{border:1px solid #d1d5db;background-color:transparent;color:#374151}._button_1je4h_2[data-variant=outline]:hover:not(:disabled){background-color:#f3f4f6;color:#111827}._button_1je4h_2[data-variant=destructive]{background-color:#ef4444;color:#fff}._button_1je4h_2[data-variant=destructive]:hover:not(:disabled){background-color:#dc2626}._button_1je4h_2[data-variant=success]{background-color:#dcfce7;color:#166534;border:1px solid #16a34a}._button_1je4h_2[data-size=default]{height:2.25rem;padding:0 .75rem}._button_1je4h_2[data-size=lg]{height:2.5rem;padding:.5rem 1rem}._content_1je4h_70{display:flex;align-items:center;gap:.5rem}._icon_1je4h_77{display:flex;align-items:center;justify-content:center}._icon_1je4h_77 svg{width:1rem;height:1rem}._spinner_1je4h_89{animation:_spin_1je4h_89 1s linear infinite}@keyframes _spin_1je4h_89{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._iconEnter_1je4h_103{animation:_iconScale_1je4h_1 .3s ease-in-out}@keyframes _iconScale_1je4h_1{0%{transform:scale(0)}50%{transform:scale(1.1)}to{transform:scale(1)}}._text_1je4h_119{white-space:nowrap}._label_wx5fd_5{display:block;margin-bottom:.25rem;font-size:.875rem;font-weight:500;color:#374151}._inputWrapper_wx5fd_13{display:flex;gap:.5rem}._input_wx5fd_13{flex:1;border-radius:.375rem;border:1px solid #d1d5db;padding:.5rem .75rem;font-size:.875rem;transition:all .15s ease-in-out}._input_wx5fd_13:focus{border-color:var(--color-brand);outline:none;box-shadow:0 0 0 1px var(--color-brand)}._input_wx5fd_13:disabled{background-color:#f9fafb;color:#6b7280}._editButton_wx5fd_38{font-size:.875rem}._label_1c9qn_5{display:block;margin-bottom:.25rem;font-size:.875rem;font-weight:500;color:#374151}._inputGroup_1c9qn_13{display:flex;gap:.5rem;margin-bottom:1rem}._input_1c9qn_13{width:3rem;height:3rem;text-align:center;border-radius:.375rem;border:1px solid #d1d5db;font-size:1.125rem;font-weight:500;transition:all .15s ease-in-out}._input_1c9qn_13:focus{border-color:var(--color-brand);outline:none;box-shadow:0 0 0 1px var(--color-brand)}._resendButton_1c9qn_36{font-size:.875rem;color:var(--color-brand);background:none;border:none;cursor:pointer;transition:color .15s ease-in-out}._resendButton_1c9qn_36:hover:not(:disabled){color:var(--color-brand);opacity:.8}._resendButton_1c9qn_36:disabled{opacity:.5;cursor:not-allowed}._errorContainer_1r3k8_5{margin-bottom:1rem}._divider_1r3k8_9{margin:1rem 0;display:flex;align-items:center}._dividerLine_1r3k8_15{flex:1;height:1px;background-color:#e5e7eb}._dividerText_1r3k8_21{padding:0 .75rem;font-size:.875rem;color:#6b7280}._formSection_1r3k8_27{display:flex;flex-direction:column;gap:1rem}._fullWidthButton_1r3k8_36{width:100%}._googleButton_1r3k8_41{display:inline-flex;align-items:center;justify-content:center;width:100%;height:2.5rem;padding:0 1rem;border:1px solid var(--border);border-radius:.375rem;background:var(--background);font-size:.875rem;font-weight:500;color:var(--foreground);cursor:pointer;transition:background-color .2s}._googleButton_1r3k8_41:hover{background:var(--accent)}._googleButton_1r3k8_41:disabled{opacity:.5;cursor:not-allowed}._googleIcon_1r3k8_67{width:1.25rem;height:1.25rem;margin-right:.5rem}._errorContainer_1r3k8_5{margin-top:1rem;width:100%}._errorContent_1r3k8_79{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:oklch(from var(--destructive) l c h / .1);border:1px solid oklch(from var(--destructive) l c h / .3);border-radius:.375rem}._errorIcon_1r3k8_89{flex-shrink:0;font-size:1.125rem;color:var(--destructive);margin-top:.125rem}._errorText_1r3k8_96{flex:1;min-width:0}._errorTitle_1r3k8_101{font-size:.875rem;font-weight:600;color:var(--destructive);margin-bottom:.25rem}._errorMessage_1r3k8_108{font-size:.875rem;color:var(--destructive);line-height:1.4}._errorDismiss_1r3k8_114{flex-shrink:0;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:.25rem;color:var(--destructive);cursor:pointer;font-size:1.125rem;line-height:1;transition:background-color .2s}._errorDismiss_1r3k8_114:hover{background:oklch(from var(--destructive) l c h / .1)}._errorDismiss_1r3k8_114:focus{outline:none;background:oklch(from var(--destructive) l c h / .1);box-shadow:0 0 0 2px oklch(from var(--ring) l c h / .2)}._container_301k2_1{display:flex;flex-direction:column;gap:1rem;width:100%}._divider_301k2_8{position:relative;height:1px;width:100%;background-color:var(--border)}._dividerText_301k2_15{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);white-space:nowrap;background:var(--background);padding:0 1rem;font-size:.875rem;color:var(--muted-foreground)}._formSection_301k2_27{display:flex;flex-direction:column;gap:1rem;width:100%}._googleButton_301k2_34{display:inline-flex;align-items:center;justify-content:center;width:100%;height:2.5rem;padding:0 1rem;border:1px solid var(--border);border-radius:.375rem;background:var(--background);font-size:.875rem;font-weight:500;color:var(--foreground);cursor:pointer;transition:background-color .2s}._googleButton_301k2_34:hover{background:var(--accent)}._googleButton_301k2_34:disabled{opacity:.5;cursor:not-allowed}._googleIcon_301k2_60{width:1.25rem;height:1.25rem;margin-right:.5rem}._primaryButton_301k2_66{width:100%}._errorContainer_301k2_70{margin-top:1rem;width:100%}._errorContent_301k2_75{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:oklch(from var(--destructive) l c h / .1);border:1px solid oklch(from var(--destructive) l c h / .3);border-radius:.375rem}._errorIcon_301k2_85{flex-shrink:0;font-size:1.125rem;color:var(--destructive);margin-top:.125rem}._errorText_301k2_92{flex:1;min-width:0}._errorTitle_301k2_97{font-size:.875rem;font-weight:600;color:var(--destructive);margin-bottom:.25rem}._errorMessage_301k2_104{font-size:.875rem;color:var(--destructive);line-height:1.4}._errorDismiss_301k2_110{flex-shrink:0;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:.25rem;color:var(--destructive);cursor:pointer;font-size:1.125rem;line-height:1;transition:background-color .2s}._errorDismiss_301k2_110:hover{background:oklch(from var(--destructive) l c h / .1)}._errorDismiss_301k2_110:focus{outline:none;background:oklch(from var(--destructive) l c h / .1);box-shadow:0 0 0 2px oklch(from var(--ring) l c h / .2)}._accordionItem_ol1j4_1{overflow:hidden}._accordionItem_ol1j4_1:focus-within{position:relative;z-index:1}._accordionHeader_ol1j4_10{display:flex}._accordionTrigger_ol1j4_14{flex:1;display:flex;align-items:center;justify-content:space-between}._accordionContent_ol1j4_21{overflow:hidden}._accordionContent_ol1j4_21[data-state=open]{animation:_slideDown_ol1j4_1 .3s cubic-bezier(.87,0,.13,1)}._accordionContent_ol1j4_21[data-state=closed]{animation:_slideUp_ol1j4_1 .3s cubic-bezier(.87,0,.13,1)}._accordionChevron_ol1j4_33{flex-shrink:0;transition:transform .3s cubic-bezier(.87,0,.13,1)}._accordionTrigger_ol1j4_14[data-state=open]>._accordionChevron_ol1j4_33{transform:rotate(180deg)}@keyframes _slideDown_ol1j4_1{0%{height:0}to{height:var(--radix-accordion-content-height)}}@keyframes _slideUp_ol1j4_1{0%{height:var(--radix-accordion-content-height)}to{height:0}}._popoverContent_1lphk_1{z-index:50;width:18rem;border-radius:.375rem;border:1px solid var(--border);background-color:var(--popover);padding:1rem;color:var(--popover-foreground);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;outline:none}._popoverContent_1lphk_1[data-state=open]{animation:_fadeIn_1lphk_1 .2s ease-out,_zoomIn_1lphk_1 .2s ease-out}._popoverContent_1lphk_1[data-state=closed]{animation:_fadeOut_1lphk_1 .2s ease-out,_zoomOut_1lphk_1 .2s ease-out}._popoverContent_1lphk_1[data-side=bottom]{animation:_slideFromTop_1lphk_1 .2s ease-out}._popoverContent_1lphk_1[data-side=left]{animation:_slideFromRight_1lphk_1 .2s ease-out}._popoverContent_1lphk_1[data-side=right]{animation:_slideFromLeft_1lphk_1 .2s ease-out}._popoverContent_1lphk_1[data-side=top]{animation:_slideFromBottom_1lphk_1 .2s ease-out}@keyframes _fadeIn_1lphk_1{0%{opacity:0}to{opacity:1}}@keyframes _fadeOut_1lphk_1{0%{opacity:1}to{opacity:0}}@keyframes _zoomIn_1lphk_1{0%{transform:scale(.95)}to{transform:scale(1)}}@keyframes _zoomOut_1lphk_1{0%{transform:scale(1)}to{transform:scale(.95)}}@keyframes _slideFromTop_1lphk_1{0%{transform:translateY(-.5rem)}to{transform:translateY(0)}}@keyframes _slideFromRight_1lphk_1{0%{transform:translate(.5rem)}to{transform:translate(0)}}@keyframes _slideFromLeft_1lphk_1{0%{transform:translate(-.5rem)}to{transform:translate(0)}}@keyframes _slideFromBottom_1lphk_1{0%{transform:translateY(.5rem)}to{transform:translateY(0)}}._userMenu_366z5_1{position:relative}._userAvatar_366z5_5{cursor:pointer;transition:opacity .2s ease}._userAvatar_366z5_5:hover{opacity:.8}._avatarCircle_366z5_14{width:40px;height:40px;border-radius:50%;background:var(--color-brand);display:flex;align-items:center;justify-content:center;color:var(--color-brand-foreground);font-weight:600;font-size:14px;-webkit-user-select:none;user-select:none}._userMenuPopover_366z5_28{width:250px;padding:0;border-radius:8px;box-shadow:0 10px 38px -10px #16171859,0 10px 20px -15px #16171833;background:#fff;border:1px solid #e5e7eb}._userMenuHeader_366z5_39{padding:16px;border-bottom:1px solid #f3f4f6}._userInfo_366z5_44{display:flex;align-items:center;gap:12px}._userAvatarSmall_366z5_50{width:32px;height:32px;border-radius:50%;background:var(--color-brand);display:flex;align-items:center;justify-content:center;color:var(--color-brand-foreground);font-weight:600;font-size:12px;-webkit-user-select:none;user-select:none}._userDetails_366z5_64{flex:1;min-width:0}._userName_366z5_69{font-weight:600;font-size:14px;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._userEmail_366z5_78{font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._userMenuActions_366z5_86{padding:8px}._userMenuItem_366z5_90{width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;border:none;background:none;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:14px;color:#374151;text-align:left}._userMenuItem_366z5_90:hover{background-color:#f9fafb;color:#111827}._userMenuItem_366z5_90:active{background-color:#f3f4f6}._logoutItem_366z5_115:hover{background-color:#fef2f2;color:#dc2626}._logoutItem_366z5_115:active{background-color:#fee2e2}._spinner_366z5_124{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:_spin_366z5_124 1s linear infinite}@keyframes _spin_366z5_124{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._userMenuItem_366z5_90:disabled{opacity:.6;cursor:not-allowed}._userMenuItem_366z5_90:disabled:hover{background-color:transparent;color:inherit}._logoutItem_366z5_115:disabled:hover{background-color:transparent;color:inherit}._loadingContainer_1d4on_1{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;gap:1rem;font-size:1.4rem;z-index:50}
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { o as s, l as o, A as t, n as r, s as n, av as i, au as g, a as c, h as l, k as u, r as C, t as d, a5 as m, ac as T, B as S, b as h, c as A, d as P, e as p, g as B, f as E, C as v, ah as f, at as L, F as k, H as I, a6 as R, j as y, I as M, i as b, a2 as H, aa as K, ab as O, L as V, M as x, aw as _, ax as F, q as N, P as U, p as D, ag as G, S as w, ai as z, a3 as W, a4 as j, T as q, U as J, ad as X, af as Q, a8 as Y, ae as Z, ao as $, an as aa, a1 as ea, G as sa, a9 as oa, N as ta, a7 as ra, ar as na, K as ia, J as ga, az as ca, aA as la, am as ua, y as Ca, aq as da, ak as ma, ay as Ta, _ as Sa, z as ha, Z as Aa, Y as Pa, a0 as pa, W as Ba, $ as Ea, al as va, as as fa, aj as La, V as ka, X as Ia, aB as Ra, D as ya, x as Ma, w as ba, u as Ha, v as Ka, R as Oa, ap as Va, O as xa, Q as _a, E as Fa } from "./index-CS6HcUVk.js";
1
+ import { q as s, o, A as t, p as r, w as n, az as i, ay as g, b as c, d as l, j as C, n as u, v as d, x as S, a8 as T, af as m, B as A, c as E, e as P, f as h, g as B, i as p, h as v, C as f, al as L, ax as k, F as I, H as M, a9 as R, l as y, I as b, k as H, a5 as K, ad as O, ae as V, t as _, aj as x, M as F, aA as D, aB as G, s as N, P as U, r as w, ak as z, S as W, am as j, a6 as q, a7 as J, T as X, U as Y, ag as Q, ai as Z, ab as $, ah as aa, as as ea, ar as sa, a4 as oa, N as ta, ac as ra, R as na, aa as ia, av as ga, Q as ca, O as la, aD as Ca, aE as ua, aq as da, E as Sa, au as Ta, ao as ma, aC as Aa, a1 as Ea, G as Pa, a0 as ha, $ as Ba, a3 as pa, Z as va, a2 as fa, ap as La, aw as ka, an as Ia, Y as Ma, _ as Ra, aF as ya, J as ba, D as Ha, z as Ka, u as Oa, y as Va, X as _a, at as xa, V as Fa, W as Da, K as Ga } from "./index-2NFcpkxw.js";
2
2
  export {
3
3
  s as AccordionContent,
4
4
  o as AccordionItem,
@@ -8,87 +8,89 @@ export {
8
8
  i as BUILT_IN_PRESETS,
9
9
  g as BackgroundEffects,
10
10
  c as BaseButton,
11
- l as BaseHeading,
11
+ l as BaseContainer,
12
+ C as BaseHeading,
12
13
  u as BaseTypography,
13
- C as BaseUserMenu,
14
- d as BlockProvider,
15
- m as BlockSourceModuleList,
16
- T as BlocksRegistry,
17
- S as Box,
18
- h as Button,
19
- A as Carousel,
20
- P as CarouselContent,
21
- p as CarouselItem,
22
- B as CarouselNext,
23
- E as CarouselPrevious,
24
- v as Container,
25
- f as DATA_ATTRIBUTES,
26
- L as DEFAULT_THEME,
27
- k as Form,
28
- I as Heading,
14
+ d as BaseUserMenu,
15
+ S as BlockProvider,
16
+ T as BlockSourceModuleList,
17
+ m as BlocksRegistry,
18
+ A as Box,
19
+ E as Button,
20
+ P as Carousel,
21
+ h as CarouselContent,
22
+ B as CarouselItem,
23
+ p as CarouselNext,
24
+ v as CarouselPrevious,
25
+ f as Container,
26
+ L as DATA_ATTRIBUTES,
27
+ k as DEFAULT_THEME,
28
+ I as Form,
29
+ M as Heading,
29
30
  R as IMembershipAuthenticationMethods,
30
31
  y as Icon,
31
- M as Iframe,
32
- b as Image,
33
- H as KindList,
34
- K as LevoBlock,
35
- O as LevoPage,
36
- V as Link,
37
- x as Media,
38
- _ as PRESET_CATEGORIES,
39
- F as PRESET_MAP,
32
+ b as Iframe,
33
+ H as Image,
34
+ K as KindList,
35
+ O as LevoBlock,
36
+ V as LevoPage,
37
+ _ as Link,
38
+ x as MESSAGE_TYPES,
39
+ F as Media,
40
+ D as PRESET_CATEGORIES,
41
+ G as PRESET_MAP,
40
42
  N as PopoverContent,
41
43
  U as PopoverRoot,
42
- D as PopoverTrigger,
43
- G as PreviewHighlighter,
44
- w as Section,
45
- z as StudioPreview,
46
- W as StudioWidgetList,
47
- j as StudioWidgetMap,
48
- q as Typography,
49
- J as UserMenu,
50
- X as blocksRegistry,
51
- Q as colorOptions,
52
- Y as convertKeysToPascalCase,
53
- Z as cssOptionsMap,
54
- $ as fetchCollectionSchema,
55
- aa as fetchSource,
56
- ea as generateAccentColor,
57
- sa as generateAnimationProps,
58
- oa as generateDefaultContent,
59
- ta as generateElementClassName,
60
- ra as generateSchemaFromJSX,
61
- na as generateThemeVariables,
62
- ia as generateVariantClasses,
63
- ga as getAnimateValue,
64
- ca as getAvailableCategories,
65
- la as getEffectConfigFromPresetId,
66
- ua as getInitialPageContent,
67
- Ca as getNestedValue,
68
- da as getPageData,
44
+ w as PopoverTrigger,
45
+ z as PreviewHighlighter,
46
+ W as Section,
47
+ j as StudioPreview,
48
+ q as StudioWidgetList,
49
+ J as StudioWidgetMap,
50
+ X as Typography,
51
+ Y as UserMenu,
52
+ Q as blocksRegistry,
53
+ Z as colorOptions,
54
+ $ as convertKeysToPascalCase,
55
+ aa as cssOptionsMap,
56
+ ea as fetchCollectionSchema,
57
+ sa as fetchSource,
58
+ oa as generateAccentColor,
59
+ ta as generateAnimationProps,
60
+ ra as generateDefaultContent,
61
+ na as generateElementClassName,
62
+ ia as generateSchemaFromJSX,
63
+ ga as generateThemeVariables,
64
+ ca as generateVariantClasses,
65
+ la as getAnimateValue,
66
+ Ca as getAvailableCategories,
67
+ ua as getEffectConfigFromPresetId,
68
+ da as getInitialPageContent,
69
+ Sa as getNestedValue,
70
+ Ta as getPageData,
69
71
  ma as getPageSource,
70
- Ta as getPresetsByCategory,
71
- Sa as hexToOKLCH,
72
- ha as isConfigWithVariants,
73
- Aa as isValidOKLCH,
74
- Pa as oklchStringToRGBA,
72
+ Aa as getPresetsByCategory,
73
+ Ea as hexToOKLCH,
74
+ Pa as isConfigWithVariants,
75
+ ha as isValidOKLCH,
76
+ Ba as oklchStringToRGBA,
75
77
  pa as oklchToRGBA,
76
- Ba as oklchToString,
77
- Ea as parseOKLCHString,
78
- va as parseVariablesFromResolvedSource,
79
- fa as processTheme,
80
- La as resolveVariables,
81
- ka as rgbaToOKLCH,
82
- Ia as rgbaToOKLCHString,
83
- Ra as sanitizeBackgroundEffectConfig,
84
- ya as sanitizeElementKey,
85
- Ma as setStudioLevoClient,
86
- ba as studioLevoClient,
87
- Ha as useAuth,
88
- Ka as useBlockContext,
89
- Oa as useCommonProps,
90
- Va as useContentEngine,
91
- xa as useGeneratedClassName,
92
- _a as useMotionComponent,
93
- Fa as useStableAnimationConfig
78
+ va as oklchToString,
79
+ fa as parseOKLCHString,
80
+ La as parseVariablesFromResolvedSource,
81
+ ka as processTheme,
82
+ Ia as resolveVariables,
83
+ Ma as rgbaToOKLCH,
84
+ Ra as rgbaToOKLCHString,
85
+ ya as sanitizeBackgroundEffectConfig,
86
+ ba as sanitizeElementKey,
87
+ Ha as setStudioLevoClient,
88
+ Ka as studioLevoClient,
89
+ Oa as useAuth,
90
+ Va as useBlockContext,
91
+ _a as useCommonProps,
92
+ xa as useContentEngine,
93
+ Fa as useGeneratedClassName,
94
+ Da as useMotionComponent,
95
+ Ga as useStableAnimationConfig
94
96
  };
@@ -0,0 +1 @@
1
+ ._header_s7k8g_1{text-align:center;margin-bottom:2rem;padding:0 2rem}._title_s7k8g_7{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0 0 .5rem}._subtitle_s7k8g_14{color:#6b7280;margin:0;line-height:1.5}._formWrapper_s7k8g_20{padding:0 2rem}@media (max-width: 640px){._header_s7k8g_1,._formWrapper_s7k8g_20{padding:0 1.5rem}._title_s7k8g_7{font-size:1.25rem}}
@@ -0,0 +1 @@
1
+ ._header_emo7t_1{text-align:center;margin-bottom:1rem;flex-shrink:0;padding:0 2rem}._title_emo7t_8{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0 0 .5rem}._subtitle_emo7t_15{color:#6b7280;margin:0;line-height:1.5}._formContainer_emo7t_21{flex:1;margin-top:1rem;padding:0 2rem}@media (max-width: 640px){._header_emo7t_1,._formContainer_emo7t_21{padding:0 1.5rem}._title_emo7t_8{font-size:1.25rem}}
@@ -0,0 +1 @@
1
+ ._header_1vjty_1{margin-bottom:1.5rem;padding:0 2rem}._iconContainer_1vjty_6{display:flex;justify-content:center;margin-bottom:1rem}._icon_1vjty_6{width:3rem;height:3rem;color:#000}._title_1vjty_18{font-size:1.5rem;font-weight:600;color:var(--color-text-1);text-align:center;margin:0 0 .5rem}._subtitle_1vjty_26{color:var(--color-text-2);text-align:center;margin:0;line-height:1.5}._messageContainer_1vjty_33{padding:1rem;background:#f9fafb;border-radius:.5rem;border-left:4px solid #ef4444;margin:0 2rem 2rem}._message_1vjty_33{color:#374151;margin:0;line-height:1.6}@media (max-width: 640px){._header_1vjty_1{padding:0 1.5rem}._messageContainer_1vjty_33{margin:0 1.5rem}._icon_1vjty_6{width:2.5rem;height:2.5rem}._title_1vjty_18{font-size:1.25rem}}
@@ -0,0 +1 @@
1
+ ._footnote_v8hnh_1{margin:0 2rem;padding-top:1rem;border-top:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between;gap:1rem}._footnoteText_v8hnh_11{font-size:.875rem;color:#6b7280;flex:1}._logoutButton_v8hnh_17{padding:.25rem .75rem;font-size:.875rem;font-weight:500;color:#374151;background:transparent;border:1px solid #d1d5db;border-radius:.375rem;cursor:pointer;transition:all .2s;white-space:nowrap}._logoutButton_v8hnh_17:hover{background:#f3f4f6;border-color:#9ca3af}._logoutButton_v8hnh_17:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 640px){._footnote_v8hnh_1{margin:1.5rem 1.5rem 0;flex-direction:column;align-items:flex-start;gap:.5rem}._footnoteText_v8hnh_11{font-size:.8125rem}._logoutButton_v8hnh_17{align-self:stretch;text-align:center}}
@@ -0,0 +1 @@
1
+ ._container_t4trl_1{position:fixed;top:0;left:0;right:0;bottom:0;background:color-mix(in oklch,var(--color-brand) 5%,transparent);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:50}._card_t4trl_16{background:#fff;border-radius:1rem;box-shadow:0 25px 50px #0000001a;width:100%;overflow:hidden;max-height:90vh;display:flex;flex-direction:column}._cardSm_t4trl_27{max-width:28rem}._cardMd_t4trl_31{max-width:32rem}._cardLg_t4trl_35{max-width:36rem}._logoContainer_t4trl_39{display:flex;justify-content:center;padding:2rem 2rem 1rem;background:color-mix(in oklch,var(--color-brand) 15%,transparent);flex-shrink:0}._logo_t4trl_39{height:3rem;width:auto;object-fit:contain}._content_t4trl_53{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:2rem 0}@media (max-width: 640px){._container_t4trl_1{padding:.5rem}._card_t4trl_16{max-width:100%;max-height:95vh}._content_t4trl_53{padding:1.5rem 0}._logoContainer_t4trl_39{padding:1.5rem 1.5rem 1rem}._logo_t4trl_39{height:2.5rem}}
@@ -1,6 +1,6 @@
1
- import { IBlockSource, IFieldConfig } from './levoBlock';
2
1
  import { ComponentType, LazyExoticComponent } from 'react';
3
2
  import { CSSStyleKeys } from '../pixel/propertyMap';
3
+ import { IBlockSource, IFieldConfig } from './levoBlock';
4
4
  export type IStyles = {
5
5
  [key in CSSStyleKeys]?: string;
6
6
  } & {
@@ -6,7 +6,7 @@ export interface IBlockLayouts {
6
6
  title: string;
7
7
  styles: IElementStyle;
8
8
  content: any;
9
- config: Record<string, IFieldConfig>;
9
+ config: any;
10
10
  }
11
11
  export interface IBlock {
12
12
  category_id: string;
@@ -174,7 +174,7 @@ export interface IBlockInstance {
174
174
  };
175
175
  layout: string | null;
176
176
  category: string;
177
- config: Record<string, IFieldConfig>;
177
+ config: Record<string, IFieldConfig | Record<string, IFieldConfig>[]>;
178
178
  styles: IElementStyle;
179
179
  theme: Record<string, any>;
180
180
  view_count: number;
@@ -23,6 +23,10 @@ export interface IPageStatMetric {
23
23
  past: number | null;
24
24
  change: number | null;
25
25
  }
26
+ export interface IPageSettings {
27
+ structured_data_json?: string;
28
+ [key: string]: any;
29
+ }
26
30
  export interface IPage {
27
31
  id: string;
28
32
  workspace_id: string;
@@ -38,10 +42,7 @@ export interface IPage {
38
42
  tags: IStudioTags[];
39
43
  pagespeed_score: IPageSpeedData;
40
44
  access: IPageAccess[];
41
- settings: {
42
- structured_data_json?: string;
43
- [key: string]: any;
44
- };
45
+ settings: IPageSettings;
45
46
  theme: {
46
47
  colors: {
47
48
  brand: {
@@ -89,7 +90,7 @@ export type IPageKind = "blog.page" | "collection.page" | "event.page" | "static
89
90
  export interface IPageExpanded extends IPage {
90
91
  workspace: IWorkspace;
91
92
  site: ISite;
92
- source?: IPageSource[];
93
+ source: IPageSource[];
93
94
  kind: IPageKind;
94
95
  blocks: (IBlockInstance & {
95
96
  isPreview?: boolean;
@@ -1,6 +1,6 @@
1
1
  import { ComponentType } from 'react';
2
- import { IFieldConfig, AnimationConfig } from '../interfaces';
3
2
  import { MotionProps } from 'motion/react';
3
+ import { IFieldConfig, AnimationConfig } from '../interfaces';
4
4
  type MutableDeep<T> = T extends object ? {
5
5
  -readonly [K in keyof T]: MutableDeep<T[K]>;
6
6
  } : T;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@levo-so/studio",
3
- "version": "0.1.7",
3
+ "version": "0.1.8",
4
4
  "author": "Levo Engineering <devs@theinternetfolks.com>",
5
5
  "description": "Levo Studio components and utilities for building block-based pages",
6
6
  "type": "module",
@@ -29,9 +29,7 @@
29
29
  },
30
30
  "dependencies": {
31
31
  "@emotion/is-prop-valid": "1.3.1",
32
- "@radix-ui/react-accordion": "1.2.0",
33
- "@radix-ui/react-dialog": "1.1.1",
34
- "@radix-ui/react-popover": "1.1.1",
32
+ "radix-ui": "1.4.3",
35
33
  "@theinternetfolks/mate": "1.0.4",
36
34
  "class-variance-authority": "0.7.0",
37
35
  "culori": "4.0.1",