@shotstack/schemas 1.1.2 → 1.3.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.
- package/dist/api.bundled.json +240 -20
- package/dist/schema.d.ts +169 -19
- package/dist/zod/zod.gen.cjs +80 -14
- package/dist/zod/zod.gen.d.ts +1407 -60
- package/dist/zod/zod.gen.js +75 -9
- package/dist/zod/zod.gen.ts +91 -9
- 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
|
*/
|
|
@@ -1200,13 +1241,13 @@ export const richTextStyleSchema = richtextpropertiesRichTextStyleSchema;
|
|
|
1200
1241
|
export const richtextassetRichTextAssetSchema = z.object({
|
|
1201
1242
|
type: z.string().default("rich-text"),
|
|
1202
1243
|
text: z.string().max(5000),
|
|
1203
|
-
width: z.optional(z.int().gte(1).lte(4096)),
|
|
1204
|
-
height: z.optional(z.int().gte(1).lte(4096)),
|
|
1205
1244
|
font: z.optional(richtextpropertiesRichTextFontSchema),
|
|
1206
1245
|
style: z.optional(richtextpropertiesRichTextStyleSchema),
|
|
1207
1246
|
stroke: z.optional(richtextpropertiesRichTextStrokeSchema),
|
|
1208
1247
|
shadow: z.optional(richtextpropertiesRichTextShadowSchema),
|
|
1209
1248
|
background: z.optional(richtextpropertiesRichTextBackgroundSchema),
|
|
1249
|
+
border: z.optional(richtextpropertiesRichTextBorderSchema),
|
|
1250
|
+
padding: z.optional(z.union([z.number().gte(0), richtextpropertiesRichTextPaddingSchema])),
|
|
1210
1251
|
align: z.optional(richtextpropertiesRichTextAlignmentSchema),
|
|
1211
1252
|
animation: z.optional(richtextpropertiesRichTextAnimationSchema),
|
|
1212
1253
|
});
|
|
@@ -1445,11 +1486,21 @@ export const textpropertiesTextAlignmentSchema = z.object({
|
|
|
1445
1486
|
vertical: z.optional(z.enum(["top", "center", "bottom"])),
|
|
1446
1487
|
});
|
|
1447
1488
|
export const textAlignmentSchema = textpropertiesTextAlignmentSchema;
|
|
1489
|
+
/**
|
|
1490
|
+
* Animation properties for text entrance effects.
|
|
1491
|
+
*/
|
|
1492
|
+
export const textpropertiesTextAnimationSchema = z.object({
|
|
1493
|
+
preset: z.enum(["typewriter"]),
|
|
1494
|
+
duration: z.optional(z.number().gte(0.1).lte(30)),
|
|
1495
|
+
});
|
|
1448
1496
|
/**
|
|
1449
1497
|
* Displays a background box behind the text.
|
|
1450
1498
|
*/
|
|
1451
1499
|
export const textpropertiesTextBackgroundSchema = z.object({
|
|
1452
|
-
color: z.optional(z.string()),
|
|
1500
|
+
color: z.optional(z.string().regex(/^#[A-Fa-f0-9]{6}$/)),
|
|
1501
|
+
opacity: z.optional(z.number().gte(0).lte(1)),
|
|
1502
|
+
padding: z.optional(z.number().gte(0).lte(100)),
|
|
1503
|
+
borderRadius: z.optional(z.number().gte(0)),
|
|
1453
1504
|
});
|
|
1454
1505
|
export const textBackgroundSchema = textpropertiesTextBackgroundSchema;
|
|
1455
1506
|
/**
|
|
@@ -1464,6 +1515,13 @@ export const textpropertiesTextFontSchema = z.object({
|
|
|
1464
1515
|
lineHeight: z.optional(z.number()),
|
|
1465
1516
|
});
|
|
1466
1517
|
export const textFontSchema = textpropertiesTextFontSchema;
|
|
1518
|
+
/**
|
|
1519
|
+
* Text stroke (outline) properties.
|
|
1520
|
+
*/
|
|
1521
|
+
export const textpropertiesTextStrokeSchema = z.object({
|
|
1522
|
+
width: z.optional(z.number().gte(0).lte(10)),
|
|
1523
|
+
color: z.optional(z.string().regex(/^#[A-Fa-f0-9]{6}$/)),
|
|
1524
|
+
});
|
|
1467
1525
|
/**
|
|
1468
1526
|
* The TextAsset is used to add text and titles to a video. The text can be styled with built in and custom
|
|
1469
1527
|
* [Fonts](#tocs_font). You can also add a background bounding box used to control wrapping and overflow. Emoticons are also supported.
|
|
@@ -1477,6 +1535,9 @@ export const textassetTextAssetSchema = z.object({
|
|
|
1477
1535
|
font: z.optional(textpropertiesTextFontSchema),
|
|
1478
1536
|
background: z.optional(textpropertiesTextBackgroundSchema),
|
|
1479
1537
|
alignment: z.optional(textpropertiesTextAlignmentSchema),
|
|
1538
|
+
stroke: z.optional(textpropertiesTextStrokeSchema),
|
|
1539
|
+
animation: z.optional(textpropertiesTextAnimationSchema),
|
|
1540
|
+
ellipsis: z.optional(z.string()),
|
|
1480
1541
|
});
|
|
1481
1542
|
export const textAssetSchema = textassetTextAssetSchema;
|
|
1482
1543
|
/**
|
|
@@ -1519,7 +1580,7 @@ export const outputOutputSchema = z.object({
|
|
|
1519
1580
|
z.literal(59.94),
|
|
1520
1581
|
z.literal(60),
|
|
1521
1582
|
])),
|
|
1522
|
-
scaleTo: z.optional(z.enum(["preview", "mobile", "sd", "hd", "1080"])),
|
|
1583
|
+
scaleTo: z.optional(z.enum(["preview", "mobile", "sd", "hd", "1080", "4k"])),
|
|
1523
1584
|
quality: z.optional(z.enum(["verylow", "low", "medium", "high", "veryhigh"])),
|
|
1524
1585
|
repeat: z.optional(z.boolean()),
|
|
1525
1586
|
mute: z.optional(z.boolean()),
|
|
@@ -1534,6 +1595,7 @@ export const outputSchema = outputOutputSchema;
|
|
|
1534
1595
|
*/
|
|
1535
1596
|
export const transitionTransitionSchema = z.object({
|
|
1536
1597
|
in: z.optional(z.enum([
|
|
1598
|
+
"none",
|
|
1537
1599
|
"fade",
|
|
1538
1600
|
"fadeSlow",
|
|
1539
1601
|
"fadeFast",
|
|
@@ -1597,6 +1659,7 @@ export const transitionTransitionSchema = z.object({
|
|
|
1597
1659
|
"zoom",
|
|
1598
1660
|
])),
|
|
1599
1661
|
out: z.optional(z.enum([
|
|
1662
|
+
"none",
|
|
1600
1663
|
"fade",
|
|
1601
1664
|
"fadeSlow",
|
|
1602
1665
|
"fadeFast",
|
|
@@ -1718,7 +1781,7 @@ export const audioassetAudioAssetSchema = z.object({
|
|
|
1718
1781
|
trim: z.optional(z.number()),
|
|
1719
1782
|
volume: z.optional(z.union([z.number().gte(0).lte(1), z.array(tweenTweenSchema)])),
|
|
1720
1783
|
speed: z.optional(z.number().gte(0).lte(10)),
|
|
1721
|
-
effect: z.optional(z.enum(["fadeIn", "fadeOut", "fadeInFadeOut"])),
|
|
1784
|
+
effect: z.optional(z.enum(["none", "fadeIn", "fadeOut", "fadeInFadeOut"])),
|
|
1722
1785
|
});
|
|
1723
1786
|
export const audioAssetSchema = audioassetAudioAssetSchema;
|
|
1724
1787
|
/**
|
|
@@ -1737,11 +1800,11 @@ export const rotatetransformationRotateTransformationSchema = z.object({
|
|
|
1737
1800
|
});
|
|
1738
1801
|
export const rotateTransformationSchema = rotatetransformationRotateTransformationSchema;
|
|
1739
1802
|
/**
|
|
1740
|
-
* Skew a clip so its edges are sheared at an angle. Use values between
|
|
1803
|
+
* 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
1804
|
*/
|
|
1742
1805
|
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)])),
|
|
1806
|
+
x: z.optional(z.union([z.number().gte(-100).lte(100), z.array(tweenTweenSchema)])),
|
|
1807
|
+
y: z.optional(z.union([z.number().gte(-100).lte(100), z.array(tweenTweenSchema)])),
|
|
1745
1808
|
});
|
|
1746
1809
|
export const skewTransformationSchema = skewtransformationSkewTransformationSchema;
|
|
1747
1810
|
/**
|
|
@@ -1810,7 +1873,7 @@ export const videoassetVideoAssetSchema = z.object({
|
|
|
1810
1873
|
transcode: z.optional(z.boolean()).default(false),
|
|
1811
1874
|
trim: z.optional(z.number()),
|
|
1812
1875
|
volume: z.optional(z.union([z.number().gte(0).lte(1), z.array(tweenTweenSchema)])),
|
|
1813
|
-
volumeEffect: z.optional(z.enum(["fadeIn", "fadeOut", "fadeInFadeOut"])),
|
|
1876
|
+
volumeEffect: z.optional(z.enum(["none", "fadeIn", "fadeOut", "fadeInFadeOut"])),
|
|
1814
1877
|
speed: z.optional(z.number().gte(0).lte(10)),
|
|
1815
1878
|
crop: z.optional(cropCropSchema),
|
|
1816
1879
|
chromaKey: z.optional(chromakeyChromaKeySchema),
|
|
@@ -1891,6 +1954,8 @@ export const clipClipSchema = z.object({
|
|
|
1891
1954
|
length: z.union([z.number(), z.literal("auto"), z.literal("end")]),
|
|
1892
1955
|
fit: z.optional(z.enum(["cover", "contain", "crop", "none"])),
|
|
1893
1956
|
scale: z.optional(z.number()),
|
|
1957
|
+
width: z.optional(z.int().gte(1).lte(3840)),
|
|
1958
|
+
height: z.optional(z.int().gte(1).lte(2160)),
|
|
1894
1959
|
position: z.optional(z.enum([
|
|
1895
1960
|
"top",
|
|
1896
1961
|
"topRight",
|
|
@@ -1936,6 +2001,7 @@ export const clipClipSchema = z.object({
|
|
|
1936
2001
|
])),
|
|
1937
2002
|
opacity: z.optional(z.union([z.number(), z.array(tweenTweenSchema)])),
|
|
1938
2003
|
transform: z.optional(transformationTransformationSchema),
|
|
2004
|
+
alias: z.optional(z.string().regex(/^[A-Za-z0-9_-]+$/)),
|
|
1939
2005
|
});
|
|
1940
2006
|
export const clipSchema = clipClipSchema;
|
|
1941
2007
|
/**
|
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
|
*/
|
|
@@ -1510,13 +1557,15 @@ export const richTextStyleSchema = richtextpropertiesRichTextStyleSchema;
|
|
|
1510
1557
|
export const richtextassetRichTextAssetSchema = z.object({
|
|
1511
1558
|
type: z.string().default("rich-text"),
|
|
1512
1559
|
text: z.string().max(5000),
|
|
1513
|
-
width: z.optional(z.int().gte(1).lte(4096)),
|
|
1514
|
-
height: z.optional(z.int().gte(1).lte(4096)),
|
|
1515
1560
|
font: z.optional(richtextpropertiesRichTextFontSchema),
|
|
1516
1561
|
style: z.optional(richtextpropertiesRichTextStyleSchema),
|
|
1517
1562
|
stroke: z.optional(richtextpropertiesRichTextStrokeSchema),
|
|
1518
1563
|
shadow: z.optional(richtextpropertiesRichTextShadowSchema),
|
|
1519
1564
|
background: z.optional(richtextpropertiesRichTextBackgroundSchema),
|
|
1565
|
+
border: z.optional(richtextpropertiesRichTextBorderSchema),
|
|
1566
|
+
padding: z.optional(
|
|
1567
|
+
z.union([z.number().gte(0), richtextpropertiesRichTextPaddingSchema])
|
|
1568
|
+
),
|
|
1520
1569
|
align: z.optional(richtextpropertiesRichTextAlignmentSchema),
|
|
1521
1570
|
animation: z.optional(richtextpropertiesRichTextAnimationSchema),
|
|
1522
1571
|
});
|
|
@@ -1823,11 +1872,22 @@ export const textpropertiesTextAlignmentSchema = z.object({
|
|
|
1823
1872
|
|
|
1824
1873
|
export const textAlignmentSchema = textpropertiesTextAlignmentSchema;
|
|
1825
1874
|
|
|
1875
|
+
/**
|
|
1876
|
+
* Animation properties for text entrance effects.
|
|
1877
|
+
*/
|
|
1878
|
+
export const textpropertiesTextAnimationSchema = z.object({
|
|
1879
|
+
preset: z.enum(["typewriter"]),
|
|
1880
|
+
duration: z.optional(z.number().gte(0.1).lte(30)),
|
|
1881
|
+
});
|
|
1882
|
+
|
|
1826
1883
|
/**
|
|
1827
1884
|
* Displays a background box behind the text.
|
|
1828
1885
|
*/
|
|
1829
1886
|
export const textpropertiesTextBackgroundSchema = z.object({
|
|
1830
|
-
color: z.optional(z.string()),
|
|
1887
|
+
color: z.optional(z.string().regex(/^#[A-Fa-f0-9]{6}$/)),
|
|
1888
|
+
opacity: z.optional(z.number().gte(0).lte(1)),
|
|
1889
|
+
padding: z.optional(z.number().gte(0).lte(100)),
|
|
1890
|
+
borderRadius: z.optional(z.number().gte(0)),
|
|
1831
1891
|
});
|
|
1832
1892
|
|
|
1833
1893
|
export const textBackgroundSchema = textpropertiesTextBackgroundSchema;
|
|
@@ -1846,6 +1906,14 @@ export const textpropertiesTextFontSchema = z.object({
|
|
|
1846
1906
|
|
|
1847
1907
|
export const textFontSchema = textpropertiesTextFontSchema;
|
|
1848
1908
|
|
|
1909
|
+
/**
|
|
1910
|
+
* Text stroke (outline) properties.
|
|
1911
|
+
*/
|
|
1912
|
+
export const textpropertiesTextStrokeSchema = z.object({
|
|
1913
|
+
width: z.optional(z.number().gte(0).lte(10)),
|
|
1914
|
+
color: z.optional(z.string().regex(/^#[A-Fa-f0-9]{6}$/)),
|
|
1915
|
+
});
|
|
1916
|
+
|
|
1849
1917
|
/**
|
|
1850
1918
|
* The TextAsset is used to add text and titles to a video. The text can be styled with built in and custom
|
|
1851
1919
|
* [Fonts](#tocs_font). You can also add a background bounding box used to control wrapping and overflow. Emoticons are also supported.
|
|
@@ -1859,6 +1927,9 @@ export const textassetTextAssetSchema = z.object({
|
|
|
1859
1927
|
font: z.optional(textpropertiesTextFontSchema),
|
|
1860
1928
|
background: z.optional(textpropertiesTextBackgroundSchema),
|
|
1861
1929
|
alignment: z.optional(textpropertiesTextAlignmentSchema),
|
|
1930
|
+
stroke: z.optional(textpropertiesTextStrokeSchema),
|
|
1931
|
+
animation: z.optional(textpropertiesTextAnimationSchema),
|
|
1932
|
+
ellipsis: z.optional(z.string()),
|
|
1862
1933
|
});
|
|
1863
1934
|
|
|
1864
1935
|
export const textAssetSchema = textassetTextAssetSchema;
|
|
@@ -1911,7 +1982,7 @@ export const outputOutputSchema = z.object({
|
|
|
1911
1982
|
z.literal(60),
|
|
1912
1983
|
])
|
|
1913
1984
|
),
|
|
1914
|
-
scaleTo: z.optional(z.enum(["preview", "mobile", "sd", "hd", "1080"])),
|
|
1985
|
+
scaleTo: z.optional(z.enum(["preview", "mobile", "sd", "hd", "1080", "4k"])),
|
|
1915
1986
|
quality: z.optional(z.enum(["verylow", "low", "medium", "high", "veryhigh"])),
|
|
1916
1987
|
repeat: z.optional(z.boolean()),
|
|
1917
1988
|
mute: z.optional(z.boolean()),
|
|
@@ -1929,6 +2000,7 @@ export const outputSchema = outputOutputSchema;
|
|
|
1929
2000
|
export const transitionTransitionSchema = z.object({
|
|
1930
2001
|
in: z.optional(
|
|
1931
2002
|
z.enum([
|
|
2003
|
+
"none",
|
|
1932
2004
|
"fade",
|
|
1933
2005
|
"fadeSlow",
|
|
1934
2006
|
"fadeFast",
|
|
@@ -1994,6 +2066,7 @@ export const transitionTransitionSchema = z.object({
|
|
|
1994
2066
|
),
|
|
1995
2067
|
out: z.optional(
|
|
1996
2068
|
z.enum([
|
|
2069
|
+
"none",
|
|
1997
2070
|
"fade",
|
|
1998
2071
|
"fadeSlow",
|
|
1999
2072
|
"fadeFast",
|
|
@@ -2124,7 +2197,7 @@ export const audioassetAudioAssetSchema = z.object({
|
|
|
2124
2197
|
z.union([z.number().gte(0).lte(1), z.array(tweenTweenSchema)])
|
|
2125
2198
|
),
|
|
2126
2199
|
speed: z.optional(z.number().gte(0).lte(10)),
|
|
2127
|
-
effect: z.optional(z.enum(["fadeIn", "fadeOut", "fadeInFadeOut"])),
|
|
2200
|
+
effect: z.optional(z.enum(["none", "fadeIn", "fadeOut", "fadeInFadeOut"])),
|
|
2128
2201
|
});
|
|
2129
2202
|
|
|
2130
2203
|
export const audioAssetSchema = audioassetAudioAssetSchema;
|
|
@@ -2156,11 +2229,15 @@ export const rotateTransformationSchema =
|
|
|
2156
2229
|
rotatetransformationRotateTransformationSchema;
|
|
2157
2230
|
|
|
2158
2231
|
/**
|
|
2159
|
-
* Skew a clip so its edges are sheared at an angle. Use values between
|
|
2232
|
+
* 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
2233
|
*/
|
|
2161
2234
|
export const skewtransformationSkewTransformationSchema = z.object({
|
|
2162
|
-
x: z.optional(
|
|
2163
|
-
|
|
2235
|
+
x: z.optional(
|
|
2236
|
+
z.union([z.number().gte(-100).lte(100), z.array(tweenTweenSchema)])
|
|
2237
|
+
),
|
|
2238
|
+
y: z.optional(
|
|
2239
|
+
z.union([z.number().gte(-100).lte(100), z.array(tweenTweenSchema)])
|
|
2240
|
+
),
|
|
2164
2241
|
});
|
|
2165
2242
|
|
|
2166
2243
|
export const skewTransformationSchema =
|
|
@@ -2244,7 +2321,9 @@ export const videoassetVideoAssetSchema = z.object({
|
|
|
2244
2321
|
volume: z.optional(
|
|
2245
2322
|
z.union([z.number().gte(0).lte(1), z.array(tweenTweenSchema)])
|
|
2246
2323
|
),
|
|
2247
|
-
volumeEffect: z.optional(
|
|
2324
|
+
volumeEffect: z.optional(
|
|
2325
|
+
z.enum(["none", "fadeIn", "fadeOut", "fadeInFadeOut"])
|
|
2326
|
+
),
|
|
2248
2327
|
speed: z.optional(z.number().gte(0).lte(10)),
|
|
2249
2328
|
crop: z.optional(cropCropSchema),
|
|
2250
2329
|
chromaKey: z.optional(chromakeyChromaKeySchema),
|
|
@@ -2329,6 +2408,8 @@ export const clipClipSchema = z.object({
|
|
|
2329
2408
|
length: z.union([z.number(), z.literal("auto"), z.literal("end")]),
|
|
2330
2409
|
fit: z.optional(z.enum(["cover", "contain", "crop", "none"])),
|
|
2331
2410
|
scale: z.optional(z.number()),
|
|
2411
|
+
width: z.optional(z.int().gte(1).lte(3840)),
|
|
2412
|
+
height: z.optional(z.int().gte(1).lte(2160)),
|
|
2332
2413
|
position: z.optional(
|
|
2333
2414
|
z.enum([
|
|
2334
2415
|
"top",
|
|
@@ -2380,6 +2461,7 @@ export const clipClipSchema = z.object({
|
|
|
2380
2461
|
),
|
|
2381
2462
|
opacity: z.optional(z.union([z.number(), z.array(tweenTweenSchema)])),
|
|
2382
2463
|
transform: z.optional(transformationTransformationSchema),
|
|
2464
|
+
alias: z.optional(z.string().regex(/^[A-Za-z0-9_-]+$/)),
|
|
2383
2465
|
});
|
|
2384
2466
|
|
|
2385
2467
|
export const clipSchema = clipClipSchema;
|