@shotstack/schemas 1.3.3 → 1.3.5

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.
@@ -1256,9 +1256,8 @@
1256
1256
  },
1257
1257
  "transcode": {
1258
1258
  "type": "boolean",
1259
- "description": "Set to `true` to force re-encoding of the video during preprocessing. This can help resolve compatibility issues, fix rotation problems, synchronize audio, or convert formats. The video will be processed to ensure optimal compatibility with the rendering engine.",
1260
- "example": false,
1261
- "default": false
1259
+ "description": "Set to `true` to force re-encoding of the video during preprocessing. This can help resolve compatibility issues, fix rotation problems, synchronize audio, or convert formats. The video will be processed to ensure optimal compatibility with the rendering engine.",
1260
+ "example": false
1262
1261
  },
1263
1262
  "trim": {
1264
1263
  "description": "The start trim point of the video clip, in seconds (defaults to 0). Videos will start from the in trim point. The video will play until the file ends or the Clip length is reached.",
@@ -2494,17 +2493,6 @@
2494
2493
  "description": "The weight of the font. Can be a number (100-900) or a string ('normal', 'bold', etc.). 100 is lightest, 900 is heaviest (boldest).",
2495
2494
  "default": "400"
2496
2495
  },
2497
- "style": {
2498
- "description": "The font style.",
2499
- "type": "string",
2500
- "enum": [
2501
- "normal",
2502
- "italic",
2503
- "oblique"
2504
- ],
2505
- "default": "normal",
2506
- "example": "italic"
2507
- },
2508
2496
  "color": {
2509
2497
  "description": "The text color using hexadecimal color notation.",
2510
2498
  "type": "string",
@@ -2520,6 +2508,12 @@
2520
2508
  "default": 1,
2521
2509
  "example": 0.9
2522
2510
  },
