@shotstack/schemas 1.8.2 → 1.8.3

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.
Files changed (34) hide show
  1. package/dist/api.bundled.json +832 -6
  2. package/dist/json-schema/asset.json +853 -1
  3. package/dist/json-schema/clip.json +853 -1
  4. package/dist/json-schema/edit.json +854 -2
  5. package/dist/json-schema/schemas.json +950 -5
  6. package/dist/json-schema/svg-arrow-shape.json +49 -0
  7. package/dist/json-schema/svg-asset.json +857 -6
  8. package/dist/json-schema/svg-circle-shape.json +28 -0
  9. package/dist/json-schema/svg-cross-shape.json +42 -0
  10. package/dist/json-schema/svg-ellipse-shape.json +35 -0
  11. package/dist/json-schema/svg-fill.json +169 -0
  12. package/dist/json-schema/svg-gradient-stop.json +25 -0
  13. package/dist/json-schema/svg-heart-shape.json +28 -0
  14. package/dist/json-schema/svg-line-shape.json +35 -0
  15. package/dist/json-schema/svg-linear-gradient-fill.json +80 -0
  16. package/dist/json-schema/svg-path-shape.json +26 -0
  17. package/dist/json-schema/svg-polygon-shape.json +35 -0
  18. package/dist/json-schema/svg-radial-gradient-fill.json +66 -0
  19. package/dist/json-schema/svg-rectangle-shape.json +49 -0
  20. package/dist/json-schema/svg-ring-shape.json +35 -0
  21. package/dist/json-schema/svg-shadow.json +79 -0
  22. package/dist/json-schema/svg-shape.json +404 -0
  23. package/dist/json-schema/svg-solid-fill.json +40 -0
  24. package/dist/json-schema/svg-star-shape.json +42 -0
  25. package/dist/json-schema/svg-stroke.json +115 -0
  26. package/dist/json-schema/svg-transform.json +93 -0
  27. package/dist/json-schema/timeline.json +854 -2
  28. package/dist/json-schema/track.json +854 -2
  29. package/dist/schema.d.ts +659 -7
  30. package/dist/zod/zod.gen.cjs +598 -8
  31. package/dist/zod/zod.gen.d.ts +8230 -156
  32. package/dist/zod/zod.gen.js +594 -5
  33. package/dist/zod/zod.gen.ts +369 -5
  34. package/package.json +1 -1
@@ -2,25 +2,876 @@
2
2
  "name": "SvgAsset",
3
3
  "strict": true,
