webstudio 0.270.0 → 0.272.0
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/lib/cli-BUDhVJgP.js +7255 -0
- package/lib/cli.js +5 -9269
- package/lib/framework-react-router-BatECCQ0.js +88 -0
- package/lib/framework-remix-B20CB9ZU.js +88 -0
- package/lib/framework-vike-ssg-CBh8RhfE.js +78 -0
- package/lib/metas-BerOcifF.js +3297 -0
- package/package.json +15 -14
- package/templates/cloudflare/package.json +1 -1
- package/templates/defaults/package.json +8 -8
- package/templates/react-router/package.json +8 -8
- package/templates/react-router-cloudflare/package.json +1 -1
- package/templates/ssg/package.json +6 -6
|
@@ -0,0 +1,3297 @@
|
|
|
1
|
+
import { S as SlotComponentIcon, d as descendantComponent, E as EmbedIcon, M as MarkdownEmbedIcon, b as body, s as section, n as nav, m as main, h as header, f as footer, a as figure, c as aside, e as article, j as address, k as div, T as TextIcon, l as h6, o as h5, p as h4, q as h3, r as h2, t as h1, u as p, v as a, w as span, P as PaintBrushIcon, x as b, y as i, z as sup, A as sub, B as button, C as input, D as form, W as WebhookFormIcon, F as img, G as ul, H as ol, I as li, J as hr, K as code, L as BracesIcon, N as label, O as textarea, Q as radio, R as RadioCheckedIcon, U as checkbox, V as CheckboxCheckedIcon, X as VimeoIcon, Y as YoutubeIcon, Z as ButtonElementIcon, _ as BoxIcon, $ as XmlIcon, a0 as CalendarIcon, a1 as time, a2 as select, a3 as HeaderIcon, a4 as ResourceIcon, a5 as WindowInfoIcon, a6 as WindowTitleIcon, a7 as VideoIcon, a8 as AnimationGroupIcon, a9 as TextAnimationIcon, aa as StaggerAnimationIcon, ab as PlayIcon, ac as CollapsibleIcon, ad as TriggerIcon, ae as ContentIcon, af as DialogIcon, ag as OverlayIcon, ah as HeadingIcon, ai as PopoverIcon, aj as TooltipIcon, ak as TabsIcon, al as LabelIcon, am as AccordionIcon, an as ItemIcon, ao as NavigationMenuIcon, ap as ListIcon, aq as ListItemIcon, ar as ViewportIcon, as as SelectIcon, at as FormTextFieldIcon, au as CheckMarkIcon, av as SwitchIcon, aw as RadioGroupIcon } from "./cli-BUDhVJgP.js";
|
|
2
|
+
const meta$N = {
|
|
3
|
+
category: "general",
|
|
4
|
+
description: "Slot is a container for content that you want to reference across the project. Changes made to a Slot's children will be reflected in all other instances of that Slot.",
|
|
5
|
+
icon: SlotComponentIcon,
|
|
6
|
+
order: 4
|
|
7
|
+
};
|
|
8
|
+
const meta$M = {};
|
|
9
|
+
const props$J = {
|
|
10
|
+
className: {
|
|
11
|
+
required: false,
|
|
12
|
+
control: "text",
|
|
13
|
+
type: "string",
|
|
14
|
+
description: ""
|
|
15
|
+
},
|
|
16
|
+
clientOnly: { required: false, control: "boolean", type: "boolean" },
|
|
17
|
+
code: { required: true, control: "text", type: "string" },
|
|
18
|
+
executeScriptOnCanvas: {
|
|
19
|
+
required: false,
|
|
20
|
+
control: "boolean",
|
|
21
|
+
type: "boolean"
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
const meta$L = {
|
|
25
|
+
category: "general",
|
|
26
|
+
label: "HTML Embed",
|
|
27
|
+
description: "Used to add HTML code to the page, such as an SVG or script.",
|
|
28
|
+
icon: EmbedIcon,
|
|
29
|
+
order: 3,
|
|
30
|
+
contentModel: {
|
|
31
|
+
category: "instance",
|
|
32
|
+
children: [descendantComponent]
|
|
33
|
+
},
|
|
34
|
+
presetStyle: {
|
|
35
|
+
div: [
|
|
36
|
+
{
|
|
37
|
+
property: "display",
|
|
38
|
+
value: { type: "keyword", value: "contents" }
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
property: "white-space-collapse",
|
|
42
|
+
value: { type: "keyword", value: "collapse" }
|
|
43
|
+
}
|
|
44
|
+
]
|
|
45
|
+
},
|
|
46
|
+
initialProps: ["class", "clientOnly", "executeScriptOnCanvas"],
|
|
47
|
+
props: {
|
|
48
|
+
...props$J,
|
|
49
|
+
clientOnly: {
|
|
50
|
+
...props$J.clientOnly,
|
|
51
|
+
description: "Activate it for any scripts that can mutate the DOM or introduce interactivity. This only affects the published site."
|
|
52
|
+
},
|
|
53
|
+
executeScriptOnCanvas: {
|
|
54
|
+
...props$J.executeScriptOnCanvas,
|
|
55
|
+
label: "Run scripts on canvas",
|
|
56
|
+
description: "Dangerously allow script execution on canvas without switching to preview mode. This only affects build mode, but may result in unwanted side effects inside builder!"
|
|
57
|
+
},
|
|
58
|
+
code: {
|
|
59
|
+
required: true,
|
|
60
|
+
control: "code",
|
|
61
|
+
language: "html",
|
|
62
|
+
type: "string"
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
const props$I = {
|
|
67
|
+
code: { required: true, control: "text", type: "string" }
|
|
68
|
+
};
|
|
69
|
+
const meta$K = {
|
|
70
|
+
icon: MarkdownEmbedIcon,
|
|
71
|
+
contentModel: {
|
|
72
|
+
category: "instance",
|
|
73
|
+
children: [descendantComponent]
|
|
74
|
+
},
|
|
75
|
+
presetStyle: {
|
|
76
|
+
div: [
|
|
77
|
+
{
|
|
78
|
+
property: "display",
|
|
79
|
+
value: { type: "keyword", value: "contents" }
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
property: "white-space-collapse",
|
|
83
|
+
value: { type: "keyword", value: "collapse" }
|
|
84
|
+
}
|
|
85
|
+
]
|
|
86
|
+
},
|
|
87
|
+
initialProps: ["class"],
|
|
88
|
+
props: {
|
|
89
|
+
...props$I,
|
|
90
|
+
code: {
|
|
91
|
+
required: true,
|
|
92
|
+
control: "code",
|
|
93
|
+
language: "markdown",
|
|
94
|
+
type: "string",
|
|
95
|
+
contentMode: true
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
const props$H = {};
|
|
100
|
+
const meta$J = {
|
|
101
|
+
presetStyle: { body },
|
|
102
|
+
initialProps: ["id", "class"],
|
|
103
|
+
props: props$H
|
|
104
|
+
};
|
|
105
|
+
const props$G = {
|
|
106
|
+
tag: { required: false, control: "text", type: "string" }
|
|
107
|
+
};
|
|
108
|
+
const meta$I = {
|
|
109
|
+
presetStyle: {
|
|
110
|
+
div,
|
|
111
|
+
address,
|
|
112
|
+
article,
|
|
113
|
+
aside,
|
|
114
|
+
figure,
|
|
115
|
+
footer,
|
|
116
|
+
header,
|
|
117
|
+
main,
|
|
118
|
+
nav,
|
|
119
|
+
section
|
|
120
|
+
},
|
|
121
|
+
initialProps: ["tag", "id", "class"],
|
|
122
|
+
props: {
|
|
123
|
+
...props$G,
|
|
124
|
+
tag: {
|
|
125
|
+
required: true,
|
|
126
|
+
control: "tag",
|
|
127
|
+
type: "string",
|
|
128
|
+
options: [
|
|
129
|
+
"div",
|
|
130
|
+
"header",
|
|
131
|
+
"footer",
|
|
132
|
+
"nav",
|
|
133
|
+
"main",
|
|
134
|
+
"section",
|
|
135
|
+
"article",
|
|
136
|
+
"aside",
|
|
137
|
+
"address",
|
|
138
|
+
"figure",
|
|
139
|
+
"span"
|
|
140
|
+
]
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
};
|
|
144
|
+
const props$F = {
|
|
145
|
+
tag: { required: false, control: "text", type: "string" }
|
|
146
|
+
};
|
|
147
|
+
const meta$H = {
|
|
148
|
+
icon: TextIcon,
|
|
149
|
+
presetStyle: {
|
|
150
|
+
div: [
|
|
151
|
+
...div,
|
|
152
|
+
{
|
|
153
|
+
property: "min-height",
|
|
154
|
+
value: { type: "unit", unit: "em", value: 1 }
|
|
155
|
+
}
|
|
156
|
+
]
|
|
157
|
+
},
|
|
158
|
+
initialProps: ["tag", "id", "class"],
|
|
159
|
+
props: {
|
|
160
|
+
...props$F,
|
|
161
|
+
tag: {
|
|
162
|
+
required: true,
|
|
163
|
+
control: "tag",
|
|
164
|
+
type: "string",
|
|
165
|
+
options: ["div", "cite", "figcaption", "span"]
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
};
|
|
169
|
+
const props$E = {
|
|
170
|
+
tag: { required: false, control: "text", type: "string" }
|
|
171
|
+
};
|
|
172
|
+
const meta$G = {
|
|
173
|
+
presetStyle: {
|
|
174
|
+
h1,
|
|
175
|
+
h2,
|
|
176
|
+
h3,
|
|
177
|
+
h4,
|
|
178
|
+
h5,
|
|
179
|
+
h6
|
|
180
|
+
},
|
|
181
|
+
initialProps: ["tag", "id", "class"],
|
|
182
|
+
props: {
|
|
183
|
+
...props$E,
|
|
184
|
+
tag: {
|
|
185
|
+
required: true,
|
|
186
|
+
control: "tag",
|
|
187
|
+
type: "string",
|
|
188
|
+
options: ["h1", "h2", "h3", "h4", "h5", "h6"]
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
};
|
|
192
|
+
const props$D = {};
|
|
193
|
+
const meta$F = {
|
|
194
|
+
presetStyle: { p },
|
|
195
|
+
initialProps: ["id", "class"],
|
|
196
|
+
props: props$D
|
|
197
|
+
};
|
|
198
|
+
const props$C = {
|
|
199
|
+
download: {
|
|
200
|
+
required: false,
|
|
201
|
+
control: "boolean",
|
|
202
|
+
type: "boolean",
|
|
203
|
+
description: "Whether to download the resource instead of navigating to it, and its filename if so"
|
|
204
|
+
},
|
|
205
|
+
prefetch: {
|
|
206
|
+
required: false,
|
|
207
|
+
control: "select",
|
|
208
|
+
type: "string",
|
|
209
|
+
options: ["none", "intent", "render", "viewport"]
|
|
210
|
+
},
|
|
211
|
+
preventScrollReset: { required: false, control: "boolean", type: "boolean" },
|
|
212
|
+
reloadDocument: { required: false, control: "boolean", type: "boolean" },
|
|
213
|
+
replace: { required: false, control: "boolean", type: "boolean" },
|
|
214
|
+
target: {
|
|
215
|
+
required: false,
|
|
216
|
+
control: "select",
|
|
217
|
+
type: "string",
|
|
218
|
+
options: ["_self", "_blank", "_parent", "_top"],
|
|
219
|
+
description: "Navigable for form submission"
|
|
220
|
+
}
|
|
221
|
+
};
|
|
222
|
+
const presetStyle$d = {
|
|
223
|
+
a: [
|
|
224
|
+
...a,
|
|
225
|
+
{
|
|
226
|
+
property: "display",
|
|
227
|
+
value: { type: "keyword", value: "inline-block" }
|
|
228
|
+
}
|
|
229
|
+
]
|
|
230
|
+
};
|
|
231
|
+
const meta$E = {
|
|
232
|
+
presetStyle: presetStyle$d,
|
|
233
|
+
states: [{ label: "Current page", selector: "[aria-current=page]" }],
|
|
234
|
+
initialProps: ["id", "class", "href", "target", "prefetch", "download"],
|
|
235
|
+
props: {
|
|
236
|
+
...props$C,
|
|
237
|
+
href: {
|
|
238
|
+
type: "string",
|
|
239
|
+
control: "url",
|
|
240
|
+
required: false,
|
|
241
|
+
contentMode: true
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
};
|
|
245
|
+
const meta$D = meta$E;
|
|
246
|
+
const props$B = {};
|
|
247
|
+
const meta$C = {
|
|
248
|
+
label: "Text",
|
|
249
|
+
icon: PaintBrushIcon,
|
|
250
|
+
presetStyle: { span },
|
|
251
|
+
initialProps: ["id", "class"],
|
|
252
|
+
props: props$B
|
|
253
|
+
};
|
|
254
|
+
const props$A = {};
|
|
255
|
+
const meta$B = {
|
|
256
|
+
label: "Bold Text",
|
|
257
|
+
presetStyle: { b },
|
|
258
|
+
initialProps: ["id", "class"],
|
|
259
|
+
props: props$A
|
|
260
|
+
};
|
|
261
|
+
const props$z = {};
|
|
262
|
+
const meta$A = {
|
|
263
|
+
label: "Italic Text",
|
|
264
|
+
presetStyle: { i },
|
|
265
|
+
initialProps: ["id", "class"],
|
|
266
|
+
props: props$z
|
|
267
|
+
};
|
|
268
|
+
const props$y = {};
|
|
269
|
+
const meta$z = {
|
|
270
|
+
label: "Superscript Text",
|
|
271
|
+
presetStyle: { sup },
|
|
272
|
+
initialProps: ["id", "class"],
|
|
273
|
+
props: props$y
|
|
274
|
+
};
|
|
275
|
+
const props$x = {};
|
|
276
|
+
const meta$y = {
|
|
277
|
+
label: "Subscript Text",
|
|
278
|
+
presetStyle: { sub },
|
|
279
|
+
initialProps: ["id", "class"],
|
|
280
|
+
props: props$x
|
|
281
|
+
};
|
|
282
|
+
const props$w = {};
|
|
283
|
+
const meta$x = {
|
|
284
|
+
presetStyle: { button },
|
|
285
|
+
initialProps: ["id", "class", "type", "aria-label"],
|
|
286
|
+
props: props$w
|
|
287
|
+
};
|
|
288
|
+
const props$v = {};
|
|
289
|
+
const presetStyle$c = {
|
|
290
|
+
input: [
|
|
291
|
+
...input,
|
|
292
|
+
{
|
|
293
|
+
property: "display",
|
|
294
|
+
value: { type: "keyword", value: "block" }
|
|
295
|
+
}
|
|
296
|
+
]
|
|
297
|
+
};
|
|
298
|
+
const meta$w = {
|
|
299
|
+
label: "Text Input",
|
|
300
|
+
presetStyle: presetStyle$c,
|
|
301
|
+
initialProps: [
|
|
302
|
+
"id",
|
|
303
|
+
"class",
|
|
304
|
+
"name",
|
|
305
|
+
"value",
|
|
306
|
+
"type",
|
|
307
|
+
"placeholder",
|
|
308
|
+
"required",
|
|
309
|
+
"autofocus"
|
|
310
|
+
],
|
|
311
|
+
props: props$v
|
|
312
|
+
};
|
|
313
|
+
const props$u = {
|
|
314
|
+
state: {
|
|
315
|
+
description: "Use this property to reveal the Success and Error states on the canvas so they can be styled. The Initial state is displayed when the page first opens. The Success and Error states are displayed depending on whether the Form submits successfully or unsuccessfully.",
|
|
316
|
+
required: false,
|
|
317
|
+
control: "radio",
|
|
318
|
+
type: "string",
|
|
319
|
+
defaultValue: "initial",
|
|
320
|
+
options: ["initial", "success", "error"]
|
|
321
|
+
}
|
|
322
|
+
};
|
|
323
|
+
const meta$v = {
|
|
324
|
+
label: "Webhook Form",
|
|
325
|
+
icon: WebhookFormIcon,
|
|
326
|
+
presetStyle: {
|
|
327
|
+
form
|
|
328
|
+
},
|
|
329
|
+
states: [
|
|
330
|
+
{ selector: "[data-state=error]", label: "Error" },
|
|
331
|
+
{ selector: "[data-state=success]", label: "Success" }
|
|
332
|
+
],
|
|
333
|
+
initialProps: ["id", "class", "state", "action"],
|
|
334
|
+
props: {
|
|
335
|
+
...props$u,
|
|
336
|
+
action: {
|
|
337
|
+
type: "resource",
|
|
338
|
+
control: "resource",
|
|
339
|
+
description: "The URI of a program that processes the information submitted via the form.",
|
|
340
|
+
required: false
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
};
|
|
344
|
+
const props$t = {};
|
|
345
|
+
const presetStyle$b = {
|
|
346
|
+
form: [
|
|
347
|
+
...form,
|
|
348
|
+
{ property: "min-height", value: { type: "unit", unit: "px", value: 20 } }
|
|
349
|
+
]
|
|
350
|
+
};
|
|
351
|
+
const meta$u = {
|
|
352
|
+
label: "Form",
|
|
353
|
+
presetStyle: presetStyle$b,
|
|
354
|
+
initialProps: ["id", "class", "action"],
|
|
355
|
+
props: props$t
|
|
356
|
+
};
|
|
357
|
+
const props$s = {
|
|
358
|
+
optimize: {
|
|
359
|
+
description: "Optimize the image for enhanced performance.",
|
|
360
|
+
required: false,
|
|
361
|
+
control: "boolean",
|
|
362
|
+
type: "boolean",
|
|
363
|
+
defaultValue: true
|
|
364
|
+
},
|
|
365
|
+
quality: { required: false, control: "number", type: "number" }
|
|
366
|
+
};
|
|
367
|
+
const presetStyle$a = {
|
|
368
|
+
img: [
|
|
369
|
+
...img,
|
|
370
|
+
// Otherwise on new image insert onto canvas it can overfit screen size multiple times
|
|
371
|
+
{
|
|
372
|
+
property: "max-width",
|
|
373
|
+
value: { type: "unit", unit: "%", value: 100 }
|
|
374
|
+
},
|
|
375
|
+
// inline | inline-block is not suitable because without line-height: 0 on the parent you get unsuitable spaces/margins
|
|
376
|
+
// see https://stackoverflow.com/questions/24771194/is-the-margin-of-inline-block-4px-is-static-for-all-browsers
|
|
377
|
+
{
|
|
378
|
+
property: "display",
|
|
379
|
+
value: { type: "keyword", value: "block" }
|
|
380
|
+
},
|
|
381
|
+
// Set image height to "auto" to reduce layout shift, improving compatibility across browsers like Safari.
|
|
382
|
+
// Unlike "fit-content," "auto" preserves the aspect ratio when the width exceeds max-width. (in Safari)
|
|
383
|
+
// See https://web.dev/articles/optimize-cls#best_practice_for_setting_image_dimensions
|
|
384
|
+
{
|
|
385
|
+
property: "height",
|
|
386
|
+
value: { type: "keyword", value: "auto" }
|
|
387
|
+
}
|
|
388
|
+
]
|
|
389
|
+
};
|
|
390
|
+
const meta$t = {
|
|
391
|
+
category: "media",
|
|
392
|
+
description: "Add an image asset to the page. Webstudio automatically converts images to WebP or AVIF format and makes them responsive for best performance.",
|
|
393
|
+
presetStyle: presetStyle$a,
|
|
394
|
+
order: 0,
|
|
395
|
+
initialProps: [
|
|
396
|
+
"id",
|
|
397
|
+
"class",
|
|
398
|
+
"src",
|
|
399
|
+
"width",
|
|
400
|
+
"height",
|
|
401
|
+
"alt",
|
|
402
|
+
"loading",
|
|
403
|
+
"optimize"
|
|
404
|
+
],
|
|
405
|
+
props: {
|
|
406
|
+
...props$s,
|
|
407
|
+
// Automatically generated props don't have the right control.
|
|
408
|
+
src: {
|
|
409
|
+
type: "string",
|
|
410
|
+
control: "file",
|
|
411
|
+
label: "Source",
|
|
412
|
+
required: false,
|
|
413
|
+
accept: "image/*",
|
|
414
|
+
contentMode: true
|
|
415
|
+
},
|
|
416
|
+
width: {
|
|
417
|
+
type: "number",
|
|
418
|
+
control: "number",
|
|
419
|
+
required: false,
|
|
420
|
+
contentMode: true
|
|
421
|
+
},
|
|
422
|
+
height: {
|
|
423
|
+
type: "number",
|
|
424
|
+
control: "number",
|
|
425
|
+
required: false,
|
|
426
|
+
contentMode: true
|
|
427
|
+
},
|
|
428
|
+
alt: {
|
|
429
|
+
type: "string",
|
|
430
|
+
control: "text",
|
|
431
|
+
required: false,
|
|
432
|
+
contentMode: true
|
|
433
|
+
}
|
|
434
|
+
}
|
|
435
|
+
};
|
|
436
|
+
const props$r = {};
|
|
437
|
+
const presetStyle$9 = {
|
|
438
|
+
blockquote: [
|
|
439
|
+
{
|
|
440
|
+
property: "margin-top",
|
|
441
|
+
value: { type: "unit", value: 0, unit: "number" }
|
|
442
|
+
},
|
|
443
|
+
{
|
|
444
|
+
property: "margin-right",
|
|
445
|
+
value: { type: "unit", value: 0, unit: "number" }
|
|
446
|
+
},
|
|
447
|
+
{
|
|
448
|
+
property: "margin-bottom",
|
|
449
|
+
value: { type: "unit", value: 10, unit: "px" }
|
|
450
|
+
},
|
|
451
|
+
{
|
|
452
|
+
property: "margin-left",
|
|
453
|
+
value: { type: "unit", value: 0, unit: "number" }
|
|
454
|
+
},
|
|
455
|
+
{
|
|
456
|
+
property: "padding-top",
|
|
457
|
+
value: { type: "unit", value: 10, unit: "px" }
|
|
458
|
+
},
|
|
459
|
+
{
|
|
460
|
+
property: "padding-bottom",
|
|
461
|
+
value: { type: "unit", value: 10, unit: "px" }
|
|
462
|
+
},
|
|
463
|
+
{
|
|
464
|
+
property: "padding-left",
|
|
465
|
+
value: { type: "unit", value: 20, unit: "px" }
|
|
466
|
+
},
|
|
467
|
+
{
|
|
468
|
+
property: "padding-right",
|
|
469
|
+
value: { type: "unit", value: 20, unit: "px" }
|
|
470
|
+
},
|
|
471
|
+
{
|
|
472
|
+
property: "border-left-width",
|
|
473
|
+
value: { type: "unit", value: 5, unit: "px" }
|
|
474
|
+
},
|
|
475
|
+
{
|
|
476
|
+
property: "border-left-style",
|
|
477
|
+
value: { type: "keyword", value: "solid" }
|
|
478
|
+
},
|
|
479
|
+
{
|
|
480
|
+
property: "border-left-color",
|
|
481
|
+
value: { type: "rgb", r: 226, g: 226, b: 226, alpha: 1 }
|
|
482
|
+
}
|
|
483
|
+
]
|
|
484
|
+
};
|
|
485
|
+
const meta$s = {
|
|
486
|
+
presetStyle: presetStyle$9,
|
|
487
|
+
initialProps: ["id", "class", "cite"],
|
|
488
|
+
props: props$r
|
|
489
|
+
};
|
|
490
|
+
const props$q = {
|
|
491
|
+
ordered: {
|
|
492
|
+
description: "Shows numbers instead of bullets when toggled. See the “List Style Type” property under the “List Item” section in the Style panel for more options.",
|
|
493
|
+
required: false,
|
|
494
|
+
control: "boolean",
|
|
495
|
+
type: "boolean",
|
|
496
|
+
defaultValue: false
|
|
497
|
+
}
|
|
498
|
+
};
|
|
499
|
+
const presetStyle$8 = {
|
|
500
|
+
ol: [
|
|
501
|
+
...ol,
|
|
502
|
+
{
|
|
503
|
+
property: "margin-top",
|
|
504
|
+
value: { type: "keyword", value: "0" }
|
|
505
|
+
},
|
|
506
|
+
{
|
|
507
|
+
property: "margin-bottom",
|
|
508
|
+
value: { type: "keyword", value: "10px" }
|
|
509
|
+
},
|
|
510
|
+
{
|
|
511
|
+
property: "padding-left",
|
|
512
|
+
value: { type: "keyword", value: "40px" }
|
|
513
|
+
}
|
|
514
|
+
],
|
|
515
|
+
ul: [
|
|
516
|
+
...ul,
|
|
517
|
+
{
|
|
518
|
+
property: "margin-top",
|
|
519
|
+
value: { type: "keyword", value: "0" }
|
|
520
|
+
},
|
|
521
|
+
{
|
|
522
|
+
property: "margin-bottom",
|
|
523
|
+
value: { type: "keyword", value: "10px" }
|
|
524
|
+
},
|
|
525
|
+
{
|
|
526
|
+
property: "padding-left",
|
|
527
|
+
value: { type: "keyword", value: "40px" }
|
|
528
|
+
}
|
|
529
|
+
]
|
|
530
|
+
};
|
|
531
|
+
const meta$r = {
|
|
532
|
+
presetStyle: presetStyle$8,
|
|
533
|
+
initialProps: ["id", "class", "ordered", "start", "reversed"],
|
|
534
|
+
props: props$q
|
|
535
|
+
};
|
|
536
|
+
const props$p = {};
|
|
537
|
+
const meta$q = {
|
|
538
|
+
presetStyle: { li },
|
|
539
|
+
initialProps: ["id", "class"],
|
|
540
|
+
props: props$p
|
|
541
|
+
};
|
|
542
|
+
const props$o = {};
|
|
543
|
+
const presetStyle$7 = {
|
|
544
|
+
hr: [
|
|
545
|
+
...hr,
|
|
546
|
+
{
|
|
547
|
+
property: "height",
|
|
548
|
+
value: { type: "keyword", value: "1px" }
|
|
549
|
+
},
|
|
550
|
+
{
|
|
551
|
+
property: "background-color",
|
|
552
|
+
value: { type: "keyword", value: "gray" }
|
|
553
|
+
},
|
|
554
|
+
{
|
|
555
|
+
property: "border-top-style",
|
|
556
|
+
value: { type: "keyword", value: "none" }
|
|
557
|
+
},
|
|
558
|
+
{
|
|
559
|
+
property: "border-right-style",
|
|
560
|
+
value: { type: "keyword", value: "none" }
|
|
561
|
+
},
|
|
562
|
+
{
|
|
563
|
+
property: "border-left-style",
|
|
564
|
+
value: { type: "keyword", value: "none" }
|
|
565
|
+
},
|
|
566
|
+
{
|
|
567
|
+
property: "border-bottom-style",
|
|
568
|
+
value: { type: "keyword", value: "none" }
|
|
569
|
+
}
|
|
570
|
+
]
|
|
571
|
+
};
|
|
572
|
+
const meta$p = {
|
|
573
|
+
presetStyle: presetStyle$7,
|
|
574
|
+
initialProps: ["id", "class"],
|
|
575
|
+
props: props$o
|
|
576
|
+
};
|
|
577
|
+
const props$n = {
|
|
578
|
+
code: { required: false, control: "text", type: "string" }
|
|
579
|
+
};
|
|
580
|
+
const presetStyle$6 = {
|
|
581
|
+
code: [
|
|
582
|
+
...code,
|
|
583
|
+
{
|
|
584
|
+
property: "display",
|
|
585
|
+
value: { type: "keyword", value: "block" }
|
|
586
|
+
},
|
|
587
|
+
{
|
|
588
|
+
property: "white-space-collapse",
|
|
589
|
+
value: { type: "keyword", value: "preserve" }
|
|
590
|
+
},
|
|
591
|
+
{
|
|
592
|
+
property: "text-wrap-mode",
|
|
593
|
+
value: { type: "keyword", value: "wrap" }
|
|
594
|
+
},
|
|
595
|
+
{
|
|
596
|
+
property: "padding-left",
|
|
597
|
+
value: { type: "unit", value: 0.2, unit: "em" }
|
|
598
|
+
},
|
|
599
|
+
{
|
|
600
|
+
property: "padding-right",
|
|
601
|
+
value: { type: "unit", value: 0.2, unit: "em" }
|
|
602
|
+
},
|
|
603
|
+
{
|
|
604
|
+
property: "background-color",
|
|
605
|
+
value: { type: "rgb", r: 238, g: 238, b: 238, alpha: 1 }
|
|
606
|
+
}
|
|
607
|
+
]
|
|
608
|
+
};
|
|
609
|
+
const meta$o = {
|
|
610
|
+
icon: BracesIcon,
|
|
611
|
+
contentModel: {
|
|
612
|
+
category: "instance",
|
|
613
|
+
children: []
|
|
614
|
+
},
|
|
615
|
+
presetStyle: presetStyle$6,
|
|
616
|
+
initialProps: ["id", "class", "lang", "code"],
|
|
617
|
+
props: {
|
|
618
|
+
...props$n,
|
|
619
|
+
code: {
|
|
620
|
+
required: true,
|
|
621
|
+
control: "codetext",
|
|
622
|
+
type: "string"
|
|
623
|
+
}
|
|
624
|
+
}
|
|
625
|
+
};
|
|
626
|
+
const props$m = {};
|
|
627
|
+
const presetStyle$5 = {
|
|
628
|
+
label: [
|
|
629
|
+
...label,
|
|
630
|
+
{ property: "display", value: { type: "keyword", value: "block" } }
|
|
631
|
+
]
|
|
632
|
+
};
|
|
633
|
+
const meta$n = {
|
|
634
|
+
label: "Input Label",
|
|
635
|
+
presetStyle: presetStyle$5,
|
|
636
|
+
initialProps: ["id", "class", "for"],
|
|
637
|
+
props: props$m
|
|
638
|
+
};
|
|
639
|
+
const props$l = {};
|
|
640
|
+
const presetStyle$4 = {
|
|
641
|
+
textarea: [
|
|
642
|
+
...textarea,
|
|
643
|
+
// resize doesn't work well while on canvas
|
|
644
|
+
{ property: "resize", value: { type: "keyword", value: "none" } },
|
|
645
|
+
{
|
|
646
|
+
property: "display",
|
|
647
|
+
value: { type: "keyword", value: "block" }
|
|
648
|
+
}
|
|
649
|
+
]
|
|
650
|
+
};
|
|
651
|
+
const meta$m = {
|
|
652
|
+
label: "Text Area",
|
|
653
|
+
presetStyle: presetStyle$4,
|
|
654
|
+
contentModel: {
|
|
655
|
+
category: "instance",
|
|
656
|
+
children: []
|
|
657
|
+
},
|
|
658
|
+
initialProps: [
|
|
659
|
+
"id",
|
|
660
|
+
"class",
|
|
661
|
+
"name",
|
|
662
|
+
"value",
|
|
663
|
+
"placeholder",
|
|
664
|
+
"required",
|
|
665
|
+
"autofocus"
|
|
666
|
+
],
|
|
667
|
+
props: props$l
|
|
668
|
+
};
|
|
669
|
+
const props$k = {
|
|
670
|
+
value: {
|
|
671
|
+
required: false,
|
|
672
|
+
control: "text",
|
|
673
|
+
type: "string",
|
|
674
|
+
description: "Value of the form control"
|
|
675
|
+
}
|
|
676
|
+
};
|
|
677
|
+
const presetStyle$3 = {
|
|
678
|
+
input: [
|
|
679
|
+
...radio,
|
|
680
|
+
{
|
|
681
|
+
property: "margin-right",
|
|
682
|
+
value: { type: "unit", unit: "em", value: 0.5 }
|
|
683
|
+
}
|
|
684
|
+
]
|
|
685
|
+
};
|
|
686
|
+
const meta$l = {
|
|
687
|
+
label: "Radio",
|
|
688
|
+
icon: RadioCheckedIcon,
|
|
689
|
+
presetStyle: presetStyle$3,
|
|
690
|
+
initialProps: ["id", "class", "name", "value", "required", "checked"],
|
|
691
|
+
props: props$k
|
|
692
|
+
};
|
|
693
|
+
const props$j = {
|
|
694
|
+
value: {
|
|
695
|
+
required: false,
|
|
696
|
+
control: "text",
|
|
697
|
+
type: "string",
|
|
698
|
+
description: "Value of the form control"
|
|
699
|
+
}
|
|
700
|
+
};
|
|
701
|
+
const presetStyle$2 = {
|
|
702
|
+
input: [
|
|
703
|
+
...checkbox,
|
|
704
|
+
{
|
|
705
|
+
property: "margin-right",
|
|
706
|
+
value: { type: "unit", unit: "em", value: 0.5 }
|
|
707
|
+
}
|
|
708
|
+
]
|
|
709
|
+
};
|
|
710
|
+
const meta$k = {
|
|
711
|
+
icon: CheckboxCheckedIcon,
|
|
712
|
+
presetStyle: presetStyle$2,
|
|
713
|
+
initialProps: ["id", "class", "name", "value", "required", "checked"],
|
|
714
|
+
props: props$j
|
|
715
|
+
};
|
|
716
|
+
const props$i = {
|
|
717
|
+
autopause: {
|
|
718
|
+
description: "Whether to pause the current video when another Vimeo video on the same page starts to play. Set this value to false to permit simultaneous playback of all the videos on the page. This option has no effect if you've disabled cookies in your browser, either through browser settings or with an extension or plugin.",
|
|
719
|
+
required: false,
|
|
720
|
+
control: "boolean",
|
|
721
|
+
type: "boolean",
|
|
722
|
+
defaultValue: true
|
|
723
|
+
},
|
|
724
|
+
autopip: {
|
|
725
|
+
description: "Whether to enable the browser to enter picture-in-picture mode automatically when switching tabs or windows, where supported.",
|
|
726
|
+
required: false,
|
|
727
|
+
control: "boolean",
|
|
728
|
+
type: "boolean"
|
|
729
|
+
},
|
|
730
|
+
autoplay: {
|
|
731
|
+
description: "Whether to start playback of the video automatically. This feature might not work on all devices.\nSome browsers require the `muted` parameter to be set to `true` for autoplay to work.",
|
|
732
|
+
required: false,
|
|
733
|
+
control: "boolean",
|
|
734
|
+
type: "boolean",
|
|
735
|
+
defaultValue: false
|
|
736
|
+
},
|
|
737
|
+
backgroundMode: {
|
|
738
|
+
description: "Whether the player is in background mode, which hides the playback controls, enables autoplay, and loops the video.",
|
|
739
|
+
required: false,
|
|
740
|
+
control: "boolean",
|
|
741
|
+
type: "boolean"
|
|
742
|
+
},
|
|
743
|
+
controlsColor: {
|
|
744
|
+
description: "A color value of the playback controls, which is normally #00ADEF. The embed settings of the video might override this value.",
|
|
745
|
+
required: false,
|
|
746
|
+
control: "color",
|
|
747
|
+
type: "string"
|
|
748
|
+
},
|
|
749
|
+
doNotTrack: {
|
|
750
|
+
description: "Whether to prevent the player from tracking session data, including cookies. Keep in mind that setting this argument to true also blocks video stats.",
|
|
751
|
+
required: false,
|
|
752
|
+
control: "boolean",
|
|
753
|
+
type: "boolean",
|
|
754
|
+
defaultValue: false
|
|
755
|
+
},
|
|
756
|
+
interactiveParams: {
|
|
757
|
+
description: "Key-value pairs representing dynamic parameters that are utilized on interactive videos with live elements, such as title=my-video,subtitle=interactive.",
|
|
758
|
+
required: false,
|
|
759
|
+
control: "text",
|
|
760
|
+
type: "string"
|
|
761
|
+
},
|
|
762
|
+
keyboard: {
|
|
763
|
+
description: "Whether to enable keyboard input to trigger player events. This setting doesn't affect tab control.",
|
|
764
|
+
required: false,
|
|
765
|
+
control: "boolean",
|
|
766
|
+
type: "boolean",
|
|
767
|
+
defaultValue: true
|
|
768
|
+
},
|
|
769
|
+
loading: {
|
|
770
|
+
description: "Not a Vimeo attribute: Loading attribute for the iframe allows to eager or lazy load the source",
|
|
771
|
+
required: false,
|
|
772
|
+
control: "radio",
|
|
773
|
+
type: "string",
|
|
774
|
+
defaultValue: "lazy",
|
|
775
|
+
options: ["eager", "lazy"]
|
|
776
|
+
},
|
|
777
|
+
loop: {
|
|
778
|
+
description: "Whether to restart the video automatically after reaching the end.",
|
|
779
|
+
required: false,
|
|
780
|
+
control: "boolean",
|
|
781
|
+
type: "boolean",
|
|
782
|
+
defaultValue: false
|
|
783
|
+
},
|
|
784
|
+
muted: {
|
|
785
|
+
description: "Whether the video is muted upon loading. The true value is required for the autoplay behavior in some browsers.",
|
|
786
|
+
required: false,
|
|
787
|
+
control: "boolean",
|
|
788
|
+
type: "boolean",
|
|
789
|
+
defaultValue: false
|
|
790
|
+
},
|
|
791
|
+
pip: {
|
|
792
|
+
description: "Whether to include the picture-in-picture button among the player controls and enable the picture-in-picture API.",
|
|
793
|
+
required: false,
|
|
794
|
+
control: "boolean",
|
|
795
|
+
type: "boolean",
|
|
796
|
+
defaultValue: false
|
|
797
|
+
},
|
|
798
|
+
playsinline: {
|
|
799
|
+
description: "Whether the video plays inline on supported mobile devices. To force the device to play the video in fullscreen mode instead, set this value to false.",
|
|
800
|
+
required: false,
|
|
801
|
+
control: "boolean",
|
|
802
|
+
type: "boolean",
|
|
803
|
+
defaultValue: false
|
|
804
|
+
},
|
|
805
|
+
quality: {
|
|
806
|
+
description: "For videos on a Vimeo Plus account or higher: the playback quality of the video. Use auto for the best possible quality given available bandwidth and other factors. You can also specify 360p, 540p, 720p, 1080p, 2k, and 4k.",
|
|
807
|
+
required: false,
|
|
808
|
+
control: "select",
|
|
809
|
+
type: "string",
|
|
810
|
+
defaultValue: "auto",
|
|
811
|
+
options: ["auto", "360p", "540p", "720p", "1080p", "2k", "4k"]
|
|
812
|
+
},
|
|
813
|
+
responsive: {
|
|
814
|
+
description: "Whether to return a responsive embed code, or one that provides intelligent adjustments based on viewing conditions. We recommend this option for mobile-optimized sites.",
|
|
815
|
+
required: false,
|
|
816
|
+
control: "boolean",
|
|
817
|
+
type: "boolean",
|
|
818
|
+
defaultValue: true
|
|
819
|
+
},
|
|
820
|
+
showByline: {
|
|
821
|
+
description: "Whether to display the video owner's name.",
|
|
822
|
+
required: false,
|
|
823
|
+
control: "boolean",
|
|
824
|
+
type: "boolean",
|
|
825
|
+
defaultValue: false
|
|
826
|
+
},
|
|
827
|
+
showControls: {
|
|
828
|
+
description: "Whether to display the player's interactive elements, including the play bar and sharing buttons. Set this option to false for a chromeless experience. To control playback when the play/pause button is hidden, set autoplay to true, use keyboard controls (which remain active), or implement our player SDK.",
|
|
829
|
+
required: false,
|
|
830
|
+
control: "boolean",
|
|
831
|
+
type: "boolean",
|
|
832
|
+
defaultValue: true
|
|
833
|
+
},
|
|
834
|
+
showPortrait: {
|
|
835
|
+
description: "Whether to display the video owner's portrait. Only works if either title or byline are also enabled",
|
|
836
|
+
required: false,
|
|
837
|
+
control: "boolean",
|
|
838
|
+
type: "boolean",
|
|
839
|
+
defaultValue: true
|
|
840
|
+
},
|
|
841
|
+
showPreview: {
|
|
842
|
+
description: "Not a Vimeo attribute: Whether the preview image should be loaded from Vimeo API. Ideally don't use it, because it will show up with some delay and will make your project feel slower.",
|
|
843
|
+
required: false,
|
|
844
|
+
control: "boolean",
|
|
845
|
+
type: "boolean",
|
|
846
|
+
defaultValue: false
|
|
847
|
+
},
|
|
848
|
+
showTitle: {
|
|
849
|
+
description: "Whether the player displays the title overlay.",
|
|
850
|
+
required: false,
|
|
851
|
+
control: "boolean",
|
|
852
|
+
type: "boolean",
|
|
853
|
+
defaultValue: false
|
|
854
|
+
},
|
|
855
|
+
speed: {
|
|
856
|
+
description: "Whether the player displays speed controls in the preferences menu and enables the playback rate API.",
|
|
857
|
+
required: false,
|
|
858
|
+
control: "boolean",
|
|
859
|
+
type: "boolean",
|
|
860
|
+
defaultValue: false
|
|
861
|
+
},
|
|
862
|
+
texttrack: {
|
|
863
|
+
description: "The text track to display with the video. Specify the text track by its language code (en), the language code and locale (en-US), or the language code and kind (en.captions). For this argument to work, the video must already have a text track of the given type; see our Help Center or Working with Text Track Uploads for more information.\nTo enable automatically generated closed captions instead, provide the value en-x-autogen. Please note that, at the present time, automatic captions are always in English.",
|
|
864
|
+
required: false,
|
|
865
|
+
control: "text",
|
|
866
|
+
type: "string"
|
|
867
|
+
},
|
|
868
|
+
transparent: {
|
|
869
|
+
description: "Whether the responsive player and transparent background are enabled.",
|
|
870
|
+
required: false,
|
|
871
|
+
control: "boolean",
|
|
872
|
+
type: "boolean",
|
|
873
|
+
defaultValue: true
|
|
874
|
+
},
|
|
875
|
+
url: {
|
|
876
|
+
description: "The ID or the URL of the video on Vimeo. You must supply one of these values to identify the video. When the video's privacy setting is Private, you must use the URL, and the URL must include the h parameter. For more information, see Vimeo’s introductory guide.",
|
|
877
|
+
required: false,
|
|
878
|
+
control: "text",
|
|
879
|
+
type: "string"
|
|
880
|
+
}
|
|
881
|
+
};
|
|
882
|
+
const initialProps$1 = [
|
|
883
|
+
"id",
|
|
884
|
+
"className",
|
|
885
|
+
"url",
|
|
886
|
+
"title",
|
|
887
|
+
"quality",
|
|
888
|
+
"loading",
|
|
889
|
+
"showPreview",
|
|
890
|
+
"autoplay",
|
|
891
|
+
"doNotTrack",
|
|
892
|
+
"loop",
|
|
893
|
+
"muted",
|
|
894
|
+
"showPortrait",
|
|
895
|
+
"showByline",
|
|
896
|
+
"showTitle",
|
|
897
|
+
"showControls",
|
|
898
|
+
"controlsColor",
|
|
899
|
+
"playsinline"
|
|
900
|
+
];
|
|
901
|
+
const meta$j = {
|
|
902
|
+
icon: VimeoIcon,
|
|
903
|
+
contentModel: {
|
|
904
|
+
category: "instance",
|
|
905
|
+
children: ["instance"],
|
|
906
|
+
descendants: ["VimeoSpinner", "VimeoPlayButton", "VimeoPreviewImage"]
|
|
907
|
+
},
|
|
908
|
+
presetStyle: { div },
|
|
909
|
+
initialProps: initialProps$1,
|
|
910
|
+
props: {
|
|
911
|
+
...props$i,
|
|
912
|
+
url: {
|
|
913
|
+
...props$i.url,
|
|
914
|
+
contentMode: true
|
|
915
|
+
}
|
|
916
|
+
}
|
|
917
|
+
};
|
|
918
|
+
const props$h = {
|
|
919
|
+
allowFullscreen: {
|
|
920
|
+
description: "Whether to allow fullscreen mode.\nOriginal parameter: `fs`",
|
|
921
|
+
required: false,
|
|
922
|
+
control: "boolean",
|
|
923
|
+
type: "boolean",
|
|
924
|
+
defaultValue: true
|
|
925
|
+
},
|
|
926
|
+
autoplay: {
|
|
927
|
+
description: "Whether the video should autoplay.\nSome browsers require the `muted` parameter to be set to `true` for autoplay to work.",
|
|
928
|
+
required: false,
|
|
929
|
+
control: "boolean",
|
|
930
|
+
type: "boolean",
|
|
931
|
+
defaultValue: false
|
|
932
|
+
},
|
|
933
|
+
captionLanguage: {
|
|
934
|
+
description: "Specifies the default language that the player will use to display captions.\nThe value is an ISO 639-1 two-letter language code.\nOriginal parameter: `cc_lang_pref`",
|
|
935
|
+
required: false,
|
|
936
|
+
control: "text",
|
|
937
|
+
type: "string"
|
|
938
|
+
},
|
|
939
|
+
color: {
|
|
940
|
+
description: "Specifies the color that will be used in the player's video progress bar to highlight the amount of the video that the viewer has already seen.\nValid values are 'red' and 'white'.",
|
|
941
|
+
required: false,
|
|
942
|
+
control: "radio",
|
|
943
|
+
type: "string",
|
|
944
|
+
options: ["red", "white"]
|
|
945
|
+
},
|
|
946
|
+
disableKeyboard: {
|
|
947
|
+
description: "Whether to disable keyboard controls.\nOriginal parameter: `disablekb`",
|
|
948
|
+
required: false,
|
|
949
|
+
control: "boolean",
|
|
950
|
+
type: "boolean",
|
|
951
|
+
defaultValue: false
|
|
952
|
+
},
|
|
953
|
+
endTime: {
|
|
954
|
+
description: "End time of the video in seconds.\nOriginal parameter: `end`",
|
|
955
|
+
required: false,
|
|
956
|
+
control: "number",
|
|
957
|
+
type: "number"
|
|
958
|
+
},
|
|
959
|
+
inline: {
|
|
960
|
+
description: "Whether to play inline on mobile (not fullscreen).",
|
|
961
|
+
required: false,
|
|
962
|
+
control: "boolean",
|
|
963
|
+
type: "boolean",
|
|
964
|
+
defaultValue: false
|
|
965
|
+
},
|
|
966
|
+
keyboard: {
|
|
967
|
+
description: "Whether to enable keyboard controls.",
|
|
968
|
+
required: false,
|
|
969
|
+
control: "boolean",
|
|
970
|
+
type: "boolean",
|
|
971
|
+
defaultValue: true
|
|
972
|
+
},
|
|
973
|
+
language: {
|
|
974
|
+
description: "Sets the player's interface language. The value is an ISO 639-1 two-letter language code or a fully specified locale.\nOriginal parameter: `hl`",
|
|
975
|
+
required: false,
|
|
976
|
+
control: "text",
|
|
977
|
+
type: "string"
|
|
978
|
+
},
|
|
979
|
+
listId: {
|
|
980
|
+
description: "ID of the playlist to load.\nOriginal parameter: `list`",
|
|
981
|
+
required: false,
|
|
982
|
+
control: "text",
|
|
983
|
+
type: "string"
|
|
984
|
+
},
|
|
985
|
+
listType: {
|
|
986
|
+
description: "Type of playlist to load.",
|
|
987
|
+
required: false,
|
|
988
|
+
control: "radio",
|
|
989
|
+
type: "string",
|
|
990
|
+
options: ["playlist", "user_uploads"]
|
|
991
|
+
},
|
|
992
|
+
loading: {
|
|
993
|
+
description: "Loading strategy for iframe",
|
|
994
|
+
required: false,
|
|
995
|
+
control: "radio",
|
|
996
|
+
type: "string",
|
|
997
|
+
defaultValue: "lazy",
|
|
998
|
+
options: ["eager", "lazy"]
|
|
999
|
+
},
|
|
1000
|
+
loop: {
|
|
1001
|
+
description: "Whether the video should loop continuously.",
|
|
1002
|
+
required: false,
|
|
1003
|
+
control: "boolean",
|
|
1004
|
+
type: "boolean",
|
|
1005
|
+
defaultValue: false
|
|
1006
|
+
},
|
|
1007
|
+
muted: {
|
|
1008
|
+
description: "Whether the video should start muted.\nUseful for enabling autoplay in browsers that require videos to be muted.\nOriginal parameter: `mute`",
|
|
1009
|
+
required: false,
|
|
1010
|
+
control: "boolean",
|
|
1011
|
+
type: "boolean",
|
|
1012
|
+
defaultValue: false
|
|
1013
|
+
},
|
|
1014
|
+
origin: {
|
|
1015
|
+
description: "Your domain for API compliance (e.g., `https://yourdomain.com`).",
|
|
1016
|
+
required: false,
|
|
1017
|
+
control: "text",
|
|
1018
|
+
type: "string"
|
|
1019
|
+
},
|
|
1020
|
+
playlist: {
|
|
1021
|
+
description: "This parameter specifies a comma-separated list of video IDs to play",
|
|
1022
|
+
required: false,
|
|
1023
|
+
control: "text",
|
|
1024
|
+
type: "string"
|
|
1025
|
+
},
|
|
1026
|
+
privacyEnhancedMode: {
|
|
1027
|
+
description: "The Privacy Enhanced Mode of the YouTube embedded player prevents the use of views of embedded YouTube content from influencing the viewer’s browsing experience on YouTube.\nhttps://support.google.com/youtube/answer/171780?hl=en#zippy=%2Cturn-on-privacy-enhanced-mode",
|
|
1028
|
+
required: false,
|
|
1029
|
+
control: "boolean",
|
|
1030
|
+
type: "boolean",
|
|
1031
|
+
defaultValue: true
|
|
1032
|
+
},
|
|
1033
|
+
referrer: {
|
|
1034
|
+
description: "Referrer URL for tracking purposes.\nOriginal parameter: `widget_referrer`",
|
|
1035
|
+
required: false,
|
|
1036
|
+
control: "text",
|
|
1037
|
+
type: "string"
|
|
1038
|
+
},
|
|
1039
|
+
showAnnotations: {
|
|
1040
|
+
description: "Whether to show annotations on the video.\nOriginal parameter: `iv_load_policy`",
|
|
1041
|
+
required: false,
|
|
1042
|
+
control: "boolean",
|
|
1043
|
+
type: "boolean",
|
|
1044
|
+
defaultValue: true
|
|
1045
|
+
},
|
|
1046
|
+
showCaptions: {
|
|
1047
|
+
description: "Whether captions should be shown by default.\nOriginal parameter: `cc_load_policy`",
|
|
1048
|
+
required: false,
|
|
1049
|
+
control: "boolean",
|
|
1050
|
+
type: "boolean",
|
|
1051
|
+
defaultValue: false
|
|
1052
|
+
},
|
|
1053
|
+
showControls: {
|
|
1054
|
+
description: "Whether to show player controls.",
|
|
1055
|
+
required: false,
|
|
1056
|
+
control: "boolean",
|
|
1057
|
+
type: "boolean",
|
|
1058
|
+
defaultValue: true
|
|
1059
|
+
},
|
|
1060
|
+
showPreview: { required: false, control: "boolean", type: "boolean" },
|
|
1061
|
+
showRelatedVideos: {
|
|
1062
|
+
description: "Whether to show related videos at the end.\nOriginal parameter: `rel`",
|
|
1063
|
+
required: false,
|
|
1064
|
+
control: "boolean",
|
|
1065
|
+
type: "boolean",
|
|
1066
|
+
defaultValue: true
|
|
1067
|
+
},
|
|
1068
|
+
startTime: {
|
|
1069
|
+
description: "Start time of the video in seconds.\nOriginal parameter: `start`",
|
|
1070
|
+
required: false,
|
|
1071
|
+
control: "number",
|
|
1072
|
+
type: "number"
|
|
1073
|
+
},
|
|
1074
|
+
url: {
|
|
1075
|
+
description: "The YouTube video URL or ID",
|
|
1076
|
+
required: false,
|
|
1077
|
+
control: "text",
|
|
1078
|
+
type: "string"
|
|
1079
|
+
}
|
|
1080
|
+
};
|
|
1081
|
+
const initialProps = [
|
|
1082
|
+
"id",
|
|
1083
|
+
"className",
|
|
1084
|
+
"url",
|
|
1085
|
+
"privacyEnhancedMode",
|
|
1086
|
+
"title",
|
|
1087
|
+
"loading",
|
|
1088
|
+
"showPreview",
|
|
1089
|
+
"autoplay",
|
|
1090
|
+
"showControls",
|
|
1091
|
+
"showRelatedVideos",
|
|
1092
|
+
"keyboard",
|
|
1093
|
+
"loop",
|
|
1094
|
+
"inline",
|
|
1095
|
+
"allowFullscreen",
|
|
1096
|
+
"showCaptions",
|
|
1097
|
+
"showAnnotations",
|
|
1098
|
+
"startTime",
|
|
1099
|
+
"endTime",
|
|
1100
|
+
"disableKeyboard",
|
|
1101
|
+
"referrer",
|
|
1102
|
+
"listType",
|
|
1103
|
+
"listId",
|
|
1104
|
+
"origin",
|
|
1105
|
+
"captionLanguage",
|
|
1106
|
+
"language",
|
|
1107
|
+
"color",
|
|
1108
|
+
"playlist"
|
|
1109
|
+
];
|
|
1110
|
+
const meta$i = {
|
|
1111
|
+
icon: YoutubeIcon,
|
|
1112
|
+
contentModel: {
|
|
1113
|
+
category: "instance",
|
|
1114
|
+
children: ["instance"],
|
|
1115
|
+
descendants: ["VimeoSpinner", "VimeoPlayButton", "VimeoPreviewImage"]
|
|
1116
|
+
},
|
|
1117
|
+
presetStyle: { div },
|
|
1118
|
+
initialProps,
|
|
1119
|
+
props: {
|
|
1120
|
+
...props$h,
|
|
1121
|
+
url: {
|
|
1122
|
+
...props$h.url,
|
|
1123
|
+
contentMode: true
|
|
1124
|
+
}
|
|
1125
|
+
}
|
|
1126
|
+
};
|
|
1127
|
+
const props$g = {
|
|
1128
|
+
optimize: {
|
|
1129
|
+
description: "Optimize the image for enhanced performance.",
|
|
1130
|
+
required: false,
|
|
1131
|
+
control: "boolean",
|
|
1132
|
+
type: "boolean"
|
|
1133
|
+
},
|
|
1134
|
+
quality: { required: false, control: "number", type: "number" }
|
|
1135
|
+
};
|
|
1136
|
+
const meta$h = {
|
|
1137
|
+
...meta$t,
|
|
1138
|
+
category: "hidden",
|
|
1139
|
+
label: "Preview Image",
|
|
1140
|
+
contentModel: {
|
|
1141
|
+
category: "none",
|
|
1142
|
+
children: []
|
|
1143
|
+
},
|
|
1144
|
+
initialProps: meta$t.initialProps,
|
|
1145
|
+
props: {
|
|
1146
|
+
...props$g,
|
|
1147
|
+
// Automatically generated props don't have the right control.
|
|
1148
|
+
src: {
|
|
1149
|
+
type: "string",
|
|
1150
|
+
control: "file",
|
|
1151
|
+
label: "Source",
|
|
1152
|
+
required: false,
|
|
1153
|
+
contentMode: true
|
|
1154
|
+
}
|
|
1155
|
+
}
|
|
1156
|
+
};
|
|
1157
|
+
const props$f = {};
|
|
1158
|
+
const meta$g = {
|
|
1159
|
+
category: "hidden",
|
|
1160
|
+
label: "Play Button",
|
|
1161
|
+
icon: ButtonElementIcon,
|
|
1162
|
+
contentModel: {
|
|
1163
|
+
category: "none",
|
|
1164
|
+
children: ["instance"]
|
|
1165
|
+
},
|
|
1166
|
+
presetStyle: { button },
|
|
1167
|
+
initialProps: ["id", "class"],
|
|
1168
|
+
props: props$f
|
|
1169
|
+
};
|
|
1170
|
+
const props$e = {};
|
|
1171
|
+
const meta$f = {
|
|
1172
|
+
icon: BoxIcon,
|
|
1173
|
+
category: "hidden",
|
|
1174
|
+
label: "Spinner",
|
|
1175
|
+
contentModel: {
|
|
1176
|
+
category: "none",
|
|
1177
|
+
children: ["instance"]
|
|
1178
|
+
},
|
|
1179
|
+
presetStyle: { div },
|
|
1180
|
+
initialProps: ["id", "class"],
|
|
1181
|
+
props: props$e
|
|
1182
|
+
};
|
|
1183
|
+
const props$d = {
|
|
1184
|
+
href: {
|
|
1185
|
+
required: false,
|
|
1186
|
+
control: "text",
|
|
1187
|
+
type: "string",
|
|
1188
|
+
description: "Address of the hyperlink"
|
|
1189
|
+
},
|
|
1190
|
+
hreflang: {
|
|
1191
|
+
required: false,
|
|
1192
|
+
control: "text",
|
|
1193
|
+
type: "string",
|
|
1194
|
+
description: "Language of the linked resource"
|
|
1195
|
+
},
|
|
1196
|
+
rel: {
|
|
1197
|
+
required: false,
|
|
1198
|
+
control: "text",
|
|
1199
|
+
type: "string",
|
|
1200
|
+
description: "Relationship between the location in the document containing the hyperlink and the destination resource"
|
|
1201
|
+
},
|
|
1202
|
+
tag: { required: false, control: "text", type: "string", defaultValue: "" },
|
|
1203
|
+
xmlns: { required: false, control: "text", type: "string" },
|
|
1204
|
+
"xmlns:xhtml": { required: false, control: "text", type: "string" }
|
|
1205
|
+
};
|
|
1206
|
+
const meta$e = {
|
|
1207
|
+
category: "xml",
|
|
1208
|
+
order: 6,
|
|
1209
|
+
icon: XmlIcon,
|
|
1210
|
+
description: "XML Node",
|
|
1211
|
+
initialProps: ["tag"],
|
|
1212
|
+
props: props$d
|
|
1213
|
+
};
|
|
1214
|
+
const props$c = {
|
|
1215
|
+
dateStyle: {
|
|
1216
|
+
required: false,
|
|
1217
|
+
control: "radio",
|
|
1218
|
+
type: "string",
|
|
1219
|
+
defaultValue: "short",
|
|
1220
|
+
options: ["long", "short"]
|
|
1221
|
+
},
|
|
1222
|
+
datetime: {
|
|
1223
|
+
required: false,
|
|
1224
|
+
control: "text",
|
|
1225
|
+
type: "string",
|
|
1226
|
+
defaultValue: "dateTime attribute is not set",
|
|
1227
|
+
description: "Machine-readable value"
|
|
1228
|
+
}
|
|
1229
|
+
};
|
|
1230
|
+
const meta$d = {
|
|
1231
|
+
category: "xml",
|
|
1232
|
+
description: "Converts machine-readable date and time to ISO format.",
|
|
1233
|
+
icon: CalendarIcon,
|
|
1234
|
+
order: 7,
|
|
1235
|
+
initialProps: ["datetime", "dateStyle"],
|
|
1236
|
+
props: props$c
|
|
1237
|
+
};
|
|
1238
|
+
const props$b = {
|
|
1239
|
+
country: {
|
|
1240
|
+
required: false,
|
|
1241
|
+
control: "select",
|
|
1242
|
+
type: "string",
|
|
1243
|
+
defaultValue: "GB",
|
|
1244
|
+
options: [
|
|
1245
|
+
"AF",
|
|
1246
|
+
"AL",
|
|
1247
|
+
"DZ",
|
|
1248
|
+
"AS",
|
|
1249
|
+
"AD",
|
|
1250
|
+
"AO",
|
|
1251
|
+
"AI",
|
|
1252
|
+
"AQ",
|
|
1253
|
+
"AG",
|
|
1254
|
+
"AR",
|
|
1255
|
+
"AM",
|
|
1256
|
+
"AW",
|
|
1257
|
+
"AU",
|
|
1258
|
+
"AT",
|
|
1259
|
+
"AZ",
|
|
1260
|
+
"BS",
|
|
1261
|
+
"BH",
|
|
1262
|
+
"BD",
|
|
1263
|
+
"BB",
|
|
1264
|
+
"BY",
|
|
1265
|
+
"BE",
|
|
1266
|
+
"BZ",
|
|
1267
|
+
"BJ",
|
|
1268
|
+
"BM",
|
|
1269
|
+
"BT",
|
|
1270
|
+
"BO",
|
|
1271
|
+
"BA",
|
|
1272
|
+
"BW",
|
|
1273
|
+
"BR",
|
|
1274
|
+
"BN",
|
|
1275
|
+
"BG",
|
|
1276
|
+
"BF",
|
|
1277
|
+
"BI",
|
|
1278
|
+
"CV",
|
|
1279
|
+
"KH",
|
|
1280
|
+
"CM",
|
|
1281
|
+
"CA",
|
|
1282
|
+
"KY",
|
|
1283
|
+
"CF",
|
|
1284
|
+
"TD",
|
|
1285
|
+
"CL",
|
|
1286
|
+
"CN",
|
|
1287
|
+
"CO",
|
|
1288
|
+
"KM",
|
|
1289
|
+
"CG",
|
|
1290
|
+
"CD",
|
|
1291
|
+
"CR",
|
|
1292
|
+
"HR",
|
|
1293
|
+
"CU",
|
|
1294
|
+
"CY",
|
|
1295
|
+
"CZ",
|
|
1296
|
+
"DK",
|
|
1297
|
+
"DJ",
|
|
1298
|
+
"DM",
|
|
1299
|
+
"DO",
|
|
1300
|
+
"EC",
|
|
1301
|
+
"EG",
|
|
1302
|
+
"SV",
|
|
1303
|
+
"GQ",
|
|
1304
|
+
"ER",
|
|
1305
|
+
"EE",
|
|
1306
|
+
"SZ",
|
|
1307
|
+
"ET",
|
|
1308
|
+
"FJ",
|
|
1309
|
+
"FI",
|
|
1310
|
+
"FR",
|
|
1311
|
+
"GA",
|
|
1312
|
+
"GM",
|
|
1313
|
+
"GE",
|
|
1314
|
+
"DE",
|
|
1315
|
+
"GH",
|
|
1316
|
+
"GR",
|
|
1317
|
+
"GD",
|
|
1318
|
+
"GT",
|
|
1319
|
+
"GN",
|
|
1320
|
+
"GW",
|
|
1321
|
+
"GY",
|
|
1322
|
+
"HT",
|
|
1323
|
+
"HN",
|
|
1324
|
+
"HU",
|
|
1325
|
+
"IS",
|
|
1326
|
+
"IN",
|
|
1327
|
+
"ID",
|
|
1328
|
+
"IR",
|
|
1329
|
+
"IQ",
|
|
1330
|
+
"IE",
|
|
1331
|
+
"IL",
|
|
1332
|
+
"IT",
|
|
1333
|
+
"JM",
|
|
1334
|
+
"JP",
|
|
1335
|
+
"JO",
|
|
1336
|
+
"KZ",
|
|
1337
|
+
"KE",
|
|
1338
|
+
"KI",
|
|
1339
|
+
"KP",
|
|
1340
|
+
"KR",
|
|
1341
|
+
"KW",
|
|
1342
|
+
"KG",
|
|
1343
|
+
"LA",
|
|
1344
|
+
"LV",
|
|
1345
|
+
"LB",
|
|
1346
|
+
"LS",
|
|
1347
|
+
"LR",
|
|
1348
|
+
"LY",
|
|
1349
|
+
"LI",
|
|
1350
|
+
"LT",
|
|
1351
|
+
"LU",
|
|
1352
|
+
"MG",
|
|
1353
|
+
"MW",
|
|
1354
|
+
"MY",
|
|
1355
|
+
"MV",
|
|
1356
|
+
"ML",
|
|
1357
|
+
"MT",
|
|
1358
|
+
"MH",
|
|
1359
|
+
"MR",
|
|
1360
|
+
"MU",
|
|
1361
|
+
"MX",
|
|
1362
|
+
"FM",
|
|
1363
|
+
"MD",
|
|
1364
|
+
"MC",
|
|
1365
|
+
"MN",
|
|
1366
|
+
"ME",
|
|
1367
|
+
"MA",
|
|
1368
|
+
"MZ",
|
|
1369
|
+
"MM",
|
|
1370
|
+
"NA",
|
|
1371
|
+
"NR",
|
|
1372
|
+
"NP",
|
|
1373
|
+
"NL",
|
|
1374
|
+
"NZ",
|
|
1375
|
+
"NI",
|
|
1376
|
+
"NE",
|
|
1377
|
+
"NG",
|
|
1378
|
+
"NO",
|
|
1379
|
+
"OM",
|
|
1380
|
+
"PK",
|
|
1381
|
+
"PW",
|
|
1382
|
+
"PA",
|
|
1383
|
+
"PG",
|
|
1384
|
+
"PY",
|
|
1385
|
+
"PE",
|
|
1386
|
+
"PH",
|
|
1387
|
+
"PL",
|
|
1388
|
+
"PT",
|
|
1389
|
+
"QA",
|
|
1390
|
+
"RO",
|
|
1391
|
+
"RU",
|
|
1392
|
+
"RW",
|
|
1393
|
+
"KN",
|
|
1394
|
+
"LC",
|
|
1395
|
+
"VC",
|
|
1396
|
+
"WS",
|
|
1397
|
+
"SM",
|
|
1398
|
+
"ST",
|
|
1399
|
+
"SA",
|
|
1400
|
+
"SN",
|
|
1401
|
+
"RS",
|
|
1402
|
+
"SC",
|
|
1403
|
+
"SL",
|
|
1404
|
+
"SG",
|
|
1405
|
+
"SK",
|
|
1406
|
+
"SI",
|
|
1407
|
+
"SB",
|
|
1408
|
+
"SO",
|
|
1409
|
+
"ZA",
|
|
1410
|
+
"SS",
|
|
1411
|
+
"ES",
|
|
1412
|
+
"LK",
|
|
1413
|
+
"SD",
|
|
1414
|
+
"SR",
|
|
1415
|
+
"SE",
|
|
1416
|
+
"CH",
|
|
1417
|
+
"SY",
|
|
1418
|
+
"TW",
|
|
1419
|
+
"TJ",
|
|
1420
|
+
"TZ",
|
|
1421
|
+
"TH",
|
|
1422
|
+
"TL",
|
|
1423
|
+
"TG",
|
|
1424
|
+
"TO",
|
|
1425
|
+
"TT",
|
|
1426
|
+
"TN",
|
|
1427
|
+
"TR",
|
|
1428
|
+
"TM",
|
|
1429
|
+
"TV",
|
|
1430
|
+
"UG",
|
|
1431
|
+
"UA",
|
|
1432
|
+
"AE",
|
|
1433
|
+
"GB",
|
|
1434
|
+
"US",
|
|
1435
|
+
"UY",
|
|
1436
|
+
"UZ",
|
|
1437
|
+
"VU",
|
|
1438
|
+
"VA",
|
|
1439
|
+
"VE",
|
|
1440
|
+
"VN",
|
|
1441
|
+
"YE",
|
|
1442
|
+
"ZM",
|
|
1443
|
+
"ZW"
|
|
1444
|
+
]
|
|
1445
|
+
},
|
|
1446
|
+
dateStyle: {
|
|
1447
|
+
required: false,
|
|
1448
|
+
control: "select",
|
|
1449
|
+
type: "string",
|
|
1450
|
+
defaultValue: "medium",
|
|
1451
|
+
options: ["full", "long", "medium", "short", "none"]
|
|
1452
|
+
},
|
|
1453
|
+
datetime: {
|
|
1454
|
+
required: false,
|
|
1455
|
+
control: "text",
|
|
1456
|
+
type: "string",
|
|
1457
|
+
defaultValue: "dateTime attribute is not set",
|
|
1458
|
+
description: "Machine-readable value"
|
|
1459
|
+
},
|
|
1460
|
+
format: {
|
|
1461
|
+
description: 'Custom format template. Overrides Date Style and Time Style.\n\nTokens: YYYY/YY (year), MMMM/MMM/MM/M (month), DDDD/DDD/DD/D (day), HH/H (hours), mm/m (minutes), ss/s (seconds)\n\nExamples:\n- "YYYY-MM-DD" → 2025-11-03\n- "DDDD, MMMM D" → Monday, November 3\n- "DDD, D. MMM YYYY" → Mon, 3. Nov 2025\n\nDay and month names use the selected language.',
|
|
1462
|
+
required: false,
|
|
1463
|
+
control: "text",
|
|
1464
|
+
type: "string"
|
|
1465
|
+
},
|
|
1466
|
+
language: {
|
|
1467
|
+
required: false,
|
|
1468
|
+
control: "select",
|
|
1469
|
+
type: "string",
|
|
1470
|
+
defaultValue: "en",
|
|
1471
|
+
options: [
|
|
1472
|
+
"hr",
|
|
1473
|
+
"th",
|
|
1474
|
+
"tr",
|
|
1475
|
+
"id",
|
|
1476
|
+
"is",
|
|
1477
|
+
"cy",
|
|
1478
|
+
"fr",
|
|
1479
|
+
"af",
|
|
1480
|
+
"am",
|
|
1481
|
+
"ar",
|
|
1482
|
+
"az",
|
|
1483
|
+
"be",
|
|
1484
|
+
"bg",
|
|
1485
|
+
"bn",
|
|
1486
|
+
"bs",
|
|
1487
|
+
"ca",
|
|
1488
|
+
"cs",
|
|
1489
|
+
"da",
|
|
1490
|
+
"de",
|
|
1491
|
+
"el",
|
|
1492
|
+
"en",
|
|
1493
|
+
"es",
|
|
1494
|
+
"et",
|
|
1495
|
+
"eu",
|
|
1496
|
+
"fa",
|
|
1497
|
+
"fi",
|
|
1498
|
+
"ga",
|
|
1499
|
+
"gl",
|
|
1500
|
+
"gu",
|
|
1501
|
+
"he",
|
|
1502
|
+
"hi",
|
|
1503
|
+
"hu",
|
|
1504
|
+
"hy",
|
|
1505
|
+
"it",
|
|
1506
|
+
"ja",
|
|
1507
|
+
"ka",
|
|
1508
|
+
"kk",
|
|
1509
|
+
"km",
|
|
1510
|
+
"kn",
|
|
1511
|
+
"ko",
|
|
1512
|
+
"ky",
|
|
1513
|
+
"lb",
|
|
1514
|
+
"lt",
|
|
1515
|
+
"lv",
|
|
1516
|
+
"mk",
|
|
1517
|
+
"ml",
|
|
1518
|
+
"mn",
|
|
1519
|
+
"mr",
|
|
1520
|
+
"ms",
|
|
1521
|
+
"mt",
|
|
1522
|
+
"nb",
|
|
1523
|
+
"nl",
|
|
1524
|
+
"nn",
|
|
1525
|
+
"pl",
|
|
1526
|
+
"pt",
|
|
1527
|
+
"ro",
|
|
1528
|
+
"ru",
|
|
1529
|
+
"si",
|
|
1530
|
+
"sk",
|
|
1531
|
+
"sl",
|
|
1532
|
+
"sq",
|
|
1533
|
+
"sr",
|
|
1534
|
+
"sv",
|
|
1535
|
+
"sw",
|
|
1536
|
+
"ta",
|
|
1537
|
+
"te",
|
|
1538
|
+
"uk",
|
|
1539
|
+
"ur",
|
|
1540
|
+
"uz",
|
|
1541
|
+
"vi",
|
|
1542
|
+
"zh"
|
|
1543
|
+
]
|
|
1544
|
+
},
|
|
1545
|
+
timeStyle: {
|
|
1546
|
+
required: false,
|
|
1547
|
+
control: "select",
|
|
1548
|
+
type: "string",
|
|
1549
|
+
defaultValue: "none",
|
|
1550
|
+
options: ["full", "long", "medium", "short", "none"]
|
|
1551
|
+
},
|
|
1552
|
+
timeZone: {
|
|
1553
|
+
description: 'Time zone used to format the date.\n\nUse "UTC" for deterministic UTC output, "visitor" to use the browser time\nzone after hydration, or an IANA time zone like "Europe/Berlin".',
|
|
1554
|
+
required: false,
|
|
1555
|
+
control: "text",
|
|
1556
|
+
type: "string",
|
|
1557
|
+
defaultValue: "UTC"
|
|
1558
|
+
}
|
|
1559
|
+
};
|
|
1560
|
+
const meta$c = {
|
|
1561
|
+
category: "localization",
|
|
1562
|
+
description: "Converts machine-readable date and time to a human-readable format.",
|
|
1563
|
+
contentModel: {
|
|
1564
|
+
category: "instance",
|
|
1565
|
+
children: []
|
|
1566
|
+
},
|
|
1567
|
+
presetStyle: {
|
|
1568
|
+
time
|
|
1569
|
+
},
|
|
1570
|
+
initialProps: [
|
|
1571
|
+
"datetime",
|
|
1572
|
+
"language",
|
|
1573
|
+
"country",
|
|
1574
|
+
"dateStyle",
|
|
1575
|
+
"timeStyle",
|
|
1576
|
+
"timeZone",
|
|
1577
|
+
"format"
|
|
1578
|
+
],
|
|
1579
|
+
props: {
|
|
1580
|
+
...props$b,
|
|
1581
|
+
datetime: {
|
|
1582
|
+
type: "string",
|
|
1583
|
+
control: "text",
|
|
1584
|
+
required: false,
|
|
1585
|
+
contentMode: true
|
|
1586
|
+
},
|
|
1587
|
+
language: {
|
|
1588
|
+
...props$b.language,
|
|
1589
|
+
contentMode: true
|
|
1590
|
+
},
|
|
1591
|
+
country: {
|
|
1592
|
+
...props$b.country,
|
|
1593
|
+
contentMode: true
|
|
1594
|
+
},
|
|
1595
|
+
dateStyle: {
|
|
1596
|
+
...props$b.dateStyle,
|
|
1597
|
+
contentMode: true
|
|
1598
|
+
},
|
|
1599
|
+
timeStyle: {
|
|
1600
|
+
...props$b.timeStyle,
|
|
1601
|
+
contentMode: true
|
|
1602
|
+
},
|
|
1603
|
+
timeZone: {
|
|
1604
|
+
required: false,
|
|
1605
|
+
control: "timeZone",
|
|
1606
|
+
type: "string",
|
|
1607
|
+
defaultValue: "UTC",
|
|
1608
|
+
options: ["UTC", "visitor"],
|
|
1609
|
+
description: 'Timezone used to display the date. Use "visitor" to display each visitor’s browser timezone after the page loads, or select/type an IANA timezone like "Europe/Berlin".',
|
|
1610
|
+
contentMode: true
|
|
1611
|
+
},
|
|
1612
|
+
format: {
|
|
1613
|
+
...props$b.format,
|
|
1614
|
+
contentMode: true
|
|
1615
|
+
}
|
|
1616
|
+
}
|
|
1617
|
+
};
|
|
1618
|
+
const props$a = {};
|
|
1619
|
+
const presetStyle$1 = {
|
|
1620
|
+
select: [
|
|
1621
|
+
...select,
|
|
1622
|
+
{
|
|
1623
|
+
property: "display",
|
|
1624
|
+
value: { type: "keyword", value: "block" }
|
|
1625
|
+
}
|
|
1626
|
+
]
|
|
1627
|
+
};
|
|
1628
|
+
const meta$b = {
|
|
1629
|
+
presetStyle: presetStyle$1,
|
|
1630
|
+
initialProps: [
|
|
1631
|
+
"id",
|
|
1632
|
+
"class",
|
|
1633
|
+
"name",
|
|
1634
|
+
"value",
|
|
1635
|
+
"multiple",
|
|
1636
|
+
"required",
|
|
1637
|
+
"autofocus"
|
|
1638
|
+
],
|
|
1639
|
+
props: props$a
|
|
1640
|
+
};
|
|
1641
|
+
const props$9 = {};
|
|
1642
|
+
const presetStyle = {
|
|
1643
|
+
option: [
|
|
1644
|
+
{
|
|
1645
|
+
property: "background-color",
|
|
1646
|
+
state: ":checked",
|
|
1647
|
+
value: {
|
|
1648
|
+
type: "rgb",
|
|
1649
|
+
alpha: 1,
|
|
1650
|
+
r: 209,
|
|
1651
|
+
g: 209,
|
|
1652
|
+
b: 209
|
|
1653
|
+
}
|
|
1654
|
+
}
|
|
1655
|
+
]
|
|
1656
|
+
};
|
|
1657
|
+
const meta$a = {
|
|
1658
|
+
category: "hidden",
|
|
1659
|
+
description: "An item within a drop-down menu that users can select as their chosen value.",
|
|
1660
|
+
presetStyle,
|
|
1661
|
+
states: [
|
|
1662
|
+
// Applies when option is being activated (clicked)
|
|
1663
|
+
{ selector: ":active", label: "Active" },
|
|
1664
|
+
// Applies to the currently selected option
|
|
1665
|
+
{ selector: ":checked", label: "Checked" },
|
|
1666
|
+
// For <option> elements: The :default pseudo-class selects the <option> that has the selected attribute when the page loads. This is true even if the user later selects a different option.
|
|
1667
|
+
{ selector: ":default", label: "Default" },
|
|
1668
|
+
{ selector: ":hover", label: "Hover" },
|
|
1669
|
+
{ selector: ":disabled", label: "Disabled" }
|
|
1670
|
+
],
|
|
1671
|
+
initialProps: ["label", "value", "label", "disabled"],
|
|
1672
|
+
props: props$9
|
|
1673
|
+
};
|
|
1674
|
+
const props$8 = {};
|
|
1675
|
+
const meta$9 = {
|
|
1676
|
+
icon: HeaderIcon,
|
|
1677
|
+
description: "Inserts children into the head of the document",
|
|
1678
|
+
contentModel: {
|
|
1679
|
+
category: "instance",
|
|
1680
|
+
children: ["HeadLink", "HeadMeta", "HeadTitle"]
|
|
1681
|
+
},
|
|
1682
|
+
props: props$8
|
|
1683
|
+
};
|
|
1684
|
+
const props$7 = {};
|
|
1685
|
+
const meta$8 = {
|
|
1686
|
+
icon: ResourceIcon,
|
|
1687
|
+
contentModel: {
|
|
1688
|
+
category: "none",
|
|
1689
|
+
children: []
|
|
1690
|
+
},
|
|
1691
|
+
initialProps: ["rel", "hrefLang", "href", "type", "as"],
|
|
1692
|
+
props: props$7
|
|
1693
|
+
};
|
|
1694
|
+
const props$6 = {};
|
|
1695
|
+
const meta$7 = {
|
|
1696
|
+
icon: WindowInfoIcon,
|
|
1697
|
+
contentModel: {
|
|
1698
|
+
category: "none",
|
|
1699
|
+
children: []
|
|
1700
|
+
},
|
|
1701
|
+
initialProps: ["name", "property", "content"],
|
|
1702
|
+
props: props$6
|
|
1703
|
+
};
|
|
1704
|
+
const props$5 = {};
|
|
1705
|
+
const meta$6 = {
|
|
1706
|
+
icon: WindowTitleIcon,
|
|
1707
|
+
contentModel: {
|
|
1708
|
+
category: "none",
|
|
1709
|
+
children: ["text"]
|
|
1710
|
+
},
|
|
1711
|
+
props: props$5
|
|
1712
|
+
};
|
|
1713
|
+
const props$4 = {};
|
|
1714
|
+
const meta$5 = {
|
|
1715
|
+
icon: VideoIcon,
|
|
1716
|
+
contentModel: {
|
|
1717
|
+
category: "instance",
|
|
1718
|
+
children: []
|
|
1719
|
+
},
|
|
1720
|
+
presetStyle: {
|
|
1721
|
+
video: [
|
|
1722
|
+
{
|
|
1723
|
+
property: "max-width",
|
|
1724
|
+
value: { type: "unit", unit: "%", value: 100 }
|
|
1725
|
+
}
|
|
1726
|
+
]
|
|
1727
|
+
},
|
|
1728
|
+
initialProps: [
|
|
1729
|
+
"id",
|
|
1730
|
+
"class",
|
|
1731
|
+
"width",
|
|
1732
|
+
"height",
|
|
1733
|
+
"src",
|
|
1734
|
+
"autoPlay",
|
|
1735
|
+
"controls",
|
|
1736
|
+
"loop",
|
|
1737
|
+
"muted",
|
|
1738
|
+
"preload",
|
|
1739
|
+
"playsInline"
|
|
1740
|
+
],
|
|
1741
|
+
props: {
|
|
1742
|
+
...props$4,
|
|
1743
|
+
// Automatically generated props don't have the right control.
|
|
1744
|
+
src: {
|
|
1745
|
+
type: "string",
|
|
1746
|
+
control: "file",
|
|
1747
|
+
label: "Source",
|
|
1748
|
+
required: false,
|
|
1749
|
+
accept: ".mp4,.webm,.mpg,.mpeg,.mov",
|
|
1750
|
+
contentMode: true
|
|
1751
|
+
},
|
|
1752
|
+
width: {
|
|
1753
|
+
type: "number",
|
|
1754
|
+
control: "number",
|
|
1755
|
+
required: false,
|
|
1756
|
+
contentMode: true
|
|
1757
|
+
},
|
|
1758
|
+
height: {
|
|
1759
|
+
type: "number",
|
|
1760
|
+
control: "number",
|
|
1761
|
+
required: false,
|
|
1762
|
+
contentMode: true
|
|
1763
|
+
}
|
|
1764
|
+
}
|
|
1765
|
+
};
|
|
1766
|
+
const baseComponentMetas = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1767
|
+
__proto__: null,
|
|
1768
|
+
Blockquote: meta$s,
|
|
1769
|
+
Body: meta$J,
|
|
1770
|
+
Bold: meta$B,
|
|
1771
|
+
Box: meta$I,
|
|
1772
|
+
Button: meta$x,
|
|
1773
|
+
Checkbox: meta$k,
|
|
1774
|
+
CodeText: meta$o,
|
|
1775
|
+
Form: meta$v,
|
|
1776
|
+
Fragment: meta$M,
|
|
1777
|
+
HeadLink: meta$8,
|
|
1778
|
+
HeadMeta: meta$7,
|
|
1779
|
+
HeadSlot: meta$9,
|
|
1780
|
+
HeadTitle: meta$6,
|
|
1781
|
+
Heading: meta$G,
|
|
1782
|
+
HtmlEmbed: meta$L,
|
|
1783
|
+
Image: meta$t,
|
|
1784
|
+
Input: meta$w,
|
|
1785
|
+
Italic: meta$A,
|
|
1786
|
+
Label: meta$n,
|
|
1787
|
+
Link: meta$E,
|
|
1788
|
+
List: meta$r,
|
|
1789
|
+
ListItem: meta$q,
|
|
1790
|
+
MarkdownEmbed: meta$K,
|
|
1791
|
+
Option: meta$a,
|
|
1792
|
+
Paragraph: meta$F,
|
|
1793
|
+
RadioButton: meta$l,
|
|
1794
|
+
RemixForm: meta$u,
|
|
1795
|
+
RichTextLink: meta$D,
|
|
1796
|
+
Select: meta$b,
|
|
1797
|
+
Separator: meta$p,
|
|
1798
|
+
Slot: meta$N,
|
|
1799
|
+
Span: meta$C,
|
|
1800
|
+
Subscript: meta$y,
|
|
1801
|
+
Superscript: meta$z,
|
|
1802
|
+
Text: meta$H,
|
|
1803
|
+
Textarea: meta$m,
|
|
1804
|
+
Time: meta$c,
|
|
1805
|
+
Video: meta$5,
|
|
1806
|
+
Vimeo: meta$j,
|
|
1807
|
+
VimeoPlayButton: meta$g,
|
|
1808
|
+
VimeoPreviewImage: meta$h,
|
|
1809
|
+
VimeoSpinner: meta$f,
|
|
1810
|
+
XmlNode: meta$e,
|
|
1811
|
+
XmlTime: meta$d,
|
|
1812
|
+
YouTube: meta$i
|
|
1813
|
+
}, Symbol.toStringTag, { value: "Module" }));
|
|
1814
|
+
const createMetaProxy$1 = (prefix) => {
|
|
1815
|
+
return new Proxy(
|
|
1816
|
+
{},
|
|
1817
|
+
{
|
|
1818
|
+
get(_target, prop) {
|
|
1819
|
+
return `${prefix}${prop}`;
|
|
1820
|
+
}
|
|
1821
|
+
}
|
|
1822
|
+
);
|
|
1823
|
+
};
|
|
1824
|
+
const animation = createMetaProxy$1(
|
|
1825
|
+
"@webstudio-is/sdk-components-animation:"
|
|
1826
|
+
);
|
|
1827
|
+
const meta$4 = {
|
|
1828
|
+
category: "animations",
|
|
1829
|
+
description: "Animation Group component is designed to animate its children.",
|
|
1830
|
+
icon: AnimationGroupIcon,
|
|
1831
|
+
order: 0,
|
|
1832
|
+
label: "Animation Group",
|
|
1833
|
+
contentModel: {
|
|
1834
|
+
category: "instance",
|
|
1835
|
+
children: [
|
|
1836
|
+
"instance",
|
|
1837
|
+
animation.AnimateText,
|
|
1838
|
+
animation.StaggerAnimation,
|
|
1839
|
+
animation.VideoAnimation
|
|
1840
|
+
]
|
|
1841
|
+
},
|
|
1842
|
+
initialProps: ["action"],
|
|
1843
|
+
props: {
|
|
1844
|
+
action: {
|
|
1845
|
+
required: false,
|
|
1846
|
+
control: "animationAction",
|
|
1847
|
+
type: "animationAction",
|
|
1848
|
+
description: "Animation Action"
|
|
1849
|
+
}
|
|
1850
|
+
}
|
|
1851
|
+
};
|
|
1852
|
+
const props$3 = {
|
|
1853
|
+
className: {
|
|
1854
|
+
required: false,
|
|
1855
|
+
control: "text",
|
|
1856
|
+
type: "string",
|
|
1857
|
+
description: "Classes to which the element belongs"
|
|
1858
|
+
},
|
|
1859
|
+
easing: {
|
|
1860
|
+
description: "Easing function applied within the sliding window.",
|
|
1861
|
+
required: false,
|
|
1862
|
+
control: "select",
|
|
1863
|
+
type: "string",
|
|
1864
|
+
defaultValue: "linear",
|
|
1865
|
+
options: [
|
|
1866
|
+
"linear",
|
|
1867
|
+
"easeIn",
|
|
1868
|
+
"easeInCubic",
|
|
1869
|
+
"easeInQuart",
|
|
1870
|
+
"easeOut",
|
|
1871
|
+
"easeOutCubic",
|
|
1872
|
+
"easeOutQuart",
|
|
1873
|
+
"ease",
|
|
1874
|
+
"easeInOutCubic",
|
|
1875
|
+
"easeInOutQuart"
|
|
1876
|
+
]
|
|
1877
|
+
},
|
|
1878
|
+
slidingWindow: {
|
|
1879
|
+
description: "Size of the sliding window for the animation:\n- 0: Typewriter effect (no animation).\n- (0..1]: Animates one part of the text at a time.\n- (1..n]: Animates multiple parts of the text within the sliding window.",
|
|
1880
|
+
required: false,
|
|
1881
|
+
control: "number",
|
|
1882
|
+
type: "number",
|
|
1883
|
+
defaultValue: 5
|
|
1884
|
+
},
|
|
1885
|
+
splitBy: {
|
|
1886
|
+
description: "Defines how the text is split for animation (e.g., by character, space, or symbol).",
|
|
1887
|
+
required: false,
|
|
1888
|
+
control: "select",
|
|
1889
|
+
type: "string",
|
|
1890
|
+
defaultValue: "char",
|
|
1891
|
+
options: ["char", "space", 'symbol "#"', 'symbol "~"']
|
|
1892
|
+
}
|
|
1893
|
+
};
|
|
1894
|
+
const meta$3 = {
|
|
1895
|
+
category: "animations",
|
|
1896
|
+
description: "Text animation allows you to split text by char or by word to animate it.",
|
|
1897
|
+
icon: TextAnimationIcon,
|
|
1898
|
+
order: 1,
|
|
1899
|
+
label: "Text Animation",
|
|
1900
|
+
contentModel: {
|
|
1901
|
+
category: "none",
|
|
1902
|
+
children: ["instance"]
|
|
1903
|
+
},
|
|
1904
|
+
presetStyle: { div },
|
|
1905
|
+
initialProps: ["slidingWindow", "easing", "splitBy"],
|
|
1906
|
+
props: props$3
|
|
1907
|
+
};
|
|
1908
|
+
const props$2 = {
|
|
1909
|
+
className: {
|
|
1910
|
+
required: false,
|
|
1911
|
+
control: "text",
|
|
1912
|
+
type: "string",
|
|
1913
|
+
description: "Classes to which the element belongs"
|
|
1914
|
+
},
|
|
1915
|
+
easing: {
|
|
1916
|
+
description: "Easing function applied within the sliding window.",
|
|
1917
|
+
required: false,
|
|
1918
|
+
control: "select",
|
|
1919
|
+
type: "string",
|
|
1920
|
+
defaultValue: "linear",
|
|
1921
|
+
options: [
|
|
1922
|
+
"linear",
|
|
1923
|
+
"easeIn",
|
|
1924
|
+
"easeInCubic",
|
|
1925
|
+
"easeInQuart",
|
|
1926
|
+
"easeOut",
|
|
1927
|
+
"easeOutCubic",
|
|
1928
|
+
"easeOutQuart",
|
|
1929
|
+
"ease",
|
|
1930
|
+
"easeInOutCubic",
|
|
1931
|
+
"easeInOutQuart"
|
|
1932
|
+
]
|
|
1933
|
+
},
|
|
1934
|
+
slidingWindow: {
|
|
1935
|
+
description: "Size of the sliding window for the animation:\n- 0: Typewriter effect (no animation).\n- (0..1]: Animates one child at a time.\n- (1..n]: Animates multiple children within the sliding window.",
|
|
1936
|
+
required: false,
|
|
1937
|
+
control: "number",
|
|
1938
|
+
type: "number",
|
|
1939
|
+
defaultValue: 1
|
|
1940
|
+
}
|
|
1941
|
+
};
|
|
1942
|
+
const meta$2 = {
|
|
1943
|
+
category: "animations",
|
|
1944
|
+
description: "Stagger animation allows you to animate children elements with a sliding window.",
|
|
1945
|
+
icon: StaggerAnimationIcon,
|
|
1946
|
+
order: 4,
|
|
1947
|
+
label: "Stagger Animation",
|
|
1948
|
+
contentModel: {
|
|
1949
|
+
category: "none",
|
|
1950
|
+
children: ["instance"]
|
|
1951
|
+
},
|
|
1952
|
+
presetStyle: { div },
|
|
1953
|
+
initialProps: ["slidingWindow", "easing"],
|
|
1954
|
+
props: props$2
|
|
1955
|
+
};
|
|
1956
|
+
const props$1 = {
|
|
1957
|
+
timeline: { required: false, control: "boolean", type: "boolean" }
|
|
1958
|
+
};
|
|
1959
|
+
const meta$1 = {
|
|
1960
|
+
icon: PlayIcon,
|
|
1961
|
+
label: "Video Animation",
|
|
1962
|
+
contentModel: {
|
|
1963
|
+
category: "none",
|
|
1964
|
+
children: ["instance"]
|
|
1965
|
+
},
|
|
1966
|
+
presetStyle: { div },
|
|
1967
|
+
props: props$1,
|
|
1968
|
+
initialProps: ["timeline"]
|
|
1969
|
+
};
|
|
1970
|
+
const animationComponentMetas = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1971
|
+
__proto__: null,
|
|
1972
|
+
AnimateChildren: meta$4,
|
|
1973
|
+
AnimateText: meta$3,
|
|
1974
|
+
StaggerAnimation: meta$2,
|
|
1975
|
+
VideoAnimation: meta$1
|
|
1976
|
+
}, Symbol.toStringTag, { value: "Module" }));
|
|
1977
|
+
const createMetaProxy = (prefix) => {
|
|
1978
|
+
return new Proxy(
|
|
1979
|
+
{},
|
|
1980
|
+
{
|
|
1981
|
+
get(_target, prop) {
|
|
1982
|
+
return `${prefix}${prop}`;
|
|
1983
|
+
}
|
|
1984
|
+
}
|
|
1985
|
+
);
|
|
1986
|
+
};
|
|
1987
|
+
const radix = createMetaProxy(
|
|
1988
|
+
"@webstudio-is/sdk-components-react-radix:"
|
|
1989
|
+
);
|
|
1990
|
+
const propsCollapsible = {
|
|
1991
|
+
disabled: {
|
|
1992
|
+
required: false,
|
|
1993
|
+
control: "boolean",
|
|
1994
|
+
type: "boolean",
|
|
1995
|
+
description: "Whether the form control is disabled"
|
|
1996
|
+
},
|
|
1997
|
+
open: {
|
|
1998
|
+
required: false,
|
|
1999
|
+
control: "boolean",
|
|
2000
|
+
type: "boolean",
|
|
2001
|
+
description: "Show or hide the content of this component on the canvas. This will not affect the initial state of the component."
|
|
2002
|
+
}
|
|
2003
|
+
};
|
|
2004
|
+
const propsCollapsibleTrigger = {};
|
|
2005
|
+
const propsCollapsibleContent = {};
|
|
2006
|
+
const metaCollapsible = {
|
|
2007
|
+
icon: CollapsibleIcon,
|
|
2008
|
+
contentModel: {
|
|
2009
|
+
category: "instance",
|
|
2010
|
+
children: ["instance"],
|
|
2011
|
+
descendants: [radix.CollapsibleTrigger, radix.CollapsibleContent]
|
|
2012
|
+
},
|
|
2013
|
+
states: [
|
|
2014
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2015
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2016
|
+
],
|
|
2017
|
+
presetStyle: {
|
|
2018
|
+
div
|
|
2019
|
+
},
|
|
2020
|
+
initialProps: ["open"],
|
|
2021
|
+
props: propsCollapsible
|
|
2022
|
+
};
|
|
2023
|
+
const metaCollapsibleTrigger = {
|
|
2024
|
+
icon: TriggerIcon,
|
|
2025
|
+
contentModel: {
|
|
2026
|
+
category: "none",
|
|
2027
|
+
children: ["instance", "rich-text"]
|
|
2028
|
+
},
|
|
2029
|
+
states: [
|
|
2030
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2031
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2032
|
+
],
|
|
2033
|
+
props: propsCollapsibleTrigger
|
|
2034
|
+
};
|
|
2035
|
+
const metaCollapsibleContent = {
|
|
2036
|
+
icon: ContentIcon,
|
|
2037
|
+
contentModel: {
|
|
2038
|
+
category: "none",
|
|
2039
|
+
children: ["instance", "rich-text"]
|
|
2040
|
+
},
|
|
2041
|
+
states: [
|
|
2042
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2043
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2044
|
+
],
|
|
2045
|
+
presetStyle: {
|
|
2046
|
+
div
|
|
2047
|
+
},
|
|
2048
|
+
props: propsCollapsibleContent
|
|
2049
|
+
};
|
|
2050
|
+
const propsDialog = {
|
|
2051
|
+
open: {
|
|
2052
|
+
required: false,
|
|
2053
|
+
control: "boolean",
|
|
2054
|
+
type: "boolean",
|
|
2055
|
+
description: "Show or hide the content of this component on the canvas. This will not affect the initial state of the component."
|
|
2056
|
+
}
|
|
2057
|
+
};
|
|
2058
|
+
const propsDialogTrigger = {};
|
|
2059
|
+
const propsDialogOverlay = {};
|
|
2060
|
+
const propsDialogContent = {};
|
|
2061
|
+
const propsDialogClose = {};
|
|
2062
|
+
const propsDialogTitle = {
|
|
2063
|
+
tag: {
|
|
2064
|
+
required: false,
|
|
2065
|
+
control: "select",
|
|
2066
|
+
type: "string",
|
|
2067
|
+
options: ["h2", "h3", "h1", "h4", "h5", "h6"]
|
|
2068
|
+
}
|
|
2069
|
+
};
|
|
2070
|
+
const propsDialogDescription = {};
|
|
2071
|
+
const unit = (property, value, unit2) => ({
|
|
2072
|
+
property,
|
|
2073
|
+
value: { type: "unit", unit: unit2, value }
|
|
2074
|
+
});
|
|
2075
|
+
const keyword = (property, value) => ({
|
|
2076
|
+
property,
|
|
2077
|
+
value: { type: "keyword", value }
|
|
2078
|
+
});
|
|
2079
|
+
const rgb = (property, r, g, b2) => ({
|
|
2080
|
+
property,
|
|
2081
|
+
value: { type: "rgb", alpha: 1, r, g, b: b2 }
|
|
2082
|
+
});
|
|
2083
|
+
const buttonReset = [
|
|
2084
|
+
{
|
|
2085
|
+
property: "background-color",
|
|
2086
|
+
value: { type: "keyword", value: "transparent" }
|
|
2087
|
+
},
|
|
2088
|
+
{
|
|
2089
|
+
property: "background-image",
|
|
2090
|
+
value: { type: "keyword", value: "none" }
|
|
2091
|
+
},
|
|
2092
|
+
unit("border-top-width", 0, "px"),
|
|
2093
|
+
unit("border-right-width", 0, "px"),
|
|
2094
|
+
unit("border-bottom-width", 0, "px"),
|
|
2095
|
+
unit("border-left-width", 0, "px"),
|
|
2096
|
+
keyword("border-top-style", "solid"),
|
|
2097
|
+
keyword("border-right-style", "solid"),
|
|
2098
|
+
keyword("border-bottom-style", "solid"),
|
|
2099
|
+
keyword("border-left-style", "solid"),
|
|
2100
|
+
rgb("border-top-color", 226, 232, 240),
|
|
2101
|
+
rgb("border-right-color", 226, 232, 240),
|
|
2102
|
+
rgb("border-bottom-color", 226, 232, 240),
|
|
2103
|
+
rgb("border-left-color", 226, 232, 240),
|
|
2104
|
+
unit("padding-top", 0, "px"),
|
|
2105
|
+
unit("padding-right", 0, "px"),
|
|
2106
|
+
unit("padding-bottom", 0, "px"),
|
|
2107
|
+
unit("padding-left", 0, "px")
|
|
2108
|
+
];
|
|
2109
|
+
const metaDialogTrigger = {
|
|
2110
|
+
icon: TriggerIcon,
|
|
2111
|
+
contentModel: {
|
|
2112
|
+
category: "none",
|
|
2113
|
+
children: ["instance"]
|
|
2114
|
+
},
|
|
2115
|
+
states: [
|
|
2116
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2117
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2118
|
+
],
|
|
2119
|
+
props: propsDialogTrigger
|
|
2120
|
+
};
|
|
2121
|
+
const metaDialogOverlay = {
|
|
2122
|
+
icon: OverlayIcon,
|
|
2123
|
+
contentModel: {
|
|
2124
|
+
category: "none",
|
|
2125
|
+
children: ["instance"],
|
|
2126
|
+
descendants: [radix.DialogContent]
|
|
2127
|
+
},
|
|
2128
|
+
states: [
|
|
2129
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2130
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2131
|
+
],
|
|
2132
|
+
presetStyle: { div },
|
|
2133
|
+
props: propsDialogOverlay
|
|
2134
|
+
};
|
|
2135
|
+
const metaDialogContent = {
|
|
2136
|
+
icon: ContentIcon,
|
|
2137
|
+
contentModel: {
|
|
2138
|
+
category: "none",
|
|
2139
|
+
children: ["instance"],
|
|
2140
|
+
descendants: [
|
|
2141
|
+
radix.DialogTitle,
|
|
2142
|
+
radix.DialogDescription,
|
|
2143
|
+
radix.DialogClose
|
|
2144
|
+
]
|
|
2145
|
+
},
|
|
2146
|
+
states: [
|
|
2147
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2148
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2149
|
+
],
|
|
2150
|
+
presetStyle: { div },
|
|
2151
|
+
props: propsDialogContent
|
|
2152
|
+
};
|
|
2153
|
+
const metaDialogTitle = {
|
|
2154
|
+
icon: HeadingIcon,
|
|
2155
|
+
contentModel: {
|
|
2156
|
+
category: "none",
|
|
2157
|
+
children: ["instance", "rich-text"]
|
|
2158
|
+
},
|
|
2159
|
+
presetStyle: { h2 },
|
|
2160
|
+
props: propsDialogTitle
|
|
2161
|
+
};
|
|
2162
|
+
const metaDialogDescription = {
|
|
2163
|
+
icon: TextIcon,
|
|
2164
|
+
contentModel: {
|
|
2165
|
+
category: "none",
|
|
2166
|
+
children: ["instance", "rich-text"]
|
|
2167
|
+
},
|
|
2168
|
+
presetStyle: { p },
|
|
2169
|
+
props: propsDialogDescription
|
|
2170
|
+
};
|
|
2171
|
+
const metaDialogClose = {
|
|
2172
|
+
icon: ButtonElementIcon,
|
|
2173
|
+
label: "Close Button",
|
|
2174
|
+
contentModel: {
|
|
2175
|
+
category: "none",
|
|
2176
|
+
children: ["instance", "rich-text"]
|
|
2177
|
+
},
|
|
2178
|
+
presetStyle: {
|
|
2179
|
+
button: [buttonReset, button].flat()
|
|
2180
|
+
},
|
|
2181
|
+
props: propsDialogClose
|
|
2182
|
+
};
|
|
2183
|
+
const metaDialog = {
|
|
2184
|
+
icon: DialogIcon,
|
|
2185
|
+
contentModel: {
|
|
2186
|
+
category: "instance",
|
|
2187
|
+
children: ["instance"],
|
|
2188
|
+
descendants: [radix.DialogTrigger, radix.DialogOverlay]
|
|
2189
|
+
},
|
|
2190
|
+
initialProps: ["open"],
|
|
2191
|
+
props: propsDialog
|
|
2192
|
+
};
|
|
2193
|
+
const propsPopover = {
|
|
2194
|
+
open: {
|
|
2195
|
+
required: false,
|
|
2196
|
+
control: "boolean",
|
|
2197
|
+
type: "boolean",
|
|
2198
|
+
description: "Show or hide the content of this component on the canvas. This will not affect the initial state of the component."
|
|
2199
|
+
}
|
|
2200
|
+
};
|
|
2201
|
+
const propsPopoverTrigger = {};
|
|
2202
|
+
const propsPopoverContent = {
|
|
2203
|
+
align: {
|
|
2204
|
+
required: false,
|
|
2205
|
+
control: "radio",
|
|
2206
|
+
type: "string",
|
|
2207
|
+
defaultValue: "center",
|
|
2208
|
+
options: ["center", "start", "end"]
|
|
2209
|
+
},
|
|
2210
|
+
alignOffset: {
|
|
2211
|
+
required: false,
|
|
2212
|
+
control: "number",
|
|
2213
|
+
type: "number",
|
|
2214
|
+
description: "The offset in pixels from the “start“ or “end“ alignment options."
|
|
2215
|
+
},
|
|
2216
|
+
arrowPadding: { required: false, control: "number", type: "number" },
|
|
2217
|
+
avoidCollisions: { required: false, control: "boolean", type: "boolean" },
|
|
2218
|
+
hideWhenDetached: {
|
|
2219
|
+
required: false,
|
|
2220
|
+
control: "boolean",
|
|
2221
|
+
type: "boolean",
|
|
2222
|
+
defaultValue: true
|
|
2223
|
+
},
|
|
2224
|
+
side: {
|
|
2225
|
+
required: false,
|
|
2226
|
+
control: "select",
|
|
2227
|
+
type: "string",
|
|
2228
|
+
options: ["top", "right", "bottom", "left"],
|
|
2229
|
+
description: "The preferred alignment against the Trigger. May change when collisions occur."
|
|
2230
|
+
},
|
|
2231
|
+
sideOffset: {
|
|
2232
|
+
required: false,
|
|
2233
|
+
control: "number",
|
|
2234
|
+
type: "number",
|
|
2235
|
+
defaultValue: 4,
|
|
2236
|
+
description: "The distance in pixels between the Content and the Trigger."
|
|
2237
|
+
},
|
|
2238
|
+
sticky: {
|
|
2239
|
+
required: false,
|
|
2240
|
+
control: "radio",
|
|
2241
|
+
type: "string",
|
|
2242
|
+
options: ["partial", "always"]
|
|
2243
|
+
},
|
|
2244
|
+
updatePositionStrategy: {
|
|
2245
|
+
required: false,
|
|
2246
|
+
control: "radio",
|
|
2247
|
+
type: "string",
|
|
2248
|
+
options: ["always", "optimized"]
|
|
2249
|
+
}
|
|
2250
|
+
};
|
|
2251
|
+
const propsPopoverClose = {};
|
|
2252
|
+
const metaPopoverTrigger = {
|
|
2253
|
+
icon: TriggerIcon,
|
|
2254
|
+
contentModel: {
|
|
2255
|
+
category: "none",
|
|
2256
|
+
children: ["instance"]
|
|
2257
|
+
},
|
|
2258
|
+
states: [
|
|
2259
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2260
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2261
|
+
],
|
|
2262
|
+
props: propsPopoverTrigger
|
|
2263
|
+
};
|
|
2264
|
+
const metaPopoverContent = {
|
|
2265
|
+
icon: ContentIcon,
|
|
2266
|
+
contentModel: {
|
|
2267
|
+
category: "none",
|
|
2268
|
+
children: ["instance"],
|
|
2269
|
+
descendants: [radix.PopoverClose]
|
|
2270
|
+
},
|
|
2271
|
+
states: [
|
|
2272
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2273
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2274
|
+
],
|
|
2275
|
+
presetStyle: {
|
|
2276
|
+
div
|
|
2277
|
+
},
|
|
2278
|
+
initialProps: ["side", "sideOffset", "align", "alignOffset"],
|
|
2279
|
+
props: propsPopoverContent
|
|
2280
|
+
};
|
|
2281
|
+
const metaPopover = {
|
|
2282
|
+
icon: PopoverIcon,
|
|
2283
|
+
contentModel: {
|
|
2284
|
+
category: "instance",
|
|
2285
|
+
children: ["instance"],
|
|
2286
|
+
descendants: [radix.PopoverTrigger, radix.PopoverContent]
|
|
2287
|
+
},
|
|
2288
|
+
initialProps: ["open"],
|
|
2289
|
+
props: propsPopover
|
|
2290
|
+
};
|
|
2291
|
+
const metaPopoverClose = {
|
|
2292
|
+
icon: ButtonElementIcon,
|
|
2293
|
+
label: "Close Button",
|
|
2294
|
+
contentModel: {
|
|
2295
|
+
category: "none",
|
|
2296
|
+
children: ["instance", "rich-text"]
|
|
2297
|
+
},
|
|
2298
|
+
presetStyle: {
|
|
2299
|
+
button: [buttonReset, button].flat()
|
|
2300
|
+
},
|
|
2301
|
+
props: propsPopoverClose
|
|
2302
|
+
};
|
|
2303
|
+
const propsTooltip = {
|
|
2304
|
+
delayDuration: {
|
|
2305
|
+
description: "The delay before the Tooltip shows after the Trigger is hovered, in milliseconds. If no value is specified, the default is 700ms",
|
|
2306
|
+
required: false,
|
|
2307
|
+
control: "number",
|
|
2308
|
+
type: "number"
|
|
2309
|
+
},
|
|
2310
|
+
disableHoverableContent: {
|
|
2311
|
+
description: "When toggled, prevents the Tooltip content from showing when the Trigger is hovered.",
|
|
2312
|
+
required: false,
|
|
2313
|
+
control: "boolean",
|
|
2314
|
+
type: "boolean"
|
|
2315
|
+
},
|
|
2316
|
+
open: {
|
|
2317
|
+
required: false,
|
|
2318
|
+
control: "boolean",
|
|
2319
|
+
type: "boolean",
|
|
2320
|
+
description: "Show or hide the content of this component on the canvas. This will not affect the initial state of the component."
|
|
2321
|
+
}
|
|
2322
|
+
};
|
|
2323
|
+
const propsTooltipTrigger = {};
|
|
2324
|
+
const propsTooltipContent = {
|
|
2325
|
+
align: {
|
|
2326
|
+
required: false,
|
|
2327
|
+
control: "radio",
|
|
2328
|
+
type: "string",
|
|
2329
|
+
options: ["center", "start", "end"]
|
|
2330
|
+
},
|
|
2331
|
+
alignOffset: {
|
|
2332
|
+
required: false,
|
|
2333
|
+
control: "number",
|
|
2334
|
+
type: "number",
|
|
2335
|
+
description: "The offset in pixels from the “start“ or “end“ alignment options."
|
|
2336
|
+
},
|
|
2337
|
+
"aria-label": {
|
|
2338
|
+
description: "A more descriptive label for accessibility purpose",
|
|
2339
|
+
required: false,
|
|
2340
|
+
control: "text",
|
|
2341
|
+
type: "string"
|
|
2342
|
+
},
|
|
2343
|
+
arrowPadding: { required: false, control: "number", type: "number" },
|
|
2344
|
+
avoidCollisions: { required: false, control: "boolean", type: "boolean" },
|
|
2345
|
+
hideWhenDetached: {
|
|
2346
|
+
required: false,
|
|
2347
|
+
control: "boolean",
|
|
2348
|
+
type: "boolean",
|
|
2349
|
+
defaultValue: true
|
|
2350
|
+
},
|
|
2351
|
+
side: {
|
|
2352
|
+
required: false,
|
|
2353
|
+
control: "select",
|
|
2354
|
+
type: "string",
|
|
2355
|
+
options: ["top", "right", "bottom", "left"],
|
|
2356
|
+
description: "The preferred alignment against the Trigger. May change when collisions occur."
|
|
2357
|
+
},
|
|
2358
|
+
sideOffset: {
|
|
2359
|
+
required: false,
|
|
2360
|
+
control: "number",
|
|
2361
|
+
type: "number",
|
|
2362
|
+
defaultValue: 4,
|
|
2363
|
+
description: "The distance in pixels between the Content and the Trigger."
|
|
2364
|
+
},
|
|
2365
|
+
sticky: {
|
|
2366
|
+
required: false,
|
|
2367
|
+
control: "radio",
|
|
2368
|
+
type: "string",
|
|
2369
|
+
options: ["partial", "always"]
|
|
2370
|
+
},
|
|
2371
|
+
updatePositionStrategy: {
|
|
2372
|
+
required: false,
|
|
2373
|
+
control: "radio",
|
|
2374
|
+
type: "string",
|
|
2375
|
+
options: ["always", "optimized"]
|
|
2376
|
+
}
|
|
2377
|
+
};
|
|
2378
|
+
const metaTooltipTrigger = {
|
|
2379
|
+
icon: TriggerIcon,
|
|
2380
|
+
contentModel: {
|
|
2381
|
+
category: "none",
|
|
2382
|
+
children: ["instance"]
|
|
2383
|
+
},
|
|
2384
|
+
states: [
|
|
2385
|
+
{ label: "Closed", selector: '[data-state="closed"]' },
|
|
2386
|
+
{ label: "Delayed open", selector: '[data-state="delayed-open"]' },
|
|
2387
|
+
{ label: "Instant open", selector: '[data-state="instant-open"]' }
|
|
2388
|
+
],
|
|
2389
|
+
props: propsTooltipTrigger
|
|
2390
|
+
};
|
|
2391
|
+
const metaTooltipContent = {
|
|
2392
|
+
icon: ContentIcon,
|
|
2393
|
+
contentModel: {
|
|
2394
|
+
category: "none",
|
|
2395
|
+
children: ["instance"]
|
|
2396
|
+
},
|
|
2397
|
+
states: [
|
|
2398
|
+
{ label: "Closed", selector: '[data-state="closed"]' },
|
|
2399
|
+
{ label: "Delayed open", selector: '[data-state="delayed-open"]' },
|
|
2400
|
+
{ label: "Instant open", selector: '[data-state="instant-open"]' }
|
|
2401
|
+
],
|
|
2402
|
+
presetStyle: { div },
|
|
2403
|
+
initialProps: ["side", "sideOffset", "align", "alignOffset"],
|
|
2404
|
+
props: propsTooltipContent
|
|
2405
|
+
};
|
|
2406
|
+
const metaTooltip = {
|
|
2407
|
+
icon: TooltipIcon,
|
|
2408
|
+
contentModel: {
|
|
2409
|
+
category: "instance",
|
|
2410
|
+
children: ["instance"],
|
|
2411
|
+
descendants: [radix.TooltipTrigger, radix.TooltipContent]
|
|
2412
|
+
},
|
|
2413
|
+
initialProps: ["open", "delayDuration", "disableHoverableContent"],
|
|
2414
|
+
props: propsTooltip
|
|
2415
|
+
};
|
|
2416
|
+
const propsTabs = {
|
|
2417
|
+
activationMode: {
|
|
2418
|
+
description: "Whether a tab is activated automatically or manually.\n@defaultValue automatic",
|
|
2419
|
+
required: false,
|
|
2420
|
+
control: "radio",
|
|
2421
|
+
type: "string",
|
|
2422
|
+
options: ["automatic", "manual"]
|
|
2423
|
+
},
|
|
2424
|
+
defaultValue: {
|
|
2425
|
+
description: "The value of the tab to select by default, if uncontrolled",
|
|
2426
|
+
required: false,
|
|
2427
|
+
control: "text",
|
|
2428
|
+
type: "string"
|
|
2429
|
+
},
|
|
2430
|
+
dir: {
|
|
2431
|
+
description: "The direction of navigation between toolbar items.",
|
|
2432
|
+
required: false,
|
|
2433
|
+
control: "radio",
|
|
2434
|
+
type: "string",
|
|
2435
|
+
options: ["ltr", "rtl"]
|
|
2436
|
+
},
|
|
2437
|
+
orientation: {
|
|
2438
|
+
description: "The orientation the tabs are layed out.\nMainly so arrow navigation is done accordingly (left & right vs. up & down)\n@defaultValue horizontal",
|
|
2439
|
+
required: false,
|
|
2440
|
+
control: "radio",
|
|
2441
|
+
type: "string",
|
|
2442
|
+
options: ["horizontal", "vertical"]
|
|
2443
|
+
},
|
|
2444
|
+
value: {
|
|
2445
|
+
description: "The value for the selected tab, if controlled",
|
|
2446
|
+
required: false,
|
|
2447
|
+
control: "text",
|
|
2448
|
+
type: "string"
|
|
2449
|
+
}
|
|
2450
|
+
};
|
|
2451
|
+
const propsTabsList = {
|
|
2452
|
+
loop: {
|
|
2453
|
+
required: false,
|
|
2454
|
+
control: "boolean",
|
|
2455
|
+
type: "boolean",
|
|
2456
|
+
description: "Whether to loop the media resource"
|
|
2457
|
+
}
|
|
2458
|
+
};
|
|
2459
|
+
const propsTabsTrigger = {
|
|
2460
|
+
value: {
|
|
2461
|
+
required: false,
|
|
2462
|
+
control: "text",
|
|
2463
|
+
type: "string",
|
|
2464
|
+
description: "Current value of the element"
|
|
2465
|
+
}
|
|
2466
|
+
};
|
|
2467
|
+
const propsTabsContent = {
|
|
2468
|
+
value: {
|
|
2469
|
+
required: false,
|
|
2470
|
+
control: "text",
|
|
2471
|
+
type: "string",
|
|
2472
|
+
description: "Current value of the element"
|
|
2473
|
+
}
|
|
2474
|
+
};
|
|
2475
|
+
const metaTabs = {
|
|
2476
|
+
icon: TabsIcon,
|
|
2477
|
+
contentModel: {
|
|
2478
|
+
category: "instance",
|
|
2479
|
+
children: ["instance"],
|
|
2480
|
+
descendants: [radix.TabsList, radix.TabsContent]
|
|
2481
|
+
},
|
|
2482
|
+
presetStyle: { div },
|
|
2483
|
+
props: propsTabs
|
|
2484
|
+
};
|
|
2485
|
+
const metaTabsList = {
|
|
2486
|
+
icon: HeaderIcon,
|
|
2487
|
+
contentModel: {
|
|
2488
|
+
category: "none",
|
|
2489
|
+
children: ["instance"],
|
|
2490
|
+
descendants: [radix.TabsTrigger]
|
|
2491
|
+
},
|
|
2492
|
+
presetStyle: { div },
|
|
2493
|
+
props: propsTabsList
|
|
2494
|
+
};
|
|
2495
|
+
const metaTabsTrigger = {
|
|
2496
|
+
icon: TriggerIcon,
|
|
2497
|
+
label: "Tab Trigger",
|
|
2498
|
+
indexWithinAncestor: radix.Tabs,
|
|
2499
|
+
contentModel: {
|
|
2500
|
+
category: "none",
|
|
2501
|
+
children: ["instance", "rich-text"]
|
|
2502
|
+
},
|
|
2503
|
+
states: [
|
|
2504
|
+
{ label: "Active", selector: '[data-state="active"]' },
|
|
2505
|
+
{ label: "Inactive", selector: '[data-state="inactive"]' }
|
|
2506
|
+
],
|
|
2507
|
+
presetStyle: {
|
|
2508
|
+
button: [button, buttonReset].flat()
|
|
2509
|
+
},
|
|
2510
|
+
props: propsTabsTrigger
|
|
2511
|
+
};
|
|
2512
|
+
const metaTabsContent = {
|
|
2513
|
+
label: "Tab Content",
|
|
2514
|
+
icon: ContentIcon,
|
|
2515
|
+
indexWithinAncestor: radix.Tabs,
|
|
2516
|
+
contentModel: {
|
|
2517
|
+
category: "none",
|
|
2518
|
+
children: ["instance", "rich-text"]
|
|
2519
|
+
},
|
|
2520
|
+
states: [
|
|
2521
|
+
{ label: "Active", selector: '[data-state="active"]' },
|
|
2522
|
+
{ label: "Inactive", selector: '[data-state="inactive"]' }
|
|
2523
|
+
],
|
|
2524
|
+
presetStyle: { div },
|
|
2525
|
+
props: propsTabsContent
|
|
2526
|
+
};
|
|
2527
|
+
const props = {};
|
|
2528
|
+
const meta = {
|
|
2529
|
+
icon: LabelIcon,
|
|
2530
|
+
presetStyle: { label },
|
|
2531
|
+
initialProps: ["id", "class", "for"],
|
|
2532
|
+
props
|
|
2533
|
+
};
|
|
2534
|
+
const propsAccordion = {
|
|
2535
|
+
collapsible: {
|
|
2536
|
+
description: "Whether an accordion item can be collapsed after it has been opened.",
|
|
2537
|
+
required: false,
|
|
2538
|
+
control: "boolean",
|
|
2539
|
+
type: "boolean",
|
|
2540
|
+
defaultValue: false
|
|
2541
|
+
},
|
|
2542
|
+
defaultValue: {
|
|
2543
|
+
description: "The value of the item whose content is expanded when the accordion is initially rendered. Use\n`defaultValue` if you do not need to control the state of an accordion.",
|
|
2544
|
+
required: false,
|
|
2545
|
+
control: "text",
|
|
2546
|
+
type: "string"
|
|
2547
|
+
},
|
|
2548
|
+
dir: {
|
|
2549
|
+
description: "The language read direction.",
|
|
2550
|
+
required: false,
|
|
2551
|
+
control: "radio",
|
|
2552
|
+
type: "string",
|
|
2553
|
+
options: ["ltr", "rtl"]
|
|
2554
|
+
},
|
|
2555
|
+
disabled: {
|
|
2556
|
+
description: "Whether or not an accordion is disabled from user interaction.\n@defaultValue false",
|
|
2557
|
+
required: false,
|
|
2558
|
+
control: "boolean",
|
|
2559
|
+
type: "boolean"
|
|
2560
|
+
},
|
|
2561
|
+
orientation: {
|
|
2562
|
+
description: "The layout in which the Accordion operates.",
|
|
2563
|
+
required: false,
|
|
2564
|
+
control: "radio",
|
|
2565
|
+
type: "string",
|
|
2566
|
+
defaultValue: "vertical",
|
|
2567
|
+
options: ["horizontal", "vertical"]
|
|
2568
|
+
},
|
|
2569
|
+
value: {
|
|
2570
|
+
description: "The controlled stateful value of the accordion item whose content is expanded.",
|
|
2571
|
+
required: false,
|
|
2572
|
+
control: "text",
|
|
2573
|
+
type: "string"
|
|
2574
|
+
}
|
|
2575
|
+
};
|
|
2576
|
+
const propsAccordionItem = {
|
|
2577
|
+
disabled: {
|
|
2578
|
+
description: "Whether or not an accordion item is disabled from user interaction.\n@defaultValue false",
|
|
2579
|
+
required: false,
|
|
2580
|
+
control: "boolean",
|
|
2581
|
+
type: "boolean"
|
|
2582
|
+
},
|
|
2583
|
+
value: {
|
|
2584
|
+
required: false,
|
|
2585
|
+
control: "text",
|
|
2586
|
+
type: "string",
|
|
2587
|
+
description: "Current value of the element"
|
|
2588
|
+
}
|
|
2589
|
+
};
|
|
2590
|
+
const propsAccordionHeader = {};
|
|
2591
|
+
const propsAccordionTrigger = {};
|
|
2592
|
+
const propsAccordionContent = {
|
|
2593
|
+
forceMount: {
|
|
2594
|
+
description: "Used to force mounting when more control is needed. Useful when controlling animation with React animation libraries or keeping content available in the DOM.",
|
|
2595
|
+
required: false,
|
|
2596
|
+
control: "boolean",
|
|
2597
|
+
type: "boolean"
|
|
2598
|
+
}
|
|
2599
|
+
};
|
|
2600
|
+
const metaAccordion = {
|
|
2601
|
+
icon: AccordionIcon,
|
|
2602
|
+
contentModel: {
|
|
2603
|
+
category: "instance",
|
|
2604
|
+
children: ["instance"],
|
|
2605
|
+
descendants: [radix.AccordionItem]
|
|
2606
|
+
},
|
|
2607
|
+
presetStyle: { div },
|
|
2608
|
+
initialProps: ["value", "collapsible"],
|
|
2609
|
+
props: propsAccordion
|
|
2610
|
+
};
|
|
2611
|
+
const metaAccordionItem = {
|
|
2612
|
+
label: "Item",
|
|
2613
|
+
icon: ItemIcon,
|
|
2614
|
+
indexWithinAncestor: radix.Accordion,
|
|
2615
|
+
contentModel: {
|
|
2616
|
+
category: "none",
|
|
2617
|
+
children: ["instance"],
|
|
2618
|
+
descendants: [radix.AccordionHeader, radix.AccordionContent]
|
|
2619
|
+
},
|
|
2620
|
+
states: [
|
|
2621
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2622
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2623
|
+
],
|
|
2624
|
+
presetStyle: { div },
|
|
2625
|
+
initialProps: ["value"],
|
|
2626
|
+
props: propsAccordionItem
|
|
2627
|
+
};
|
|
2628
|
+
const metaAccordionHeader = {
|
|
2629
|
+
label: "Item Header",
|
|
2630
|
+
icon: HeaderIcon,
|
|
2631
|
+
contentModel: {
|
|
2632
|
+
category: "none",
|
|
2633
|
+
children: ["instance"],
|
|
2634
|
+
descendants: [radix.AccordionTrigger]
|
|
2635
|
+
},
|
|
2636
|
+
states: [
|
|
2637
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2638
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2639
|
+
],
|
|
2640
|
+
presetStyle: {
|
|
2641
|
+
h3: [
|
|
2642
|
+
...h3,
|
|
2643
|
+
{
|
|
2644
|
+
property: "margin-top",
|
|
2645
|
+
value: { type: "unit", unit: "px", value: 0 }
|
|
2646
|
+
},
|
|
2647
|
+
{
|
|
2648
|
+
property: "margin-bottom",
|
|
2649
|
+
value: { type: "unit", unit: "px", value: 0 }
|
|
2650
|
+
}
|
|
2651
|
+
]
|
|
2652
|
+
},
|
|
2653
|
+
props: propsAccordionHeader
|
|
2654
|
+
};
|
|
2655
|
+
const metaAccordionTrigger = {
|
|
2656
|
+
label: "Item Trigger",
|
|
2657
|
+
icon: TriggerIcon,
|
|
2658
|
+
contentModel: {
|
|
2659
|
+
category: "none",
|
|
2660
|
+
children: ["instance", "rich-text"]
|
|
2661
|
+
},
|
|
2662
|
+
states: [
|
|
2663
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2664
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2665
|
+
],
|
|
2666
|
+
presetStyle: {
|
|
2667
|
+
button: [button, buttonReset].flat()
|
|
2668
|
+
},
|
|
2669
|
+
props: propsAccordionTrigger
|
|
2670
|
+
};
|
|
2671
|
+
const metaAccordionContent = {
|
|
2672
|
+
label: "Item Content",
|
|
2673
|
+
icon: ContentIcon,
|
|
2674
|
+
contentModel: {
|
|
2675
|
+
category: "none",
|
|
2676
|
+
children: ["instance", "rich-text"]
|
|
2677
|
+
},
|
|
2678
|
+
states: [
|
|
2679
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2680
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2681
|
+
],
|
|
2682
|
+
presetStyle: {
|
|
2683
|
+
div
|
|
2684
|
+
},
|
|
2685
|
+
props: propsAccordionContent
|
|
2686
|
+
};
|
|
2687
|
+
const propsNavigationMenu = {
|
|
2688
|
+
defaultValue: { required: false, control: "text", type: "string" },
|
|
2689
|
+
delayDuration: {
|
|
2690
|
+
description: "The duration from when the pointer enters the trigger until the tooltip gets opened.\n@defaultValue 200",
|
|
2691
|
+
required: false,
|
|
2692
|
+
control: "number",
|
|
2693
|
+
type: "number"
|
|
2694
|
+
},
|
|
2695
|
+
dir: {
|
|
2696
|
+
required: false,
|
|
2697
|
+
control: "radio",
|
|
2698
|
+
type: "string",
|
|
2699
|
+
options: ["ltr", "rtl"],
|
|
2700
|
+
description: "The text directionality of the element"
|
|
2701
|
+
},
|
|
2702
|
+
skipDelayDuration: {
|
|
2703
|
+
description: "How much time a user has to enter another trigger without incurring a delay again.\n@defaultValue 300",
|
|
2704
|
+
required: false,
|
|
2705
|
+
control: "number",
|
|
2706
|
+
type: "number"
|
|
2707
|
+
},
|
|
2708
|
+
value: {
|
|
2709
|
+
required: false,
|
|
2710
|
+
control: "text",
|
|
2711
|
+
type: "string",
|
|
2712
|
+
description: "Current value of the element"
|
|
2713
|
+
}
|
|
2714
|
+
};
|
|
2715
|
+
const propsNavigationMenuList = {};
|
|
2716
|
+
const propsNavigationMenuViewport = {};
|
|
2717
|
+
const propsNavigationMenuContent = {};
|
|
2718
|
+
const propsNavigationMenuItem = {
|
|
2719
|
+
value: {
|
|
2720
|
+
required: false,
|
|
2721
|
+
control: "text",
|
|
2722
|
+
type: "string",
|
|
2723
|
+
description: "Current value of the element"
|
|
2724
|
+
}
|
|
2725
|
+
};
|
|
2726
|
+
const propsNavigationMenuLink = {
|
|
2727
|
+
active: { required: false, control: "boolean", type: "boolean" }
|
|
2728
|
+
};
|
|
2729
|
+
const propsNavigationMenuTrigger = {};
|
|
2730
|
+
const metaNavigationMenu = {
|
|
2731
|
+
icon: NavigationMenuIcon,
|
|
2732
|
+
contentModel: {
|
|
2733
|
+
category: "instance",
|
|
2734
|
+
children: ["instance"],
|
|
2735
|
+
descendants: [radix.NavigationMenuList, radix.NavigationMenuViewport]
|
|
2736
|
+
},
|
|
2737
|
+
presetStyle: {
|
|
2738
|
+
div
|
|
2739
|
+
},
|
|
2740
|
+
props: propsNavigationMenu
|
|
2741
|
+
};
|
|
2742
|
+
const metaNavigationMenuList = {
|
|
2743
|
+
icon: ListIcon,
|
|
2744
|
+
label: "Menu List",
|
|
2745
|
+
contentModel: {
|
|
2746
|
+
category: "none",
|
|
2747
|
+
children: ["instance"],
|
|
2748
|
+
descendants: [radix.NavigationMenuItem]
|
|
2749
|
+
},
|
|
2750
|
+
presetStyle: {
|
|
2751
|
+
div
|
|
2752
|
+
},
|
|
2753
|
+
props: propsNavigationMenuList
|
|
2754
|
+
};
|
|
2755
|
+
const metaNavigationMenuItem = {
|
|
2756
|
+
icon: ListItemIcon,
|
|
2757
|
+
label: "Menu Item",
|
|
2758
|
+
indexWithinAncestor: radix.NavigationMenu,
|
|
2759
|
+
contentModel: {
|
|
2760
|
+
category: "none",
|
|
2761
|
+
children: ["instance"],
|
|
2762
|
+
descendants: [
|
|
2763
|
+
radix.NavigationMenuTrigger,
|
|
2764
|
+
radix.NavigationMenuContent,
|
|
2765
|
+
radix.NavigationMenuLink
|
|
2766
|
+
]
|
|
2767
|
+
},
|
|
2768
|
+
presetStyle: {
|
|
2769
|
+
div
|
|
2770
|
+
},
|
|
2771
|
+
props: propsNavigationMenuItem
|
|
2772
|
+
};
|
|
2773
|
+
const metaNavigationMenuTrigger = {
|
|
2774
|
+
icon: TriggerIcon,
|
|
2775
|
+
label: "Menu Trigger",
|
|
2776
|
+
contentModel: {
|
|
2777
|
+
category: "none",
|
|
2778
|
+
children: ["instance"]
|
|
2779
|
+
},
|
|
2780
|
+
states: [
|
|
2781
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2782
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2783
|
+
],
|
|
2784
|
+
props: propsNavigationMenuTrigger
|
|
2785
|
+
};
|
|
2786
|
+
const metaNavigationMenuContent = {
|
|
2787
|
+
icon: ContentIcon,
|
|
2788
|
+
label: "Menu Content",
|
|
2789
|
+
contentModel: {
|
|
2790
|
+
category: "none",
|
|
2791
|
+
children: ["instance"],
|
|
2792
|
+
descendants: [radix.NavigationMenuLink]
|
|
2793
|
+
},
|
|
2794
|
+
states: [
|
|
2795
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2796
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2797
|
+
],
|
|
2798
|
+
presetStyle: {
|
|
2799
|
+
div
|
|
2800
|
+
},
|
|
2801
|
+
props: propsNavigationMenuContent
|
|
2802
|
+
};
|
|
2803
|
+
const metaNavigationMenuLink = {
|
|
2804
|
+
icon: BoxIcon,
|
|
2805
|
+
label: "Accessible Link Wrapper",
|
|
2806
|
+
contentModel: {
|
|
2807
|
+
category: "none",
|
|
2808
|
+
children: ["instance"]
|
|
2809
|
+
},
|
|
2810
|
+
props: propsNavigationMenuLink
|
|
2811
|
+
};
|
|
2812
|
+
const metaNavigationMenuViewport = {
|
|
2813
|
+
icon: ViewportIcon,
|
|
2814
|
+
label: "Menu Viewport",
|
|
2815
|
+
contentModel: {
|
|
2816
|
+
category: "none",
|
|
2817
|
+
children: ["instance"]
|
|
2818
|
+
},
|
|
2819
|
+
states: [
|
|
2820
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2821
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2822
|
+
],
|
|
2823
|
+
presetStyle: {
|
|
2824
|
+
div
|
|
2825
|
+
},
|
|
2826
|
+
props: propsNavigationMenuViewport
|
|
2827
|
+
};
|
|
2828
|
+
const propsSelect = {
|
|
2829
|
+
autoComplete: {
|
|
2830
|
+
required: false,
|
|
2831
|
+
control: "text",
|
|
2832
|
+
type: "string",
|
|
2833
|
+
description: "Hint for form autofill feature"
|
|
2834
|
+
},
|
|
2835
|
+
defaultValue: { required: false, control: "text", type: "string" },
|
|
2836
|
+
dir: {
|
|
2837
|
+
required: false,
|
|
2838
|
+
control: "radio",
|
|
2839
|
+
type: "string",
|
|
2840
|
+
options: ["ltr", "rtl"],
|
|
2841
|
+
description: "The text directionality of the element"
|
|
2842
|
+
},
|
|
2843
|
+
disabled: {
|
|
2844
|
+
required: false,
|
|
2845
|
+
control: "boolean",
|
|
2846
|
+
type: "boolean",
|
|
2847
|
+
description: "Whether the form control is disabled"
|
|
2848
|
+
},
|
|
2849
|
+
form: {
|
|
2850
|
+
required: false,
|
|
2851
|
+
control: "text",
|
|
2852
|
+
type: "string",
|
|
2853
|
+
description: "Associates the element with a form element"
|
|
2854
|
+
},
|
|
2855
|
+
name: {
|
|
2856
|
+
required: false,
|
|
2857
|
+
control: "text",
|
|
2858
|
+
type: "string",
|
|
2859
|
+
description: "Name of the element to use for form submission and in the form.elements API"
|
|
2860
|
+
},
|
|
2861
|
+
open: {
|
|
2862
|
+
required: false,
|
|
2863
|
+
control: "boolean",
|
|
2864
|
+
type: "boolean",
|
|
2865
|
+
description: "Whether the dialog box is showing"
|
|
2866
|
+
},
|
|
2867
|
+
required: {
|
|
2868
|
+
required: false,
|
|
2869
|
+
control: "boolean",
|
|
2870
|
+
type: "boolean",
|
|
2871
|
+
description: "Whether the control is required for form submission"
|
|
2872
|
+
},
|
|
2873
|
+
value: {
|
|
2874
|
+
required: false,
|
|
2875
|
+
control: "text",
|
|
2876
|
+
type: "string",
|
|
2877
|
+
description: "Current value of the element"
|
|
2878
|
+
}
|
|
2879
|
+
};
|
|
2880
|
+
const propsSelectTrigger = {};
|
|
2881
|
+
const propsSelectValue = {
|
|
2882
|
+
placeholder: {
|
|
2883
|
+
required: false,
|
|
2884
|
+
control: "text",
|
|
2885
|
+
type: "string",
|
|
2886
|
+
description: "User-visible label to be placed within the form control"
|
|
2887
|
+
}
|
|
2888
|
+
};
|
|
2889
|
+
const propsSelectContent = {
|
|
2890
|
+
align: {
|
|
2891
|
+
required: false,
|
|
2892
|
+
control: "radio",
|
|
2893
|
+
type: "string",
|
|
2894
|
+
options: ["center", "start", "end"]
|
|
2895
|
+
},
|
|
2896
|
+
alignOffset: { required: false, control: "number", type: "number" },
|
|
2897
|
+
arrowPadding: { required: false, control: "number", type: "number" },
|
|
2898
|
+
avoidCollisions: { required: false, control: "boolean", type: "boolean" },
|
|
2899
|
+
hideWhenDetached: { required: false, control: "boolean", type: "boolean" },
|
|
2900
|
+
sideOffset: { required: false, control: "number", type: "number" },
|
|
2901
|
+
sticky: {
|
|
2902
|
+
required: false,
|
|
2903
|
+
control: "radio",
|
|
2904
|
+
type: "string",
|
|
2905
|
+
options: ["partial", "always"]
|
|
2906
|
+
},
|
|
2907
|
+
updatePositionStrategy: {
|
|
2908
|
+
required: false,
|
|
2909
|
+
control: "radio",
|
|
2910
|
+
type: "string",
|
|
2911
|
+
options: ["always", "optimized"]
|
|
2912
|
+
}
|
|
2913
|
+
};
|
|
2914
|
+
const propsSelectViewport = {
|
|
2915
|
+
nonce: {
|
|
2916
|
+
required: false,
|
|
2917
|
+
control: "text",
|
|
2918
|
+
type: "string",
|
|
2919
|
+
description: "Cryptographic nonce used in Content Security Policy checks [CSP]"
|
|
2920
|
+
}
|
|
2921
|
+
};
|
|
2922
|
+
const propsSelectItem = {
|
|
2923
|
+
disabled: {
|
|
2924
|
+
required: false,
|
|
2925
|
+
control: "boolean",
|
|
2926
|
+
type: "boolean",
|
|
2927
|
+
description: "Whether the form control is disabled"
|
|
2928
|
+
},
|
|
2929
|
+
textValue: { required: false, control: "text", type: "string" },
|
|
2930
|
+
value: {
|
|
2931
|
+
required: true,
|
|
2932
|
+
control: "text",
|
|
2933
|
+
type: "string",
|
|
2934
|
+
description: "Current value of the element"
|
|
2935
|
+
}
|
|
2936
|
+
};
|
|
2937
|
+
const propsSelectItemIndicator = {};
|
|
2938
|
+
const propsSelectItemText = {};
|
|
2939
|
+
const metaSelect = {
|
|
2940
|
+
icon: SelectIcon,
|
|
2941
|
+
contentModel: {
|
|
2942
|
+
category: "instance",
|
|
2943
|
+
children: ["instance"],
|
|
2944
|
+
descendants: [radix.SelectTrigger, radix.SelectContent]
|
|
2945
|
+
},
|
|
2946
|
+
initialProps: ["name", "value", "open", "required"],
|
|
2947
|
+
props: propsSelect
|
|
2948
|
+
};
|
|
2949
|
+
const metaSelectTrigger = {
|
|
2950
|
+
icon: TriggerIcon,
|
|
2951
|
+
contentModel: {
|
|
2952
|
+
category: "none",
|
|
2953
|
+
children: ["instance"],
|
|
2954
|
+
descendants: [radix.SelectValue]
|
|
2955
|
+
},
|
|
2956
|
+
states: [
|
|
2957
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2958
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2959
|
+
],
|
|
2960
|
+
presetStyle: { button },
|
|
2961
|
+
props: propsSelectTrigger
|
|
2962
|
+
};
|
|
2963
|
+
const metaSelectValue = {
|
|
2964
|
+
label: "Value",
|
|
2965
|
+
icon: FormTextFieldIcon,
|
|
2966
|
+
contentModel: {
|
|
2967
|
+
category: "none",
|
|
2968
|
+
children: []
|
|
2969
|
+
},
|
|
2970
|
+
presetStyle: { span },
|
|
2971
|
+
initialProps: ["placeholder"],
|
|
2972
|
+
props: propsSelectValue
|
|
2973
|
+
};
|
|
2974
|
+
const metaSelectContent = {
|
|
2975
|
+
icon: ContentIcon,
|
|
2976
|
+
contentModel: {
|
|
2977
|
+
category: "none",
|
|
2978
|
+
children: ["instance"],
|
|
2979
|
+
descendants: [radix.SelectViewport]
|
|
2980
|
+
},
|
|
2981
|
+
states: [
|
|
2982
|
+
{ label: "Open", selector: '[data-state="open"]' },
|
|
2983
|
+
{ label: "Closed", selector: '[data-state="closed"]' }
|
|
2984
|
+
],
|
|
2985
|
+
presetStyle: { div },
|
|
2986
|
+
props: propsSelectContent
|
|
2987
|
+
};
|
|
2988
|
+
const metaSelectViewport = {
|
|
2989
|
+
icon: ViewportIcon,
|
|
2990
|
+
contentModel: {
|
|
2991
|
+
category: "none",
|
|
2992
|
+
children: ["instance"],
|
|
2993
|
+
descendants: [radix.SelectItem]
|
|
2994
|
+
},
|
|
2995
|
+
presetStyle: { div },
|
|
2996
|
+
props: propsSelectViewport
|
|
2997
|
+
};
|
|
2998
|
+
const metaSelectItem = {
|
|
2999
|
+
icon: ItemIcon,
|
|
3000
|
+
contentModel: {
|
|
3001
|
+
category: "none",
|
|
3002
|
+
children: ["instance"],
|
|
3003
|
+
descendants: [radix.SelectItemIndicator, radix.SelectItemText]
|
|
3004
|
+
},
|
|
3005
|
+
states: [
|
|
3006
|
+
{ label: "Checked", selector: '[data-state="checked"]' },
|
|
3007
|
+
{ label: "Unchecked", selector: '[data-state="unchecked"]' }
|
|
3008
|
+
],
|
|
3009
|
+
presetStyle: { div },
|
|
3010
|
+
initialProps: ["value"],
|
|
3011
|
+
props: propsSelectItem
|
|
3012
|
+
};
|
|
3013
|
+
const metaSelectItemIndicator = {
|
|
3014
|
+
label: "Indicator",
|
|
3015
|
+
icon: CheckMarkIcon,
|
|
3016
|
+
contentModel: {
|
|
3017
|
+
category: "none",
|
|
3018
|
+
children: ["instance"]
|
|
3019
|
+
},
|
|
3020
|
+
presetStyle: { span },
|
|
3021
|
+
props: propsSelectItemIndicator
|
|
3022
|
+
};
|
|
3023
|
+
const metaSelectItemText = {
|
|
3024
|
+
label: "Item Text",
|
|
3025
|
+
icon: TextIcon,
|
|
3026
|
+
contentModel: {
|
|
3027
|
+
category: "none",
|
|
3028
|
+
children: ["instance", "rich-text"]
|
|
3029
|
+
},
|
|
3030
|
+
presetStyle: { span },
|
|
3031
|
+
props: propsSelectItemText
|
|
3032
|
+
};
|
|
3033
|
+
const propsSwitch = {
|
|
3034
|
+
checked: {
|
|
3035
|
+
required: false,
|
|
3036
|
+
control: "boolean",
|
|
3037
|
+
type: "boolean",
|
|
3038
|
+
description: "Whether the control is checked"
|
|
3039
|
+
},
|
|
3040
|
+
required: {
|
|
3041
|
+
required: false,
|
|
3042
|
+
control: "boolean",
|
|
3043
|
+
type: "boolean",
|
|
3044
|
+
description: "Whether the control is required for form submission"
|
|
3045
|
+
}
|
|
3046
|
+
};
|
|
3047
|
+
const propsSwitchThumb = {};
|
|
3048
|
+
const metaSwitch = {
|
|
3049
|
+
icon: SwitchIcon,
|
|
3050
|
+
contentModel: {
|
|
3051
|
+
category: "instance",
|
|
3052
|
+
children: ["instance"],
|
|
3053
|
+
descendants: [radix.SwitchThumb]
|
|
3054
|
+
},
|
|
3055
|
+
states: [
|
|
3056
|
+
{ label: "Checked", selector: '[data-state="checked"]' },
|
|
3057
|
+
{ label: "Unchecked", selector: '[data-state="unchecked"]' }
|
|
3058
|
+
],
|
|
3059
|
+
presetStyle: {
|
|
3060
|
+
button: [button, buttonReset].flat()
|
|
3061
|
+
},
|
|
3062
|
+
initialProps: ["id", "class", "name", "value", "checked", "required"],
|
|
3063
|
+
props: propsSwitch
|
|
3064
|
+
};
|
|
3065
|
+
const metaSwitchThumb = {
|
|
3066
|
+
icon: TriggerIcon,
|
|
3067
|
+
contentModel: {
|
|
3068
|
+
category: "none",
|
|
3069
|
+
children: ["instance"]
|
|
3070
|
+
},
|
|
3071
|
+
states: [
|
|
3072
|
+
{ label: "Checked", selector: '[data-state="checked"]' },
|
|
3073
|
+
{ label: "Unchecked", selector: '[data-state="unchecked"]' }
|
|
3074
|
+
],
|
|
3075
|
+
presetStyle: {
|
|
3076
|
+
span
|
|
3077
|
+
},
|
|
3078
|
+
props: propsSwitchThumb
|
|
3079
|
+
};
|
|
3080
|
+
const propsCheckbox = {
|
|
3081
|
+
checked: {
|
|
3082
|
+
required: false,
|
|
3083
|
+
control: "boolean",
|
|
3084
|
+
type: "boolean",
|
|
3085
|
+
description: "Whether the control is checked"
|
|
3086
|
+
},
|
|
3087
|
+
required: {
|
|
3088
|
+
required: false,
|
|
3089
|
+
control: "boolean",
|
|
3090
|
+
type: "boolean",
|
|
3091
|
+
description: "Whether the control is required for form submission"
|
|
3092
|
+
}
|
|
3093
|
+
};
|
|
3094
|
+
const propsCheckboxIndicator = {};
|
|
3095
|
+
const metaCheckbox = {
|
|
3096
|
+
icon: CheckboxCheckedIcon,
|
|
3097
|
+
contentModel: {
|
|
3098
|
+
category: "instance",
|
|
3099
|
+
children: ["instance"],
|
|
3100
|
+
descendants: [radix.CheckboxIndicator]
|
|
3101
|
+
},
|
|
3102
|
+
states: [
|
|
3103
|
+
{ label: "Checked", selector: '[data-state="checked"]' },
|
|
3104
|
+
{ label: "Unchecked", selector: '[data-state="unchecked"]' },
|
|
3105
|
+
{ label: "Indeterminate", selector: '[data-state="indeterminate"]' }
|
|
3106
|
+
],
|
|
3107
|
+
presetStyle: {
|
|
3108
|
+
button: [button, buttonReset].flat()
|
|
3109
|
+
},
|
|
3110
|
+
initialProps: ["id", "class", "name", "value", "required", "checked"],
|
|
3111
|
+
props: propsCheckbox
|
|
3112
|
+
};
|
|
3113
|
+
const metaCheckboxIndicator = {
|
|
3114
|
+
icon: TriggerIcon,
|
|
3115
|
+
contentModel: {
|
|
3116
|
+
category: "none",
|
|
3117
|
+
children: ["instance", "rich-text"]
|
|
3118
|
+
},
|
|
3119
|
+
states: [
|
|
3120
|
+
{ label: "Checked", selector: '[data-state="checked"]' },
|
|
3121
|
+
{ label: "Unchecked", selector: '[data-state="unchecked"]' },
|
|
3122
|
+
{ label: "Indeterminate", selector: '[data-state="indeterminate"]' }
|
|
3123
|
+
],
|
|
3124
|
+
presetStyle: {
|
|
3125
|
+
span
|
|
3126
|
+
},
|
|
3127
|
+
props: propsCheckboxIndicator
|
|
3128
|
+
};
|
|
3129
|
+
const propsRadioGroup = {
|
|
3130
|
+
defaultValue: { required: false, control: "text", type: "string" },
|
|
3131
|
+
dir: {
|
|
3132
|
+
required: false,
|
|
3133
|
+
control: "radio",
|
|
3134
|
+
type: "string",
|
|
3135
|
+
options: ["ltr", "rtl"],
|
|
3136
|
+
description: "The text directionality of the element"
|
|
3137
|
+
},
|
|
3138
|
+
disabled: {
|
|
3139
|
+
required: false,
|
|
3140
|
+
control: "boolean",
|
|
3141
|
+
type: "boolean",
|
|
3142
|
+
description: "Whether the form control is disabled"
|
|
3143
|
+
},
|
|
3144
|
+
loop: {
|
|
3145
|
+
required: false,
|
|
3146
|
+
control: "boolean",
|
|
3147
|
+
type: "boolean",
|
|
3148
|
+
description: "Whether to loop the media resource"
|
|
3149
|
+
},
|
|
3150
|
+
name: {
|
|
3151
|
+
required: false,
|
|
3152
|
+
control: "text",
|
|
3153
|
+
type: "string",
|
|
3154
|
+
description: "Name of the element to use for form submission and in the form.elements API"
|
|
3155
|
+
},
|
|
3156
|
+
orientation: {
|
|
3157
|
+
required: false,
|
|
3158
|
+
control: "radio",
|
|
3159
|
+
type: "string",
|
|
3160
|
+
options: ["horizontal", "vertical"]
|
|
3161
|
+
},
|
|
3162
|
+
required: {
|
|
3163
|
+
required: false,
|
|
3164
|
+
control: "boolean",
|
|
3165
|
+
type: "boolean",
|
|
3166
|
+
description: "Whether the control is required for form submission"
|
|
3167
|
+
},
|
|
3168
|
+
value: {
|
|
3169
|
+
required: false,
|
|
3170
|
+
control: "text",
|
|
3171
|
+
type: "string",
|
|
3172
|
+
description: "Current value of the element"
|
|
3173
|
+
}
|
|
3174
|
+
};
|
|
3175
|
+
const propsRadioGroupItem = {
|
|
3176
|
+
checked: {
|
|
3177
|
+
required: false,
|
|
3178
|
+
control: "boolean",
|
|
3179
|
+
type: "boolean",
|
|
3180
|
+
description: "Whether the control is checked"
|
|
3181
|
+
},
|
|
3182
|
+
required: {
|
|
3183
|
+
required: false,
|
|
3184
|
+
control: "boolean",
|
|
3185
|
+
type: "boolean",
|
|
3186
|
+
description: "Whether the control is required for form submission"
|
|
3187
|
+
},
|
|
3188
|
+
value: {
|
|
3189
|
+
required: true,
|
|
3190
|
+
control: "text",
|
|
3191
|
+
type: "string",
|
|
3192
|
+
description: "Current value of the element"
|
|
3193
|
+
}
|
|
3194
|
+
};
|
|
3195
|
+
const propsRadioGroupIndicator = {};
|
|
3196
|
+
const metaRadioGroup = {
|
|
3197
|
+
icon: RadioGroupIcon,
|
|
3198
|
+
contentModel: {
|
|
3199
|
+
category: "instance",
|
|
3200
|
+
children: ["instance"],
|
|
3201
|
+
descendants: [radix.RadioGroupItem]
|
|
3202
|
+
},
|
|
3203
|
+
presetStyle: {
|
|
3204
|
+
div
|
|
3205
|
+
},
|
|
3206
|
+
initialProps: ["id", "class", "name", "value", "required"],
|
|
3207
|
+
props: propsRadioGroup
|
|
3208
|
+
};
|
|
3209
|
+
const metaRadioGroupItem = {
|
|
3210
|
+
icon: ItemIcon,
|
|
3211
|
+
contentModel: {
|
|
3212
|
+
category: "none",
|
|
3213
|
+
children: ["instance"],
|
|
3214
|
+
descendants: [radix.RadioGroupIndicator]
|
|
3215
|
+
},
|
|
3216
|
+
states: [
|
|
3217
|
+
{ label: "Checked", selector: '[data-state="checked"]' },
|
|
3218
|
+
{ label: "Unchecked", selector: '[data-state="unchecked"]' }
|
|
3219
|
+
],
|
|
3220
|
+
presetStyle: {
|
|
3221
|
+
button: [button, buttonReset].flat()
|
|
3222
|
+
},
|
|
3223
|
+
initialProps: ["value"],
|
|
3224
|
+
props: propsRadioGroupItem
|
|
3225
|
+
};
|
|
3226
|
+
const metaRadioGroupIndicator = {
|
|
3227
|
+
icon: TriggerIcon,
|
|
3228
|
+
contentModel: {
|
|
3229
|
+
category: "none",
|
|
3230
|
+
children: ["instance"]
|
|
3231
|
+
},
|
|
3232
|
+
states: [
|
|
3233
|
+
{ label: "Checked", selector: '[data-state="checked"]' },
|
|
3234
|
+
{ label: "Unchecked", selector: '[data-state="unchecked"]' }
|
|
3235
|
+
],
|
|
3236
|
+
presetStyle: {
|
|
3237
|
+
span
|
|
3238
|
+
},
|
|
3239
|
+
props: propsRadioGroupIndicator
|
|
3240
|
+
};
|
|
3241
|
+
const radixComponentMetas = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
3242
|
+
__proto__: null,
|
|
3243
|
+
Accordion: metaAccordion,
|
|
3244
|
+
AccordionContent: metaAccordionContent,
|
|
3245
|
+
AccordionHeader: metaAccordionHeader,
|
|
3246
|
+
AccordionItem: metaAccordionItem,
|
|
3247
|
+
AccordionTrigger: metaAccordionTrigger,
|
|
3248
|
+
Checkbox: metaCheckbox,
|
|
3249
|
+
CheckboxIndicator: metaCheckboxIndicator,
|
|
3250
|
+
Collapsible: metaCollapsible,
|
|
3251
|
+
CollapsibleContent: metaCollapsibleContent,
|
|
3252
|
+
CollapsibleTrigger: metaCollapsibleTrigger,
|
|
3253
|
+
Dialog: metaDialog,
|
|
3254
|
+
DialogClose: metaDialogClose,
|
|
3255
|
+
DialogContent: metaDialogContent,
|
|
3256
|
+
DialogDescription: metaDialogDescription,
|
|
3257
|
+
DialogOverlay: metaDialogOverlay,
|
|
3258
|
+
DialogTitle: metaDialogTitle,
|
|
3259
|
+
DialogTrigger: metaDialogTrigger,
|
|
3260
|
+
Label: meta,
|
|
3261
|
+
NavigationMenu: metaNavigationMenu,
|
|
3262
|
+
NavigationMenuContent: metaNavigationMenuContent,
|
|
3263
|
+
NavigationMenuItem: metaNavigationMenuItem,
|
|
3264
|
+
NavigationMenuLink: metaNavigationMenuLink,
|
|
3265
|
+
NavigationMenuList: metaNavigationMenuList,
|
|
3266
|
+
NavigationMenuTrigger: metaNavigationMenuTrigger,
|
|
3267
|
+
NavigationMenuViewport: metaNavigationMenuViewport,
|
|
3268
|
+
Popover: metaPopover,
|
|
3269
|
+
PopoverClose: metaPopoverClose,
|
|
3270
|
+
PopoverContent: metaPopoverContent,
|
|
3271
|
+
PopoverTrigger: metaPopoverTrigger,
|
|
3272
|
+
RadioGroup: metaRadioGroup,
|
|
3273
|
+
RadioGroupIndicator: metaRadioGroupIndicator,
|
|
3274
|
+
RadioGroupItem: metaRadioGroupItem,
|
|
3275
|
+
Select: metaSelect,
|
|
3276
|
+
SelectContent: metaSelectContent,
|
|
3277
|
+
SelectItem: metaSelectItem,
|
|
3278
|
+
SelectItemIndicator: metaSelectItemIndicator,
|
|
3279
|
+
SelectItemText: metaSelectItemText,
|
|
3280
|
+
SelectTrigger: metaSelectTrigger,
|
|
3281
|
+
SelectValue: metaSelectValue,
|
|
3282
|
+
SelectViewport: metaSelectViewport,
|
|
3283
|
+
Switch: metaSwitch,
|
|
3284
|
+
SwitchThumb: metaSwitchThumb,
|
|
3285
|
+
Tabs: metaTabs,
|
|
3286
|
+
TabsContent: metaTabsContent,
|
|
3287
|
+
TabsList: metaTabsList,
|
|
3288
|
+
TabsTrigger: metaTabsTrigger,
|
|
3289
|
+
Tooltip: metaTooltip,
|
|
3290
|
+
TooltipContent: metaTooltipContent,
|
|
3291
|
+
TooltipTrigger: metaTooltipTrigger
|
|
3292
|
+
}, Symbol.toStringTag, { value: "Module" }));
|
|
3293
|
+
export {
|
|
3294
|
+
animationComponentMetas as a,
|
|
3295
|
+
baseComponentMetas as b,
|
|
3296
|
+
radixComponentMetas as r
|
|
3297
|
+
};
|