@shotstack/schemas 1.8.2 → 1.8.4

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.
@@ -801,6 +801,38 @@ export const cropCropSchema = z.object({
801
801
  } return v; }), z.number().gte(0).lte(1)), z.string().regex(/^\{\{\s*[A-Za-z0-9_]+\s*\}\}$/)])),
802
802
  }).strict();
803
803
  export const cropSchema = cropCropSchema;
804
+ /**
805
+ * Pass additional options to control how files are stored in Akamai NetStorage.
806
+ */
807
+ export const akamaiNetStorageDestinationOptionsAkamaiNetStorageDestinationOptionsSchema = z.object({
808
+ host: z.string(),
809
+ cpCode: z.string(),
810
+ path: z.optional(z.unknown()),
811
+ filename: z.optional(z.unknown()),
812
+ }).strict();
813
+ /**
814
+ * Send videos and assets to [Akamai NetStorage](https://techdocs.akamai.com/netstorage-usage/docs). Send files to your NetStorage upload directory with a custom path and filename. Akamai credentials are required and added via the [dashboard](https://dashboard.shotstack.io/integrations/akamai-netstorage), not in the request.
815
+ */
816
+ export const akamaiNetStorageDestinationAkamaiNetStorageDestinationSchema = z.object({
817
+ provider: z.string().default("akamai-netstorage"),
818
+ options: z.optional(akamaiNetStorageDestinationOptionsAkamaiNetStorageDestinationOptionsSchema),
819
+ }).strict();
820
+ /**
821
+ * Pass additional options to control how files are stored in Azure Blob Storage.
822
+ */
823
+ export const azureBlobStorageDestinationOptionsAzureBlobStorageDestinationOptionsSchema = z.object({
824
+ accountName: z.string(),
825
+ container: z.string(),
826
+ prefix: z.optional(z.unknown()),
827
+ filename: z.optional(z.unknown()),
828
+ }).strict();
829
+ /**
830
+ * Send videos and assets to [Azure Blob Storage](https://learn.microsoft.com/en-us/azure/storage/blobs/). Send files to any container with a custom prefix and filename. Azure credentials are required and added via the [dashboard](https://dashboard.shotstack.io/integrations/azure-blob-storage), not in the request.
831
+ */
832
+ export const azureBlobStorageDestinationAzureBlobStorageDestinationSchema = z.object({
833
+ provider: z.string().default("azure-blob-storage"),
834
+ options: z.optional(azureBlobStorageDestinationOptionsAzureBlobStorageDestinationOptionsSchema),
835
+ }).strict();
804
836
  /**
805
837
  * Pass additional options to control how files are stored in Google Cloud Storage.
806
838
  */
@@ -1322,29 +1354,6 @@ export const richcaptionpropertiesRichCaptionActiveFontSchema = z.object({
1322
1354
  } return v; }), z.number().gte(0).lte(1)), z.string().regex(/^\{\{\s*[A-Za-z0-9_]+\s*\}\}$/)])).default(1),
1323
1355
  }).strict();
1324
1356
  export const richCaptionActiveFontSchema = richcaptionpropertiesRichCaptionActiveFontSchema;
