@velumo/core 0.1.0-beta.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/dist/background-validation.d.ts +3 -0
- package/dist/background-validation.d.ts.map +1 -0
- package/dist/background-validation.js +177 -0
- package/dist/background-validation.js.map +1 -0
- package/dist/builders.d.ts +134 -0
- package/dist/builders.d.ts.map +1 -0
- package/dist/builders.js +332 -0
- package/dist/builders.js.map +1 -0
- package/dist/capabilities.d.ts +7 -0
- package/dist/capabilities.d.ts.map +1 -0
- package/dist/capabilities.js +59 -0
- package/dist/capabilities.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -0
- package/dist/layout-validation.d.ts +4 -0
- package/dist/layout-validation.d.ts.map +1 -0
- package/dist/layout-validation.js +745 -0
- package/dist/layout-validation.js.map +1 -0
- package/dist/manifest-schema.d.ts +1328 -0
- package/dist/manifest-schema.d.ts.map +1 -0
- package/dist/manifest-schema.js +774 -0
- package/dist/manifest-schema.js.map +1 -0
- package/dist/theme-validation.d.ts +3 -0
- package/dist/theme-validation.d.ts.map +1 -0
- package/dist/theme-validation.js +239 -0
- package/dist/theme-validation.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/types.d.ts +398 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/validation-issue.d.ts +18 -0
- package/dist/validation-issue.d.ts.map +1 -0
- package/dist/validation-issue.js +30 -0
- package/dist/validation-issue.js.map +1 -0
- package/dist/validation.d.ts +4 -0
- package/dist/validation.d.ts.map +1 -0
- package/dist/validation.js +274 -0
- package/dist/validation.js.map +1 -0
- package/package.json +16 -0
- package/src/background-validation.ts +315 -0
- package/src/builders.ts +626 -0
- package/src/capabilities.ts +99 -0
- package/src/index.ts +147 -0
- package/src/layout-validation.ts +1385 -0
- package/src/manifest-schema.ts +823 -0
- package/src/theme-validation.ts +410 -0
- package/src/types.ts +560 -0
- package/src/validation-issue.ts +43 -0
- package/src/validation.ts +468 -0
- package/tsconfig.json +9 -0
|
@@ -0,0 +1,1328 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* JSON Schema (draft 2020-12) derived by hand from the `Manifest` TypeScript
|
|
3
|
+
* type in `types.ts`. This is the published, machine-readable form of the
|
|
4
|
+
* manifest contract — the artifact an agent or MCP server validates against.
|
|
5
|
+
*
|
|
6
|
+
* It is intentionally a richer, stricter mirror of the type than the
|
|
7
|
+
* lightweight runtime `validateManifest()`: it requires the `kind`
|
|
8
|
+
* discriminator on every slide and layout node, enforces every enum, and
|
|
9
|
+
* forbids unknown fields. The two are kept in sync by a drift test that runs a
|
|
10
|
+
* canonical manifest through both and asserts they agree.
|
|
11
|
+
*
|
|
12
|
+
* No schema library lives in `@velumo/core`: this is a plain, serializable
|
|
13
|
+
* object. JSON Schema execution (ajv) is confined to the test suite.
|
|
14
|
+
*/
|
|
15
|
+
export declare const manifestJsonSchema: {
|
|
16
|
+
readonly $schema: "https://json-schema.org/draft/2020-12/schema";
|
|
17
|
+
readonly $id: "https://velumo.dev/schemas/manifest.json";
|
|
18
|
+
readonly title: "Velumo Manifest";
|
|
19
|
+
readonly type: "object";
|
|
20
|
+
readonly required: readonly ["deck", "slides"];
|
|
21
|
+
readonly additionalProperties: false;
|
|
22
|
+
readonly properties: {
|
|
23
|
+
readonly deck: {
|
|
24
|
+
readonly $ref: "#/$defs/deckMetadata";
|
|
25
|
+
};
|
|
26
|
+
readonly slides: {
|
|
27
|
+
readonly type: "array";
|
|
28
|
+
readonly items: {
|
|
29
|
+
readonly $ref: "#/$defs/slideEntry";
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
readonly assets: {
|
|
33
|
+
readonly type: "array";
|
|
34
|
+
readonly items: {
|
|
35
|
+
readonly $ref: "#/$defs/asset";
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
readonly plugins: {
|
|
39
|
+
readonly type: "array";
|
|
40
|
+
readonly items: {
|
|
41
|
+
readonly $ref: "#/$defs/plugin";
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
readonly theme: {
|
|
45
|
+
readonly $ref: "#/$defs/theme";
|
|
46
|
+
};
|
|
47
|
+
readonly export: {
|
|
48
|
+
readonly $ref: "#/$defs/exportOptions";
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
readonly $defs: {
|
|
52
|
+
readonly deckMetadata: {
|
|
53
|
+
readonly type: "object";
|
|
54
|
+
readonly required: readonly ["title"];
|
|
55
|
+
readonly properties: {
|
|
56
|
+
readonly title: {
|
|
57
|
+
readonly type: "string";
|
|
58
|
+
readonly minLength: 1;
|
|
59
|
+
};
|
|
60
|
+
readonly description: {
|
|
61
|
+
readonly type: "string";
|
|
62
|
+
};
|
|
63
|
+
readonly author: {
|
|
64
|
+
readonly type: "string";
|
|
65
|
+
};
|
|
66
|
+
readonly watermark: {
|
|
67
|
+
readonly type: "string";
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
readonly additionalProperties: {
|
|
71
|
+
$comment: string;
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
readonly slideEntry: {
|
|
75
|
+
readonly oneOf: readonly [{
|
|
76
|
+
readonly $ref: "#/$defs/slide";
|
|
77
|
+
}, {
|
|
78
|
+
readonly $ref: "#/$defs/scene";
|
|
79
|
+
}];
|
|
80
|
+
};
|
|
81
|
+
readonly slide: {
|
|
82
|
+
readonly type: "object";
|
|
83
|
+
readonly required: readonly ["id", "kind"];
|
|
84
|
+
readonly additionalProperties: false;
|
|
85
|
+
readonly properties: {
|
|
86
|
+
readonly id: {
|
|
87
|
+
readonly type: "string";
|
|
88
|
+
readonly minLength: 1;
|
|
89
|
+
};
|
|
90
|
+
readonly kind: {
|
|
91
|
+
readonly const: "slide";
|
|
92
|
+
};
|
|
93
|
+
readonly content: {
|
|
94
|
+
$comment: string;
|
|
95
|
+
};
|
|
96
|
+
readonly layout: {
|
|
97
|
+
readonly $ref: "#/$defs/layoutNode";
|
|
98
|
+
};
|
|
99
|
+
readonly layers: {
|
|
100
|
+
readonly type: "array";
|
|
101
|
+
readonly items: {
|
|
102
|
+
readonly $ref: "#/$defs/layer";
|
|
103
|
+
};
|
|
104
|
+
};
|
|
105
|
+
readonly fragments: {
|
|
106
|
+
readonly type: "array";
|
|
107
|
+
readonly items: {
|
|
108
|
+
readonly $ref: "#/$defs/fragment";
|
|
109
|
+
};
|
|
110
|
+
};
|
|
111
|
+
readonly cues: {
|
|
112
|
+
readonly type: "array";
|
|
113
|
+
readonly items: {
|
|
114
|
+
readonly $ref: "#/$defs/cue";
|
|
115
|
+
};
|
|
116
|
+
};
|
|
117
|
+
readonly notes: {
|
|
118
|
+
readonly type: "string";
|
|
119
|
+
};
|
|
120
|
+
readonly mood: {
|
|
121
|
+
readonly type: "string";
|
|
122
|
+
};
|
|
123
|
+
readonly transition: {
|
|
124
|
+
readonly type: "string";
|
|
125
|
+
};
|
|
126
|
+
readonly chrome: {
|
|
127
|
+
readonly type: "boolean";
|
|
128
|
+
};
|
|
129
|
+
readonly background: {
|
|
130
|
+
readonly $ref: "#/$defs/background";
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
};
|
|
134
|
+
readonly scene: {
|
|
135
|
+
readonly type: "object";
|
|
136
|
+
readonly required: readonly ["id", "kind"];
|
|
137
|
+
readonly additionalProperties: false;
|
|
138
|
+
readonly properties: {
|
|
139
|
+
readonly id: {
|
|
140
|
+
readonly type: "string";
|
|
141
|
+
readonly minLength: 1;
|
|
142
|
+
};
|
|
143
|
+
readonly kind: {
|
|
144
|
+
readonly const: "scene";
|
|
145
|
+
};
|
|
146
|
+
readonly duration: {
|
|
147
|
+
readonly type: "number";
|
|
148
|
+
};
|
|
149
|
+
readonly camera: {
|
|
150
|
+
readonly $ref: "#/$defs/camera";
|
|
151
|
+
};
|
|
152
|
+
readonly cameraPath: {
|
|
153
|
+
readonly type: "array";
|
|
154
|
+
readonly minItems: 1;
|
|
155
|
+
readonly items: {
|
|
156
|
+
readonly $ref: "#/$defs/cameraStop";
|
|
157
|
+
};
|
|
158
|
+
};
|
|
159
|
+
readonly layout: {
|
|
160
|
+
readonly $ref: "#/$defs/layoutNode";
|
|
161
|
+
};
|
|
162
|
+
readonly layers: {
|
|
163
|
+
readonly type: "array";
|
|
164
|
+
readonly items: {
|
|
165
|
+
readonly $ref: "#/$defs/layer";
|
|
166
|
+
};
|
|
167
|
+
};
|
|
168
|
+
readonly fragments: {
|
|
169
|
+
readonly type: "array";
|
|
170
|
+
readonly items: {
|
|
171
|
+
readonly $ref: "#/$defs/fragment";
|
|
172
|
+
};
|
|
173
|
+
};
|
|
174
|
+
readonly cues: {
|
|
175
|
+
readonly type: "array";
|
|
176
|
+
readonly items: {
|
|
177
|
+
readonly $ref: "#/$defs/cue";
|
|
178
|
+
};
|
|
179
|
+
};
|
|
180
|
+
readonly notes: {
|
|
181
|
+
readonly type: "string";
|
|
182
|
+
};
|
|
183
|
+
readonly mood: {
|
|
184
|
+
readonly type: "string";
|
|
185
|
+
};
|
|
186
|
+
readonly transition: {
|
|
187
|
+
readonly type: "string";
|
|
188
|
+
};
|
|
189
|
+
readonly chrome: {
|
|
190
|
+
readonly type: "boolean";
|
|
191
|
+
};
|
|
192
|
+
readonly background: {
|
|
193
|
+
readonly $ref: "#/$defs/background";
|
|
194
|
+
};
|
|
195
|
+
};
|
|
196
|
+
};
|
|
197
|
+
readonly camera: {
|
|
198
|
+
readonly type: "object";
|
|
199
|
+
readonly properties: {
|
|
200
|
+
readonly from: {
|
|
201
|
+
type: string;
|
|
202
|
+
properties: {
|
|
203
|
+
x: {
|
|
204
|
+
type: string;
|
|
205
|
+
};
|
|
206
|
+
y: {
|
|
207
|
+
type: string;
|
|
208
|
+
};
|
|
209
|
+
z: {
|
|
210
|
+
type: string;
|
|
211
|
+
};
|
|
212
|
+
};
|
|
213
|
+
additionalProperties: boolean;
|
|
214
|
+
};
|
|
215
|
+
readonly to: {
|
|
216
|
+
type: string;
|
|
217
|
+
properties: {
|
|
218
|
+
x: {
|
|
219
|
+
type: string;
|
|
220
|
+
};
|
|
221
|
+
y: {
|
|
222
|
+
type: string;
|
|
223
|
+
};
|
|
224
|
+
z: {
|
|
225
|
+
type: string;
|
|
226
|
+
};
|
|
227
|
+
};
|
|
228
|
+
additionalProperties: boolean;
|
|
229
|
+
};
|
|
230
|
+
readonly zoom: {
|
|
231
|
+
readonly type: "number";
|
|
232
|
+
};
|
|
233
|
+
};
|
|
234
|
+
readonly additionalProperties: true;
|
|
235
|
+
};
|
|
236
|
+
readonly cameraView: {
|
|
237
|
+
readonly type: "object";
|
|
238
|
+
readonly required: readonly ["x", "y"];
|
|
239
|
+
readonly additionalProperties: false;
|
|
240
|
+
readonly properties: {
|
|
241
|
+
readonly x: {
|
|
242
|
+
readonly type: "number";
|
|
243
|
+
readonly minimum: 0;
|
|
244
|
+
readonly maximum: 100;
|
|
245
|
+
};
|
|
246
|
+
readonly y: {
|
|
247
|
+
readonly type: "number";
|
|
248
|
+
readonly minimum: 0;
|
|
249
|
+
readonly maximum: 100;
|
|
250
|
+
};
|
|
251
|
+
readonly zoom: {
|
|
252
|
+
readonly type: "number";
|
|
253
|
+
readonly exclusiveMinimum: 0;
|
|
254
|
+
};
|
|
255
|
+
};
|
|
256
|
+
};
|
|
257
|
+
readonly cameraTransition: {
|
|
258
|
+
readonly type: "object";
|
|
259
|
+
readonly additionalProperties: false;
|
|
260
|
+
readonly properties: {
|
|
261
|
+
readonly duration: {
|
|
262
|
+
readonly type: "number";
|
|
263
|
+
readonly minimum: 0;
|
|
264
|
+
};
|
|
265
|
+
readonly easing: {
|
|
266
|
+
readonly enum: readonly ["linear", "ease", "ease-in", "ease-out", "ease-in-out"];
|
|
267
|
+
};
|
|
268
|
+
};
|
|
269
|
+
};
|
|
270
|
+
readonly cameraStop: {
|
|
271
|
+
readonly type: "object";
|
|
272
|
+
readonly required: readonly ["camera"];
|
|
273
|
+
readonly additionalProperties: false;
|
|
274
|
+
readonly properties: {
|
|
275
|
+
readonly camera: {
|
|
276
|
+
readonly $ref: "#/$defs/cameraView";
|
|
277
|
+
};
|
|
278
|
+
readonly transition: {
|
|
279
|
+
readonly $ref: "#/$defs/cameraTransition";
|
|
280
|
+
};
|
|
281
|
+
readonly cues: {
|
|
282
|
+
readonly type: "array";
|
|
283
|
+
readonly items: {
|
|
284
|
+
readonly $ref: "#/$defs/cue";
|
|
285
|
+
};
|
|
286
|
+
};
|
|
287
|
+
readonly hold: {
|
|
288
|
+
readonly type: "number";
|
|
289
|
+
readonly minimum: 0;
|
|
290
|
+
};
|
|
291
|
+
};
|
|
292
|
+
};
|
|
293
|
+
readonly layer: {
|
|
294
|
+
readonly type: "object";
|
|
295
|
+
readonly required: readonly ["type"];
|
|
296
|
+
readonly additionalProperties: false;
|
|
297
|
+
readonly properties: {
|
|
298
|
+
readonly id: {
|
|
299
|
+
readonly type: "string";
|
|
300
|
+
};
|
|
301
|
+
readonly type: {
|
|
302
|
+
readonly type: "string";
|
|
303
|
+
readonly minLength: 1;
|
|
304
|
+
};
|
|
305
|
+
readonly content: {
|
|
306
|
+
$comment: string;
|
|
307
|
+
};
|
|
308
|
+
readonly props: {
|
|
309
|
+
readonly type: "object";
|
|
310
|
+
readonly additionalProperties: {
|
|
311
|
+
$comment: string;
|
|
312
|
+
};
|
|
313
|
+
};
|
|
314
|
+
readonly timing: {
|
|
315
|
+
readonly type: "object";
|
|
316
|
+
readonly additionalProperties: {
|
|
317
|
+
$comment: string;
|
|
318
|
+
};
|
|
319
|
+
};
|
|
320
|
+
readonly visible: {
|
|
321
|
+
readonly type: "boolean";
|
|
322
|
+
};
|
|
323
|
+
};
|
|
324
|
+
};
|
|
325
|
+
readonly fragment: {
|
|
326
|
+
readonly type: "object";
|
|
327
|
+
readonly required: readonly ["id"];
|
|
328
|
+
readonly additionalProperties: false;
|
|
329
|
+
readonly properties: {
|
|
330
|
+
readonly id: {
|
|
331
|
+
readonly type: "string";
|
|
332
|
+
readonly minLength: 1;
|
|
333
|
+
};
|
|
334
|
+
readonly layerId: {
|
|
335
|
+
readonly type: "string";
|
|
336
|
+
};
|
|
337
|
+
readonly transition: {
|
|
338
|
+
readonly type: "string";
|
|
339
|
+
};
|
|
340
|
+
readonly cues: {
|
|
341
|
+
readonly type: "array";
|
|
342
|
+
readonly items: {
|
|
343
|
+
readonly type: "string";
|
|
344
|
+
};
|
|
345
|
+
};
|
|
346
|
+
};
|
|
347
|
+
};
|
|
348
|
+
readonly cue: {
|
|
349
|
+
readonly type: "object";
|
|
350
|
+
readonly required: readonly ["time", "action"];
|
|
351
|
+
readonly additionalProperties: false;
|
|
352
|
+
readonly properties: {
|
|
353
|
+
readonly time: {
|
|
354
|
+
readonly type: "number";
|
|
355
|
+
readonly minimum: 0;
|
|
356
|
+
};
|
|
357
|
+
readonly action: {
|
|
358
|
+
readonly $ref: "#/$defs/cueAction";
|
|
359
|
+
};
|
|
360
|
+
};
|
|
361
|
+
};
|
|
362
|
+
readonly cueAction: {
|
|
363
|
+
readonly type: "object";
|
|
364
|
+
readonly required: readonly ["type"];
|
|
365
|
+
readonly additionalProperties: false;
|
|
366
|
+
readonly properties: {
|
|
367
|
+
readonly type: {
|
|
368
|
+
readonly type: "string";
|
|
369
|
+
readonly minLength: 1;
|
|
370
|
+
};
|
|
371
|
+
readonly target: {
|
|
372
|
+
readonly type: "string";
|
|
373
|
+
};
|
|
374
|
+
readonly payload: {
|
|
375
|
+
$comment: string;
|
|
376
|
+
};
|
|
377
|
+
};
|
|
378
|
+
};
|
|
379
|
+
readonly layoutNode: {
|
|
380
|
+
readonly oneOf: readonly [{
|
|
381
|
+
readonly $ref: "#/$defs/stackLayout";
|
|
382
|
+
}, {
|
|
383
|
+
readonly $ref: "#/$defs/gridLayout";
|
|
384
|
+
}, {
|
|
385
|
+
readonly $ref: "#/$defs/splitLayout";
|
|
386
|
+
}, {
|
|
387
|
+
readonly $ref: "#/$defs/heroLayout";
|
|
388
|
+
}, {
|
|
389
|
+
readonly $ref: "#/$defs/frameLayout";
|
|
390
|
+
}, {
|
|
391
|
+
readonly $ref: "#/$defs/canvasLayout";
|
|
392
|
+
}, {
|
|
393
|
+
readonly $ref: "#/$defs/animateLayout";
|
|
394
|
+
}, {
|
|
395
|
+
readonly $ref: "#/$defs/headingElement";
|
|
396
|
+
}, {
|
|
397
|
+
readonly $ref: "#/$defs/textElement";
|
|
398
|
+
}, {
|
|
399
|
+
readonly $ref: "#/$defs/mediaElement";
|
|
400
|
+
}, {
|
|
401
|
+
readonly $ref: "#/$defs/calloutElement";
|
|
402
|
+
}, {
|
|
403
|
+
readonly $ref: "#/$defs/codeElement";
|
|
404
|
+
}, {
|
|
405
|
+
readonly $ref: "#/$defs/iconElement";
|
|
406
|
+
}, {
|
|
407
|
+
readonly $ref: "#/$defs/tableLayout";
|
|
408
|
+
}, {
|
|
409
|
+
readonly $ref: "#/$defs/connectorElement";
|
|
410
|
+
}, {
|
|
411
|
+
readonly $ref: "#/$defs/badgeElement";
|
|
412
|
+
}, {
|
|
413
|
+
readonly $ref: "#/$defs/ruleElement";
|
|
414
|
+
}];
|
|
415
|
+
};
|
|
416
|
+
readonly stackLayout: {
|
|
417
|
+
readonly type: "object";
|
|
418
|
+
readonly required: readonly ["kind", "children"];
|
|
419
|
+
readonly additionalProperties: false;
|
|
420
|
+
readonly properties: {
|
|
421
|
+
readonly kind: {
|
|
422
|
+
readonly const: "stack";
|
|
423
|
+
};
|
|
424
|
+
readonly children: {
|
|
425
|
+
type: string;
|
|
426
|
+
items: {
|
|
427
|
+
$ref: string;
|
|
428
|
+
};
|
|
429
|
+
};
|
|
430
|
+
readonly direction: {
|
|
431
|
+
readonly enum: readonly ["vertical", "horizontal"];
|
|
432
|
+
};
|
|
433
|
+
readonly align: {
|
|
434
|
+
readonly enum: readonly ["start", "center", "end", "stretch"];
|
|
435
|
+
};
|
|
436
|
+
readonly gap: {
|
|
437
|
+
readonly type: "string";
|
|
438
|
+
};
|
|
439
|
+
readonly justify: {
|
|
440
|
+
readonly enum: readonly ["start", "center", "between", "end"];
|
|
441
|
+
};
|
|
442
|
+
readonly meta: {
|
|
443
|
+
type: string;
|
|
444
|
+
properties: {
|
|
445
|
+
safeArea: {
|
|
446
|
+
enum: string[];
|
|
447
|
+
};
|
|
448
|
+
depth: {
|
|
449
|
+
type: string;
|
|
450
|
+
};
|
|
451
|
+
cameraHint: {
|
|
452
|
+
enum: string[];
|
|
453
|
+
};
|
|
454
|
+
};
|
|
455
|
+
additionalProperties: boolean;
|
|
456
|
+
};
|
|
457
|
+
};
|
|
458
|
+
};
|
|
459
|
+
readonly gridLayout: {
|
|
460
|
+
readonly type: "object";
|
|
461
|
+
readonly required: readonly ["kind", "children"];
|
|
462
|
+
readonly additionalProperties: false;
|
|
463
|
+
readonly properties: {
|
|
464
|
+
readonly kind: {
|
|
465
|
+
readonly const: "grid";
|
|
466
|
+
};
|
|
467
|
+
readonly children: {
|
|
468
|
+
type: string;
|
|
469
|
+
items: {
|
|
470
|
+
$ref: string;
|
|
471
|
+
};
|
|
472
|
+
};
|
|
473
|
+
readonly columns: {
|
|
474
|
+
readonly type: "integer";
|
|
475
|
+
readonly minimum: 1;
|
|
476
|
+
};
|
|
477
|
+
readonly rows: {
|
|
478
|
+
readonly type: "integer";
|
|
479
|
+
readonly minimum: 1;
|
|
480
|
+
};
|
|
481
|
+
readonly meta: {
|
|
482
|
+
type: string;
|
|
483
|
+
properties: {
|
|
484
|
+
safeArea: {
|
|
485
|
+
enum: string[];
|
|
486
|
+
};
|
|
487
|
+
depth: {
|
|
488
|
+
type: string;
|
|
489
|
+
};
|
|
490
|
+
cameraHint: {
|
|
491
|
+
enum: string[];
|
|
492
|
+
};
|
|
493
|
+
};
|
|
494
|
+
additionalProperties: boolean;
|
|
495
|
+
};
|
|
496
|
+
};
|
|
497
|
+
};
|
|
498
|
+
readonly splitLayout: {
|
|
499
|
+
readonly type: "object";
|
|
500
|
+
readonly required: readonly ["kind", "children"];
|
|
501
|
+
readonly additionalProperties: false;
|
|
502
|
+
readonly properties: {
|
|
503
|
+
readonly kind: {
|
|
504
|
+
readonly const: "split";
|
|
505
|
+
};
|
|
506
|
+
readonly children: {
|
|
507
|
+
readonly type: "array";
|
|
508
|
+
readonly minItems: 2;
|
|
509
|
+
readonly items: {
|
|
510
|
+
readonly $ref: "#/$defs/layoutNode";
|
|
511
|
+
};
|
|
512
|
+
};
|
|
513
|
+
readonly weights: {
|
|
514
|
+
readonly type: "array";
|
|
515
|
+
readonly items: {
|
|
516
|
+
readonly type: "number";
|
|
517
|
+
readonly exclusiveMinimum: 0;
|
|
518
|
+
};
|
|
519
|
+
};
|
|
520
|
+
readonly meta: {
|
|
521
|
+
type: string;
|
|
522
|
+
properties: {
|
|
523
|
+
safeArea: {
|
|
524
|
+
enum: string[];
|
|
525
|
+
};
|
|
526
|
+
depth: {
|
|
527
|
+
type: string;
|
|
528
|
+
};
|
|
529
|
+
cameraHint: {
|
|
530
|
+
enum: string[];
|
|
531
|
+
};
|
|
532
|
+
};
|
|
533
|
+
additionalProperties: boolean;
|
|
534
|
+
};
|
|
535
|
+
};
|
|
536
|
+
};
|
|
537
|
+
readonly heroLayout: {
|
|
538
|
+
readonly type: "object";
|
|
539
|
+
readonly required: readonly ["kind", "children"];
|
|
540
|
+
readonly additionalProperties: false;
|
|
541
|
+
readonly properties: {
|
|
542
|
+
readonly kind: {
|
|
543
|
+
readonly const: "hero";
|
|
544
|
+
};
|
|
545
|
+
readonly children: {
|
|
546
|
+
readonly type: "array";
|
|
547
|
+
readonly minItems: 1;
|
|
548
|
+
readonly items: {
|
|
549
|
+
readonly $ref: "#/$defs/layoutNode";
|
|
550
|
+
};
|
|
551
|
+
};
|
|
552
|
+
readonly meta: {
|
|
553
|
+
type: string;
|
|
554
|
+
properties: {
|
|
555
|
+
safeArea: {
|
|
556
|
+
enum: string[];
|
|
557
|
+
};
|
|
558
|
+
depth: {
|
|
559
|
+
type: string;
|
|
560
|
+
};
|
|
561
|
+
cameraHint: {
|
|
562
|
+
enum: string[];
|
|
563
|
+
};
|
|
564
|
+
};
|
|
565
|
+
additionalProperties: boolean;
|
|
566
|
+
};
|
|
567
|
+
};
|
|
568
|
+
};
|
|
569
|
+
readonly frameLayout: {
|
|
570
|
+
readonly type: "object";
|
|
571
|
+
readonly required: readonly ["kind", "children"];
|
|
572
|
+
readonly additionalProperties: false;
|
|
573
|
+
readonly properties: {
|
|
574
|
+
readonly kind: {
|
|
575
|
+
readonly const: "frame";
|
|
576
|
+
};
|
|
577
|
+
readonly children: {
|
|
578
|
+
type: string;
|
|
579
|
+
items: {
|
|
580
|
+
$ref: string;
|
|
581
|
+
};
|
|
582
|
+
};
|
|
583
|
+
readonly meta: {
|
|
584
|
+
type: string;
|
|
585
|
+
properties: {
|
|
586
|
+
safeArea: {
|
|
587
|
+
enum: string[];
|
|
588
|
+
};
|
|
589
|
+
depth: {
|
|
590
|
+
type: string;
|
|
591
|
+
};
|
|
592
|
+
cameraHint: {
|
|
593
|
+
enum: string[];
|
|
594
|
+
};
|
|
595
|
+
};
|
|
596
|
+
additionalProperties: boolean;
|
|
597
|
+
};
|
|
598
|
+
readonly tone: {
|
|
599
|
+
readonly enum: readonly ["default", "muted", "accent", "danger", "magenta", "cyan", "purple", "green"];
|
|
600
|
+
};
|
|
601
|
+
};
|
|
602
|
+
};
|
|
603
|
+
readonly canvasLayout: {
|
|
604
|
+
readonly type: "object";
|
|
605
|
+
readonly required: readonly ["kind", "items"];
|
|
606
|
+
readonly additionalProperties: false;
|
|
607
|
+
readonly properties: {
|
|
608
|
+
readonly kind: {
|
|
609
|
+
readonly const: "canvas";
|
|
610
|
+
};
|
|
611
|
+
readonly items: {
|
|
612
|
+
readonly type: "array";
|
|
613
|
+
readonly items: {
|
|
614
|
+
readonly $ref: "#/$defs/canvasItem";
|
|
615
|
+
};
|
|
616
|
+
};
|
|
617
|
+
readonly meta: {
|
|
618
|
+
type: string;
|
|
619
|
+
properties: {
|
|
620
|
+
safeArea: {
|
|
621
|
+
enum: string[];
|
|
622
|
+
};
|
|
623
|
+
depth: {
|
|
624
|
+
type: string;
|
|
625
|
+
};
|
|
626
|
+
cameraHint: {
|
|
627
|
+
enum: string[];
|
|
628
|
+
};
|
|
629
|
+
};
|
|
630
|
+
additionalProperties: boolean;
|
|
631
|
+
};
|
|
632
|
+
};
|
|
633
|
+
};
|
|
634
|
+
readonly canvasItem: {
|
|
635
|
+
readonly type: "object";
|
|
636
|
+
readonly required: readonly ["x", "y", "child"];
|
|
637
|
+
readonly additionalProperties: false;
|
|
638
|
+
readonly properties: {
|
|
639
|
+
readonly x: {
|
|
640
|
+
readonly type: "number";
|
|
641
|
+
readonly minimum: 0;
|
|
642
|
+
readonly maximum: 100;
|
|
643
|
+
};
|
|
644
|
+
readonly y: {
|
|
645
|
+
readonly type: "number";
|
|
646
|
+
readonly minimum: 0;
|
|
647
|
+
readonly maximum: 100;
|
|
648
|
+
};
|
|
649
|
+
readonly width: {
|
|
650
|
+
readonly type: "number";
|
|
651
|
+
readonly minimum: 0;
|
|
652
|
+
readonly maximum: 100;
|
|
653
|
+
};
|
|
654
|
+
readonly height: {
|
|
655
|
+
readonly type: "number";
|
|
656
|
+
readonly minimum: 0;
|
|
657
|
+
readonly maximum: 100;
|
|
658
|
+
};
|
|
659
|
+
readonly child: {
|
|
660
|
+
readonly $ref: "#/$defs/layoutNode";
|
|
661
|
+
};
|
|
662
|
+
};
|
|
663
|
+
};
|
|
664
|
+
readonly animateLayout: {
|
|
665
|
+
readonly type: "object";
|
|
666
|
+
readonly required: readonly ["kind", "name", "child"];
|
|
667
|
+
readonly additionalProperties: false;
|
|
668
|
+
readonly properties: {
|
|
669
|
+
readonly kind: {
|
|
670
|
+
readonly const: "animate";
|
|
671
|
+
};
|
|
672
|
+
readonly name: {
|
|
673
|
+
readonly enum: readonly ["rise", "fade", "zoom", "draw", "in-left", "in-right", "glow", "blink", "pulse", "sweep"];
|
|
674
|
+
};
|
|
675
|
+
readonly delay: {
|
|
676
|
+
readonly type: "number";
|
|
677
|
+
readonly minimum: 0;
|
|
678
|
+
};
|
|
679
|
+
readonly duration: {
|
|
680
|
+
readonly type: "number";
|
|
681
|
+
readonly exclusiveMinimum: 0;
|
|
682
|
+
};
|
|
683
|
+
readonly easing: {
|
|
684
|
+
readonly type: "string";
|
|
685
|
+
readonly minLength: 1;
|
|
686
|
+
};
|
|
687
|
+
readonly child: {
|
|
688
|
+
readonly $ref: "#/$defs/layoutNode";
|
|
689
|
+
};
|
|
690
|
+
};
|
|
691
|
+
};
|
|
692
|
+
readonly headingElement: {
|
|
693
|
+
readonly type: "object";
|
|
694
|
+
readonly required: readonly ["kind", "text"];
|
|
695
|
+
readonly additionalProperties: false;
|
|
696
|
+
readonly properties: {
|
|
697
|
+
readonly kind: {
|
|
698
|
+
readonly const: "heading";
|
|
699
|
+
};
|
|
700
|
+
readonly text: {
|
|
701
|
+
readonly type: "string";
|
|
702
|
+
readonly minLength: 1;
|
|
703
|
+
};
|
|
704
|
+
readonly size: {
|
|
705
|
+
readonly enum: readonly ["default", "display", "hero"];
|
|
706
|
+
};
|
|
707
|
+
readonly level: {
|
|
708
|
+
readonly type: "integer";
|
|
709
|
+
readonly minimum: 1;
|
|
710
|
+
readonly maximum: 6;
|
|
711
|
+
};
|
|
712
|
+
readonly transform: {
|
|
713
|
+
readonly enum: readonly ["uppercase", "lowercase", "capitalize"];
|
|
714
|
+
};
|
|
715
|
+
readonly decoration: {
|
|
716
|
+
readonly enum: readonly ["underline", "line-through"];
|
|
717
|
+
};
|
|
718
|
+
readonly glow: {
|
|
719
|
+
readonly type: "boolean";
|
|
720
|
+
};
|
|
721
|
+
readonly tone: {
|
|
722
|
+
readonly enum: readonly ["default", "muted", "accent", "danger", "magenta", "cyan", "purple", "green"];
|
|
723
|
+
};
|
|
724
|
+
};
|
|
725
|
+
};
|
|
726
|
+
readonly textElement: {
|
|
727
|
+
readonly type: "object";
|
|
728
|
+
readonly required: readonly ["kind", "text"];
|
|
729
|
+
readonly additionalProperties: false;
|
|
730
|
+
readonly properties: {
|
|
731
|
+
readonly kind: {
|
|
732
|
+
readonly const: "text";
|
|
733
|
+
};
|
|
734
|
+
readonly text: {
|
|
735
|
+
readonly type: "string";
|
|
736
|
+
};
|
|
737
|
+
readonly variant: {
|
|
738
|
+
readonly enum: readonly ["body", "lead", "caption"];
|
|
739
|
+
};
|
|
740
|
+
readonly transform: {
|
|
741
|
+
readonly enum: readonly ["uppercase", "lowercase", "capitalize"];
|
|
742
|
+
};
|
|
743
|
+
readonly decoration: {
|
|
744
|
+
readonly enum: readonly ["underline", "line-through"];
|
|
745
|
+
};
|
|
746
|
+
readonly glow: {
|
|
747
|
+
readonly type: "boolean";
|
|
748
|
+
};
|
|
749
|
+
readonly tone: {
|
|
750
|
+
readonly enum: readonly ["default", "muted", "accent", "danger", "magenta", "cyan", "purple", "green"];
|
|
751
|
+
};
|
|
752
|
+
};
|
|
753
|
+
};
|
|
754
|
+
readonly mediaElement: {
|
|
755
|
+
readonly type: "object";
|
|
756
|
+
readonly required: readonly ["kind", "src", "alt"];
|
|
757
|
+
readonly additionalProperties: false;
|
|
758
|
+
readonly properties: {
|
|
759
|
+
readonly kind: {
|
|
760
|
+
readonly const: "media";
|
|
761
|
+
};
|
|
762
|
+
readonly src: {
|
|
763
|
+
readonly type: "string";
|
|
764
|
+
readonly minLength: 1;
|
|
765
|
+
};
|
|
766
|
+
readonly alt: {
|
|
767
|
+
readonly type: "string";
|
|
768
|
+
readonly minLength: 1;
|
|
769
|
+
};
|
|
770
|
+
readonly fit: {
|
|
771
|
+
readonly enum: readonly ["contain", "cover", "fill"];
|
|
772
|
+
};
|
|
773
|
+
};
|
|
774
|
+
};
|
|
775
|
+
readonly calloutElement: {
|
|
776
|
+
readonly type: "object";
|
|
777
|
+
readonly required: readonly ["kind", "children"];
|
|
778
|
+
readonly additionalProperties: false;
|
|
779
|
+
readonly properties: {
|
|
780
|
+
readonly kind: {
|
|
781
|
+
readonly const: "callout";
|
|
782
|
+
};
|
|
783
|
+
readonly tone: {
|
|
784
|
+
readonly enum: readonly ["info", "warning", "success", "danger", "quote"];
|
|
785
|
+
};
|
|
786
|
+
readonly children: {
|
|
787
|
+
type: string;
|
|
788
|
+
items: {
|
|
789
|
+
$ref: string;
|
|
790
|
+
};
|
|
791
|
+
};
|
|
792
|
+
};
|
|
793
|
+
};
|
|
794
|
+
readonly codeElement: {
|
|
795
|
+
readonly type: "object";
|
|
796
|
+
readonly required: readonly ["kind", "lines"];
|
|
797
|
+
readonly additionalProperties: false;
|
|
798
|
+
readonly properties: {
|
|
799
|
+
readonly kind: {
|
|
800
|
+
readonly const: "code";
|
|
801
|
+
};
|
|
802
|
+
readonly lines: {
|
|
803
|
+
readonly type: "array";
|
|
804
|
+
readonly items: {
|
|
805
|
+
readonly type: "array";
|
|
806
|
+
readonly items: {
|
|
807
|
+
readonly $ref: "#/$defs/codeToken";
|
|
808
|
+
};
|
|
809
|
+
};
|
|
810
|
+
};
|
|
811
|
+
};
|
|
812
|
+
};
|
|
813
|
+
readonly iconElement: {
|
|
814
|
+
readonly type: "object";
|
|
815
|
+
readonly required: readonly ["kind", "name"];
|
|
816
|
+
readonly additionalProperties: false;
|
|
817
|
+
readonly properties: {
|
|
818
|
+
readonly kind: {
|
|
819
|
+
readonly const: "icon";
|
|
820
|
+
};
|
|
821
|
+
readonly name: {
|
|
822
|
+
readonly enum: readonly ["check", "cross", "dash", "ring", "dot", "arrow"];
|
|
823
|
+
};
|
|
824
|
+
readonly tone: {
|
|
825
|
+
readonly enum: readonly ["default", "muted", "accent", "danger", "magenta", "cyan", "purple", "green"];
|
|
826
|
+
};
|
|
827
|
+
readonly label: {
|
|
828
|
+
readonly type: "string";
|
|
829
|
+
};
|
|
830
|
+
};
|
|
831
|
+
};
|
|
832
|
+
readonly badgeElement: {
|
|
833
|
+
readonly type: "object";
|
|
834
|
+
readonly required: readonly ["kind", "text"];
|
|
835
|
+
readonly additionalProperties: false;
|
|
836
|
+
readonly properties: {
|
|
837
|
+
readonly kind: {
|
|
838
|
+
readonly const: "badge";
|
|
839
|
+
};
|
|
840
|
+
readonly text: {
|
|
841
|
+
readonly type: "string";
|
|
842
|
+
};
|
|
843
|
+
readonly tone: {
|
|
844
|
+
readonly enum: readonly ["default", "muted", "accent", "danger", "magenta", "cyan", "purple", "green"];
|
|
845
|
+
};
|
|
846
|
+
readonly variant: {
|
|
847
|
+
readonly enum: readonly ["outline", "soft", "solid"];
|
|
848
|
+
};
|
|
849
|
+
readonly dot: {
|
|
850
|
+
readonly enum: readonly ["default", "muted", "accent", "danger", "magenta", "cyan", "purple", "green"];
|
|
851
|
+
};
|
|
852
|
+
readonly mono: {
|
|
853
|
+
readonly type: "boolean";
|
|
854
|
+
};
|
|
855
|
+
};
|
|
856
|
+
};
|
|
857
|
+
readonly ruleElement: {
|
|
858
|
+
readonly type: "object";
|
|
859
|
+
readonly required: readonly ["kind"];
|
|
860
|
+
readonly additionalProperties: false;
|
|
861
|
+
readonly properties: {
|
|
862
|
+
readonly kind: {
|
|
863
|
+
readonly const: "rule";
|
|
864
|
+
};
|
|
865
|
+
readonly length: {
|
|
866
|
+
readonly type: readonly ["string", "number"];
|
|
867
|
+
};
|
|
868
|
+
readonly thickness: {
|
|
869
|
+
readonly type: "number";
|
|
870
|
+
};
|
|
871
|
+
readonly tone: {
|
|
872
|
+
readonly enum: readonly ["default", "muted", "accent", "danger", "magenta", "cyan", "purple", "green"];
|
|
873
|
+
};
|
|
874
|
+
readonly gradient: {
|
|
875
|
+
readonly type: "array";
|
|
876
|
+
readonly minItems: 2;
|
|
877
|
+
readonly maxItems: 2;
|
|
878
|
+
readonly items: {
|
|
879
|
+
readonly enum: readonly ["default", "muted", "accent", "danger", "magenta", "cyan", "purple", "green"];
|
|
880
|
+
};
|
|
881
|
+
};
|
|
882
|
+
readonly radius: {
|
|
883
|
+
readonly type: "number";
|
|
884
|
+
};
|
|
885
|
+
};
|
|
886
|
+
};
|
|
887
|
+
readonly tableColumn: {
|
|
888
|
+
readonly type: "object";
|
|
889
|
+
readonly additionalProperties: false;
|
|
890
|
+
readonly properties: {
|
|
891
|
+
readonly header: {
|
|
892
|
+
readonly $ref: "#/$defs/layoutNode";
|
|
893
|
+
};
|
|
894
|
+
readonly weight: {
|
|
895
|
+
readonly type: "number";
|
|
896
|
+
readonly exclusiveMinimum: 0;
|
|
897
|
+
};
|
|
898
|
+
readonly align: {
|
|
899
|
+
readonly enum: readonly ["start", "center", "end"];
|
|
900
|
+
};
|
|
901
|
+
readonly emphasis: {
|
|
902
|
+
readonly type: "boolean";
|
|
903
|
+
};
|
|
904
|
+
};
|
|
905
|
+
};
|
|
906
|
+
readonly tableLayout: {
|
|
907
|
+
readonly type: "object";
|
|
908
|
+
readonly required: readonly ["kind", "columns", "rows"];
|
|
909
|
+
readonly additionalProperties: false;
|
|
910
|
+
readonly properties: {
|
|
911
|
+
readonly kind: {
|
|
912
|
+
readonly const: "table";
|
|
913
|
+
};
|
|
914
|
+
readonly columns: {
|
|
915
|
+
readonly type: "array";
|
|
916
|
+
readonly minItems: 1;
|
|
917
|
+
readonly items: {
|
|
918
|
+
readonly $ref: "#/$defs/tableColumn";
|
|
919
|
+
};
|
|
920
|
+
};
|
|
921
|
+
readonly rows: {
|
|
922
|
+
readonly type: "array";
|
|
923
|
+
readonly items: {
|
|
924
|
+
readonly type: "array";
|
|
925
|
+
readonly items: {
|
|
926
|
+
readonly $ref: "#/$defs/layoutNode";
|
|
927
|
+
};
|
|
928
|
+
};
|
|
929
|
+
};
|
|
930
|
+
readonly meta: {
|
|
931
|
+
type: string;
|
|
932
|
+
properties: {
|
|
933
|
+
safeArea: {
|
|
934
|
+
enum: string[];
|
|
935
|
+
};
|
|
936
|
+
depth: {
|
|
937
|
+
type: string;
|
|
938
|
+
};
|
|
939
|
+
cameraHint: {
|
|
940
|
+
enum: string[];
|
|
941
|
+
};
|
|
942
|
+
};
|
|
943
|
+
additionalProperties: boolean;
|
|
944
|
+
};
|
|
945
|
+
};
|
|
946
|
+
};
|
|
947
|
+
readonly connectorPoint: {
|
|
948
|
+
readonly type: "object";
|
|
949
|
+
readonly required: readonly ["x", "y"];
|
|
950
|
+
readonly additionalProperties: false;
|
|
951
|
+
readonly properties: {
|
|
952
|
+
readonly x: {
|
|
953
|
+
readonly type: "number";
|
|
954
|
+
readonly minimum: 0;
|
|
955
|
+
readonly maximum: 100;
|
|
956
|
+
};
|
|
957
|
+
readonly y: {
|
|
958
|
+
readonly type: "number";
|
|
959
|
+
readonly minimum: 0;
|
|
960
|
+
readonly maximum: 100;
|
|
961
|
+
};
|
|
962
|
+
};
|
|
963
|
+
};
|
|
964
|
+
readonly connectorElement: {
|
|
965
|
+
readonly type: "object";
|
|
966
|
+
readonly required: readonly ["kind", "from", "to"];
|
|
967
|
+
readonly additionalProperties: false;
|
|
968
|
+
readonly properties: {
|
|
969
|
+
readonly kind: {
|
|
970
|
+
readonly const: "connector";
|
|
971
|
+
};
|
|
972
|
+
readonly from: {
|
|
973
|
+
readonly $ref: "#/$defs/connectorPoint";
|
|
974
|
+
};
|
|
975
|
+
readonly to: {
|
|
976
|
+
readonly $ref: "#/$defs/connectorPoint";
|
|
977
|
+
};
|
|
978
|
+
readonly control: {
|
|
979
|
+
readonly $ref: "#/$defs/connectorPoint";
|
|
980
|
+
};
|
|
981
|
+
readonly arrow: {
|
|
982
|
+
readonly enum: readonly ["none", "end", "start", "both"];
|
|
983
|
+
};
|
|
984
|
+
readonly dashed: {
|
|
985
|
+
readonly type: "boolean";
|
|
986
|
+
};
|
|
987
|
+
readonly tone: {
|
|
988
|
+
readonly enum: readonly ["default", "muted", "accent", "danger", "magenta", "cyan", "purple", "green"];
|
|
989
|
+
};
|
|
990
|
+
};
|
|
991
|
+
};
|
|
992
|
+
readonly codeToken: {
|
|
993
|
+
readonly type: "object";
|
|
994
|
+
readonly required: readonly ["text"];
|
|
995
|
+
readonly additionalProperties: false;
|
|
996
|
+
readonly properties: {
|
|
997
|
+
readonly text: {
|
|
998
|
+
readonly type: "string";
|
|
999
|
+
};
|
|
1000
|
+
readonly kind: {
|
|
1001
|
+
readonly enum: readonly ["keyword", "function", "string", "number", "property", "comment", "punctuation", "plain"];
|
|
1002
|
+
};
|
|
1003
|
+
};
|
|
1004
|
+
};
|
|
1005
|
+
readonly asset: {
|
|
1006
|
+
readonly type: "object";
|
|
1007
|
+
readonly required: readonly ["id", "type", "src"];
|
|
1008
|
+
readonly additionalProperties: false;
|
|
1009
|
+
readonly properties: {
|
|
1010
|
+
readonly id: {
|
|
1011
|
+
readonly type: "string";
|
|
1012
|
+
readonly minLength: 1;
|
|
1013
|
+
};
|
|
1014
|
+
readonly type: {
|
|
1015
|
+
readonly type: "string";
|
|
1016
|
+
readonly minLength: 1;
|
|
1017
|
+
};
|
|
1018
|
+
readonly src: {
|
|
1019
|
+
readonly type: "string";
|
|
1020
|
+
readonly minLength: 1;
|
|
1021
|
+
};
|
|
1022
|
+
readonly metadata: {
|
|
1023
|
+
readonly type: "object";
|
|
1024
|
+
readonly additionalProperties: {
|
|
1025
|
+
$comment: string;
|
|
1026
|
+
};
|
|
1027
|
+
};
|
|
1028
|
+
};
|
|
1029
|
+
};
|
|
1030
|
+
readonly plugin: {
|
|
1031
|
+
readonly type: "object";
|
|
1032
|
+
readonly required: readonly ["id"];
|
|
1033
|
+
readonly additionalProperties: false;
|
|
1034
|
+
readonly properties: {
|
|
1035
|
+
readonly id: {
|
|
1036
|
+
readonly type: "string";
|
|
1037
|
+
readonly minLength: 1;
|
|
1038
|
+
};
|
|
1039
|
+
readonly packageName: {
|
|
1040
|
+
readonly type: "string";
|
|
1041
|
+
};
|
|
1042
|
+
readonly options: {
|
|
1043
|
+
readonly type: "object";
|
|
1044
|
+
readonly additionalProperties: {
|
|
1045
|
+
$comment: string;
|
|
1046
|
+
};
|
|
1047
|
+
};
|
|
1048
|
+
};
|
|
1049
|
+
};
|
|
1050
|
+
readonly exportOptions: {
|
|
1051
|
+
readonly type: "object";
|
|
1052
|
+
readonly additionalProperties: false;
|
|
1053
|
+
readonly properties: {
|
|
1054
|
+
readonly formats: {
|
|
1055
|
+
readonly type: "array";
|
|
1056
|
+
readonly items: {
|
|
1057
|
+
readonly type: "string";
|
|
1058
|
+
};
|
|
1059
|
+
};
|
|
1060
|
+
readonly metadata: {
|
|
1061
|
+
readonly type: "object";
|
|
1062
|
+
readonly additionalProperties: {
|
|
1063
|
+
$comment: string;
|
|
1064
|
+
};
|
|
1065
|
+
};
|
|
1066
|
+
};
|
|
1067
|
+
};
|
|
1068
|
+
readonly theme: {
|
|
1069
|
+
readonly type: "object";
|
|
1070
|
+
readonly required: readonly ["id"];
|
|
1071
|
+
readonly additionalProperties: false;
|
|
1072
|
+
readonly properties: {
|
|
1073
|
+
readonly id: {
|
|
1074
|
+
readonly type: "string";
|
|
1075
|
+
readonly minLength: 1;
|
|
1076
|
+
};
|
|
1077
|
+
readonly tokens: {
|
|
1078
|
+
readonly $ref: "#/$defs/themeTokens";
|
|
1079
|
+
};
|
|
1080
|
+
readonly css: {
|
|
1081
|
+
readonly type: "string";
|
|
1082
|
+
};
|
|
1083
|
+
readonly fonts: {
|
|
1084
|
+
readonly type: "array";
|
|
1085
|
+
readonly items: {
|
|
1086
|
+
readonly $ref: "#/$defs/themeFontFace";
|
|
1087
|
+
};
|
|
1088
|
+
};
|
|
1089
|
+
};
|
|
1090
|
+
};
|
|
1091
|
+
readonly themeFontFace: {
|
|
1092
|
+
readonly type: "object";
|
|
1093
|
+
readonly required: readonly ["family", "source"];
|
|
1094
|
+
readonly additionalProperties: false;
|
|
1095
|
+
readonly properties: {
|
|
1096
|
+
readonly family: {
|
|
1097
|
+
readonly type: "string";
|
|
1098
|
+
readonly minLength: 1;
|
|
1099
|
+
};
|
|
1100
|
+
readonly source: {
|
|
1101
|
+
readonly type: "string";
|
|
1102
|
+
readonly minLength: 1;
|
|
1103
|
+
};
|
|
1104
|
+
readonly format: {
|
|
1105
|
+
readonly type: "string";
|
|
1106
|
+
};
|
|
1107
|
+
readonly weight: {
|
|
1108
|
+
type: string[];
|
|
1109
|
+
};
|
|
1110
|
+
readonly style: {
|
|
1111
|
+
readonly type: "string";
|
|
1112
|
+
};
|
|
1113
|
+
readonly display: {
|
|
1114
|
+
readonly type: "string";
|
|
1115
|
+
};
|
|
1116
|
+
readonly unicodeRange: {
|
|
1117
|
+
readonly type: "string";
|
|
1118
|
+
};
|
|
1119
|
+
readonly stretch: {
|
|
1120
|
+
readonly type: "string";
|
|
1121
|
+
};
|
|
1122
|
+
};
|
|
1123
|
+
};
|
|
1124
|
+
readonly themeTokens: {
|
|
1125
|
+
readonly type: "object";
|
|
1126
|
+
readonly additionalProperties: false;
|
|
1127
|
+
readonly properties: {
|
|
1128
|
+
readonly colors: {
|
|
1129
|
+
readonly type: "object";
|
|
1130
|
+
readonly additionalProperties: {
|
|
1131
|
+
readonly type: "string";
|
|
1132
|
+
};
|
|
1133
|
+
};
|
|
1134
|
+
readonly typography: {
|
|
1135
|
+
readonly type: "object";
|
|
1136
|
+
readonly additionalProperties: {
|
|
1137
|
+
readonly $ref: "#/$defs/typographyToken";
|
|
1138
|
+
};
|
|
1139
|
+
};
|
|
1140
|
+
readonly spacing: {
|
|
1141
|
+
readonly type: "object";
|
|
1142
|
+
readonly additionalProperties: {
|
|
1143
|
+
type: string[];
|
|
1144
|
+
};
|
|
1145
|
+
};
|
|
1146
|
+
readonly radii: {
|
|
1147
|
+
readonly type: "object";
|
|
1148
|
+
readonly additionalProperties: {
|
|
1149
|
+
type: string[];
|
|
1150
|
+
};
|
|
1151
|
+
};
|
|
1152
|
+
readonly shadows: {
|
|
1153
|
+
readonly type: "object";
|
|
1154
|
+
readonly additionalProperties: {
|
|
1155
|
+
readonly type: "string";
|
|
1156
|
+
};
|
|
1157
|
+
};
|
|
1158
|
+
readonly motion: {
|
|
1159
|
+
readonly type: "object";
|
|
1160
|
+
readonly additionalProperties: {
|
|
1161
|
+
readonly $ref: "#/$defs/motionToken";
|
|
1162
|
+
};
|
|
1163
|
+
};
|
|
1164
|
+
readonly surfaces: {
|
|
1165
|
+
readonly type: "object";
|
|
1166
|
+
readonly additionalProperties: {
|
|
1167
|
+
readonly type: "string";
|
|
1168
|
+
};
|
|
1169
|
+
};
|
|
1170
|
+
readonly text: {
|
|
1171
|
+
readonly type: "object";
|
|
1172
|
+
readonly additionalProperties: {
|
|
1173
|
+
readonly type: "string";
|
|
1174
|
+
};
|
|
1175
|
+
};
|
|
1176
|
+
};
|
|
1177
|
+
};
|
|
1178
|
+
readonly typographyToken: {
|
|
1179
|
+
readonly type: "object";
|
|
1180
|
+
readonly additionalProperties: false;
|
|
1181
|
+
readonly properties: {
|
|
1182
|
+
readonly fontFamily: {
|
|
1183
|
+
readonly type: "string";
|
|
1184
|
+
};
|
|
1185
|
+
readonly fontSize: {
|
|
1186
|
+
type: string[];
|
|
1187
|
+
};
|
|
1188
|
+
readonly lineHeight: {
|
|
1189
|
+
type: string[];
|
|
1190
|
+
};
|
|
1191
|
+
readonly fontWeight: {
|
|
1192
|
+
type: string[];
|
|
1193
|
+
};
|
|
1194
|
+
readonly letterSpacing: {
|
|
1195
|
+
type: string[];
|
|
1196
|
+
};
|
|
1197
|
+
};
|
|
1198
|
+
};
|
|
1199
|
+
readonly motionToken: {
|
|
1200
|
+
readonly type: "object";
|
|
1201
|
+
readonly additionalProperties: false;
|
|
1202
|
+
readonly properties: {
|
|
1203
|
+
readonly duration: {
|
|
1204
|
+
type: string[];
|
|
1205
|
+
};
|
|
1206
|
+
readonly easing: {
|
|
1207
|
+
readonly type: "string";
|
|
1208
|
+
};
|
|
1209
|
+
readonly delay: {
|
|
1210
|
+
type: string[];
|
|
1211
|
+
};
|
|
1212
|
+
};
|
|
1213
|
+
};
|
|
1214
|
+
readonly background: {
|
|
1215
|
+
readonly type: "object";
|
|
1216
|
+
readonly additionalProperties: false;
|
|
1217
|
+
readonly properties: {
|
|
1218
|
+
readonly color: {
|
|
1219
|
+
readonly type: "string";
|
|
1220
|
+
readonly minLength: 1;
|
|
1221
|
+
};
|
|
1222
|
+
readonly layers: {
|
|
1223
|
+
readonly type: "array";
|
|
1224
|
+
readonly items: {
|
|
1225
|
+
readonly $ref: "#/$defs/backgroundLayer";
|
|
1226
|
+
};
|
|
1227
|
+
};
|
|
1228
|
+
};
|
|
1229
|
+
};
|
|
1230
|
+
readonly backgroundLayer: {
|
|
1231
|
+
readonly oneOf: readonly [{
|
|
1232
|
+
readonly $ref: "#/$defs/linearGradientLayer";
|
|
1233
|
+
}, {
|
|
1234
|
+
readonly $ref: "#/$defs/radialGradientLayer";
|
|
1235
|
+
}];
|
|
1236
|
+
};
|
|
1237
|
+
readonly linearGradientLayer: {
|
|
1238
|
+
readonly type: "object";
|
|
1239
|
+
readonly required: readonly ["type", "stops"];
|
|
1240
|
+
readonly additionalProperties: false;
|
|
1241
|
+
readonly properties: {
|
|
1242
|
+
readonly type: {
|
|
1243
|
+
readonly const: "linear";
|
|
1244
|
+
};
|
|
1245
|
+
readonly stops: {
|
|
1246
|
+
readonly type: "array";
|
|
1247
|
+
readonly minItems: 1;
|
|
1248
|
+
readonly items: {
|
|
1249
|
+
readonly $ref: "#/$defs/gradientStop";
|
|
1250
|
+
};
|
|
1251
|
+
};
|
|
1252
|
+
readonly angle: {
|
|
1253
|
+
readonly type: "number";
|
|
1254
|
+
};
|
|
1255
|
+
readonly blend: {
|
|
1256
|
+
readonly enum: readonly ["normal", "screen", "multiply", "overlay"];
|
|
1257
|
+
};
|
|
1258
|
+
readonly opacity: {
|
|
1259
|
+
readonly type: "number";
|
|
1260
|
+
readonly minimum: 0;
|
|
1261
|
+
readonly maximum: 1;
|
|
1262
|
+
};
|
|
1263
|
+
};
|
|
1264
|
+
};
|
|
1265
|
+
readonly radialGradientLayer: {
|
|
1266
|
+
readonly type: "object";
|
|
1267
|
+
readonly required: readonly ["type", "stops"];
|
|
1268
|
+
readonly additionalProperties: false;
|
|
1269
|
+
readonly properties: {
|
|
1270
|
+
readonly type: {
|
|
1271
|
+
readonly const: "radial";
|
|
1272
|
+
};
|
|
1273
|
+
readonly stops: {
|
|
1274
|
+
readonly type: "array";
|
|
1275
|
+
readonly minItems: 1;
|
|
1276
|
+
readonly items: {
|
|
1277
|
+
readonly $ref: "#/$defs/gradientStop";
|
|
1278
|
+
};
|
|
1279
|
+
};
|
|
1280
|
+
readonly shape: {
|
|
1281
|
+
readonly enum: readonly ["circle", "ellipse"];
|
|
1282
|
+
};
|
|
1283
|
+
readonly position: {
|
|
1284
|
+
readonly type: "object";
|
|
1285
|
+
readonly required: readonly ["x", "y"];
|
|
1286
|
+
readonly additionalProperties: false;
|
|
1287
|
+
readonly properties: {
|
|
1288
|
+
readonly x: {
|
|
1289
|
+
readonly type: "number";
|
|
1290
|
+
readonly minimum: 0;
|
|
1291
|
+
readonly maximum: 100;
|
|
1292
|
+
};
|
|
1293
|
+
readonly y: {
|
|
1294
|
+
readonly type: "number";
|
|
1295
|
+
readonly minimum: 0;
|
|
1296
|
+
readonly maximum: 100;
|
|
1297
|
+
};
|
|
1298
|
+
};
|
|
1299
|
+
};
|
|
1300
|
+
readonly blend: {
|
|
1301
|
+
readonly enum: readonly ["normal", "screen", "multiply", "overlay"];
|
|
1302
|
+
};
|
|
1303
|
+
readonly opacity: {
|
|
1304
|
+
readonly type: "number";
|
|
1305
|
+
readonly minimum: 0;
|
|
1306
|
+
readonly maximum: 1;
|
|
1307
|
+
};
|
|
1308
|
+
};
|
|
1309
|
+
};
|
|
1310
|
+
readonly gradientStop: {
|
|
1311
|
+
readonly type: "object";
|
|
1312
|
+
readonly required: readonly ["color"];
|
|
1313
|
+
readonly additionalProperties: false;
|
|
1314
|
+
readonly properties: {
|
|
1315
|
+
readonly color: {
|
|
1316
|
+
readonly type: "string";
|
|
1317
|
+
readonly minLength: 1;
|
|
1318
|
+
};
|
|
1319
|
+
readonly at: {
|
|
1320
|
+
readonly type: "number";
|
|
1321
|
+
readonly minimum: 0;
|
|
1322
|
+
readonly maximum: 100;
|
|
1323
|
+
};
|
|
1324
|
+
};
|
|
1325
|
+
};
|
|
1326
|
+
};
|
|
1327
|
+
};
|
|
1328
|
+
//# sourceMappingURL=manifest-schema.d.ts.map
|