4
4
  "schema": {
5
- "description": "The SvgAsset is used to create scalable vector graphic (SVG) assets using\nraw SVG markup.\n\n```json\n{\n \"type\": \"svg\",\n \"src\": \"<svg width=\\\"100\\\" height=\\\"100\\\"><circle cx=\\\"50\\\" cy=\\\"50\\\" r=\\\"40\\\" fill=\\\"#FF0000\\\"/></svg>\"\n}\n```\n\nSee [W3C SVG 2 Specification](https://www.w3.org/TR/SVG2/) for SVG markup syntax.\n",
6
5
  "type": "object",
7
6
  "properties": {
8
7
  "type": {
9
- "description": "The asset type - set to `svg` for SVG assets.",
10
8
  "type": "string",
11
9
  "enum": [
12
10
  "svg"
13
11
  ]
14
12
  },
15
13
  "src": {
16
- "description": "Raw SVG markup string to import.\n\n**Supported elements:** `<path>`, `<rect>`, `<circle>`, `<ellipse>`,\n`<line>`, `<polygon>`, `<polyline>`\n",
17
- "type": "string"
14
+ "anyOf": [
15
+ {
16
+ "type": "string"
17
+ },
18
+ {
19
+ "type": "null"
20
+ }
21
+ ]
22
+ },
23
+ "shape": {
24
+ "anyOf": [
25
+ {
26
+ "$ref": "#/$defs/SvgShape"
27
+ },
28
+ {
29
+ "type": "null"
30
+ }
31
+ ]
32
+ },
33
+ "fill": {
34
+ "anyOf": [
35
+ {
36
+ "$ref": "#/$defs/SvgFill"
37
+ },
38
+ {
39
+ "type": "null"
40
+ }
41
+ ]
42
+ },
43
+ "stroke": {
44
+ "anyOf": [
45
+ {
46
+ "$ref": "#/$defs/SvgStroke"
47
+ },
48
+ {
49
+ "type": "null"
50
+ }
51
+ ]
52
+ },
53
+ "shadow": {
54
+ "anyOf": [
55
+ {
56
+ "$ref": "#/$defs/SvgShadow"
57
+ },
58
+ {
59
+ "type": "null"
60
+ }
61
+ ]
62
+ },
63
+ "transform": {
64
+ "anyOf": [
65
+ {
66
+ "$ref": "#/$defs/SvgTransform"
67
+ },
68
+ {
69
+ "type": "null"
70
+ }
71
+ ]
72
+ },
73
+ "opacity": {
74
+ "anyOf": [
75
+ {
76
+ "type": "number",
77
+ "minimum": 0,
78
+ "maximum": 1
79
+ },
80
+ {
81
+ "type": "null"
82
+ }
83
+ ]
84
+ },
85
+ "width": {
86
+ "anyOf": [
87
+ {
88
+ "type": "integer",
89
+ "minimum": 1,
90
+ "maximum": 4096
91
+ },
92
+ {
93
+ "type": "null"
94
+ }
95
+ ]
96
+ },
97
+ "height": {
98
+ "anyOf": [
99
+ {
100
+ "type": "integer",
101
+ "minimum": 1,
102
+ "maximum": 4096
103
+ },
104
+ {
105
+ "type": "null"
106
+ }
107
+ ]
18
108
  }
19
109
  },
20
110
  "additionalProperties": false,
21
111
  "required": [
22
112
  "type",
23
- "src"
24
- ]
113
+ "src",
114
+ "shape",
115
+ "fill",
116
+ "stroke",
117
+ "shadow",
118
+ "transform",
119
+ "opacity",
120
+ "width",
121
+ "height"
122
+ ],
123
+ "$defs": {
124
+ "SvgShape": {
125
+ "anyOf": [
126
+ {
127
+ "$ref": "#/$defs/SvgRectangleShape"
128
+ },
129
+ {
130
+ "$ref": "#/$defs/SvgCircleShape"
131
+ },
132
+ {
133
+ "$ref": "#/$defs/SvgEllipseShape"
134
+ },
135
+ {
136
+ "$ref": "#/$defs/SvgLineShape"
137
+ },
138
+ {
139
+ "$ref": "#/$defs/SvgPolygonShape"
140
+ },
141
+ {
142
+ "$ref": "#/$defs/SvgStarShape"
143
+ },
144
+ {
145
+ "$ref": "#/$defs/SvgArrowShape"
146
+ },
147
+ {
148
+ "$ref": "#/$defs/SvgHeartShape"
149
+ },
150
+ {
151
+ "$ref": "#/$defs/SvgCrossShape"
152
+ },
153
+ {
154
+ "$ref": "#/$defs/SvgRingShape"
155
+ },
156
+ {
157
+ "$ref": "#/$defs/SvgPathShape"
158
+ }
159
+ ]
160
+ },
161
+ "SvgRectangleShape": {
162
+ "type": "object",
163
+ "additionalProperties": false,
164
+ "properties": {
165
+ "type": {
166
+ "type": "string",
167
+ "enum": [
168
+ "rectangle"
169
+ ]
170
+ },
171
+ "width": {
172
+ "type": "number",
173
+ "minimum": 1,
174
+ "maximum": 4096
175
+ },
176
+ "height": {
177
+ "type": "number",
178
+ "minimum": 1,
179
+ "maximum": 4096
180
+ },
181
+ "cornerRadius": {
182
+ "anyOf": [
183
+ {
184
+ "type": "number",
185
+ "minimum": 0,
186
+ "maximum": 2048
187
+ },
188
+ {
189
+ "type": "null"
190
+ }
191
+ ]
192
+ }
193
+ },
194
+ "required": [
195
+ "type",
196
+ "width",
197
+ "height",
198
+ "cornerRadius"
199
+ ]
200
+ },
201
+ "SvgCircleShape": {
202
+ "type": "object",
203
+ "additionalProperties": false,
204
+ "properties": {
205
+ "type": {
206
+ "type": "string",
207
+ "enum": [
208
+ "circle"
209
+ ]
210
+ },
211
+ "radius": {
212
+ "type": "number",
213
+ "minimum": 1,
214
+ "maximum": 2048
215
+ }
216
+ },
217
+ "required": [
218
+ "type",
219
+ "radius"
220
+ ]
221
+ },
222
+ "SvgEllipseShape": {
223
+ "type": "object",
224
+ "additionalProperties": false,
225
+ "properties": {
226
+ "type": {
227
+ "type": "string",
228
+ "enum": [
229
+ "ellipse"
230
+ ]
231
+ },
232
+ "radiusX": {
233
+ "type": "number",
234
+ "minimum": 1,
235
+ "maximum": 2048
236
+ },
237
+ "radiusY": {
238
+ "type": "number",
239
+ "minimum": 1,
240
+ "maximum": 2048
241
+ }
242
+ },
243
+ "required": [
244
+ "type",
245
+ "radiusX",
246
+ "radiusY"
247
+ ]
248
+ },
249
+ "SvgLineShape": {
250
+ "type": "object",
251
+ "additionalProperties": false,
252
+ "properties": {
253
+ "type": {
254
+ "type": "string",
255
+ "enum": [
256
+ "line"
257
+ ]
258
+ },
259
+ "length": {
260
+ "type": "number",
261
+ "minimum": 1,
262
+ "maximum": 4096
263
+ },
264
+ "thickness": {
265
+ "type": "number",
266
+ "minimum": 1,
267
+ "maximum": 500
268
+ }
269
+ },
270
+ "required": [
271
+ "type",
272
+ "length",
273
+ "thickness"
274
+ ]
275
+ },
276
+ "SvgPolygonShape": {
277
+ "type": "object",
278
+ "additionalProperties": false,
279
+ "properties": {
280
+ "type": {
281
+ "type": "string",
282
+ "enum": [
283
+ "polygon"
284
+ ]
285
+ },
286
+ "sides": {
287
+ "type": "integer",
288
+ "minimum": 3,
289
+ "maximum": 100
290
+ },
291
+ "radius": {
292
+ "type": "number",
293
+ "minimum": 1,
294
+ "maximum": 2048
295
+ }
296
+ },
297
+ "required": [
298
+ "type",
299
+ "sides",
300
+ "radius"
301
+ ]
302
+ },
303
+ "SvgStarShape": {
304
+ "type": "object",
305
+ "additionalProperties": false,
306
+ "properties": {
307
+ "type": {
308
+ "type": "string",
309
+ "enum": [
310
+ "star"
311
+ ]
312
+ },
313
+ "points": {
314
+ "type": "integer",
315
+ "minimum": 3,
316
+ "maximum": 100
317
+ },
318
+ "outerRadius": {
319
+ "type": "number",
320
+ "minimum": 1,
321
+ "maximum": 2048
322
+ },
323
+ "innerRadius": {
324
+ "type": "number",
325
+ "minimum": 1,
326
+ "maximum": 2048
327
+ }
328
+ },
329
+ "required": [
330
+ "type",
331
+ "points",
332
+ "outerRadius",
333
+ "innerRadius"
334
+ ]
335
+ },
336
+ "SvgArrowShape": {
337
+ "type": "object",
338
+ "additionalProperties": false,
339
+ "properties": {
340
+ "type": {
341
+ "type": "string",
342
+ "enum": [
343
+ "arrow"
344
+ ]
345
+ },
346
+ "length": {
347
+ "type": "number",
348
+ "minimum": 1,
349
+ "maximum": 4096
350
+ },
351
+ "headWidth": {
352
+ "type": "number",
353
+ "minimum": 1,
354
+ "maximum": 1000
355
+ },
356
+ "headLength": {
357
+ "type": "number",
358
+ "minimum": 1,
359
+ "maximum": 1000
360
+ },
361
+ "shaftWidth": {
362
+ "type": "number",
363
+ "minimum": 1,
364
+ "maximum": 1000
365
+ }
366
+ },
367
+ "required": [
368
+ "type",
369
+ "length",
370
+ "headWidth",
371
+ "headLength",
372
+ "shaftWidth"
373
+ ]
374
+ },
375
+ "SvgHeartShape": {
376
+ "type": "object",
377
+ "additionalProperties": false,
378
+ "properties": {
379
+ "type": {
380
+ "type": "string",
381
+ "enum": [
382
+ "heart"
383
+ ]
384
+ },
385
+ "size": {
386
+ "type": "number",
387
+ "minimum": 1,
388
+ "maximum": 4096
389
+ }
390
+ },
391
+ "required": [
392
+ "type",
393
+ "size"
394
+ ]
395
+ },
396
+ "SvgCrossShape": {
397
+ "type": "object",
398
+ "additionalProperties": false,
399
+ "properties": {
400
+ "type": {
401
+ "type": "string",
402
+ "enum": [
403
+ "cross"
404
+ ]
405
+ },
406
+ "width": {
407
+ "type": "number",
408
+ "minimum": 1,
409
+ "maximum": 4096
410
+ },
411
+ "height": {
412
+ "type": "number",
413
+ "minimum": 1,
414
+ "maximum": 4096
415
+ },
416
+ "thickness": {
417
+ "type": "number",
418
+ "minimum": 1,
419
+ "maximum": 500
420
+ }
421
+ },
422
+ "required": [
423
+ "type",
424
+ "width",
425
+ "height",
426
+ "thickness"
427
+ ]
428
+ },
429
+ "SvgRingShape": {
430
+ "type": "object",
431
+ "additionalProperties": false,
432
+ "properties": {
433
+ "type": {
434
+ "type": "string",
435
+ "enum": [
436
+ "ring"
437
+ ]
438
+ },
439
+ "outerRadius": {
440
+ "type": "number",
441
+ "minimum": 1,
442
+ "maximum": 2048
443
+ },
444
+ "innerRadius": {
445
+ "type": "number",
446
+ "minimum": 0,
447
+ "maximum": 2048
448
+ }
449
+ },
450
+ "required": [
451
+ "type",
452
+ "outerRadius",
453
+ "innerRadius"
454
+ ]
455
+ },
456
+ "SvgPathShape": {
457
+ "type": "object",
458
+ "additionalProperties": false,
459
+ "properties": {
460
+ "type": {
461
+ "type": "string",
462
+ "enum": [
463
+ "path"
464
+ ]
465
+ },
466
+ "d": {
467
+ "type": "string"
468
+ }
469
+ },
470
+ "required": [
471
+ "type",
472
+ "d"
473
+ ]
474
+ },
475
+ "SvgFill": {
476
+ "anyOf": [
477
+ {
478
+ "$ref": "#/$defs/SvgSolidFill"
479
+ },
480
+ {
481
+ "$ref": "#/$defs/SvgLinearGradientFill"
482
+ },
483
+ {
484
+ "$ref": "#/$defs/SvgRadialGradientFill"
485
+ }
486
+ ]
487
+ },
488
+ "SvgSolidFill": {
489
+ "type": "object",
490
+ "additionalProperties": false,
491
+ "properties": {
492
+ "type": {
493
+ "type": "string",
494
+ "enum": [
495
+ "solid"
496
+ ]
497
+ },
498
+ "color": {
499
+ "type": "string"
500
+ },
501
+ "opacity": {
502
+ "anyOf": [
503
+ {
504
+ "type": "number",
505
+ "minimum": 0,
506
+ "maximum": 1
507
+ },
508
+ {
509
+ "type": "null"
510
+ }
511
+ ]
512
+ }
513
+ },
514
+ "required": [
515
+ "type",
516
+ "color",
517
+ "opacity"
518
+ ]
519
+ },
520
+ "SvgLinearGradientFill": {
521
+ "type": "object",
522
+ "additionalProperties": false,
523
+ "properties": {
524
+ "type": {
525
+ "type": "string",
526
+ "enum": [
527
+ "linear"
528
+ ]
529
+ },
530
+ "angle": {
531
+ "anyOf": [
532
+ {
533
+ "type": "number",
534
+ "minimum": 0,
535
+ "maximum": 360
536
+ },
537
+ {
538
+ "type": "null"
539
+ }
540
+ ]
541
+ },
542
+ "stops": {
543
+ "type": "array",
544
+ "items": {
545
+ "$ref": "#/$defs/SvgGradientStop"
546
+ }
547
+ },
548
+ "opacity": {
549
+ "anyOf": [
550
+ {
551
+ "type": "number",
552
+ "minimum": 0,
553
+ "maximum": 1
554
+ },
555
+ {
556
+ "type": "null"
557
+ }
558
+ ]
559
+ }
560
+ },
561
+ "required": [
562
+ "type",
563
+ "angle",
564
+ "stops",
565
+ "opacity"
566
+ ]
567
+ },
568
+ "SvgGradientStop": {
569
+ "type": "object",
570
+ "additionalProperties": false,
571
+ "properties": {
572
+ "offset": {
573
+ "type": "number",
574
+ "minimum": 0,
575
+ "maximum": 1
576
+ },
577
+ "color": {
578
+ "type": "string"
579
+ }
580
+ },
581
+ "required": [
582
+ "offset",
583
+ "color"
584
+ ]
585
+ },
586
+ "SvgRadialGradientFill": {
587
+ "type": "object",
588
+ "additionalProperties": false,
589
+ "properties": {
590
+ "type": {
591
+ "type": "string",
592
+ "enum": [
593
+ "radial"
594
+ ]
595
+ },
596
+ "stops": {
597
+ "type": "array",
598
+ "items": {
599
+ "$ref": "#/$defs/SvgGradientStop"
600
+ }
601
+ },
602
+ "opacity": {
603
+ "anyOf": [
604
+ {
605
+ "type": "number",
606
+ "minimum": 0,
607
+ "maximum": 1
608
+ },
609
+ {
610
+ "type": "null"
611
+ }
612
+ ]
613
+ }
614
+ },
615
+ "required": [
616
+ "type",
617
+ "stops",
618
+ "opacity"
619
+ ]
620
+ },
621
+ "SvgStroke": {
622
+ "type": "object",
623
+ "additionalProperties": false,
624
+ "properties": {
625
+ "color": {
626
+ "anyOf": [
627
+ {
628
+ "type": "string"
629
+ },
630
+ {
631
+ "type": "null"
632
+ }
633
+ ]
634
+ },
635
+ "width": {
636
+ "anyOf": [
637
+ {
638
+ "type": "number",
639
+ "minimum": 0,
640
+ "maximum": 100
641
+ },
642
+ {
643
+ "type": "null"
644
+ }
645
+ ]
646
+ },
647
+ "opacity": {
648
+ "anyOf": [
649
+ {
650
+ "type": "number",
651
+ "minimum": 0,
652
+ "maximum": 1
653
+ },
654
+ {
655
+ "type": "null"
656
+ }
657
+ ]
658
+ },
659
+ "lineCap": {
660
+ "anyOf": [
661
+ {
662
+ "type": "string",
663
+ "enum": [
664
+ "butt",
665
+ "round",
666
+ "square"
667
+ ]
668
+ },
669
+ {
670
+ "type": "null"
671
+ }
672
+ ]
673
+ },
674
+ "lineJoin": {
675
+ "anyOf": [
676
+ {
677
+ "type": "string",
678
+ "enum": [
679
+ "miter",
680
+ "round",
681
+ "bevel"
682
+ ]
683
+ },
684
+ {
685
+ "type": "null"
686
+ }
687
+ ]
688
+ },
689
+ "dashArray": {
690
+ "anyOf": [
691
+ {
692
+ "type": "array",
693
+ "items": {
694
+ "type": "number",
695
+ "minimum": 0
696
+ }
697
+ },
698
+ {
699
+ "type": "null"
700
+ }
701
+ ]
702
+ },
703
+ "dashOffset": {
704
+ "anyOf": [
705
+ {
706
+ "type": "number"
707
+ },
708
+ {
709
+ "type": "null"
710
+ }
711
+ ]
712
+ }
713
+ },
714
+ "required": [
715
+ "color",
716
+ "width",
717
+ "opacity",
718
+ "lineCap",
719
+ "lineJoin",
720
+ "dashArray",
721
+ "dashOffset"
722
+ ]
723
+ },
724
+ "SvgShadow": {
725
+ "type": "object",
726
+ "additionalProperties": false,
727
+ "properties": {
728
+ "offsetX": {
729
+ "anyOf": [
730
+ {
731
+ "type": "number"
732
+ },
733
+ {
734
+ "type": "null"
735
+ }
736
+ ]
737
+ },
738
+ "offsetY": {
739
+ "anyOf": [
740
+ {
741
+ "type": "number"
742
+ },
743
+ {
744
+ "type": "null"
745
+ }
746
+ ]
747
+ },
748
+ "blur": {
749
+ "anyOf": [
750
+ {
751
+ "type": "number",
752
+ "minimum": 0
753
+ },
754
+ {
755
+ "type": "null"
756
+ }
757
+ ]
758
+ },
759
+ "color": {
760
+ "anyOf": [
761
+ {
762
+ "type": "string",
763
+ "enum": [
764
+ "#000000"
765
+ ]
766
+ },
767
+ {
768
+ "type": "null"
769
+ }
770
+ ]
771
+ },
772
+ "opacity": {
773
+ "anyOf": [
774
+ {
775
+ "type": "number",
776
+ "minimum": 0,
777
+ "maximum": 1
778
+ },
779
+ {
780
+ "type": "null"
781
+ }
782
+ ]
783
+ }
784
+ },
785
+ "required": [
786
+ "offsetX",
787
+ "offsetY",
788
+ "blur",
789
+ "color",
790
+ "opacity"
791
+ ]
792
+ },
793
+ "SvgTransform": {
794
+ "type": "object",
795
+ "additionalProperties": false,
796
+ "properties": {
797
+ "x": {
798
+ "anyOf": [
799
+ {
800
+ "type": "number"
801
+ },
802
+ {
803
+ "type": "null"
804
+ }
805
+ ]
806
+ },
807
+ "y": {
808
+ "anyOf": [
809
+ {
810
+ "type": "number"
811
+ },
812
+ {
813
+ "type": "null"
814
+ }
815
+ ]
816
+ },
817
+ "rotation": {
818
+ "anyOf": [
819
+ {
820
+ "type": "number",
821
+ "minimum": -360,
822
+ "maximum": 360
823
+ },
824
+ {
825
+ "type": "null"
826
+ }
827
+ ]
828
+ },
829
+ "scale": {
830
+ "anyOf": [
831
+ {
832
+ "type": "number",
833
+ "minimum": 0.01,
834
+ "maximum": 100
835
+ },
836
+ {
837
+ "type": "null"
838
+ }
839
+ ]
840
+ },
841
+ "originX": {
842
+ "anyOf": [
843
+ {
844
+ "type": "number",
845
+ "minimum": 0,
846
+ "maximum": 1
847
+ },
848
+ {
849
+ "type": "null"
850
+ }
851
+ ]
852
+ },
853
+ "originY": {
854
+ "anyOf": [
855
+ {
856
+ "type": "number",
857
+ "minimum": 0,
858
+ "maximum": 1
859
+ },
860
+ {
861
+ "type": "null"
862
+ }
863
+ ]
864
+ }
865
+ },
866
+ "required": [
867
+ "x",
868
+ "y",
869
+ "rotation",
870
+ "scale",
871
+ "originX",
872
+ "originY"
873
+ ]
874
+ }
875
+ }
25
876
  }
26
877
  }