@simple-builder/react 1.0.4 → 1.0.6
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/{builder-content-YW6SKGMM.css → build-container-client-2WP7AN5U.css} +21 -0
- package/dist/{build-container-client-PDM3LRIQ.js → build-container-client-B6ZYGDJF.js} +622 -537
- package/dist/{build-container-client-Y55WZE6M.mjs → build-container-client-F3SDJONS.mjs} +644 -559
- package/dist/{builder-content-GELONUMY.mjs → builder-content-36BOBBAF.mjs} +2 -2
- package/dist/{builder-content-QNCUQJUB.js → builder-content-3LSJER2M.js} +7 -7
- package/dist/{build-container-client-QJL5MQR6.css → builder-content-XM6XI2VA.css} +21 -0
- package/dist/{chunk-KOBGFPWB.js → chunk-4NWAJBFM.js} +3 -3
- package/dist/{chunk-NP2NHVJP.mjs → chunk-DOQHCW2T.mjs} +2 -2
- package/dist/{chunk-EQMVGJ6X.mjs → chunk-JF244SXI.mjs} +18 -21
- package/dist/{chunk-J36K7WVK.js → chunk-NVOLMEIV.js} +55 -20
- package/dist/{chunk-BSE6WW6Q.mjs → chunk-PIRC2EWS.mjs} +55 -21
- package/dist/{chunk-XEMUNFCV.js → chunk-TQITQHDC.js} +21 -24
- package/dist/index.css +21 -0
- package/dist/index.js +6 -6
- package/dist/index.mjs +2 -2
- package/package.json +3 -3
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BuilderProvider, useBuilder, Button } from './chunk-
|
|
2
|
-
import { BuildContainer } from './chunk-
|
|
1
|
+
import { BuilderProvider, useBuilder, Button } from './chunk-JF244SXI.mjs';
|
|
2
|
+
import { BuildContainer } from './chunk-PIRC2EWS.mjs';
|
|
3
3
|
import * as React2 from 'react';
|
|
4
4
|
|
|
5
5
|
var BuilderHeader = () => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
3
|
+
var chunkTQITQHDC_js = require('./chunk-TQITQHDC.js');
|
|
4
|
+
var chunkNVOLMEIV_js = require('./chunk-NVOLMEIV.js');
|
|
5
5
|
var React2 = require('react');
|
|
6
6
|
|
|
7
7
|
function _interopNamespace(e) {
|
|
@@ -25,17 +25,17 @@ function _interopNamespace(e) {
|
|
|
25
25
|
var React2__namespace = /*#__PURE__*/_interopNamespace(React2);
|
|
26
26
|
|
|
27
27
|
var BuilderHeader = () => {
|
|
28
|
-
const { save } =
|
|
29
|
-
return /* @__PURE__ */ React2__namespace.createElement("div", { className: "sb-grid sb-grid-cols-3 sb-gap-4 sb-items-center sb-p-2 sb-shadow-lg sb-sticky sb-inset-x-0 sb-top-0 sb-bg-background sb-z-30" }, /* @__PURE__ */ React2__namespace.createElement("div", { className: "sb-flex sb-gap-4 sb-items-center" }, /* @__PURE__ */ React2__namespace.createElement(
|
|
28
|
+
const { save } = chunkTQITQHDC_js.useBuilder();
|
|
29
|
+
return /* @__PURE__ */ React2__namespace.createElement("div", { className: "sb-grid sb-grid-cols-3 sb-gap-4 sb-items-center sb-p-2 sb-shadow-lg sb-sticky sb-inset-x-0 sb-top-0 sb-bg-background sb-z-30" }, /* @__PURE__ */ React2__namespace.createElement("div", { className: "sb-flex sb-gap-4 sb-items-center" }, /* @__PURE__ */ React2__namespace.createElement(chunkTQITQHDC_js.Button, { variant: "ghost", size: "sm", onClick: save }, "Opslaan")));
|
|
30
30
|
};
|
|
31
31
|
|
|
32
32
|
// src/components/builder-content.tsx
|
|
33
33
|
var BuilderContent = (props) => {
|
|
34
|
-
return /* @__PURE__ */ React2__namespace.createElement(
|
|
34
|
+
return /* @__PURE__ */ React2__namespace.createElement(chunkTQITQHDC_js.BuilderProvider, { content: props.content }, /* @__PURE__ */ React2__namespace.createElement(BuilderContentInner, null));
|
|
35
35
|
};
|
|
36
36
|
var BuilderContentInner = () => {
|
|
37
|
-
const { content } =
|
|
38
|
-
return /* @__PURE__ */ React2__namespace.createElement(React2__namespace.Fragment, null, /* @__PURE__ */ React2__namespace.createElement(BuilderHeader, null), /* @__PURE__ */ React2__namespace.createElement(
|
|
37
|
+
const { content } = chunkTQITQHDC_js.useBuilder();
|
|
38
|
+
return /* @__PURE__ */ React2__namespace.createElement(React2__namespace.Fragment, null, /* @__PURE__ */ React2__namespace.createElement(BuilderHeader, null), /* @__PURE__ */ React2__namespace.createElement(chunkNVOLMEIV_js.BuildContainer, { name: "root", edit: true, multiple: true, content }));
|
|
39
39
|
};
|
|
40
40
|
var builder_content_default = BuilderContent;
|
|
41
41
|
|
|
@@ -466,6 +466,9 @@
|
|
|
466
466
|
.sb-rounded-md {
|
|
467
467
|
border-radius: calc(var(--sb-radius) - 2px);
|
|
468
468
|
}
|
|
469
|
+
.sb-rounded-sm {
|
|
470
|
+
border-radius: calc(var(--sb-radius) - 4px);
|
|
471
|
+
}
|
|
469
472
|
.sb-border {
|
|
470
473
|
border-width: 1px;
|
|
471
474
|
}
|
|
@@ -499,6 +502,9 @@
|
|
|
499
502
|
.sb-bg-destructive {
|
|
500
503
|
background-color: hsl(var(--sb-destructive));
|
|
501
504
|
}
|
|
505
|
+
.sb-bg-muted {
|
|
506
|
+
background-color: hsl(var(--sb-muted));
|
|
507
|
+
}
|
|
502
508
|
.sb-bg-popover {
|
|
503
509
|
background-color: hsl(var(--sb-popover));
|
|
504
510
|
}
|
|
@@ -572,6 +578,10 @@
|
|
|
572
578
|
padding-top: 0.25rem;
|
|
573
579
|
padding-bottom: 0.25rem;
|
|
574
580
|
}
|
|
581
|
+
.sb-py-1\.5 {
|
|
582
|
+
padding-top: 0.375rem;
|
|
583
|
+
padding-bottom: 0.375rem;
|
|
584
|
+
}
|
|
575
585
|
.sb-py-2 {
|
|
576
586
|
padding-top: 0.5rem;
|
|
577
587
|
padding-bottom: 0.5rem;
|
|
@@ -991,6 +1001,9 @@
|
|
|
991
1001
|
--tw-border-opacity: 1;
|
|
992
1002
|
border-color: rgb(0 0 0 / var(--tw-border-opacity));
|
|
993
1003
|
}
|
|
1004
|
+
.data-\[state\=active\]\:sb-bg-background[data-state=active] {
|
|
1005
|
+
background-color: hsl(var(--sb-background));
|
|
1006
|
+
}
|
|
994
1007
|
.data-\[state\=checked\]\:sb-bg-primary[data-state=checked] {
|
|
995
1008
|
background-color: hsl(var(--sb-primary));
|
|
996
1009
|
}
|
|
@@ -1006,6 +1019,14 @@
|
|
|
1006
1019
|
.data-\[state\=on\]\:sb-text-accent-foreground[data-state=on] {
|
|
1007
1020
|
color: hsl(var(--sb-accent-foreground));
|
|
1008
1021
|
}
|
|
1022
|
+
.data-\[state\=active\]\:sb-shadow-sm[data-state=active] {
|
|
1023
|
+
--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
|
|
1024
|
+
--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
|
|
1025
|
+
box-shadow:
|
|
1026
|
+
var(--tw-ring-offset-shadow, 0 0 #0000),
|
|
1027
|
+
var(--tw-ring-shadow, 0 0 #0000),
|
|
1028
|
+
var(--tw-shadow);
|
|
1029
|
+
}
|
|
1009
1030
|
.data-\[state\=open\]\:sb-animate-in[data-state=open] {
|
|
1010
1031
|
animation-name: enter;
|
|
1011
1032
|
animation-duration: 150ms;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkNVOLMEIV_js = require('./chunk-NVOLMEIV.js');
|
|
4
4
|
var React = require('react');
|
|
5
5
|
|
|
6
6
|
function _interopNamespace(e) {
|
|
@@ -25,7 +25,7 @@ var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
|
25
25
|
|
|
26
26
|
var StaticContent = (props) => {
|
|
27
27
|
return /* @__PURE__ */ React__namespace.createElement(
|
|
28
|
-
|
|
28
|
+
chunkNVOLMEIV_js.BuildContainer,
|
|
29
29
|
{
|
|
30
30
|
name: "root",
|
|
31
31
|
edit: false,
|
|
@@ -36,7 +36,7 @@ var StaticContent = (props) => {
|
|
|
36
36
|
};
|
|
37
37
|
|
|
38
38
|
// src/index.ts
|
|
39
|
-
var BuilderContent = React.lazy(() => import('./builder-content-
|
|
39
|
+
var BuilderContent = React.lazy(() => import('./builder-content-3LSJER2M.js'));
|
|
40
40
|
|
|
41
41
|
exports.BuilderContent = BuilderContent;
|
|
42
42
|
exports.StaticContent = StaticContent;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BuildContainer } from './chunk-
|
|
1
|
+
import { BuildContainer } from './chunk-PIRC2EWS.mjs';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import { lazy } from 'react';
|
|
4
4
|
|
|
@@ -15,6 +15,6 @@ var StaticContent = (props) => {
|
|
|
15
15
|
};
|
|
16
16
|
|
|
17
17
|
// src/index.ts
|
|
18
|
-
var BuilderContent = lazy(() => import('./builder-content-
|
|
18
|
+
var BuilderContent = lazy(() => import('./builder-content-36BOBBAF.mjs'));
|
|
19
19
|
|
|
20
20
|
export { BuilderContent, StaticContent };
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { tv, builder, insertAt } from './chunk-PIRC2EWS.mjs';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import { Slot } from '@radix-ui/react-slot';
|
|
4
|
-
import { cva } from 'class-variance-authority';
|
|
5
4
|
|
|
6
5
|
var BuilderContext = React.createContext(
|
|
7
6
|
null
|
|
@@ -197,34 +196,32 @@ var findRecursive = (items, predicate, key = "content") => {
|
|
|
197
196
|
}
|
|
198
197
|
}
|
|
199
198
|
};
|
|
200
|
-
var buttonVariants =
|
|
201
|
-
"sb-inline-flex sb-uppercase sb-font-roboto sb-items-center sb-justify-center sb-whitespace-nowrap sb-rounded-md sb-text-xs sb-font-semibold ring-offset-background sb-transition-colors focus-visible:sb-outline-none focus-visible:sb-ring-2 focus-visible:ring-ring focus-visible:sb-ring-offset-2 disabled:sb-pointer-events-none disabled:sb-opacity-50",
|
|
202
|
-
{
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
ghost: "hover:sb-bg-accent hover:sb-text-accent-foreground"
|
|
209
|
-
},
|
|
210
|
-
size: {
|
|
211
|
-
default: "sb-h-10 sb-px-4 sb-py-2",
|
|
212
|
-
sm: "sb-h-8 sb-px-3 sb-py-1"
|
|
213
|
-
}
|
|
199
|
+
var buttonVariants = tv({
|
|
200
|
+
base: "sb-inline-flex sb-uppercase sb-font-roboto sb-items-center sb-justify-center sb-whitespace-nowrap sb-rounded-md sb-text-xs sb-font-semibold ring-offset-background sb-transition-colors focus-visible:sb-outline-none focus-visible:sb-ring-2 focus-visible:ring-ring focus-visible:sb-ring-offset-2 disabled:sb-pointer-events-none disabled:sb-opacity-50",
|
|
201
|
+
variants: {
|
|
202
|
+
variant: {
|
|
203
|
+
primary: "sb-bg-primary sb-text-primary-foreground hover:sb-bg-primary/90",
|
|
204
|
+
destructive: "sb-bg-destructive sb-text-destructive-foreground hover:sb-bg-destructive/90",
|
|
205
|
+
outline: "sb-border border-input sb-bg-background hover:sb-bg-accent hover:sb-text-accent-foreground",
|
|
206
|
+
ghost: "hover:sb-bg-accent hover:sb-text-accent-foreground"
|
|
214
207
|
},
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
208
|
+
size: {
|
|
209
|
+
default: "sb-h-10 sb-px-4 sb-py-2",
|
|
210
|
+
sm: "sb-h-8 sb-px-3 sb-py-1"
|
|
218
211
|
}
|
|
212
|
+
},
|
|
213
|
+
defaultVariants: {
|
|
214
|
+
variant: "primary",
|
|
215
|
+
size: "default"
|
|
219
216
|
}
|
|
220
|
-
);
|
|
217
|
+
});
|
|
221
218
|
var Button = React.forwardRef(
|
|
222
219
|
({ className, variant, size, asChild = false, ...props }, ref) => {
|
|
223
220
|
const Comp = asChild ? Slot : "button";
|
|
224
221
|
return /* @__PURE__ */ React.createElement(
|
|
225
222
|
Comp,
|
|
226
223
|
{
|
|
227
|
-
className:
|
|
224
|
+
className: buttonVariants({ variant, size, className }),
|
|
228
225
|
ref,
|
|
229
226
|
...props
|
|
230
227
|
}
|
|
@@ -4,6 +4,7 @@ var React3 = require('react');
|
|
|
4
4
|
var NextImage = require('next/image');
|
|
5
5
|
var clsx = require('clsx');
|
|
6
6
|
var tailwindMerge = require('tailwind-merge');
|
|
7
|
+
var tailwindVariants = require('tailwind-variants');
|
|
7
8
|
|
|
8
9
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
10
|
|
|
@@ -76,11 +77,23 @@ var twMerge = tailwindMerge.extendTailwindMerge({
|
|
|
76
77
|
function cn(...inputs) {
|
|
77
78
|
return twMerge(clsx.clsx(inputs));
|
|
78
79
|
}
|
|
80
|
+
var tv = tailwindVariants.createTV({
|
|
81
|
+
twMergeConfig: {
|
|
82
|
+
prefix: "sb-"
|
|
83
|
+
}
|
|
84
|
+
});
|
|
79
85
|
var insertAt = (items, index, item) => {
|
|
80
86
|
return Array.isArray(items) ? [...items.slice(0, index), item, ...items.slice(index)] : [item];
|
|
81
87
|
};
|
|
82
88
|
var spacing = {
|
|
83
89
|
parse: (input) => {
|
|
90
|
+
if (typeof input !== "string")
|
|
91
|
+
return {
|
|
92
|
+
top: 0,
|
|
93
|
+
right: 0,
|
|
94
|
+
bottom: 0,
|
|
95
|
+
left: 0
|
|
96
|
+
};
|
|
84
97
|
const matches = input.match(/(\d+)/gm);
|
|
85
98
|
const [top = 0, right = 0, bottom = 0, left = 0] = matches?.map((match) => +match) || [];
|
|
86
99
|
switch (matches?.length) {
|
|
@@ -94,38 +107,59 @@ var spacing = {
|
|
|
94
107
|
return { top, right, bottom, left };
|
|
95
108
|
}
|
|
96
109
|
},
|
|
110
|
+
stringify: ({
|
|
111
|
+
top = 0,
|
|
112
|
+
right = 0,
|
|
113
|
+
bottom = 0,
|
|
114
|
+
left = 0
|
|
115
|
+
}) => {
|
|
116
|
+
if ([right, bottom, left].every((v) => v === top)) {
|
|
117
|
+
if (top === 0)
|
|
118
|
+
return;
|
|
119
|
+
return `${top}px`;
|
|
120
|
+
} else if (top === bottom && left === right) {
|
|
121
|
+
return `${top}px ${left}px`;
|
|
122
|
+
} else {
|
|
123
|
+
return `${top}px ${right}px ${bottom}px ${left}px`;
|
|
124
|
+
}
|
|
125
|
+
},
|
|
97
126
|
isIndipendent: (input) => {
|
|
98
|
-
const { top, right, bottom, left } = spacing.parse(input);
|
|
127
|
+
const { top, right, bottom, left } = spacing.parse(input || "");
|
|
99
128
|
return top !== bottom || right !== left;
|
|
100
129
|
}
|
|
101
130
|
};
|
|
102
131
|
|
|
103
132
|
// src/components/design-wrapper.tsx
|
|
104
133
|
var DesignWrapper = (props) => {
|
|
105
|
-
const { children, className
|
|
106
|
-
const
|
|
134
|
+
const { children, className } = props;
|
|
135
|
+
const styles = props.styles?.desktop ?? {};
|
|
136
|
+
const { background } = styles;
|
|
107
137
|
const matches = typeof background === "string" ? background.match(/url\(["']?(.*?)["']?\)/) : void 0;
|
|
108
138
|
const src = matches ? matches[1] : void 0;
|
|
109
|
-
|
|
110
|
-
|
|
139
|
+
const container = props.styles?.container ?? true;
|
|
140
|
+
const id = React3__namespace.useId().replace(/[^a-zA-Z0-9]/g, "");
|
|
141
|
+
return /* @__PURE__ */ React3__namespace.createElement("div", { id, className: cn("sb-relative", className) }, src && /* @__PURE__ */ React3__namespace.createElement(
|
|
142
|
+
Image,
|
|
111
143
|
{
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
144
|
+
src,
|
|
145
|
+
alt: "",
|
|
146
|
+
fill: true,
|
|
147
|
+
className: "sb-object-cover sb-absolute sb-inset-0 sb-pointer-events-none sb--z-[1]"
|
|
148
|
+
}
|
|
149
|
+
), container ? /* @__PURE__ */ React3__namespace.createElement("div", { className: "sb-container sb-mx-auto" }, children) : children, /* @__PURE__ */ React3__namespace.createElement("style", null, `
|
|
150
|
+
#${id} {
|
|
151
|
+
${Object.entries(props.styles?.desktop ?? {}).map(([key, value]) => `${key}: ${value};`).join(" ")}
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
@media (max-width: 1024px) {
|
|
155
|
+
#${id} {
|
|
156
|
+
${Object.entries(props.styles?.mobile ?? {}).map(([key, value]) => `${key}: ${value}; `).join(" ")}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
`.replace(/\s\s+/g, " ")));
|
|
126
160
|
};
|
|
127
161
|
var BuildContainerInner = React3__namespace.lazy(
|
|
128
|
-
() => import('./build-container-client-
|
|
162
|
+
() => import('./build-container-client-B6ZYGDJF.js')
|
|
129
163
|
);
|
|
130
164
|
var BuildContainer = (props) => {
|
|
131
165
|
const { content, edit, name } = props;
|
|
@@ -143,3 +177,4 @@ exports.builder = builder;
|
|
|
143
177
|
exports.cn = cn;
|
|
144
178
|
exports.insertAt = insertAt;
|
|
145
179
|
exports.spacing = spacing;
|
|
180
|
+
exports.tv = tv;
|
|
@@ -3,6 +3,7 @@ import { createElement } from 'react';
|
|
|
3
3
|
import NextImage from 'next/image';
|
|
4
4
|
import { clsx } from 'clsx';
|
|
5
5
|
import { extendTailwindMerge } from 'tailwind-merge';
|
|
6
|
+
import { createTV } from 'tailwind-variants';
|
|
6
7
|
|
|
7
8
|
// src/lib/builder.ts
|
|
8
9
|
var builder = /* @__PURE__ */ (() => {
|
|
@@ -52,11 +53,23 @@ var twMerge = extendTailwindMerge({
|
|
|
52
53
|
function cn(...inputs) {
|
|
53
54
|
return twMerge(clsx(inputs));
|
|
54
55
|
}
|
|
56
|
+
var tv = createTV({
|
|
57
|
+
twMergeConfig: {
|
|
58
|
+
prefix: "sb-"
|
|
59
|
+
}
|
|
60
|
+
});
|
|
55
61
|
var insertAt = (items, index, item) => {
|
|
56
62
|
return Array.isArray(items) ? [...items.slice(0, index), item, ...items.slice(index)] : [item];
|
|
57
63
|
};
|
|
58
64
|
var spacing = {
|
|
59
65
|
parse: (input) => {
|
|
66
|
+
if (typeof input !== "string")
|
|
67
|
+
return {
|
|
68
|
+
top: 0,
|
|
69
|
+
right: 0,
|
|
70
|
+
bottom: 0,
|
|
71
|
+
left: 0
|
|
72
|
+
};
|
|
60
73
|
const matches = input.match(/(\d+)/gm);
|
|
61
74
|
const [top = 0, right = 0, bottom = 0, left = 0] = matches?.map((match) => +match) || [];
|
|
62
75
|
switch (matches?.length) {
|
|
@@ -70,38 +83,59 @@ var spacing = {
|
|
|
70
83
|
return { top, right, bottom, left };
|
|
71
84
|
}
|
|
72
85
|
},
|
|
86
|
+
stringify: ({
|
|
87
|
+
top = 0,
|
|
88
|
+
right = 0,
|
|
89
|
+
bottom = 0,
|
|
90
|
+
left = 0
|
|
91
|
+
}) => {
|
|
92
|
+
if ([right, bottom, left].every((v) => v === top)) {
|
|
93
|
+
if (top === 0)
|
|
94
|
+
return;
|
|
95
|
+
return `${top}px`;
|
|
96
|
+
} else if (top === bottom && left === right) {
|
|
97
|
+
return `${top}px ${left}px`;
|
|
98
|
+
} else {
|
|
99
|
+
return `${top}px ${right}px ${bottom}px ${left}px`;
|
|
100
|
+
}
|
|
101
|
+
},
|
|
73
102
|
isIndipendent: (input) => {
|
|
74
|
-
const { top, right, bottom, left } = spacing.parse(input);
|
|
103
|
+
const { top, right, bottom, left } = spacing.parse(input || "");
|
|
75
104
|
return top !== bottom || right !== left;
|
|
76
105
|
}
|
|
77
106
|
};
|
|
78
107
|
|
|
79
108
|
// src/components/design-wrapper.tsx
|
|
80
109
|
var DesignWrapper = (props) => {
|
|
81
|
-
const { children, className
|
|
82
|
-
const
|
|
110
|
+
const { children, className } = props;
|
|
111
|
+
const styles = props.styles?.desktop ?? {};
|
|
112
|
+
const { background } = styles;
|
|
83
113
|
const matches = typeof background === "string" ? background.match(/url\(["']?(.*?)["']?\)/) : void 0;
|
|
84
114
|
const src = matches ? matches[1] : void 0;
|
|
85
|
-
|
|
86
|
-
|
|
115
|
+
const container = props.styles?.container ?? true;
|
|
116
|
+
const id = React3.useId().replace(/[^a-zA-Z0-9]/g, "");
|
|
117
|
+
return /* @__PURE__ */ React3.createElement("div", { id, className: cn("sb-relative", className) }, src && /* @__PURE__ */ React3.createElement(
|
|
118
|
+
Image,
|
|
87
119
|
{
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
120
|
+
src,
|
|
121
|
+
alt: "",
|
|
122
|
+
fill: true,
|
|
123
|
+
className: "sb-object-cover sb-absolute sb-inset-0 sb-pointer-events-none sb--z-[1]"
|
|
124
|
+
}
|
|
125
|
+
), container ? /* @__PURE__ */ React3.createElement("div", { className: "sb-container sb-mx-auto" }, children) : children, /* @__PURE__ */ React3.createElement("style", null, `
|
|
126
|
+
#${id} {
|
|
127
|
+
${Object.entries(props.styles?.desktop ?? {}).map(([key, value]) => `${key}: ${value};`).join(" ")}
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
@media (max-width: 1024px) {
|
|
131
|
+
#${id} {
|
|
132
|
+
${Object.entries(props.styles?.mobile ?? {}).map(([key, value]) => `${key}: ${value}; `).join(" ")}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
`.replace(/\s\s+/g, " ")));
|
|
102
136
|
};
|
|
103
137
|
var BuildContainerInner = React3.lazy(
|
|
104
|
-
() => import('./build-container-client-
|
|
138
|
+
() => import('./build-container-client-F3SDJONS.mjs')
|
|
105
139
|
);
|
|
106
140
|
var BuildContainer = (props) => {
|
|
107
141
|
const { content, edit, name } = props;
|
|
@@ -112,4 +146,4 @@ var BuildContainer = (props) => {
|
|
|
112
146
|
return /* @__PURE__ */ React3.createElement(React3.Suspense, { fallback: /* @__PURE__ */ React3.createElement("div", null, "Loading...") }, /* @__PURE__ */ React3.createElement(BuildContainerInner, { ...props }));
|
|
113
147
|
};
|
|
114
148
|
|
|
115
|
-
export { BuildContainer, DesignWrapper, Image, builder, cn, insertAt, spacing };
|
|
149
|
+
export { BuildContainer, DesignWrapper, Image, builder, cn, insertAt, spacing, tv };
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkNVOLMEIV_js = require('./chunk-NVOLMEIV.js');
|
|
4
4
|
var React = require('react');
|
|
5
5
|
var reactSlot = require('@radix-ui/react-slot');
|
|
6
|
-
var classVarianceAuthority = require('class-variance-authority');
|
|
7
6
|
|
|
8
7
|
function _interopNamespace(e) {
|
|
9
8
|
if (e && e.__esModule) return e;
|
|
@@ -59,7 +58,7 @@ var BuilderProvider = (props) => {
|
|
|
59
58
|
);
|
|
60
59
|
const addContent = React__namespace.useCallback(
|
|
61
60
|
(name, container, parent, index = 0) => {
|
|
62
|
-
const component =
|
|
61
|
+
const component = chunkNVOLMEIV_js.builder.getComponent(name);
|
|
63
62
|
if (!component) {
|
|
64
63
|
throw new Error(`[simple-builder]: Component "${name}" not found`);
|
|
65
64
|
}
|
|
@@ -81,7 +80,7 @@ var BuilderProvider = (props) => {
|
|
|
81
80
|
}
|
|
82
81
|
};
|
|
83
82
|
if (!parent) {
|
|
84
|
-
setContent((content2) =>
|
|
83
|
+
setContent((content2) => chunkNVOLMEIV_js.insertAt(content2, index, entry));
|
|
85
84
|
return;
|
|
86
85
|
}
|
|
87
86
|
setContent(
|
|
@@ -91,7 +90,7 @@ var BuilderProvider = (props) => {
|
|
|
91
90
|
...item,
|
|
92
91
|
content: {
|
|
93
92
|
...item.content,
|
|
94
|
-
[container]:
|
|
93
|
+
[container]: chunkNVOLMEIV_js.insertAt(item.content?.[container], index, entry)
|
|
95
94
|
}
|
|
96
95
|
};
|
|
97
96
|
}
|
|
@@ -219,34 +218,32 @@ var findRecursive = (items, predicate, key = "content") => {
|
|
|
219
218
|
}
|
|
220
219
|
}
|
|
221
220
|
};
|
|
222
|
-
var buttonVariants =
|
|
223
|
-
"sb-inline-flex sb-uppercase sb-font-roboto sb-items-center sb-justify-center sb-whitespace-nowrap sb-rounded-md sb-text-xs sb-font-semibold ring-offset-background sb-transition-colors focus-visible:sb-outline-none focus-visible:sb-ring-2 focus-visible:ring-ring focus-visible:sb-ring-offset-2 disabled:sb-pointer-events-none disabled:sb-opacity-50",
|
|
224
|
-
{
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
ghost: "hover:sb-bg-accent hover:sb-text-accent-foreground"
|
|
231
|
-
},
|
|
232
|
-
size: {
|
|
233
|
-
default: "sb-h-10 sb-px-4 sb-py-2",
|
|
234
|
-
sm: "sb-h-8 sb-px-3 sb-py-1"
|
|
235
|
-
}
|
|
221
|
+
var buttonVariants = chunkNVOLMEIV_js.tv({
|
|
222
|
+
base: "sb-inline-flex sb-uppercase sb-font-roboto sb-items-center sb-justify-center sb-whitespace-nowrap sb-rounded-md sb-text-xs sb-font-semibold ring-offset-background sb-transition-colors focus-visible:sb-outline-none focus-visible:sb-ring-2 focus-visible:ring-ring focus-visible:sb-ring-offset-2 disabled:sb-pointer-events-none disabled:sb-opacity-50",
|
|
223
|
+
variants: {
|
|
224
|
+
variant: {
|
|
225
|
+
primary: "sb-bg-primary sb-text-primary-foreground hover:sb-bg-primary/90",
|
|
226
|
+
destructive: "sb-bg-destructive sb-text-destructive-foreground hover:sb-bg-destructive/90",
|
|
227
|
+
outline: "sb-border border-input sb-bg-background hover:sb-bg-accent hover:sb-text-accent-foreground",
|
|
228
|
+
ghost: "hover:sb-bg-accent hover:sb-text-accent-foreground"
|
|
236
229
|
},
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
230
|
+
size: {
|
|
231
|
+
default: "sb-h-10 sb-px-4 sb-py-2",
|
|
232
|
+
sm: "sb-h-8 sb-px-3 sb-py-1"
|
|
240
233
|
}
|
|
234
|
+
},
|
|
235
|
+
defaultVariants: {
|
|
236
|
+
variant: "primary",
|
|
237
|
+
size: "default"
|
|
241
238
|
}
|
|
242
|
-
);
|
|
239
|
+
});
|
|
243
240
|
var Button = React__namespace.forwardRef(
|
|
244
241
|
({ className, variant, size, asChild = false, ...props }, ref) => {
|
|
245
242
|
const Comp = asChild ? reactSlot.Slot : "button";
|
|
246
243
|
return /* @__PURE__ */ React__namespace.createElement(
|
|
247
244
|
Comp,
|
|
248
245
|
{
|
|
249
|
-
className:
|
|
246
|
+
className: buttonVariants({ variant, size, className }),
|
|
250
247
|
ref,
|
|
251
248
|
...props
|
|
252
249
|
}
|
package/dist/index.css
CHANGED
|
@@ -466,6 +466,9 @@
|
|
|
466
466
|
.sb-rounded-md {
|
|
467
467
|
border-radius: calc(var(--sb-radius) - 2px);
|
|
468
468
|
}
|
|
469
|
+
.sb-rounded-sm {
|
|
470
|
+
border-radius: calc(var(--sb-radius) - 4px);
|
|
471
|
+
}
|
|
469
472
|
.sb-border {
|
|
470
473
|
border-width: 1px;
|
|
471
474
|
}
|
|
@@ -499,6 +502,9 @@
|
|
|
499
502
|
.sb-bg-destructive {
|
|
500
503
|
background-color: hsl(var(--sb-destructive));
|
|
501
504
|
}
|
|
505
|
+
.sb-bg-muted {
|
|
506
|
+
background-color: hsl(var(--sb-muted));
|
|
507
|
+
}
|
|
502
508
|
.sb-bg-popover {
|
|
503
509
|
background-color: hsl(var(--sb-popover));
|
|
504
510
|
}
|
|
@@ -572,6 +578,10 @@
|
|
|
572
578
|
padding-top: 0.25rem;
|
|
573
579
|
padding-bottom: 0.25rem;
|
|
574
580
|
}
|
|
581
|
+
.sb-py-1\.5 {
|
|
582
|
+
padding-top: 0.375rem;
|
|
583
|
+
padding-bottom: 0.375rem;
|
|
584
|
+
}
|
|
575
585
|
.sb-py-2 {
|
|
576
586
|
padding-top: 0.5rem;
|
|
577
587
|
padding-bottom: 0.5rem;
|
|
@@ -991,6 +1001,9 @@
|
|
|
991
1001
|
--tw-border-opacity: 1;
|
|
992
1002
|
border-color: rgb(0 0 0 / var(--tw-border-opacity));
|
|
993
1003
|
}
|
|
1004
|
+
.data-\[state\=active\]\:sb-bg-background[data-state=active] {
|
|
1005
|
+
background-color: hsl(var(--sb-background));
|
|
1006
|
+
}
|
|
994
1007
|
.data-\[state\=checked\]\:sb-bg-primary[data-state=checked] {
|
|
995
1008
|
background-color: hsl(var(--sb-primary));
|
|
996
1009
|
}
|
|
@@ -1006,6 +1019,14 @@
|
|
|
1006
1019
|
.data-\[state\=on\]\:sb-text-accent-foreground[data-state=on] {
|
|
1007
1020
|
color: hsl(var(--sb-accent-foreground));
|
|
1008
1021
|
}
|
|
1022
|
+
.data-\[state\=active\]\:sb-shadow-sm[data-state=active] {
|
|
1023
|
+
--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
|
|
1024
|
+
--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
|
|
1025
|
+
box-shadow:
|
|
1026
|
+
var(--tw-ring-offset-shadow, 0 0 #0000),
|
|
1027
|
+
var(--tw-ring-shadow, 0 0 #0000),
|
|
1028
|
+
var(--tw-shadow);
|
|
1029
|
+
}
|
|
1009
1030
|
.data-\[state\=open\]\:sb-animate-in[data-state=open] {
|
|
1010
1031
|
animation-name: enter;
|
|
1011
1032
|
animation-duration: 150ms;
|
package/dist/index.js
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
3
|
+
var chunk4NWAJBFM_js = require('./chunk-4NWAJBFM.js');
|
|
4
|
+
var chunkNVOLMEIV_js = require('./chunk-NVOLMEIV.js');
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
Object.defineProperty(exports, "BuilderContent", {
|
|
9
9
|
enumerable: true,
|
|
10
|
-
get: function () { return
|
|
10
|
+
get: function () { return chunk4NWAJBFM_js.BuilderContent; }
|
|
11
11
|
});
|
|
12
12
|
Object.defineProperty(exports, "StaticContent", {
|
|
13
13
|
enumerable: true,
|
|
14
|
-
get: function () { return
|
|
14
|
+
get: function () { return chunk4NWAJBFM_js.StaticContent; }
|
|
15
15
|
});
|
|
16
16
|
Object.defineProperty(exports, "BuildContainer", {
|
|
17
17
|
enumerable: true,
|
|
18
|
-
get: function () { return
|
|
18
|
+
get: function () { return chunkNVOLMEIV_js.BuildContainer; }
|
|
19
19
|
});
|
|
20
20
|
Object.defineProperty(exports, "builder", {
|
|
21
21
|
enumerable: true,
|
|
22
|
-
get: function () { return
|
|
22
|
+
get: function () { return chunkNVOLMEIV_js.builder; }
|
|
23
23
|
});
|
package/dist/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { BuilderContent, StaticContent } from './chunk-
|
|
2
|
-
export { BuildContainer, builder } from './chunk-
|
|
1
|
+
export { BuilderContent, StaticContent } from './chunk-DOQHCW2T.mjs';
|
|
2
|
+
export { BuildContainer, builder } from './chunk-PIRC2EWS.mjs';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@simple-builder/react",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.6",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "React package for the simple builder package.",
|
|
6
6
|
"repository": "https://github.com/pieter-berkel/simple-builder.git",
|
|
@@ -35,7 +35,6 @@
|
|
|
35
35
|
"@radix-ui/react-switch": "^1.0.3",
|
|
36
36
|
"@radix-ui/react-tabs": "^1.0.4",
|
|
37
37
|
"@radix-ui/react-toggle": "^1.0.3",
|
|
38
|
-
"class-variance-authority": "^0.7.0",
|
|
39
38
|
"clsx": "^2.1.0",
|
|
40
39
|
"date-fns": "^3.2.0",
|
|
41
40
|
"lucide-react": "^0.309.0",
|
|
@@ -43,8 +42,9 @@
|
|
|
43
42
|
"react-hook-form": "^7.49.3",
|
|
44
43
|
"server-only": "^0.0.1",
|
|
45
44
|
"tailwind-merge": "^2.2.0",
|
|
45
|
+
"tailwind-variants": "^0.1.20",
|
|
46
46
|
"zod": "^3.22.4",
|
|
47
|
-
"@simple-builder/server": "1.0.
|
|
47
|
+
"@simple-builder/server": "1.0.6"
|
|
48
48
|
},
|
|
49
49
|
"peerDependencies": {
|
|
50
50
|
"react": ">=16.8.0",
|