@levo-so/studio 0.1.7 → 0.1.52
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.
- package/dist/{Beams-CS3YOY03.js → Beams-CzAwDqou.js} +1 -1
- package/dist/{Dots-ZOcduxeG.js → Dots-BgmklWE-.js} +1 -1
- package/dist/{Gradient-cEvo0m5K.js → Gradient-Cr9szXfL.js} +1 -1
- package/dist/{Grid-IxhqSV77.js → Grid-Cd1uINyX.js} +1 -1
- package/dist/{Waves-Dc0a0Nd8.js → Waves-Q3gpYuM2.js} +57 -13
- package/dist/bridge/StudioBlockPreview.d.ts +2 -1
- package/dist/bridge/StudioPagePreview.d.ts +4 -1
- package/dist/bridge/StudioPreview.d.ts +4 -1
- package/dist/bridge/constants.d.ts +12 -0
- package/dist/bridge/index.d.ts +1 -0
- package/dist/bridge/utils.d.ts +1 -0
- package/dist/components/LoginForm/GoogleOAuth.d.ts +1 -1
- package/dist/components/accessCard/card/index.d.ts +1 -1
- package/dist/components/backgroundPresets/Gradient.d.ts +1 -1
- package/dist/components/backgroundPresets/presetSystem.d.ts +1 -1
- package/dist/components/registerModal/RegisterModal.d.ts +6 -0
- package/dist/components/registerModal/RegistrationConfirmationModal.d.ts +8 -0
- package/dist/components/registerModal/useCustomDisclosure.d.ts +18 -0
- package/dist/components/registerModal/utils.d.ts +2 -0
- package/dist/contentEngine/config.d.ts +5 -1
- package/dist/contentEngine/content.d.ts +30 -6
- package/dist/contentEngine/getPage.d.ts +3 -1
- package/dist/contentEngine/head_code.d.ts +2 -2
- package/dist/contentEngine/sourceFetcher.d.ts +8 -5
- package/dist/contentEngine/types.d.ts +2 -1
- package/dist/contentEngine/urlBuilder.d.ts +7 -1
- package/dist/core/AccessManager/index.d.ts +4 -2
- package/dist/core/LevoPage.d.ts +7 -4
- package/dist/elements/Container.d.ts +1 -0
- package/dist/elements/accordion/index.d.ts +1 -1
- package/dist/elements/dialog/index.d.ts +1 -1
- package/dist/elements/popover/index.d.ts +1 -1
- package/dist/index-4Hm8Nq1K.js +54 -0
- package/dist/index-BEa73Nqa.js +49 -0
- package/dist/index-CICXXChN.js +10185 -0
- package/dist/index-CpL9yDVW.js +30 -0
- package/dist/index-DHHPZcEh.js +38 -0
- package/dist/index-FPch-n1w.js +23 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +82 -80
- package/dist/interfaces/block.d.ts +1 -1
- package/dist/interfaces/levoBlock.d.ts +8 -4
- package/dist/interfaces/site.d.ts +6 -7
- package/dist/providers/BlockContext.d.ts +1 -0
- package/dist/studio.css +1 -0
- package/dist/utils/index.d.ts +0 -1
- package/dist/utils/withBlockPropsUtils.d.ts +1 -1
- package/package.json +8 -7
- package/dist/index-CS6HcUVk.js +0 -9640
- package/dist/index.css +0 -1
- package/dist/utils/levoClient.d.ts +0 -5
|
@@ -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-CICXXChN.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,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,23 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsxs as r, jsx as t } from "react/jsx-runtime";
|
|
3
|
+
import { L as i } from "./index-CICXXChN.js";
|
|
4
|
+
import { A as n } from "./index-DHHPZcEh.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.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { q as s, o, A as t, p as r, w as n, ay as i, ax as g, b as l, d as c, j as C, n as u, v as d, x as S, a6 as T, ad as m, B as A, c as E, e as P, f as h, g as B, i as p, h as f, C as v, aj as k, aw as M, F as R, H as y, a7 as I, l as L, I as b, k as H, a3 as K, ab as O, ac as V, t as _, ah as x, M as F, az as D, aA as G, s as N, P as U, r as w, ai as z, aF as W, S as j, ak as q, a4 as J, a5 as X, T as Y, U as Q, ae as Z, ag as $, a9 as aa, af as ea, ar as sa, aq as oa, a2 as ta, J as ra, aa as na, O as ia, a8 as ga, au as la, N as ca, K as Ca, aC as ua, aD as da, ap as Sa, z as Ta, at as ma, an as Aa, aB as Ea, $ as Pa, D as ha, _ as Ba, Z as pa, a1 as fa, X as va, a0 as ka, ao as Ma, av as Ra, am as ya, al as Ia, W as La, Y as ba, aE as Ha, E as Ka, u as Oa, y as Va, V as _a, as as xa, Q as Fa, R as Da, G as Ga } from "./index-CICXXChN.js";
|
|
2
2
|
export {
|
|
3
3
|
s as AccordionContent,
|
|
4
4
|
o as AccordionItem,
|
|
@@ -7,88 +7,90 @@ export {
|
|
|
7
7
|
n as AuthProvider,
|
|
8
8
|
i as BUILT_IN_PRESETS,
|
|
9
9
|
g as BackgroundEffects,
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
l as BaseButton,
|
|
11
|
+
c as BaseContainer,
|
|
12
|
+
C as BaseHeading,
|
|
12
13
|
u as BaseTypography,
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
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
|
+
f as CarouselPrevious,
|
|
24
25
|
v as Container,
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
x as
|
|
38
|
-
|
|
39
|
-
|
|
26
|
+
k as DATA_ATTRIBUTES,
|
|
27
|
+
M as DEFAULT_THEME,
|
|
28
|
+
R as Form,
|
|
29
|
+
y as Heading,
|
|
30
|
+
I as IMembershipAuthenticationMethods,
|
|
31
|
+
L as Icon,
|
|
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
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
ma as
|
|
70
|
-
|
|
71
|
-
|
|
44
|
+
w as PopoverTrigger,
|
|
45
|
+
z as PreviewHighlighter,
|
|
46
|
+
W as RegisterModal,
|
|
47
|
+
j as Section,
|
|
48
|
+
q as StudioPreview,
|
|
49
|
+
J as StudioWidgetList,
|
|
50
|
+
X as StudioWidgetMap,
|
|
51
|
+
Y as Typography,
|
|
52
|
+
Q as UserMenu,
|
|
53
|
+
Z as blocksRegistry,
|
|
54
|
+
$ as colorOptions,
|
|
55
|
+
aa as convertKeysToPascalCase,
|
|
56
|
+
ea as cssOptionsMap,
|
|
57
|
+
sa as fetchCollectionSchema,
|
|
58
|
+
oa as fetchSource,
|
|
59
|
+
ta as generateAccentColor,
|
|
60
|
+
ra as generateAnimationProps,
|
|
61
|
+
na as generateDefaultContent,
|
|
62
|
+
ia as generateElementClassName,
|
|
63
|
+
ga as generateSchemaFromJSX,
|
|
64
|
+
la as generateThemeVariables,
|
|
65
|
+
ca as generateVariantClasses,
|
|
66
|
+
Ca as getAnimateValue,
|
|
67
|
+
ua as getAvailableCategories,
|
|
68
|
+
da as getEffectConfigFromPresetId,
|
|
69
|
+
Sa as getInitialPageContent,
|
|
70
|
+
Ta as getNestedValue,
|
|
71
|
+
ma as getPageData,
|
|
72
|
+
Aa as getPageSource,
|
|
73
|
+
Ea as getPresetsByCategory,
|
|
74
|
+
Pa as hexToOKLCH,
|
|
72
75
|
ha as isConfigWithVariants,
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
Fa as useStableAnimationConfig
|
|
76
|
+
Ba as isValidOKLCH,
|
|
77
|
+
pa as oklchStringToRGBA,
|
|
78
|
+
fa as oklchToRGBA,
|
|
79
|
+
va as oklchToString,
|
|
80
|
+
ka as parseOKLCHString,
|
|
81
|
+
Ma as parseVariablesFromResolvedSource,
|
|
82
|
+
Ra as processTheme,
|
|
83
|
+
ya as resolveStyles,
|
|
84
|
+
Ia as resolveVariables,
|
|
85
|
+
La as rgbaToOKLCH,
|
|
86
|
+
ba as rgbaToOKLCHString,
|
|
87
|
+
Ha as sanitizeBackgroundEffectConfig,
|
|
88
|
+
Ka as sanitizeElementKey,
|
|
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
|
};
|
|
@@ -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:
|
|
9
|
+
config: any;
|
|
10
10
|
}
|
|
11
11
|
export interface IBlock {
|
|
12
12
|
category_id: string;
|
|
@@ -131,8 +131,6 @@ export interface IFieldConfig {
|
|
|
131
131
|
};
|
|
132
132
|
backgroundEffects?: BackgroundEffectConfig;
|
|
133
133
|
backgroundPresetId?: string;
|
|
134
|
-
action_type?: "link" | "email" | "phone" | "login" | "none";
|
|
135
|
-
action_value?: string;
|
|
136
134
|
carousel?: {
|
|
137
135
|
autoScroll?: boolean;
|
|
138
136
|
loop?: boolean;
|
|
@@ -145,6 +143,9 @@ export interface IFieldConfig {
|
|
|
145
143
|
};
|
|
146
144
|
image?: {
|
|
147
145
|
high_priority?: boolean;
|
|
146
|
+
width?: string;
|
|
147
|
+
height?: string;
|
|
148
|
+
alt?: string;
|
|
148
149
|
};
|
|
149
150
|
media?: {
|
|
150
151
|
autoPlay?: boolean;
|
|
@@ -153,6 +154,9 @@ export interface IFieldConfig {
|
|
|
153
154
|
loop?: boolean;
|
|
154
155
|
poster?: IMediaObject;
|
|
155
156
|
high_priority?: boolean;
|
|
157
|
+
width?: string;
|
|
158
|
+
height?: string;
|
|
159
|
+
alt?: string;
|
|
156
160
|
};
|
|
157
161
|
custom_html?: {
|
|
158
162
|
before?: string;
|
|
@@ -174,7 +178,7 @@ export interface IBlockInstance {
|
|
|
174
178
|
};
|
|
175
179
|
layout: string | null;
|
|
176
180
|
category: string;
|
|
177
|
-
config: Record<string, IFieldConfig>;
|
|
181
|
+
config: Record<string, IFieldConfig | Record<string, IFieldConfig>[]>;
|
|
178
182
|
styles: IElementStyle;
|
|
179
183
|
theme: Record<string, any>;
|
|
180
184
|
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: {
|
|
@@ -87,9 +88,7 @@ export interface IPageMeta {
|
|
|
87
88
|
}
|
|
88
89
|
export type IPageKind = "blog.page" | "collection.page" | "event.page" | "static";
|
|
89
90
|
export interface IPageExpanded extends IPage {
|
|
90
|
-
|
|
91
|
-
site: ISite;
|
|
92
|
-
source?: IPageSource[];
|
|
91
|
+
source: IPageSource[];
|
|
93
92
|
kind: IPageKind;
|
|
94
93
|
blocks: (IBlockInstance & {
|
|
95
94
|
isPreview?: boolean;
|
package/dist/studio.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
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_11r7a_5{margin-bottom:1rem}._divider_11r7a_9{margin:1rem 0;display:flex;align-items:center}._dividerLine_11r7a_15{flex:1;height:1px;background-color:#e5e7eb}._dividerText_11r7a_21{padding:0 .75rem;font-size:.875rem;color:#6b7280}._formSection_11r7a_27{display:flex;flex-direction:column;gap:1rem}._fullWidthButton_11r7a_36{width:100%}._oauthContainer_11r7a_41{display:flex;flex:1;flex-direction:column;gap:.5rem;justify-content:space-evenly;align-items:center}._oauthContainer_11r7a_41>div{width:100%}._googleButton_11r7a_54{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_11r7a_54:hover{background:var(--accent)}._googleButton_11r7a_54:disabled{opacity:.5;cursor:not-allowed}._googleIcon_11r7a_80{width:1.25rem;height:1.25rem;margin-right:.5rem}._errorContainer_11r7a_5{margin-top:1rem;width:100%}._errorContent_11r7a_92{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_11r7a_102{flex-shrink:0;font-size:1.125rem;color:var(--destructive);margin-top:.125rem}._errorText_11r7a_109{flex:1;min-width:0}._errorTitle_11r7a_114{font-size:.875rem;font-weight:600;color:var(--destructive);margin-bottom:.25rem}._errorMessage_11r7a_121{font-size:.875rem;color:var(--destructive);line-height:1.4}._errorDismiss_11r7a_127{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_11r7a_127:hover{background:oklch(from var(--destructive) l c h / .1)}._errorDismiss_11r7a_127: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}._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}}._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}._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;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}}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -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.
|
|
3
|
+
"version": "0.1.52",
|
|
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,23 +29,24 @@
|
|
|
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",
|
|
35
32
|
"@theinternetfolks/mate": "1.0.4",
|
|
36
33
|
"class-variance-authority": "0.7.0",
|
|
37
34
|
"culori": "4.0.1",
|
|
35
|
+
"dayjs": "1.11.12",
|
|
38
36
|
"deepmerge-ts": "7.1.5",
|
|
39
37
|
"embla-carousel-auto-scroll": "8.1.8",
|
|
40
38
|
"embla-carousel-autoplay": "8.6.0",
|
|
41
39
|
"embla-carousel-react": "8.1.8",
|
|
42
40
|
"embla-carousel-wheel-gestures": "8.0.1",
|
|
43
41
|
"fast-deep-equal": "3.1.3",
|
|
42
|
+
"formik": "2.4.6",
|
|
44
43
|
"html-react-parser": "5.1.12",
|
|
45
44
|
"isomorphic-dompurify": "2.14.0",
|
|
46
45
|
"lucide-react": "0.424.0",
|
|
47
46
|
"motion": "12.23.12",
|
|
47
|
+
"radix-ui": "1.4.3",
|
|
48
48
|
"react-icons": "5.2.1",
|
|
49
|
+
"react-razorpay": "3.0.1",
|
|
49
50
|
"use-debounce": "10.0.2"
|
|
50
51
|
},
|
|
51
52
|
"devDependencies": {
|
|
@@ -58,8 +59,8 @@
|
|
|
58
59
|
"@types/react-dom": "19.1.6",
|
|
59
60
|
"@vitejs/plugin-react": "4.3.4",
|
|
60
61
|
"rollup-preserve-directives": "1.1.1",
|
|
61
|
-
"typescript": "5.8.
|
|
62
|
-
"vite": "6.
|
|
62
|
+
"typescript": "5.8.3",
|
|
63
|
+
"vite": "6.3.3",
|
|
63
64
|
"vite-plugin-dts": "4.1.0"
|
|
64
65
|
},
|
|
65
66
|
"main": "./dist/index.js",
|
|
@@ -70,6 +71,6 @@
|
|
|
70
71
|
"types": "./dist/index.d.ts",
|
|
71
72
|
"default": "./dist/index.js"
|
|
72
73
|
},
|
|
73
|
-
"./index.css": "./dist/
|
|
74
|
+
"./index.css": "./dist/studio.css"
|
|
74
75
|
}
|
|
75
76
|
}
|