@shotstack/schemas 1.6.0 → 1.7.1

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 (95) hide show
  1. package/README.md +89 -89
  2. package/dist/json-schema/asset.json +3153 -0
  3. package/dist/json-schema/audio-asset.json +210 -0
  4. package/dist/json-schema/blueprint.json +380 -0
  5. package/dist/json-schema/caption-asset.json +285 -0
  6. package/dist/json-schema/caption-background.json +61 -0
  7. package/dist/json-schema/caption-detailer.json +275 -0
  8. package/dist/json-schema/caption-font.json +97 -0
  9. package/dist/json-schema/caption-margin.json +49 -0
  10. package/dist/json-schema/chroma-key.json +46 -0
  11. package/dist/json-schema/clip.json +3653 -0
  12. package/dist/json-schema/crop.json +69 -0
  13. package/dist/json-schema/destinations.json +495 -0
  14. package/dist/json-schema/edit.json +4618 -0
  15. package/dist/json-schema/flip-transformation.json +37 -0
  16. package/dist/json-schema/font.json +18 -0
  17. package/dist/json-schema/google-cloud-storage-destination-options.json +42 -0
  18. package/dist/json-schema/google-cloud-storage-destination.json +73 -0
  19. package/dist/json-schema/google-drive-destination-options.json +30 -0
  20. package/dist/json-schema/google-drive-destination.json +54 -0
  21. package/dist/json-schema/image-asset.json +104 -0
  22. package/dist/json-schema/image-to-video-asset.json +151 -0
  23. package/dist/json-schema/index.cjs +6 -0
  24. package/dist/json-schema/index.d.ts +11 -0
  25. package/dist/json-schema/index.js +8 -0
  26. package/dist/json-schema/luma-asset.json +38 -0
  27. package/dist/json-schema/merge-field.json +23 -0
  28. package/dist/json-schema/offset.json +175 -0
  29. package/dist/json-schema/output.json +771 -0
  30. package/dist/json-schema/poster.json +18 -0
  31. package/dist/json-schema/range.json +39 -0
  32. package/dist/json-schema/rich-caption-active-font.json +54 -0
  33. package/dist/json-schema/rich-caption-active.json +154 -0
  34. package/dist/json-schema/rich-caption-asset.json +1098 -0
  35. package/dist/json-schema/rich-caption-word-animation.json +60 -0
  36. package/dist/json-schema/rich-text-alignment.json +47 -0
  37. package/dist/json-schema/rich-text-animation.json +74 -0
  38. package/dist/json-schema/rich-text-asset.json +737 -0
  39. package/dist/json-schema/rich-text-background.json +52 -0
  40. package/dist/json-schema/rich-text-content.json +370 -0
  41. package/dist/json-schema/rich-text-effects.json +400 -0
  42. package/dist/json-schema/rich-text-font.json +157 -0
  43. package/dist/json-schema/rich-text-gradient.json +68 -0
  44. package/dist/json-schema/rich-text-shadow.json +79 -0
  45. package/dist/json-schema/rich-text-stroke.json +55 -0
  46. package/dist/json-schema/rich-text-style.json +165 -0
  47. package/dist/json-schema/rotate-transformation.json +153 -0
  48. package/dist/json-schema/s3destination-options.json +59 -0
  49. package/dist/json-schema/s3destination.json +90 -0
  50. package/dist/json-schema/schemas.json +5061 -0
  51. package/dist/json-schema/shape-asset.json +225 -0
  52. package/dist/json-schema/shotstack-destination.json +33 -0
  53. package/dist/json-schema/size.json +41 -0
  54. package/dist/json-schema/skew-transformation.json +175 -0
  55. package/dist/json-schema/soundtrack.json +47 -0
  56. package/dist/json-schema/svg-arrow-shape.json +49 -0
  57. package/dist/json-schema/svg-asset.json +877 -0
  58. package/dist/json-schema/svg-circle-shape.json +28 -0
  59. package/dist/json-schema/svg-cross-shape.json +42 -0
  60. package/dist/json-schema/svg-ellipse-shape.json +35 -0
  61. package/dist/json-schema/svg-fill.json +169 -0
  62. package/dist/json-schema/svg-gradient-stop.json +25 -0
  63. package/dist/json-schema/svg-heart-shape.json +28 -0
  64. package/dist/json-schema/svg-line-shape.json +35 -0
  65. package/dist/json-schema/svg-linear-gradient-fill.json +80 -0
  66. package/dist/json-schema/svg-path-shape.json +26 -0
  67. package/dist/json-schema/svg-polygon-shape.json +35 -0
  68. package/dist/json-schema/svg-radial-gradient-fill.json +66 -0
  69. package/dist/json-schema/svg-rectangle-shape.json +49 -0
  70. package/dist/json-schema/svg-ring-shape.json +35 -0
  71. package/dist/json-schema/svg-shadow.json +79 -0
  72. package/dist/json-schema/svg-shape.json +404 -0
  73. package/dist/json-schema/svg-solid-fill.json +40 -0
  74. package/dist/json-schema/svg-star-shape.json +42 -0
  75. package/dist/json-schema/svg-stroke.json +115 -0
  76. package/dist/json-schema/svg-transform.json +93 -0
  77. package/dist/json-schema/template.json +541 -0
  78. package/dist/json-schema/text-to-image-asset.json +128 -0
  79. package/dist/json-schema/text-to-speech-asset.json +239 -0
  80. package/dist/json-schema/thumbnail.json +25 -0
  81. package/dist/json-schema/timeline.json +3781 -0
  82. package/dist/json-schema/track.json +3668 -0
  83. package/dist/json-schema/transformation.json +281 -0
  84. package/dist/json-schema/transition.json +85 -0
  85. package/dist/json-schema/tween.json +120 -0
  86. package/dist/json-schema/video-asset.json +351 -0
  87. package/dist/json-schema/vimeo-destination-options.json +149 -0
  88. package/dist/json-schema/vimeo-destination-privacy-options.json +90 -0
  89. package/dist/json-schema/vimeo-destination.json +178 -0
  90. package/dist/json-schema/word-timing.json +44 -0
  91. package/dist/zod/zod.gen.cjs +1080 -921
  92. package/dist/zod/zod.gen.d.ts +139 -139
  93. package/dist/zod/zod.gen.js +1081 -922
  94. package/dist/zod/zod.gen.ts +1583 -1648
  95. package/package.json +79 -73