2511
+ "background": {
2512
+ "description": "The background color behind the text using hexadecimal color notation.",
2513
+ "type": "string",
2514
+ "pattern": "^#[A-Fa-f0-9]{6}$",
2515
+ "example": "#000000"
2516
+ },
2523
2517
  "stroke": {
2524
2518
  "description": "Text stroke (outline) properties.",
2525
2519
  "$ref": "#/components/schemas/RichTextStroke"
package/dist/schema.d.ts CHANGED
@@ -598,11 +598,10 @@ export interface components {
598
598
  */
599
599
  src: string;
600
600
  /**
601
- * @description Set to `true` to force re-encoding of the video during preprocessing. This can help resolve compatibility issues, fix rotation problems, synchronize audio, or convert formats. The video will be processed to ensure optimal compatibility with the rendering engine.
602
- * @default false
601
+ * @description Set to `true` to force re-encoding of the video during preprocessing. This can help resolve compatibility issues, fix rotation problems, synchronize audio, or convert formats. The video will be processed to ensure optimal compatibility with the rendering engine.
603
602
  * @example false
604
603
  */
605
- transcode: boolean;
604
+ transcode?: boolean;
606
605
  /**
607
606
  * @description The start trim point of the video clip, in seconds (defaults to 0). Videos will start from the in trim point. The video will play until the file ends or the Clip length is reached.
608
607
  * @example 2
@@ -1370,13 +1369,6 @@ export interface components {
1370
1369
  * @default 400
1371
1370
  */
1372
1371
  weight: unknown;
1373
- /**
1374
- * @description The font style.
1375
- * @default normal
1376
- * @example italic
1377
- * @enum {string}
1378
- */
1379
- style: "normal" | "italic" | "oblique";
1380
1372
  /**
1381
1373
  * @description The text color using hexadecimal color notation.
1382
1374
  * @default #ffffff
@@ -1389,6 +1381,11 @@ export interface components {
1389
1381
  * @example 0.9
1390
1382
  */
1391
1383
  opacity: number;
1384
+ /**
1385
+ * @description The background color behind the text using hexadecimal color notation.
1386
+ * @example #000000
1387
+ */
1388
+ background?: string;
1392
1389
  /** @description Text stroke (outline) properties. */
1393
1390
  stroke?: components["schemas"]["RichTextStroke"];
1394
1391
  };
@@ -75,8 +75,8 @@ exports.captionassetCaptionAssetSchema = zod_1.z.object({
75
75
  font: zod_1.z.optional(exports.captionpropertiesCaptionFontSchema),
76
76
  background: zod_1.z.optional(exports.captionpropertiesCaptionBackgroundSchema),
77
77
  margin: zod_1.z.optional(exports.captionpropertiesCaptionMarginSchema),
78
- trim: zod_1.z.optional(zod_1.z.number()),
79
- speed: zod_1.z.optional(zod_1.z.number().gte(0).lte(10)),
78
+ trim: zod_1.z.optional(zod_1.z.preprocess((val) => typeof val === 'string' && val !== '' && !isNaN(Number(val)) ? Number(val) : val, zod_1.z.number())),
79
+ speed: zod_1.z.optional(zod_1.z.preprocess((val) => typeof val === 'string' && val !== '' && !isNaN(Number(val)) ? Number(val) : val, zod_1.z.number().gte(0).lte(10))),
80
80
  });
81
81
  exports.captionAssetSchema = exports.captionassetCaptionAssetSchema;
82
82
  /**
@@ -873,7 +873,7 @@ exports.imagetovideoassetImageToVideoAssetSchema = zod_1.z.object({
873
873
  src: zod_1.z.optional(zod_1.z.string()),
874
874
  prompt: zod_1.z.optional(zod_1.z.string()),
875
875
  aspectRatio: zod_1.z.optional(zod_1.z.enum(["1:1", "4:3", "16:9", "9:16", "3:4", "21:9", "9:21"])),
876
- speed: zod_1.z.optional(zod_1.z.number().gte(0).lte(10)),
876
+ speed: zod_1.z.optional(zod_1.z.preprocess((val) => typeof val === 'string' && val !== '' && !isNaN(Number(val)) ? Number(val) : val, zod_1.z.number().gte(0).lte(10))),
877
877
  crop: zod_1.z.optional(exports.cropCropSchema),
878
878
  });
879
879
  exports.imageToVideoAssetSchema = exports.imagetovideoassetImageToVideoAssetSchema;
@@ -981,7 +981,7 @@ exports.uploadResponseSchema = exports.uploadresponseUploadResponseSchema;
981
981
  * Set the playback speed of a video or audio file. Allows you to preserve the pitch of the audio so that it is sped up without sounding too high pitched or too low.
982
982
  */
983
983
  exports.speedSpeedSchema = zod_1.z.object({
984
- speed: zod_1.z.optional(zod_1.z.number().gte(0).lte(10)),
984
+ speed: zod_1.z.optional(zod_1.z.preprocess((val) => typeof val === 'string' && val !== '' && !isNaN(Number(val)) ? Number(val) : val, zod_1.z.number().gte(0).lte(10))),
985
985
  preservePitch: zod_1.z.optional(zod_1.z.boolean()),
986
986
  });
987
987
  exports.speedSchema = exports.speedSpeedSchema;
@@ -998,7 +998,7 @@ exports.transcriptionSchema = exports.transcriptionTranscriptionSchema;
998
998
  exports.lumaassetLumaAssetSchema = zod_1.z.object({
999
999
  type: zod_1.z.enum(["luma"]),
1000
1000
  src: zod_1.z.string(),
1001
- trim: zod_1.z.optional(zod_1.z.number()),
1001
+ trim: zod_1.z.optional(zod_1.z.preprocess((val) => typeof val === 'string' && val !== '' && !isNaN(Number(val)) ? Number(val) : val, zod_1.z.number())),
1002
1002
  });
1003
1003
  exports.lumaAssetSchema = exports.lumaassetLumaAssetSchema;
1004
1004
  /**
@@ -1226,9 +1226,9 @@ exports.richtextpropertiesRichTextFontSchema = zod_1.z.object({
1226
1226
  family: zod_1.z.optional(zod_1.z.string()).default("Open Sans"),
1227
1227
  size: zod_1.z.optional(zod_1.z.int().gte(1).lte(500)).default(24),
1228
1228
  weight: zod_1.z.optional(zod_1.z.unknown()).default("400"),
1229
- style: zod_1.z.optional(zod_1.z.enum(["normal", "italic", "oblique"])),
1230
1229
  color: zod_1.z.optional(zod_1.z.string().regex(/^#[A-Fa-f0-9]{6}$/)).default("#ffffff"),
1231
1230
  opacity: zod_1.z.optional(zod_1.z.number().gte(0).lte(1)).default(1),
1231
+ background: zod_1.z.optional(zod_1.z.string().regex(/^#[A-Fa-f0-9]{6}$/)),
1232
1232
  stroke: zod_1.z.optional(exports.richtextpropertiesRichTextStrokeSchema),
1233
1233
  });
1234
1234
  exports.richTextFontSchema = exports.richtextpropertiesRichTextFontSchema;
@@ -1787,9 +1787,9 @@ exports.tweenSchema = exports.tweenTweenSchema;
1787
1787
  exports.audioassetAudioAssetSchema = zod_1.z.object({
1788
1788
  type: zod_1.z.enum(["audio"]),
1789
1789
  src: zod_1.z.string(),
1790
- trim: zod_1.z.optional(zod_1.z.number()),
1790
+ trim: zod_1.z.optional(zod_1.z.preprocess((val) => typeof val === 'string' && val !== '' && !isNaN(Number(val)) ? Number(val) : val, zod_1.z.number())),
1791
1791
  volume: zod_1.z.optional(zod_1.z.union([zod_1.z.number().gte(0).lte(1), zod_1.z.array(exports.tweenTweenSchema)])),
1792
- speed: zod_1.z.optional(zod_1.z.number().gte(0).lte(10)),
1792
+ speed: zod_1.z.optional(zod_1.z.preprocess((val) => typeof val === 'string' && val !== '' && !isNaN(Number(val)) ? Number(val) : val, zod_1.z.number().gte(0).lte(10))),
1793
1793
  effect: zod_1.z.optional(zod_1.z.enum(["none", "fadeIn", "fadeOut", "fadeInFadeOut"])),
1794
1794
  });
1795
1795
  exports.audioAssetSchema = exports.audioassetAudioAssetSchema;
@@ -1879,11 +1879,11 @@ exports.transformationSchema = exports.transformationTransformationSchema;
1879
1879
  exports.videoassetVideoAssetSchema = zod_1.z.object({
1880
1880
  type: zod_1.z.enum(["video"]),
1881
1881
  src: zod_1.z.string(),
1882
- transcode: zod_1.z.optional(zod_1.z.boolean()).default(false),
1883
- trim: zod_1.z.optional(zod_1.z.number()),
1882
+ transcode: zod_1.z.optional(zod_1.z.boolean()),
1883
+ trim: zod_1.z.optional(zod_1.z.preprocess((val) => typeof val === 'string' && val !== '' && !isNaN(Number(val)) ? Number(val) : val, zod_1.z.number())),
1884
1884
  volume: zod_1.z.optional(zod_1.z.union([zod_1.z.number().gte(0).lte(1), zod_1.z.array(exports.tweenTweenSchema)])),
1885
1885
  volumeEffect: zod_1.z.optional(zod_1.z.enum(["none", "fadeIn", "fadeOut", "fadeInFadeOut"])),
1886
- speed: zod_1.z.optional(zod_1.z.number().gte(0).lte(10)),
1886
+ speed: zod_1.z.optional(zod_1.z.preprocess((val) => typeof val === 'string' && val !== '' && !isNaN(Number(val)) ? Number(val) : val, zod_1.z.number().gte(0).lte(10))),
1887
1887
  crop: zod_1.z.optional(exports.cropCropSchema),
1888
1888
  chromaKey: zod_1.z.optional(exports.chromakeyChromaKeySchema),
1889
1889
  });
@@ -1911,10 +1911,10 @@ exports.assetSchema = exports.assetAssetSchema;
1911
1911
  */
1912
1912
  exports.clipClipSchema = zod_1.z.object({
1913
1913
  asset: exports.assetAssetSchema,
1914
- start: zod_1.z.union([zod_1.z.number(), zod_1.z.enum(["auto"])]),
1915
- length: zod_1.z.union([zod_1.z.number(), zod_1.z.literal("auto"), zod_1.z.literal("end")]),
1914
+ start: zod_1.z.union([zod_1.z.preprocess((val) => typeof val === 'string' && val !== '' && !isNaN(Number(val)) ? Number(val) : val, zod_1.z.number()), zod_1.z.enum(["auto"])]),
1915
+ length: zod_1.z.union([zod_1.z.preprocess((val) => typeof val === 'string' && val !== '' && !isNaN(Number(val)) ? Number(val) : val, zod_1.z.number()), zod_1.z.literal("auto"), zod_1.z.literal("end")]),
1916
1916
  fit: zod_1.z.optional(zod_1.z.enum(["cover", "contain", "crop", "none"])),
1917
- scale: zod_1.z.optional(zod_1.z.number()),
1917
+ scale: zod_1.z.optional(zod_1.z.preprocess((val) => typeof val === 'string' && val !== '' && !isNaN(Number(val)) ? Number(val) : val, zod_1.z.number())),
1918
1918
  width: zod_1.z.optional(zod_1.z.int().gte(1).lte(3840)),
1919
1919
  height: zod_1.z.optional(zod_1.z.int().gte(1).lte(2160)),
1920
1920
  position: zod_1.z.optional(zod_1.z.enum([