@shotstack/schemas 1.1.2 → 1.3.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/api.bundled.json +241 -7
- package/dist/schema.d.ts +170 -10
- package/dist/zod/zod.gen.cjs +80 -12
- package/dist/zod/zod.gen.d.ts +1409 -8
- package/dist/zod/zod.gen.js +75 -7
- package/dist/zod/zod.gen.ts +91 -7
- package/package.json +1 -1
package/dist/zod/zod.gen.js
CHANGED
|
@@ -715,6 +715,23 @@ export const shotstackDestinationShotstackDestinationSchema = z.object({
|
|
|
715
715
|
exclude: z.optional(z.boolean()),
|
|
716
716
|
});
|
|
717
717
|
export const shotstackDestinationSchema = shotstackDestinationShotstackDestinationSchema;
|
|
718
|
+
/**
|
|
719
|
+
* Pass additional options to control how TikTok publishes video.
|
|
720
|
+
*/
|
|
721
|
+
export const tiktokDestinationOptionsTiktokDestinationOptionsSchema = z.object({
|
|
722
|
+
title: z.optional(z.string().max(150)),
|
|
723
|
+
privacyLevel: z.optional(z.enum(["public", "friends", "private"])),
|
|
724
|
+
disableDuet: z.optional(z.boolean()).default(false),
|
|
725
|
+
disableStitch: z.optional(z.boolean()).default(false),
|
|
726
|
+
disableComment: z.optional(z.boolean()).default(false),
|
|
727
|
+
});
|
|
728
|
+
/**
|
|
729
|
+
* Send videos to TikTok. TikTok credentials are required and added via the [dashboard](https://dashboard.shotstack.io/integrations/tiktok), not in the request.
|
|
730
|
+
*/
|
|
731
|
+
export const tiktokDestinationTiktokDestinationSchema = z.object({
|
|
732
|
+
provider: z.string().default("tiktok"),
|
|
733
|
+
options: z.optional(tiktokDestinationOptionsTiktokDestinationOptionsSchema),
|
|
734
|
+
});
|
|
718
735
|
/**
|
|
719
736
|
* Options to control the visibility of videos and privacy features.
|
|
720
737
|
*/
|
|
@@ -731,6 +748,7 @@ export const vimeoDestinationOptionsVimeoDestinationOptionsSchema = z.object({
|
|
|
731
748
|
name: z.optional(z.string()),
|
|
732
749
|
description: z.optional(z.string()),
|
|
733
750
|
privacy: z.optional(vimeoDestinationPrivacyOptionsVimeoDestinationPrivacyOptionsSchema),
|
|
751
|
+
folderUri: z.optional(z.string()),
|
|
734
752
|
});
|
|
735
753
|
export const vimeoDestinationOptionsSchema = vimeoDestinationOptionsVimeoDestinationOptionsSchema;
|
|
736
754
|
/**
|
|
@@ -777,6 +795,11 @@ export const destinationsDestinationsSchema = z.union([
|
|
|
777
795
|
destinations: z.optional(z.literal("vimeoDestination_VimeoDestination")),
|
|
778
796
|
})
|
|
779
797
|
.and(vimeoDestinationVimeoDestinationSchema),
|
|
798
|
+
z
|
|
799
|
+
.object({
|
|
800
|
+
destinations: z.optional(z.literal("tiktokDestination_TiktokDestination")),
|
|
801
|
+
})
|
|
802
|
+
.and(tiktokDestinationTiktokDestinationSchema),
|
|
780
803
|
]);
|
|
781
804
|
export const destinationsSchema = destinationsDestinationsSchema;
|
|
782
805
|
/**
|
|
@@ -1135,6 +1158,15 @@ export const richtextpropertiesRichTextBackgroundSchema = z.object({
|
|
|
1135
1158
|
borderRadius: z.optional(z.number().gte(0)).default(0),
|
|
1136
1159
|
});
|
|
1137
1160
|
export const richTextBackgroundSchema = richtextpropertiesRichTextBackgroundSchema;
|
|
1161
|
+
/**
|
|
1162
|
+
* Border styling properties for the text bounding box.
|
|
1163
|
+
*/
|
|
1164
|
+
export const richtextpropertiesRichTextBorderSchema = z.object({
|
|
1165
|
+
width: z.optional(z.number().gte(0)).default(0),
|
|
1166
|
+
color: z.optional(z.string().regex(/^#[A-Fa-f0-9]{6}$/)).default("#000000"),
|
|
1167
|
+
opacity: z.optional(z.number().gte(0).lte(1)).default(1),
|
|
1168
|
+
radius: z.optional(z.number().gte(0)).default(0),
|
|
1169
|
+
});
|
|
1138
1170
|
/**
|
|
1139
1171
|
* Font properties for rich text.
|
|
1140
1172
|
*/
|
|
@@ -1161,6 +1193,15 @@ export const richtextpropertiesRichTextGradientSchema = z.object({
|
|
|
1161
1193
|
.min(2),
|
|
1162
1194
|
});
|
|
1163
1195
|
export const richTextGradientSchema = richtextpropertiesRichTextGradientSchema;
|
|
1196
|
+
/**
|
|
1197
|
+
* Padding properties for individual sides of the text bounding box.
|
|
1198
|
+
*/
|
|
1199
|
+
export const richtextpropertiesRichTextPaddingSchema = z.object({
|
|
1200
|
+
top: z.optional(z.number().gte(0)).default(0),
|
|
1201
|
+
right: z.optional(z.number().gte(0)).default(0),
|
|
1202
|
+
bottom: z.optional(z.number().gte(0)).default(0),
|
|
1203
|
+
left: z.optional(z.number().gte(0)).default(0),
|
|
1204
|
+
});
|
|
1164
1205
|
/**
|
|
1165
1206
|
* Text shadow properties.
|
|
1166
1207
|
*/
|
|
@@ -1207,6 +1248,8 @@ export const richtextassetRichTextAssetSchema = z.object({
|
|
|
1207
1248
|
stroke: z.optional(richtextpropertiesRichTextStrokeSchema),
|
|
1208
1249
|
shadow: z.optional(richtextpropertiesRichTextShadowSchema),
|
|
1209
1250
|
background: z.optional(richtextpropertiesRichTextBackgroundSchema),
|
|
1251
|
+
border: z.optional(richtextpropertiesRichTextBorderSchema),
|
|
1252
|
+
padding: z.optional(z.union([z.number().gte(0), richtextpropertiesRichTextPaddingSchema])),
|
|
1210
1253
|
align: z.optional(richtextpropertiesRichTextAlignmentSchema),
|
|
1211
1254
|
animation: z.optional(richtextpropertiesRichTextAnimationSchema),
|
|
1212
1255
|
});
|
|
@@ -1445,11 +1488,21 @@ export const textpropertiesTextAlignmentSchema = z.object({
|
|
|
1445
1488
|
vertical: z.optional(z.enum(["top", "center", "bottom"])),
|
|
1446
1489
|
});
|
|
1447
1490
|
export const textAlignmentSchema = textpropertiesTextAlignmentSchema;
|
|
1491
|
+
/**
|
|
1492
|
+
* Animation properties for text entrance effects.
|
|
1493
|
+
*/
|
|
1494
|
+
export const textpropertiesTextAnimationSchema = z.object({
|
|
1495
|
+
preset: z.enum(["typewriter"]),
|
|
1496
|
+
duration: z.optional(z.number().gte(0.1).lte(30)),
|
|
1497
|
+
});
|
|
1448
1498
|
/**
|
|
1449
1499
|
* Displays a background box behind the text.
|
|
1450
1500
|
*/
|
|
1451
1501
|
export const textpropertiesTextBackgroundSchema = z.object({
|
|
1452
|
-
color: z.optional(z.string()),
|
|
1502
|
+
color: z.optional(z.string().regex(/^#[A-Fa-f0-9]{6}$/)),
|
|
1503
|
+
opacity: z.optional(z.number().gte(0).lte(1)),
|
|
1504
|
+
padding: z.optional(z.number().gte(0).lte(100)),
|
|
1505
|
+
borderRadius: z.optional(z.number().gte(0)),
|
|
1453
1506
|
});
|
|
1454
1507
|
export const textBackgroundSchema = textpropertiesTextBackgroundSchema;
|
|
1455
1508
|
/**
|
|
@@ -1464,6 +1517,13 @@ export const textpropertiesTextFontSchema = z.object({
|
|
|
1464
1517
|
lineHeight: z.optional(z.number()),
|
|
1465
1518
|
});
|
|
1466
1519
|
export const textFontSchema = textpropertiesTextFontSchema;
|
|
1520
|
+
/**
|
|
1521
|
+
* Text stroke (outline) properties.
|
|
1522
|
+
*/
|
|
1523
|
+
export const textpropertiesTextStrokeSchema = z.object({
|
|
1524
|
+
width: z.optional(z.number().gte(0).lte(10)),
|
|
1525
|
+
color: z.optional(z.string().regex(/^#[A-Fa-f0-9]{6}$/)),
|
|
1526
|
+
});
|
|
1467
1527
|
/**
|
|
1468
1528
|
* The TextAsset is used to add text and titles to a video. The text can be styled with built in and custom
|
|
1469
1529
|
* [Fonts](#tocs_font). You can also add a background bounding box used to control wrapping and overflow. Emoticons are also supported.
|
|
@@ -1477,6 +1537,9 @@ export const textassetTextAssetSchema = z.object({
|
|
|
1477
1537
|
font: z.optional(textpropertiesTextFontSchema),
|
|
1478
1538
|
background: z.optional(textpropertiesTextBackgroundSchema),
|
|
1479
1539
|
alignment: z.optional(textpropertiesTextAlignmentSchema),
|
|
1540
|
+
stroke: z.optional(textpropertiesTextStrokeSchema),
|
|
1541
|
+
animation: z.optional(textpropertiesTextAnimationSchema),
|
|
1542
|
+
ellipsis: z.optional(z.string()),
|
|
1480
1543
|
});
|
|
1481
1544
|
export const textAssetSchema = textassetTextAssetSchema;
|
|
1482
1545
|
/**
|
|
@@ -1519,7 +1582,7 @@ export const outputOutputSchema = z.object({
|
|
|
1519
1582
|
z.literal(59.94),
|
|
1520
1583
|
z.literal(60),
|
|
1521
1584
|
])),
|
|
1522
|
-
scaleTo: z.optional(z.enum(["preview", "mobile", "sd", "hd", "1080"])),
|
|
1585
|
+
scaleTo: z.optional(z.enum(["preview", "mobile", "sd", "hd", "1080", "4k"])),
|
|
1523
1586
|
quality: z.optional(z.enum(["verylow", "low", "medium", "high", "veryhigh"])),
|
|
1524
1587
|
repeat: z.optional(z.boolean()),
|
|
1525
1588
|
mute: z.optional(z.boolean()),
|
|
@@ -1534,6 +1597,7 @@ export const outputSchema = outputOutputSchema;
|
|
|
1534
1597
|
*/
|
|
1535
1598
|
export const transitionTransitionSchema = z.object({
|
|
1536
1599
|
in: z.optional(z.enum([
|
|
1600
|
+
"none",
|
|
1537
1601
|
"fade",
|
|
1538
1602
|
"fadeSlow",
|
|
1539
1603
|
"fadeFast",
|
|
@@ -1597,6 +1661,7 @@ export const transitionTransitionSchema = z.object({
|
|
|
1597
1661
|
"zoom",
|
|
1598
1662
|
])),
|
|
1599
1663
|
out: z.optional(z.enum([
|
|
1664
|
+
"none",
|
|
1600
1665
|
"fade",
|
|
1601
1666
|
"fadeSlow",
|
|
1602
1667
|
"fadeFast",
|
|
@@ -1718,7 +1783,7 @@ export const audioassetAudioAssetSchema = z.object({
|
|
|
1718
1783
|
trim: z.optional(z.number()),
|
|
1719
1784
|
volume: z.optional(z.union([z.number().gte(0).lte(1), z.array(tweenTweenSchema)])),
|
|
1720
1785
|
speed: z.optional(z.number().gte(0).lte(10)),
|
|
1721
|
-
effect: z.optional(z.enum(["fadeIn", "fadeOut", "fadeInFadeOut"])),
|
|
1786
|
+
effect: z.optional(z.enum(["none", "fadeIn", "fadeOut", "fadeInFadeOut"])),
|
|
1722
1787
|
});
|
|
1723
1788
|
export const audioAssetSchema = audioassetAudioAssetSchema;
|
|
1724
1789
|
/**
|
|
@@ -1737,11 +1802,11 @@ export const rotatetransformationRotateTransformationSchema = z.object({
|
|
|
1737
1802
|
});
|
|
1738
1803
|
export const rotateTransformationSchema = rotatetransformationRotateTransformationSchema;
|
|
1739
1804
|
/**
|
|
1740
|
-
* Skew a clip so its edges are sheared at an angle. Use values between
|
|
1805
|
+
* Skew a clip so its edges are sheared at an angle. Use values between -100 and 100. Values over 3 or under -3 will skew the clip almost flat.
|
|
1741
1806
|
*/
|
|
1742
1807
|
export const skewtransformationSkewTransformationSchema = z.object({
|
|
1743
|
-
x: z.optional(z.union([z.number(), z.array(tweenTweenSchema)])),
|
|
1744
|
-
y: z.optional(z.union([z.number(), z.array(tweenTweenSchema)])),
|
|
1808
|
+
x: z.optional(z.union([z.number().gte(-100).lte(100), z.array(tweenTweenSchema)])),
|
|
1809
|
+
y: z.optional(z.union([z.number().gte(-100).lte(100), z.array(tweenTweenSchema)])),
|
|
1745
1810
|
});
|
|
1746
1811
|
export const skewTransformationSchema = skewtransformationSkewTransformationSchema;
|
|
1747
1812
|
/**
|
|
@@ -1810,7 +1875,7 @@ export const videoassetVideoAssetSchema = z.object({
|
|
|
1810
1875
|
transcode: z.optional(z.boolean()).default(false),
|
|
1811
1876
|
trim: z.optional(z.number()),
|
|
1812
1877
|
volume: z.optional(z.union([z.number().gte(0).lte(1), z.array(tweenTweenSchema)])),
|
|
1813
|
-
volumeEffect: z.optional(z.enum(["fadeIn", "fadeOut", "fadeInFadeOut"])),
|
|
1878
|
+
volumeEffect: z.optional(z.enum(["none", "fadeIn", "fadeOut", "fadeInFadeOut"])),
|
|
1814
1879
|
speed: z.optional(z.number().gte(0).lte(10)),
|
|
1815
1880
|
crop: z.optional(cropCropSchema),
|
|
1816
1881
|
chromaKey: z.optional(chromakeyChromaKeySchema),
|
|
@@ -1891,6 +1956,8 @@ export const clipClipSchema = z.object({
|
|
|
1891
1956
|
length: z.union([z.number(), z.literal("auto"), z.literal("end")]),
|
|
1892
1957
|
fit: z.optional(z.enum(["cover", "contain", "crop", "none"])),
|
|
1893
1958
|
scale: z.optional(z.number()),
|
|
1959
|
+
width: z.optional(z.int().gte(1).lte(3840)),
|
|
1960
|
+
height: z.optional(z.int().gte(1).lte(2160)),
|
|
1894
1961
|
position: z.optional(z.enum([
|
|
1895
1962
|
"top",
|
|
1896
1963
|
"topRight",
|
|
@@ -1936,6 +2003,7 @@ export const clipClipSchema = z.object({
|
|
|
1936
2003
|
])),
|
|
1937
2004
|
opacity: z.optional(z.union([z.number(), z.array(tweenTweenSchema)])),
|
|
1938
2005
|
transform: z.optional(transformationTransformationSchema),
|
|
2006
|
+
alias: z.optional(z.string().regex(/^[A-Za-z0-9_-]+$/)),
|
|
1939
2007
|
});
|
|
1940
2008
|
export const clipSchema = clipClipSchema;
|
|
1941
2009
|
/**
|
package/dist/zod/zod.gen.ts
CHANGED
|
@@ -894,6 +894,25 @@ export const shotstackDestinationShotstackDestinationSchema = z.object({
|
|
|
894
894
|
export const shotstackDestinationSchema =
|
|
895
895
|
shotstackDestinationShotstackDestinationSchema;
|
|
896
896
|
|
|
897
|
+
/**
|
|
898
|
+
* Pass additional options to control how TikTok publishes video.
|
|
899
|
+
*/
|
|
900
|
+
export const tiktokDestinationOptionsTiktokDestinationOptionsSchema = z.object({
|
|
901
|
+
title: z.optional(z.string().max(150)),
|
|
902
|
+
privacyLevel: z.optional(z.enum(["public", "friends", "private"])),
|
|
903
|
+
disableDuet: z.optional(z.boolean()).default(false),
|
|
904
|
+
disableStitch: z.optional(z.boolean()).default(false),
|
|
905
|
+
disableComment: z.optional(z.boolean()).default(false),
|
|
906
|
+
});
|
|
907
|
+
|
|
908
|
+
/**
|
|
909
|
+
* Send videos to TikTok. TikTok credentials are required and added via the [dashboard](https://dashboard.shotstack.io/integrations/tiktok), not in the request.
|
|
910
|
+
*/
|
|
911
|
+
export const tiktokDestinationTiktokDestinationSchema = z.object({
|
|
912
|
+
provider: z.string().default("tiktok"),
|
|
913
|
+
options: z.optional(tiktokDestinationOptionsTiktokDestinationOptionsSchema),
|
|
914
|
+
});
|
|
915
|
+
|
|
897
916
|
/**
|
|
898
917
|
* Options to control the visibility of videos and privacy features.
|
|
899
918
|
*/
|
|
@@ -918,6 +937,7 @@ export const vimeoDestinationOptionsVimeoDestinationOptionsSchema = z.object({
|
|
|
918
937
|
privacy: z.optional(
|
|
919
938
|
vimeoDestinationPrivacyOptionsVimeoDestinationPrivacyOptionsSchema
|
|
920
939
|
),
|
|
940
|
+
folderUri: z.optional(z.string()),
|
|
921
941
|
});
|
|
922
942
|
|
|
923
943
|
export const vimeoDestinationOptionsSchema =
|
|
@@ -975,6 +995,13 @@ export const destinationsDestinationsSchema = z.union([
|
|
|
975
995
|
destinations: z.optional(z.literal("vimeoDestination_VimeoDestination")),
|
|
976
996
|
})
|
|
977
997
|
.and(vimeoDestinationVimeoDestinationSchema),
|
|
998
|
+
z
|
|
999
|
+
.object({
|
|
1000
|
+
destinations: z.optional(
|
|
1001
|
+
z.literal("tiktokDestination_TiktokDestination")
|
|
1002
|
+
),
|
|
1003
|
+
})
|
|
1004
|
+
.and(tiktokDestinationTiktokDestinationSchema),
|
|
978
1005
|
]);
|
|
979
1006
|
|
|
980
1007
|
export const destinationsSchema = destinationsDestinationsSchema;
|
|
@@ -1431,6 +1458,16 @@ export const richtextpropertiesRichTextBackgroundSchema = z.object({
|
|
|
1431
1458
|
export const richTextBackgroundSchema =
|
|
1432
1459
|
richtextpropertiesRichTextBackgroundSchema;
|
|
1433
1460
|
|
|
1461
|
+
/**
|
|
1462
|
+
* Border styling properties for the text bounding box.
|
|
1463
|
+
*/
|
|
1464
|
+
export const richtextpropertiesRichTextBorderSchema = z.object({
|
|
1465
|
+
width: z.optional(z.number().gte(0)).default(0),
|
|
1466
|
+
color: z.optional(z.string().regex(/^#[A-Fa-f0-9]{6}$/)).default("#000000"),
|
|
1467
|
+
opacity: z.optional(z.number().gte(0).lte(1)).default(1),
|
|
1468
|
+
radius: z.optional(z.number().gte(0)).default(0),
|
|
1469
|
+
});
|
|
1470
|
+
|
|
1434
1471
|
/**
|
|
1435
1472
|
* Font properties for rich text.
|
|
1436
1473
|
*/
|
|
@@ -1463,6 +1500,16 @@ export const richtextpropertiesRichTextGradientSchema = z.object({
|
|
|
1463
1500
|
|
|
1464
1501
|
export const richTextGradientSchema = richtextpropertiesRichTextGradientSchema;
|
|
1465
1502
|
|
|
1503
|
+
/**
|
|
1504
|
+
* Padding properties for individual sides of the text bounding box.
|
|
1505
|
+
*/
|
|
1506
|
+
export const richtextpropertiesRichTextPaddingSchema = z.object({
|
|
1507
|
+
top: z.optional(z.number().gte(0)).default(0),
|
|
1508
|
+
right: z.optional(z.number().gte(0)).default(0),
|
|
1509
|
+
bottom: z.optional(z.number().gte(0)).default(0),
|
|
1510
|
+
left: z.optional(z.number().gte(0)).default(0),
|
|
1511
|
+
});
|
|
1512
|
+
|
|
1466
1513
|
/**
|
|
1467
1514
|
* Text shadow properties.
|
|
1468
1515
|
*/
|
|
@@ -1517,6 +1564,10 @@ export const richtextassetRichTextAssetSchema = z.object({
|
|
|
1517
1564
|
stroke: z.optional(richtextpropertiesRichTextStrokeSchema),
|
|
1518
1565
|
shadow: z.optional(richtextpropertiesRichTextShadowSchema),
|
|
1519
1566
|
background: z.optional(richtextpropertiesRichTextBackgroundSchema),
|
|
1567
|
+
border: z.optional(richtextpropertiesRichTextBorderSchema),
|
|
1568
|
+
padding: z.optional(
|
|
1569
|
+
z.union([z.number().gte(0), richtextpropertiesRichTextPaddingSchema])
|
|
1570
|
+
),
|
|
1520
1571
|
align: z.optional(richtextpropertiesRichTextAlignmentSchema),
|
|
1521
1572
|
animation: z.optional(richtextpropertiesRichTextAnimationSchema),
|
|
1522
1573
|
});
|
|
@@ -1823,11 +1874,22 @@ export const textpropertiesTextAlignmentSchema = z.object({
|
|
|
1823
1874
|
|
|
1824
1875
|
export const textAlignmentSchema = textpropertiesTextAlignmentSchema;
|
|
1825
1876
|
|
|
1877
|
+
/**
|
|
1878
|
+
* Animation properties for text entrance effects.
|
|
1879
|
+
*/
|
|
1880
|
+
export const textpropertiesTextAnimationSchema = z.object({
|
|
1881
|
+
preset: z.enum(["typewriter"]),
|
|
1882
|
+
duration: z.optional(z.number().gte(0.1).lte(30)),
|
|
1883
|
+
});
|
|
1884
|
+
|
|
1826
1885
|
/**
|
|
1827
1886
|
* Displays a background box behind the text.
|
|
1828
1887
|
*/
|
|
1829
1888
|
export const textpropertiesTextBackgroundSchema = z.object({
|
|
1830
|
-
color: z.optional(z.string()),
|
|
1889
|
+
color: z.optional(z.string().regex(/^#[A-Fa-f0-9]{6}$/)),
|
|
1890
|
+
opacity: z.optional(z.number().gte(0).lte(1)),
|
|
1891
|
+
padding: z.optional(z.number().gte(0).lte(100)),
|
|
1892
|
+
borderRadius: z.optional(z.number().gte(0)),
|
|
1831
1893
|
});
|
|
1832
1894
|
|
|
1833
1895
|
export const textBackgroundSchema = textpropertiesTextBackgroundSchema;
|
|
@@ -1846,6 +1908,14 @@ export const textpropertiesTextFontSchema = z.object({
|
|
|
1846
1908
|
|
|
1847
1909
|
export const textFontSchema = textpropertiesTextFontSchema;
|
|
1848
1910
|
|
|
1911
|
+
/**
|
|
1912
|
+
* Text stroke (outline) properties.
|
|
1913
|
+
*/
|
|
1914
|
+
export const textpropertiesTextStrokeSchema = z.object({
|
|
1915
|
+
width: z.optional(z.number().gte(0).lte(10)),
|
|
1916
|
+
color: z.optional(z.string().regex(/^#[A-Fa-f0-9]{6}$/)),
|
|
1917
|
+
});
|
|
1918
|
+
|
|
1849
1919
|
/**
|
|
1850
1920
|
* The TextAsset is used to add text and titles to a video. The text can be styled with built in and custom
|
|
1851
1921
|
* [Fonts](#tocs_font). You can also add a background bounding box used to control wrapping and overflow. Emoticons are also supported.
|
|
@@ -1859,6 +1929,9 @@ export const textassetTextAssetSchema = z.object({
|
|
|
1859
1929
|
font: z.optional(textpropertiesTextFontSchema),
|
|
1860
1930
|
background: z.optional(textpropertiesTextBackgroundSchema),
|
|
1861
1931
|
alignment: z.optional(textpropertiesTextAlignmentSchema),
|
|
1932
|
+
stroke: z.optional(textpropertiesTextStrokeSchema),
|
|
1933
|
+
animation: z.optional(textpropertiesTextAnimationSchema),
|
|
1934
|
+
ellipsis: z.optional(z.string()),
|
|
1862
1935
|
});
|
|
1863
1936
|
|
|
1864
1937
|
export const textAssetSchema = textassetTextAssetSchema;
|
|
@@ -1911,7 +1984,7 @@ export const outputOutputSchema = z.object({
|
|
|
1911
1984
|
z.literal(60),
|
|
1912
1985
|
])
|
|
1913
1986
|
),
|
|
1914
|
-
scaleTo: z.optional(z.enum(["preview", "mobile", "sd", "hd", "1080"])),
|
|
1987
|
+
scaleTo: z.optional(z.enum(["preview", "mobile", "sd", "hd", "1080", "4k"])),
|
|
1915
1988
|
quality: z.optional(z.enum(["verylow", "low", "medium", "high", "veryhigh"])),
|
|
1916
1989
|
repeat: z.optional(z.boolean()),
|
|
1917
1990
|
mute: z.optional(z.boolean()),
|
|
@@ -1929,6 +2002,7 @@ export const outputSchema = outputOutputSchema;
|
|
|
1929
2002
|
export const transitionTransitionSchema = z.object({
|
|
1930
2003
|
in: z.optional(
|
|
1931
2004
|
z.enum([
|
|
2005
|
+
"none",
|
|
1932
2006
|
"fade",
|
|
1933
2007
|
"fadeSlow",
|
|
1934
2008
|
"fadeFast",
|
|
@@ -1994,6 +2068,7 @@ export const transitionTransitionSchema = z.object({
|
|
|
1994
2068
|
),
|
|
1995
2069
|
out: z.optional(
|
|
1996
2070
|
z.enum([
|
|
2071
|
+
"none",
|
|
1997
2072
|
"fade",
|
|
1998
2073
|
"fadeSlow",
|
|
1999
2074
|
"fadeFast",
|
|
@@ -2124,7 +2199,7 @@ export const audioassetAudioAssetSchema = z.object({
|
|
|
2124
2199
|
z.union([z.number().gte(0).lte(1), z.array(tweenTweenSchema)])
|
|
2125
2200
|
),
|
|
2126
2201
|
speed: z.optional(z.number().gte(0).lte(10)),
|
|
2127
|
-
effect: z.optional(z.enum(["fadeIn", "fadeOut", "fadeInFadeOut"])),
|
|
2202
|
+
effect: z.optional(z.enum(["none", "fadeIn", "fadeOut", "fadeInFadeOut"])),
|
|
2128
2203
|
});
|
|
2129
2204
|
|
|
2130
2205
|
export const audioAssetSchema = audioassetAudioAssetSchema;
|
|
@@ -2156,11 +2231,15 @@ export const rotateTransformationSchema =
|
|
|
2156
2231
|
rotatetransformationRotateTransformationSchema;
|
|
2157
2232
|
|
|
2158
2233
|
/**
|
|
2159
|
-
* Skew a clip so its edges are sheared at an angle. Use values between
|
|
2234
|
+
* Skew a clip so its edges are sheared at an angle. Use values between -100 and 100. Values over 3 or under -3 will skew the clip almost flat.
|
|
2160
2235
|
*/
|
|
2161
2236
|
export const skewtransformationSkewTransformationSchema = z.object({
|
|
2162
|
-
x: z.optional(
|
|
2163
|
-
|
|
2237
|
+
x: z.optional(
|
|
2238
|
+
z.union([z.number().gte(-100).lte(100), z.array(tweenTweenSchema)])
|
|
2239
|
+
),
|
|
2240
|
+
y: z.optional(
|
|
2241
|
+
z.union([z.number().gte(-100).lte(100), z.array(tweenTweenSchema)])
|
|
2242
|
+
),
|
|
2164
2243
|
});
|
|
2165
2244
|
|
|
2166
2245
|
export const skewTransformationSchema =
|
|
@@ -2244,7 +2323,9 @@ export const videoassetVideoAssetSchema = z.object({
|
|
|
2244
2323
|
volume: z.optional(
|
|
2245
2324
|
z.union([z.number().gte(0).lte(1), z.array(tweenTweenSchema)])
|
|
2246
2325
|
),
|
|
2247
|
-
volumeEffect: z.optional(
|
|
2326
|
+
volumeEffect: z.optional(
|
|
2327
|
+
z.enum(["none", "fadeIn", "fadeOut", "fadeInFadeOut"])
|
|
2328
|
+
),
|
|
2248
2329
|
speed: z.optional(z.number().gte(0).lte(10)),
|
|
2249
2330
|
crop: z.optional(cropCropSchema),
|
|
2250
2331
|
chromaKey: z.optional(chromakeyChromaKeySchema),
|
|
@@ -2329,6 +2410,8 @@ export const clipClipSchema = z.object({
|
|
|
2329
2410
|
length: z.union([z.number(), z.literal("auto"), z.literal("end")]),
|
|
2330
2411
|
fit: z.optional(z.enum(["cover", "contain", "crop", "none"])),
|
|
2331
2412
|
scale: z.optional(z.number()),
|
|
2413
|
+
width: z.optional(z.int().gte(1).lte(3840)),
|
|
2414
|
+
height: z.optional(z.int().gte(1).lte(2160)),
|
|
2332
2415
|
position: z.optional(
|
|
2333
2416
|
z.enum([
|
|
2334
2417
|
"top",
|
|
@@ -2380,6 +2463,7 @@ export const clipClipSchema = z.object({
|
|
|
2380
2463
|
),
|
|
2381
2464
|
opacity: z.optional(z.union([z.number(), z.array(tweenTweenSchema)])),
|
|
2382
2465
|
transform: z.optional(transformationTransformationSchema),
|
|
2466
|
+
alias: z.optional(z.string().regex(/^[A-Za-z0-9_-]+$/)),
|
|
2383
2467
|
});
|
|
2384
2468
|
|
|
2385
2469
|
export const clipSchema = clipClipSchema;
|