@sudajs/theme-engine 0.0.2
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/ai/slots.d.ts +33 -0
- package/dist/ai/slots.d.ts.map +1 -0
- package/dist/ai/slots.js +139 -0
- package/dist/ai/slots.js.map +1 -0
- package/dist/assets.d.ts +42 -0
- package/dist/assets.d.ts.map +1 -0
- package/dist/assets.js +36 -0
- package/dist/assets.js.map +1 -0
- package/dist/cms/apply-bindings.d.ts +9 -0
- package/dist/cms/apply-bindings.d.ts.map +1 -0
- package/dist/cms/apply-bindings.js +128 -0
- package/dist/cms/apply-bindings.js.map +1 -0
- package/dist/cms/get-context.d.ts +9 -0
- package/dist/cms/get-context.d.ts.map +1 -0
- package/dist/cms/get-context.js +13 -0
- package/dist/cms/get-context.js.map +1 -0
- package/dist/cms/index.d.ts +4 -0
- package/dist/cms/index.d.ts.map +1 -0
- package/dist/cms/index.js +4 -0
- package/dist/cms/index.js.map +1 -0
- package/dist/cms/types.d.ts +116 -0
- package/dist/cms/types.d.ts.map +1 -0
- package/dist/cms/types.js +2 -0
- package/dist/cms/types.js.map +1 -0
- package/dist/components/base-blocks.d.ts +13 -0
- package/dist/components/base-blocks.d.ts.map +1 -0
- package/dist/components/base-blocks.js +157 -0
- package/dist/components/base-blocks.js.map +1 -0
- package/dist/components/containers.d.ts +8 -0
- package/dist/components/containers.d.ts.map +1 -0
- package/dist/components/containers.js +142 -0
- package/dist/components/containers.js.map +1 -0
- package/dist/components/index.d.ts +11 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +17 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/interactive.client.d.ts +12 -0
- package/dist/components/interactive.client.d.ts.map +1 -0
- package/dist/components/interactive.client.js +43 -0
- package/dist/components/interactive.client.js.map +1 -0
- package/dist/components/metadata.d.ts +20 -0
- package/dist/components/metadata.d.ts.map +1 -0
- package/dist/components/metadata.js +9 -0
- package/dist/components/metadata.js.map +1 -0
- package/dist/components/shared-fields.d.ts +11 -0
- package/dist/components/shared-fields.d.ts.map +1 -0
- package/dist/components/shared-fields.js +37 -0
- package/dist/components/shared-fields.js.map +1 -0
- package/dist/editor/context.d.ts +79 -0
- package/dist/editor/context.d.ts.map +1 -0
- package/dist/editor/context.js +12 -0
- package/dist/editor/context.js.map +1 -0
- package/dist/editor/index.d.ts +5 -0
- package/dist/editor/index.d.ts.map +1 -0
- package/dist/editor/index.js +5 -0
- package/dist/editor/index.js.map +1 -0
- package/dist/editor/overrides.d.ts +3 -0
- package/dist/editor/overrides.d.ts.map +1 -0
- package/dist/editor/overrides.js +379 -0
- package/dist/editor/overrides.js.map +1 -0
- package/dist/editor/theme-editor.d.ts +46 -0
- package/dist/editor/theme-editor.d.ts.map +1 -0
- package/dist/editor/theme-editor.js +169 -0
- package/dist/editor/theme-editor.js.map +1 -0
- package/dist/editor/unified-editor.d.ts +25 -0
- package/dist/editor/unified-editor.d.ts.map +1 -0
- package/dist/editor/unified-editor.js +229 -0
- package/dist/editor/unified-editor.js.map +1 -0
- package/dist/editor/use-theme-runtime.d.ts +8 -0
- package/dist/editor/use-theme-runtime.d.ts.map +1 -0
- package/dist/editor/use-theme-runtime.js +77 -0
- package/dist/editor/use-theme-runtime.js.map +1 -0
- package/dist/fields/basic-fields.d.ts +14 -0
- package/dist/fields/basic-fields.d.ts.map +1 -0
- package/dist/fields/basic-fields.js +46 -0
- package/dist/fields/basic-fields.js.map +1 -0
- package/dist/fields/color-field.d.ts +3 -0
- package/dist/fields/color-field.d.ts.map +1 -0
- package/dist/fields/color-field.js +97 -0
- package/dist/fields/color-field.js.map +1 -0
- package/dist/fields/color-scheme-field.d.ts +81 -0
- package/dist/fields/color-scheme-field.d.ts.map +1 -0
- package/dist/fields/color-scheme-field.js +234 -0
- package/dist/fields/color-scheme-field.js.map +1 -0
- package/dist/fields/index.d.ts +6 -0
- package/dist/fields/index.d.ts.map +1 -0
- package/dist/fields/index.js +4 -0
- package/dist/fields/index.js.map +1 -0
- package/dist/fields/media-field.d.ts +10 -0
- package/dist/fields/media-field.d.ts.map +1 -0
- package/dist/fields/media-field.js +495 -0
- package/dist/fields/media-field.js.map +1 -0
- package/dist/fields/normalize-config.d.ts +3 -0
- package/dist/fields/normalize-config.d.ts.map +1 -0
- package/dist/fields/normalize-config.js +81 -0
- package/dist/fields/normalize-config.js.map +1 -0
- package/dist/fields/range-field.d.ts +9 -0
- package/dist/fields/range-field.d.ts.map +1 -0
- package/dist/fields/range-field.js +53 -0
- package/dist/fields/range-field.js.map +1 -0
- package/dist/fields/spacing-field.d.ts +7 -0
- package/dist/fields/spacing-field.d.ts.map +1 -0
- package/dist/fields/spacing-field.js +40 -0
- package/dist/fields/spacing-field.js.map +1 -0
- package/dist/fields/suda-fields.d.ts +45 -0
- package/dist/fields/suda-fields.d.ts.map +1 -0
- package/dist/fields/suda-fields.js +91 -0
- package/dist/fields/suda-fields.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -0
- package/dist/manifest.d.ts +47 -0
- package/dist/manifest.d.ts.map +1 -0
- package/dist/manifest.js +39 -0
- package/dist/manifest.js.map +1 -0
- package/dist/registry/filesystem.d.ts +27 -0
- package/dist/registry/filesystem.d.ts.map +1 -0
- package/dist/registry/filesystem.js +162 -0
- package/dist/registry/filesystem.js.map +1 -0
- package/dist/registry.d.ts +13 -0
- package/dist/registry.d.ts.map +1 -0
- package/dist/registry.js +2 -0
- package/dist/registry.js.map +1 -0
- package/dist/render/chrome.d.ts +18 -0
- package/dist/render/chrome.d.ts.map +1 -0
- package/dist/render/chrome.js +36 -0
- package/dist/render/chrome.js.map +1 -0
- package/dist/render/index.d.ts +4 -0
- package/dist/render/index.d.ts.map +1 -0
- package/dist/render/index.js +4 -0
- package/dist/render/index.js.map +1 -0
- package/dist/render/render.d.ts +21 -0
- package/dist/render/render.d.ts.map +1 -0
- package/dist/render/render.js +50 -0
- package/dist/render/render.js.map +1 -0
- package/dist/render/slot.d.ts +14 -0
- package/dist/render/slot.d.ts.map +1 -0
- package/dist/render/slot.js +14 -0
- package/dist/render/slot.js.map +1 -0
- package/dist/runtime.d.ts +8 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +10 -0
- package/dist/runtime.js.map +1 -0
- package/dist/server.d.ts +13 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +16 -0
- package/dist/server.js.map +1 -0
- package/dist/types.d.ts +171 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/package.json +68 -0
|
@@ -0,0 +1,234 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useId } from "react";
|
|
4
|
+
/** Token keys, ordered for deterministic CSS output. */
|
|
5
|
+
export const SUDA_COLOR_TOKEN_KEYS = [
|
|
6
|
+
"background",
|
|
7
|
+
"foreground",
|
|
8
|
+
"card",
|
|
9
|
+
"primary",
|
|
10
|
+
"primaryForeground",
|
|
11
|
+
"secondary",
|
|
12
|
+
"secondaryForeground",
|
|
13
|
+
"accent",
|
|
14
|
+
"accentForeground",
|
|
15
|
+
"muted",
|
|
16
|
+
"mutedForeground",
|
|
17
|
+
"border",
|
|
18
|
+
"input",
|
|
19
|
+
"ring",
|
|
20
|
+
"destructive",
|
|
21
|
+
];
|
|
22
|
+
const TOKEN_LABELS = {
|
|
23
|
+
background: "Background",
|
|
24
|
+
foreground: "Foreground",
|
|
25
|
+
card: "Card",
|
|
26
|
+
primary: "Primary",
|
|
27
|
+
primaryForeground: "Primary foreground",
|
|
28
|
+
secondary: "Secondary",
|
|
29
|
+
secondaryForeground: "Secondary foreground",
|
|
30
|
+
accent: "Accent",
|
|
31
|
+
accentForeground: "Accent foreground",
|
|
32
|
+
muted: "Muted",
|
|
33
|
+
mutedForeground: "Muted foreground",
|
|
34
|
+
border: "Border",
|
|
35
|
+
input: "Input",
|
|
36
|
+
ring: "Ring",
|
|
37
|
+
destructive: "Destructive",
|
|
38
|
+
};
|
|
39
|
+
const CUSTOM_SCHEME_ID = "custom";
|
|
40
|
+
function camelToKebab(input) {
|
|
41
|
+
return input.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Convert a token map to CSS variables.
|
|
45
|
+
*
|
|
46
|
+
* - `format: "string"` (default) returns a sequence of declarations such as
|
|
47
|
+
* `--suda-color-primary: #ff6b2c;\n--suda-color-primary-foreground: #fff;`.
|
|
48
|
+
* - `format: "style"` returns a `Record<string, string>` suitable for a React
|
|
49
|
+
* `style` prop.
|
|
50
|
+
*/
|
|
51
|
+
export function createThemeCssVariables(tokens, options = {}) {
|
|
52
|
+
const prefix = options.prefix ?? "--suda-color-";
|
|
53
|
+
const format = options.format ?? "string";
|
|
54
|
+
if (format === "style") {
|
|
55
|
+
const style = {};
|
|
56
|
+
for (const key of SUDA_COLOR_TOKEN_KEYS) {
|
|
57
|
+
style[`${prefix}${camelToKebab(key)}`] = tokens[key];
|
|
58
|
+
}
|
|
59
|
+
return style;
|
|
60
|
+
}
|
|
61
|
+
return SUDA_COLOR_TOKEN_KEYS.map((key) => `${prefix}${camelToKebab(key)}: ${tokens[key]};`).join("\n");
|
|
62
|
+
}
|
|
63
|
+
function cloneTokens(tokens) {
|
|
64
|
+
return { ...tokens };
|
|
65
|
+
}
|
|
66
|
+
function isObject(value) {
|
|
67
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
68
|
+
}
|
|
69
|
+
function coerceTokens(raw, fallback) {
|
|
70
|
+
if (!isObject(raw)) {
|
|
71
|
+
return cloneTokens(fallback);
|
|
72
|
+
}
|
|
73
|
+
const next = cloneTokens(fallback);
|
|
74
|
+
for (const key of SUDA_COLOR_TOKEN_KEYS) {
|
|
75
|
+
const v = raw[key];
|
|
76
|
+
if (typeof v === "string" && v.length > 0 && !/[<>]/.test(v)) {
|
|
77
|
+
next[key] = v;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
return next;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Build the default value for a `colorSchemeField`. Presets are normalised
|
|
84
|
+
* into `schemes`, plus a `custom` slot seeded from `customDefaults` (or the
|
|
85
|
+
* first preset).
|
|
86
|
+
*/
|
|
87
|
+
export function createColorSchemeDefault(options) {
|
|
88
|
+
const { presets } = options;
|
|
89
|
+
if (presets.length === 0) {
|
|
90
|
+
throw new Error("colorSchemeField: at least one preset is required.");
|
|
91
|
+
}
|
|
92
|
+
const first = presets[0];
|
|
93
|
+
if (!first) {
|
|
94
|
+
throw new Error("colorSchemeField: at least one preset is required.");
|
|
95
|
+
}
|
|
96
|
+
const schemes = {};
|
|
97
|
+
for (const preset of presets) {
|
|
98
|
+
schemes[preset.id] = cloneTokens(preset.tokens);
|
|
99
|
+
}
|
|
100
|
+
schemes[CUSTOM_SCHEME_ID] = cloneTokens(options.customDefaults ?? first.tokens);
|
|
101
|
+
return {
|
|
102
|
+
active: first.id,
|
|
103
|
+
schemes,
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Resolve the active token map from a `colorSchemeField` value. Unknown
|
|
108
|
+
* `active` ids fall back to the first preset, and missing tokens fall back to
|
|
109
|
+
* the preset defaults so renders stay stable.
|
|
110
|
+
*/
|
|
111
|
+
export function resolveColorSchemeTokens(value, options) {
|
|
112
|
+
const fallback = createColorSchemeDefault(options);
|
|
113
|
+
const merged = {
|
|
114
|
+
active: value?.active ?? fallback.active,
|
|
115
|
+
schemes: { ...fallback.schemes, ...(value?.schemes ?? {}) },
|
|
116
|
+
};
|
|
117
|
+
const firstPreset = options.presets[0]?.tokens ?? merged.schemes[fallback.active];
|
|
118
|
+
if (!firstPreset) {
|
|
119
|
+
throw new Error("colorSchemeField: no preset tokens available.");
|
|
120
|
+
}
|
|
121
|
+
const activeTokens = merged.schemes[merged.active] ?? firstPreset;
|
|
122
|
+
return coerceTokens(activeTokens, firstPreset);
|
|
123
|
+
}
|
|
124
|
+
const wrapStyle = { display: "flex", flexDirection: "column", gap: 12 };
|
|
125
|
+
const presetRowStyle = {
|
|
126
|
+
display: "flex",
|
|
127
|
+
flexWrap: "wrap",
|
|
128
|
+
gap: 6,
|
|
129
|
+
};
|
|
130
|
+
const presetBtnStyle = {
|
|
131
|
+
display: "inline-flex",
|
|
132
|
+
alignItems: "center",
|
|
133
|
+
gap: 6,
|
|
134
|
+
padding: "4px 8px",
|
|
135
|
+
border: "1px solid var(--puck-color-grey-09, #dcdcdc)",
|
|
136
|
+
borderRadius: 6,
|
|
137
|
+
background: "var(--puck-color-white, #fff)",
|
|
138
|
+
cursor: "pointer",
|
|
139
|
+
fontSize: 12,
|
|
140
|
+
};
|
|
141
|
+
const presetBtnActiveStyle = {
|
|
142
|
+
...presetBtnStyle,
|
|
143
|
+
borderColor: "var(--puck-color-azure-05, #2563eb)",
|
|
144
|
+
background: "var(--puck-color-azure-12, #e6efff)",
|
|
145
|
+
};
|
|
146
|
+
const presetSwatchStyle = {
|
|
147
|
+
display: "inline-block",
|
|
148
|
+
width: 12,
|
|
149
|
+
height: 12,
|
|
150
|
+
borderRadius: "50%",
|
|
151
|
+
border: "1px solid rgba(0,0,0,0.1)",
|
|
152
|
+
};
|
|
153
|
+
const tokenRowStyle = {
|
|
154
|
+
display: "grid",
|
|
155
|
+
gridTemplateColumns: "1fr 36px 1fr",
|
|
156
|
+
gap: 6,
|
|
157
|
+
alignItems: "center",
|
|
158
|
+
};
|
|
159
|
+
const labelStyle = { fontSize: 12 };
|
|
160
|
+
const swatchInputStyle = {
|
|
161
|
+
width: 36,
|
|
162
|
+
height: 28,
|
|
163
|
+
padding: 0,
|
|
164
|
+
border: "1px solid var(--puck-color-grey-09, #dcdcdc)",
|
|
165
|
+
borderRadius: 4,
|
|
166
|
+
background: "none",
|
|
167
|
+
cursor: "pointer",
|
|
168
|
+
};
|
|
169
|
+
const textInputStyle = {
|
|
170
|
+
height: 28,
|
|
171
|
+
padding: "0 8px",
|
|
172
|
+
border: "1px solid var(--puck-color-grey-09, #dcdcdc)",
|
|
173
|
+
borderRadius: 4,
|
|
174
|
+
fontFamily: "monospace",
|
|
175
|
+
fontSize: 12,
|
|
176
|
+
};
|
|
177
|
+
function ColorSchemeFieldRender({ value, onChange, options, }) {
|
|
178
|
+
const inputId = useId();
|
|
179
|
+
const fallback = createColorSchemeDefault(options);
|
|
180
|
+
const current = {
|
|
181
|
+
active: value?.active ?? fallback.active,
|
|
182
|
+
schemes: { ...fallback.schemes, ...(value?.schemes ?? {}) },
|
|
183
|
+
};
|
|
184
|
+
const activeTokens = resolveColorSchemeTokens(current, options);
|
|
185
|
+
const selectPreset = (presetId) => {
|
|
186
|
+
onChange({
|
|
187
|
+
active: presetId,
|
|
188
|
+
schemes: { ...current.schemes },
|
|
189
|
+
});
|
|
190
|
+
};
|
|
191
|
+
const editToken = (key, next) => {
|
|
192
|
+
const baseTokens = activeTokens;
|
|
193
|
+
const nextTokens = { ...baseTokens, [key]: next };
|
|
194
|
+
onChange({
|
|
195
|
+
active: CUSTOM_SCHEME_ID,
|
|
196
|
+
schemes: { ...current.schemes, [CUSTOM_SCHEME_ID]: nextTokens },
|
|
197
|
+
});
|
|
198
|
+
};
|
|
199
|
+
return (_jsxs("div", { style: wrapStyle, children: [_jsxs("div", { style: presetRowStyle, children: [options.presets.map((preset) => {
|
|
200
|
+
const isActive = current.active === preset.id;
|
|
201
|
+
return (_jsxs("button", { type: "button", style: isActive ? presetBtnActiveStyle : presetBtnStyle, onClick: () => selectPreset(preset.id), children: [_jsx("span", { style: {
|
|
202
|
+
...presetSwatchStyle,
|
|
203
|
+
background: preset.tokens.primary,
|
|
204
|
+
} }), _jsx("span", { children: preset.label })] }, preset.id));
|
|
205
|
+
}), _jsxs("button", { type: "button", style: current.active === CUSTOM_SCHEME_ID ? presetBtnActiveStyle : presetBtnStyle, onClick: () => selectPreset(CUSTOM_SCHEME_ID), children: [_jsx("span", { style: {
|
|
206
|
+
...presetSwatchStyle,
|
|
207
|
+
background: activeTokens.primary,
|
|
208
|
+
} }), _jsx("span", { children: "Custom" })] })] }), _jsx("div", { style: { display: "flex", flexDirection: "column", gap: 6 }, children: SUDA_COLOR_TOKEN_KEYS.map((key) => {
|
|
209
|
+
const tokenValue = activeTokens[key];
|
|
210
|
+
const swatchValue = /^#[0-9a-fA-F]{6}$/.test(tokenValue) ? tokenValue : "#000000";
|
|
211
|
+
return (_jsxs("div", { style: tokenRowStyle, children: [_jsx("label", { style: labelStyle, htmlFor: `${inputId}-${key}`, children: TOKEN_LABELS[key] }), _jsx("input", { "aria-label": `${TOKEN_LABELS[key]} swatch`, type: "color", style: swatchInputStyle, value: swatchValue, onChange: (event) => editToken(key, event.target.value) }), _jsx("input", { id: `${inputId}-${key}`, type: "text", style: textInputStyle, value: tokenValue, onChange: (event) => editToken(key, event.target.value) })] }, key));
|
|
212
|
+
}) })] }));
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* A Puck custom field for editing a theme color scheme. Stores
|
|
216
|
+
* `{ active, schemes }`; the value is intended to be passed to
|
|
217
|
+
* `resolveColorSchemeTokens` and `createThemeCssVariables` from the theme's
|
|
218
|
+
* root render.
|
|
219
|
+
*/
|
|
220
|
+
export function colorSchemeField(label, options) {
|
|
221
|
+
if (options.presets.length === 0) {
|
|
222
|
+
throw new Error("colorSchemeField: at least one preset is required.");
|
|
223
|
+
}
|
|
224
|
+
const field = {
|
|
225
|
+
type: "custom",
|
|
226
|
+
metadata: { sudaField: "colorScheme", presets: options.presets.map((p) => p.id) },
|
|
227
|
+
render: ({ value, onChange }) => (_jsx(ColorSchemeFieldRender, { value: value, onChange: onChange, options: options })),
|
|
228
|
+
};
|
|
229
|
+
if (label !== undefined) {
|
|
230
|
+
field.label = label;
|
|
231
|
+
}
|
|
232
|
+
return field;
|
|
233
|
+
}
|
|
234
|
+
//# sourceMappingURL=color-scheme-field.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"color-scheme-field.js","sourceRoot":"","sources":["../../src/fields/color-scheme-field.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { colorSchemeField, createColorSchemeDefault, createThemeCssVariables, resolveColorSchemeTokens, SUDA_COLOR_TOKEN_KEYS, type ColorSchemeFieldOptions, type CreateThemeCssVariablesOptions, type SudaColorSchemePreset, type SudaColorSchemeValue, type SudaThemeColorTokens, } from "./color-scheme-field";
|
|
2
|
+
export type { MenuItem } from "./basic-fields";
|
|
3
|
+
export type { MediaFieldKind } from "./media-field";
|
|
4
|
+
export { normalizeSudaField, type SudaField, type SudaFieldExtension, type SudaFieldType, type SudaFieldValueMap, } from "./suda-fields";
|
|
5
|
+
export { normalizeSudaConfig } from "./normalize-config";
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fields/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,8BAA8B,EACnC,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,GAC1B,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EACL,kBAAkB,EAClB,KAAK,SAAS,EACd,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,iBAAiB,GACvB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { colorSchemeField, createColorSchemeDefault, createThemeCssVariables, resolveColorSchemeTokens, SUDA_COLOR_TOKEN_KEYS, } from "./color-scheme-field";
|
|
2
|
+
export { normalizeSudaField, } from "./suda-fields";
|
|
3
|
+
export { normalizeSudaConfig } from "./normalize-config";
|
|
4
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fields/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,GAMtB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,kBAAkB,GAKnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { CustomField } from "@puckeditor/core";
|
|
2
|
+
export type MediaFieldKind = "image" | "video" | "file" | "media";
|
|
3
|
+
export type MediaFieldOptions = {
|
|
4
|
+
kind?: MediaFieldKind;
|
|
5
|
+
description?: string;
|
|
6
|
+
};
|
|
7
|
+
export declare function mediaField(label?: string, options?: MediaFieldOptions): CustomField<string>;
|
|
8
|
+
export declare function imageField(label?: string): CustomField<string>;
|
|
9
|
+
export declare function videoField(label?: string): CustomField<string>;
|
|
10
|
+
//# sourceMappingURL=media-field.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media-field.d.ts","sourceRoot":"","sources":["../../src/fields/media-field.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAqBpD,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;AAElE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAy0BF,wBAAgB,UAAU,CACxB,KAAK,CAAC,EAAE,MAAM,EACd,OAAO,GAAE,iBAAsB,GAC9B,WAAW,CAAC,MAAM,CAAC,CA2BrB;AAED,wBAAgB,UAAU,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAE9D;AAED,wBAAgB,UAAU,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAE9D"}
|