@@ -0,0 +1,281 @@
1
+ {
2
+ "name": "Transformation",
3
+ "strict": true,
4
+ "schema": {
5
+ "description": "Apply one or more transformations to a clip. Transformations alter the visual properties of a clip and can be combined t...",
6
+ "type": "object",
7
+ "additionalProperties": false,
8
+ "properties": {
9
+ "rotate": {
10
+ "anyOf": [
11
+ {
12
+ "$ref": "#/$defs/RotateTransformation"
13
+ },
14
+ {
15
+ "type": "null"
16
+ }
17
+ ]
18
+ },
19
+ "skew": {
20
+ "anyOf": [
21
+ {
22
+ "$ref": "#/$defs/SkewTransformation"
23
+ },
24
+ {
25
+ "type": "null"
26
+ }
27
+ ]
28
+ },
29
+ "flip": {
30
+ "anyOf": [
31
+ {
32
+ "$ref": "#/$defs/FlipTransformation"
33
+ },
34
+ {
35
+ "type": "null"
36
+ }
37
+ ]
38
+ }
39
+ },
40
+ "required": [
41
+ "rotate",
42
+ "skew",
43
+ "flip"
44
+ ],
45
+ "$defs": {
46
+ "RotateTransformation": {
47
+ "description": "Rotate a clip by the specified angle in degrees. Rotation origin is set based on...",
48
+ "type": "object",
49
+ "additionalProperties": false,
50
+ "properties": {
51
+ "angle": {
52
+ "description": "Rotate a clip by the specified angle in degrees. Use a number or an array of [Tween](./#tocs_tween) objects ...",
53
+ "anyOf": [
54
+ {
55
+ "type": "number",
56
+ "description": "The angle to rotate the clip. Can be 0 to 360, or 0 to -360. Using a positive number rotates the clip clockwise, nega...",
57
+ "minimum": -360,
58
+ "maximum": 360
59
+ },
60
+ {
61
+ "type": "array",
62
+ "description": "An array of [Tween](./#tocs_tween) objects used to create a custom animation. Animate the rotat...",
63
+ "items": {
64
+ "$ref": "#/$defs/Tween"
65
+ }
66
+ },
67
+ {
68
+ "type": "null"
69
+ }
70
+ ]
71
+ }
72
+ },
73
+ "required": [
74
+ "angle"
75
+ ]
76
+ },
77
+ "Tween": {
78
+ "description": "Use a Tween to [animate properties over time](/docs/guide/architecting-an-application/animations/). The following properties are currently supported and can be animated:\n <ul>\n <li>Opacity - animate the transparency of a clip.</li>\n <li>Offset - animate the x and y position of a clip.</li>\n <li>Rotation - animate the rotation of a clip.</li>\n <li>Skew - animate the horizontal and v...",
79
+ "properties": {
80
+ "from": {
81
+ "anyOf": [
82
+ {
83
+ "type": "string",
84
+ "description": "The initial property value at the start of ..."
85
+ },
86
+ {
87
+ "type": "null"
88
+ }
89
+ ]
90
+ },
91
+ "to": {
92
+ "anyOf": [
93
+ {
94
+ "type": "string",
95
+ "description": "The final property value at the end of t..."
96
+ },
97
+ {
98
+ "type": "null"
99
+ }
100
+ ]
101
+ },
102
+ "start": {
103
+ "anyOf": [
104
+ {
105
+ "type": "number",
106
+ "description": "The time in seconds when the animation starts, relative to the clip..."
107
+ },
108
+ {
109
+ "type": "null"
110
+ }
111
+ ]
112
+ },
113
+ "length": {
114
+ "anyOf": [
115
+ {
116
+ "type": "number",
117
+ "description": "The duration of the animation ..."
118
+ },
119
+ {
120
+ "type": "null"
121
+ }
122
+ ]
123
+ },
124
+ "interpolation": {
125
+ "anyOf": [
126
+ {
127
+ "type": "string",
128
+ "description": "The interpolation method to use for the animation. Available options are: <ul>\n <li>`linear` - a linear interpolation between the start and end values.</li>\n <li>`bezier` - a bezier curve interpolation between the start and end values.</li>\n <li>`constant` - an interpolation where the property instantly jumps...",
129
+ "enum": [
130
+ "linear",
131
+ "bezier",
132
+ "constant"
133
+ ]
134
+ },
135
+ {
136
+ "type": "null"
137
+ }
138
+ ]
139
+ },
140
+ "easing": {
141
+ "anyOf": [
142
+ {
143
+ "type": "string",
144
+ "description": "The easing function to use for the animation. Easing controls the rate of change of the animated value, allowing for more natural motion by speeding up or slowing down the animation at different points. O...",
145
+ "enum": [
146
+ "ease",
147
+ "easeIn",
148
+ "easeOut",
149
+ "easeInOut",
150
+ "easeInQuad",
151
+ "easeInCubic",
152
+ "easeInQuart",
153
+ "easeInQuint",
154
+ "easeInSine",
155
+ "easeInExpo",
156
+ "easeInCirc",
157
+ "easeInBack",
158
+ "easeOutQuad",
159
+ "easeOutCubic",
160
+ "easeOutQuart",
161
+ "easeOutQuint",
162
+ "easeOutSine",
163
+ "easeOutExpo",
164
+ "easeOutCirc",
165
+ "easeOutBack",
166
+ "easeInOutQuad",
167
+ "easeInOutCubic",
168
+ "easeInOutQuart",
169
+ "easeInOutQuint",
170
+ "easeInOutSine",
171
+ "easeInOutExpo",
172
+ "easeInOutCirc",
173
+ "easeInOutBack"
174
+ ]
175
+ },
176
+ {
177
+ "type": "null"
178
+ }
179
+ ]
180
+ }
181
+ },
182
+ "additionalProperties": false,
183
+ "type": "object",
184
+ "required": [
185
+ "from",
186
+ "to",
187
+ "start",
188
+ "length",
189
+ "interpolation",
190
+ "easing"
191
+ ]
192
+ },
193
+ "SkewTransformation": {
194
+ "description": "Skew a clip so its edges are sheared at an angle. Use values between -100 and 100. Values over 3 or under -3 w...",
195
+ "type": "object",
196
+ "additionalProperties": false,
197
+ "properties": {
198
+ "x": {
199
+ "description": "Skew the clip along it'...",
200
+ "anyOf": [
201
+ {
202
+ "type": "number",
203
+ "description": "Range varies from -100 to 100. Positive numbers skew the asset right, negative left. The distance moved is relative to the width of the viewport - i.e. an X skew of 0.5 will skew ...",
204
+ "minimum": -100,
205
+ "maximum": 100
206
+ },
207
+ {
208
+ "type": "array",
209
+ "description": "An array of [Tween](./#tocs_tween) objects used to create a custom animation. Animate the X s...",
210
+ "items": {
211
+ "$ref": "#/$defs/Tween"
212
+ }
213
+ },
214
+ {
215
+ "type": "null"
216
+ }
217
+ ]
218
+ },
219
+ "y": {
220
+ "description": "Skew the clip along it'...",
221
+ "anyOf": [
222
+ {
223
+ "type": "number",
224
+ "description": "Range varies from -100 to 100. Positive numbers skew the asset up, negative down. The distance moved is relative to the height of the viewport - i.e. an Y skew of 0.5 wil...",
225
+ "minimum": -100,
226
+ "maximum": 100
227
+ },
228
+ {
229
+ "type": "array",
230
+ "description": "An array of [Tween](./#tocs_tween) objects used to create a custom animation. Animate the Y s...",
231
+ "items": {
232
+ "$ref": "#/$defs/Tween"
233
+ }
234
+ },
235
+ {
236
+ "type": "null"
237
+ }
238
+ ]
239
+ }
240
+ },
241
+ "required": [
242
+ "x",
243
+ "y"
244
+ ]
245
+ },
246
+ "FlipTransformation": {
247
+ "description": "Flip a clip vertically or horizontally. Acts as a mirror effect of the clip alo...",
248
+ "type": "object",
249
+ "additionalProperties": false,
250
+ "properties": {
251
+ "horizontal": {
252
+ "anyOf": [
253
+ {
254
+ "type": "boolean",
255
+ "description": "Flip a clip horiz..."
256
+ },
257
+ {
258
+ "type": "null"
259
+ }
260
+ ]
261
+ },
262
+ "vertical": {
263
+ "anyOf": [
264
+ {
265
+ "type": "boolean",
266
+ "description": "Flip a clip ver..."
267
+ },
268
+ {
269
+ "type": "null"
270
+ }
271
+ ]
272
+ }
273
+ },
274
+ "required": [
275
+ "horizontal",
276
+ "vertical"
277
+ ]
278
+ }
279
+ }
280
+ }
281
+ }
@@ -0,0 +1,85 @@
1
+ {
2
+ "name": "Transition",
3
+ "strict": true,
4
+ "schema": {
5
+ "description": "In and out transitions for a clip - i.e. fade in and fade out",
6
+ "properties": {
7
+ "in": {
8
+ "anyOf": [
9
+ {
10
+ "type": "string",
11
+ "description": "The transition in. Available transitions are:\n <ul>\n <li>`fade` - fade in</li>\n <li>`reveal` - reveal from left to right</li>\n <li>`wipeLeft` - fade across screen to the left</li>\n <li>`wipeRight` - fade across screen to the right</li>\n <li>`slideLeft` - move slightly left and fade in</li>\n <li>`slideRight` - move slightly right and fade in</li>\n <li>`slideUp` - move slightly up and fade in</li>\n <li>`slideDown` - move slightly down and fade in</li>\n <li>`carouselLeft` - slide in from right to left</li>\n <li>`carouselRight` - slide in from left to right</li>\n <li>`carouselUp` - slide in from bottom to top</li>\n <li>`carouselDown` - slide in from top to bottom</li>\n <li>`shuffleTopRight` - rotate in from top right</li>\n <li>`shuffleRightTop` - rotate in from right top</li>\n <li>`shuffleRightBottom` - rotate in from right bottom</li>\n <li>`shuffleBottomRight` - rotate in from bottom right</li>\n <li>`shuffleBottomLeft` - rotate in from bottom left</li>\n <li>`shuffleLeftBottom` - rotate in from left bottom</li>\n <li>`shuffleLeftTop` - rotate in from left top</li>\n <li>`shuffleTopLeft` - rotate in from top left</li>\n <li>`zoom` - fast zoom in</li>\n </ul>\nThe transition speed can also be controlled by appending `Fast` or `Slow` to the transition, e.g. `fadeFast` or `CarouselLeftSlow`.",
12
+ "enum": [
13
+ "none",
14
+ "fade",
15
+ "reveal",
16
+ "wipeLeft",
17
+ "wipeRight",
18
+ "slideLeft",
19
+ "slideRight",
20
+ "slideUp",
21
+ "slideDown",
22
+ "carouselLeft",
23
+ "carouselRight",
24
+ "carouselUp",
25
+ "carouselDown",
26
+ "shuffleTopRight",
27
+ "shuffleRightTop",
28
+ "shuffleRightBottom",
29
+ "shuffleBottomRight",
30
+ "shuffleBottomLeft",
31
+ "shuffleLeftBottom",
32
+ "shuffleLeftTop",
33
+ "shuffleTopLeft",
34
+ "zoom"
35
+ ]
36
+ },
37
+ {
38
+ "type": "null"
39
+ }
40
+ ]
41
+ },
42
+ "out": {
43
+ "anyOf": [
44
+ {
45
+ "type": "string",
46
+ "description": "The transition out. Available transitions are:\n <ul>\n <li>`fade` - fade out</li>\n <li>`reveal` - reveal from right to left</li>\n <li>`wipeLeft` - fade across screen to the left</li>\n <li>`wipeRight` - fade across screen to the right</li>\n <li>`slideLeft` - move slightly left and fade out</li>\n <li>`slideRight` - move slightly right and fade out</li>\n <li>`slideUp` - move slightly up and fade out</li>\n <li>`slideDown` - move slightly down and fade out</li>\n <li>`carouselLeft` - slide out from right to left</li>\n <li>`carouselRight` - slide out from left to right</li>\n <li>`carouselUp` - slide out from bottom to top</li>\n <li>`carouselDown` - slide out from top to bottom</li>\n <li>`shuffleTopRight` - rotate out from top right</li>\n <li>`shuffleRightTop` - rotate out from right top</li>\n <li>`shuffleRightBottom` - rotate out from right bottom</li>\n <li>`shuffleBottomRight` - rotate out from bottom right</li>\n <li>`shuffleBottomLeft` - rotate out from bottom left</li>\n <li>`shuffleLeftBottom` - rotate out from left bottom</li>\n <li>`shuffleLeftTop` - rotate out from left top</li>\n <li>`shuffleTopLeft` - rotate out from top left</li>\n <li>`zoom` - fast zoom out</li>\n </ul>\nThe transition speed can also be controlled by appending `Fast` or `Slow` to the transition, e.g. `fadeFast` or `CarouselLeftSlow`.",
47
+ "enum": [
48
+ "none",
49
+ "fade",
50
+ "reveal",
51
+ "wipeLeft",
52
+ "wipeRight",
53
+ "slideLeft",
54
+ "slideRight",
55
+ "slideUp",
56
+ "slideDown",
57
+ "carouselLeft",
58
+ "carouselRight",
59
+ "carouselUp",
60
+ "carouselDown",
61
+ "shuffleTopRight",
62
+ "shuffleRightTop",
63
+ "shuffleRightBottom",
64
+ "shuffleBottomRight",
65
+ "shuffleBottomLeft",
66
+ "shuffleLeftBottom",
67
+ "shuffleLeftTop",
68
+ "shuffleTopLeft",
69
+ "zoom"
70
+ ]
71
+ },
72
+ {
73
+ "type": "null"
74
+ }
75
+ ]
76
+ }
77
+ },
78
+ "additionalProperties": false,
79
+ "type": "object",
80
+ "required": [
81
+ "in",
82
+ "out"
83
+ ]
84
+ }
85
+ }
@@ -0,0 +1,120 @@
1
+ {
2
+ "name": "Tween",
3
+ "strict": true,
4
+ "schema": {
5
+ "description": "Use a Tween to [animate properties over time](/docs/guide/architecting-an-application/animations/). The following properties are currently supported and can be animated:\n <ul>\n <li>Opacity - animate the transparency of a clip.</li>\n <li>Offset - animate the x and y position of a clip.</li>\n <li>Rotation - animate the rotation of a clip.</li>\n <li>Skew - animate the horizontal and vertical shearing effect.</li>\n <li>Volume - animate the audio volume of a clip.</li>\n </ul>",
6
+ "properties": {
7
+ "from": {
8
+ "anyOf": [
9
+ {
10
+ "type": "string",
11
+ "description": "The initial property value at the start of the animation."
12
+ },
13
+ {
14
+ "type": "null"
15
+ }
16
+ ]
17
+ },
18
+ "to": {
19
+ "anyOf": [
20
+ {
21
+ "type": "string",
22
+ "description": "The final property value at the end of the animation."
23
+ },
24
+ {
25
+ "type": "null"
26
+ }
27
+ ]
28
+ },
29
+ "start": {
30
+ "anyOf": [
31
+ {
32
+ "type": "number",
33
+ "description": "The time in seconds when the animation starts, relative to the clip, not the timeline."
34
+ },
35
+ {
36
+ "type": "null"
37
+ }
38
+ ]
39
+ },
40
+ "length": {
41
+ "anyOf": [
42
+ {
43
+ "type": "number",
44
+ "description": "The duration of the animation in seconds."
45
+ },
46
+ {
47
+ "type": "null"
48
+ }
49
+ ]
50
+ },
51
+ "interpolation": {
52
+ "anyOf": [
53
+ {
54
+ "type": "string",
55
+ "description": "The interpolation method to use for the animation. Available options are: <ul>\n <li>`linear` - a linear interpolation between the start and end values.</li>\n <li>`bezier` - a bezier curve interpolation between the start and end values.</li>\n <li>`constant` - an interpolation where the property instantly jumps from the start to the end value, without any gradual transition.</li>\n</ul>",
56
+ "enum": [
57
+ "linear",
58
+ "bezier",
59
+ "constant"
60
+ ]
61
+ },
62
+ {
63
+ "type": "null"
64
+ }
65
+ ]
66
+ },
67
+ "easing": {
68
+ "anyOf": [
69
+ {
70
+ "type": "string",
71
+ "description": "The easing function to use for the animation. Easing controls the rate of change of the animated value, allowing for more natural motion by speeding up or slowing down the animation at different points. Only applicable if interpolation is set to `bezier`.",
72
+ "enum": [
73
+ "ease",
74
+ "easeIn",
75
+ "easeOut",
76
+ "easeInOut",
77
+ "easeInQuad",
78
+ "easeInCubic",
79
+ "easeInQuart",
80
+ "easeInQuint",
81
+ "easeInSine",
82
+ "easeInExpo",
83
+ "easeInCirc",
84
+ "easeInBack",
85
+ "easeOutQuad",
86
+ "easeOutCubic",
87
+ "easeOutQuart",
88
+ "easeOutQuint",
89
+ "easeOutSine",
90
+ "easeOutExpo",
91
+ "easeOutCirc",
92
+ "easeOutBack",
93
+ "easeInOutQuad",
94
+ "easeInOutCubic",
95
+ "easeInOutQuart",
96
+ "easeInOutQuint",
97
+ "easeInOutSine",
98
+ "easeInOutExpo",
99
+ "easeInOutCirc",
100
+ "easeInOutBack"
101
+ ]
102
+ },
103
+ {
104
+ "type": "null"
105
+ }
106
+ ]
107
+ }
108
+ },
109
+ "additionalProperties": false,
110
+ "type": "object",
111
+ "required": [
112
+ "from",
113
+ "to",
114
+ "start",
115
+ "length",
116
+ "interpolation",
117
+ "easing"
118
+ ]
119
+ }
120
+ }