1325
- /**
1326
- * Font properties for rich captions. Defaults to Roboto.
1327
- */
1328
- export const richcaptionpropertiesRichCaptionFontSchema = z.object({
1329
- family: z.optional(z.string()).default("Roboto"),
1330
- size: z.optional(z.union([z.preprocess(((v) => { if (v === '' || v === null || v === undefined)
1331
- return undefined; if (Array.isArray(v))
1332
- return v; if (typeof v === 'string') {
1333
- if (/^\{\{\s*[A-Za-z0-9_]+\s*\}\}$/.test(v))
1334
- return v;
1335
- return Number(v);
1336
- } return v; }), z.number().int().gte(1).lte(500)), z.string().regex(/^\{\{\s*[A-Za-z0-9_]+\s*\}\}$/)])).default(24),
1337
- weight: z.optional(z.unknown()).default("400"),
1338
- color: z.optional(z.union([z.string().regex(/^#[A-Fa-f0-9]{6}$/), z.string().regex(/^\{\{\s*[A-Za-z0-9_]+\s*\}\}$/)])).default("#ffffff"),
1339
- opacity: z.optional(z.union([z.preprocess(((v) => { if (v === '' || v === null || v === undefined)
1340
- return undefined; if (Array.isArray(v))
1341
- return v; if (typeof v === 'string') {
1342
- if (/^\{\{\s*[A-Za-z0-9_]+\s*\}\}$/.test(v))
1343
- return v;
1344
- return Number(v);
1345
- } return v; }), z.number().gte(0).lte(1)), z.string().regex(/^\{\{\s*[A-Za-z0-9_]+\s*\}\}$/)])).default(1),
1346
- background: z.optional(z.union([z.string().regex(/^#[A-Fa-f0-9]{6}$/), z.string().regex(/^\{\{\s*[A-Za-z0-9_]+\s*\}\}$/)])),
1347
- }).strict();
1348
1357
  /**
1349
1358
  * Word-level animation properties for caption effects.
1350
1359
  */
@@ -1671,7 +1680,7 @@ export const richcaptionassetRichCaptionAssetSchema = z.object({
1671
1680
  type: z.enum(["rich-caption"]),
1672
1681
  src: z.optional(z.string().min(1)),
1673
1682
  words: z.optional(z.array(richcaptionpropertiesWordTimingSchema).max(100000)),
1674
- font: z.optional(richcaptionpropertiesRichCaptionFontSchema),
1683
+ font: z.optional(richtextpropertiesRichTextFontSchema),
1675
1684
  style: z.optional(richtextpropertiesRichTextStyleSchema),
1676
1685
  stroke: z.optional(richtextpropertiesRichTextStrokeSchema),
1677
1686
  shadow: z.optional(richtextpropertiesRichTextShadowSchema),
@@ -788,6 +788,50 @@ export const cropCropSchema = z.object({
788
788
 
789
789
  export const cropSchema = cropCropSchema;
790
790
 
791
+ /**
792
+ * Pass additional options to control how files are stored in Akamai NetStorage.
793
+ */
794
+ export const akamaiNetStorageDestinationOptionsAkamaiNetStorageDestinationOptionsSchema =
795
+ z.object({
796
+ host: z.string(),
797
+ cpCode: z.string(),
798
+ path: z.optional(z.unknown()),
799
+ filename: z.optional(z.unknown()),
800
+ }).strict();
801
+
802
+ /**
803
+ * Send videos and assets to [Akamai NetStorage](https://techdocs.akamai.com/netstorage-usage/docs). Send files to your NetStorage upload directory with a custom path and filename. Akamai credentials are required and added via the [dashboard](https://dashboard.shotstack.io/integrations/akamai-netstorage), not in the request.
804
+ */
805
+ export const akamaiNetStorageDestinationAkamaiNetStorageDestinationSchema =
806
+ z.object({
807
+ provider: z.string().default("akamai-netstorage"),
808
+ options: z.optional(
809
+ akamaiNetStorageDestinationOptionsAkamaiNetStorageDestinationOptionsSchema,
810
+ ),
811
+ }).strict();
812
+
813
+ /**
814
+ * Pass additional options to control how files are stored in Azure Blob Storage.
815
+ */
816
+ export const azureBlobStorageDestinationOptionsAzureBlobStorageDestinationOptionsSchema =
817
+ z.object({
818
+ accountName: z.string(),
819
+ container: z.string(),
820
+ prefix: z.optional(z.unknown()),
821
+ filename: z.optional(z.unknown()),
822
+ }).strict();
823
+
824
+ /**
825
+ * Send videos and assets to [Azure Blob Storage](https://learn.microsoft.com/en-us/azure/storage/blobs/). Send files to any container with a custom prefix and filename. Azure credentials are required and added via the [dashboard](https://dashboard.shotstack.io/integrations/azure-blob-storage), not in the request.
826
+ */
827
+ export const azureBlobStorageDestinationAzureBlobStorageDestinationSchema =
828
+ z.object({
829
+ provider: z.string().default("azure-blob-storage"),
830
+ options: z.optional(
831
+ azureBlobStorageDestinationOptionsAzureBlobStorageDestinationOptionsSchema,
832
+ ),
833
+ }).strict();
834
+
791
835
  /**
792
836
  * Pass additional options to control how files are stored in Google Cloud Storage.
793
837
  */
@@ -1392,18 +1436,6 @@ export const richcaptionpropertiesRichCaptionActiveFontSchema = z.object({
1392
1436
  export const richCaptionActiveFontSchema =
1393
1437
  richcaptionpropertiesRichCaptionActiveFontSchema;
1394
1438
 
1395
- /**
1396
- * Font properties for rich captions. Defaults to Roboto.
1397
- */
1398
- export const richcaptionpropertiesRichCaptionFontSchema = z.object({
1399
- family: z.optional(z.string()).default("Roboto"),
1400
- size: z.optional(z.union([z.preprocess(((v: unknown) => { if (v === '' || v === null || v === undefined) return undefined; if (Array.isArray(v)) return v; if (typeof v === 'string') { if (/^\{\{\s*[A-Za-z0-9_]+\s*\}\}$/.test(v)) return v; return Number(v); } return v; }), z.number().int().gte(1).lte(500)), z.string().regex(/^\{\{\s*[A-Za-z0-9_]+\s*\}\}$/)])).default(24),
1401
- weight: z.optional(z.unknown()).default("400"),
1402
- color: z.optional(z.union([z.string().regex(/^#[A-Fa-f0-9]{6}$/), z.string().regex(/^\{\{\s*[A-Za-z0-9_]+\s*\}\}$/)])).default("#ffffff"),
1403
- opacity: z.optional(z.union([z.preprocess(((v: unknown) => { if (v === '' || v === null || v === undefined) return undefined; if (Array.isArray(v)) return v; if (typeof v === 'string') { if (/^\{\{\s*[A-Za-z0-9_]+\s*\}\}$/.test(v)) return v; return Number(v); } return v; }), z.number().gte(0).lte(1)), z.string().regex(/^\{\{\s*[A-Za-z0-9_]+\s*\}\}$/)])).default(1),
1404
- background: z.optional(z.union([z.string().regex(/^#[A-Fa-f0-9]{6}$/), z.string().regex(/^\{\{\s*[A-Za-z0-9_]+\s*\}\}$/)])),
1405
- }).strict();
1406
-
1407
1439
  /**
1408
1440
  * Word-level animation properties for caption effects.
1409
1441
  */
@@ -1595,7 +1627,7 @@ export const richcaptionassetRichCaptionAssetSchema = z.object({
1595
1627
  type: z.enum(["rich-caption"]),
1596
1628
  src: z.optional(z.string().min(1)),
1597
1629
  words: z.optional(z.array(richcaptionpropertiesWordTimingSchema).max(100000)),
1598
- font: z.optional(richcaptionpropertiesRichCaptionFontSchema),
1630
+ font: z.optional(richtextpropertiesRichTextFontSchema),
1599
1631
  style: z.optional(richtextpropertiesRichTextStyleSchema),
1600
1632
  stroke: z.optional(richtextpropertiesRichTextStrokeSchema),
1601
1633
  shadow: z.optional(richtextpropertiesRichTextShadowSchema),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shotstack/schemas",
3
- "version": "1.8.2",
3
+ "version": "1.8.4",
4
4
  "description": "Centralized OpenAPI schemas and TypeScript types for Shotstack API",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",