@picsart/ai-sdk 6.20.0 → 6.21.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.
Files changed (3) hide show
  1. package/index.d.ts +9 -9
  2. package/index.js +22 -23
  3. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -880,7 +880,7 @@ type ModelInputById = {
880
880
  "kling-v3": {
881
881
  prompt: string;
882
882
  aspectRatio?: "16:9" | "9:16" | "1:1";
883
- duration?: 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15;
883
+ duration?: number;
884
884
  startFrame?: string;
885
885
  endFrame?: string;
886
886
  negativePrompt?: string;
@@ -903,7 +903,7 @@ type ModelInputById = {
903
903
  "kling-v3-omni": {
904
904
  prompt: string;
905
905
  aspectRatio?: "16:9" | "9:16" | "1:1";
906
- duration?: 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15;
906
+ duration?: number;
907
907
  resolution?: "720p" | "1080p" | "4k";
908
908
  generateAudio?: boolean;
909
909
  startFrame?: string;
@@ -926,7 +926,7 @@ type ModelInputById = {
926
926
  "kling-v3-turbo": {
927
927
  prompt: string;
928
928
  aspectRatio?: "16:9" | "9:16" | "1:1";
929
- duration?: 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15;
929
+ duration?: number;
930
930
  negativePrompt?: string;
931
931
  resolution?: "720p" | "1080p";
932
932
  startFrame?: string;
@@ -1295,14 +1295,14 @@ type ModelInputById = {
1295
1295
  "pixverse-c1": {
1296
1296
  prompt: string;
1297
1297
  quality?: "360p" | "540p" | "720p" | "1080p";
1298
- duration?: 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15;
1298
+ duration?: number;
1299
1299
  generateAudio?: boolean;
1300
1300
  aspectRatio?: "16:9" | "4:3" | "1:1" | "3:4" | "9:16" | "2:3" | "3:2" | "21:9";
1301
1301
  };
1302
1302
  "pixverse-c1-fusion": {
1303
1303
  prompt: string;
1304
1304
  quality?: "360p" | "540p" | "720p" | "1080p";
1305
- duration?: 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15;
1305
+ duration?: number;
1306
1306
  generateAudio?: boolean;
1307
1307
  aspectRatio?: "16:9" | "4:3" | "1:1" | "3:4" | "9:16" | "2:3" | "3:2" | "21:9";
1308
1308
  imageUrls: [string, ...string[]];
@@ -1310,21 +1310,21 @@ type ModelInputById = {
1310
1310
  "pixverse-c1-image": {
1311
1311
  prompt: string;
1312
1312
  quality?: "360p" | "540p" | "720p" | "1080p";
1313
- duration?: 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15;
1313
+ duration?: number;
1314
1314
  generateAudio?: boolean;
1315
1315
  imageUrls: [string, ...string[]];
1316
1316
  };
1317
1317
  "pixverse-v6": {
1318
1318
  prompt: string;
1319
1319
  quality?: "360p" | "540p" | "720p" | "1080p";
1320
- duration?: 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15;
1320
+ duration?: number;
1321
1321
  generateAudio?: boolean;
1322
1322
  aspectRatio?: "16:9" | "4:3" | "1:1" | "3:4" | "9:16" | "2:3" | "3:2" | "21:9";
1323
1323
  };
1324
1324
  "pixverse-v6-fusion": {
1325
1325
  prompt: string;
1326
1326
  quality?: "360p" | "540p" | "720p" | "1080p";
1327
- duration?: 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15;
1327
+ duration?: number;
1328
1328
  generateAudio?: boolean;
1329
1329
  aspectRatio?: "16:9" | "4:3" | "1:1" | "3:4" | "9:16" | "2:3" | "3:2" | "21:9";
1330
1330
  imageUrls: [string, ...string[]];
@@ -1332,7 +1332,7 @@ type ModelInputById = {
1332
1332
  "pixverse-v6-image": {
1333
1333
  prompt: string;
1334
1334
  quality?: "360p" | "540p" | "720p" | "1080p";
1335
- duration?: 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15;
1335
+ duration?: number;
1336
1336
  generateAudio?: boolean;
1337
1337
  imageUrls: [string, ...string[]];
1338
1338
  };
package/index.js CHANGED
@@ -1411,7 +1411,7 @@ var klingOmniAdvancedParams = {
1411
1411
  };
1412
1412
 
1413
1413
  // src/vendors/catalog/kling/index.ts
1414
- var V3_DURATIONS = [3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15];
1414
+ var V3_DURATION = { min: 3, max: 15 };
1415
1415
  var V26_DURATIONS = [5, 10];
1416
1416
  var KLING_IMAGE_AR = ["16:9", "9:16", "1:1", "21:9", "4:3", "3:2", "2:3", "3:4"];
1417
1417
  var klingV3ProVideoBase = {
@@ -1428,10 +1428,9 @@ var klingV3ProVideoBase = {
1428
1428
  ],
1429
1429
  paramConfig: {
1430
1430
  ...params.prompt({ maxLength: 2500 }),
1431
- ...paramPresets.videoStartEndWithAudio({
1432
- durations: V3_DURATIONS,
1433
- defaultDuration: 5
1434
- }),
1431
+ ...paramPresets.videoStartEndWithAudio(),
1432
+ // Overrides the preset's enum duration.
1433
+ ...params.durationRange(V3_DURATION.min, V3_DURATION.max, 5),
1435
1434
  ...klingV3AdvancedParams,
1436
1435
  ...params.renderingSpeed([{ id: "std", label: "Standard" }, { id: "pro", label: "Pro" }, { id: "4k", label: "4K" }], "4k")
1437
1436
  }
@@ -1449,7 +1448,7 @@ var klingV3TurboVideoBase = {
1449
1448
  paramConfig: {
1450
1449
  ...params.prompt({ maxLength: 2500 }),
1451
1450
  ...params.aspectRatio(["16:9", "9:16", "1:1"]),
1452
- ...params.duration(V3_DURATIONS, 5),
1451
+ ...params.durationRange(V3_DURATION.min, V3_DURATION.max, 5),
1453
1452
  ...params.negativePrompt(),
1454
1453
  ...params.resolution(["720p", "1080p"], "720p"),
1455
1454
  ...params.startFrame("Start Frame")
@@ -1538,10 +1537,10 @@ var { MODELS } = defineModels("kling", [
1538
1537
  paramConfig: {
1539
1538
  ...params.prompt({ maxLength: 2500 }),
1540
1539
  ...params.aspectRatio(["16:9", "9:16", "1:1"]),
1541
- ...params.duration(V3_DURATIONS, 5),
1540
+ ...params.durationRange(V3_DURATION.min, V3_DURATION.max, 5),
1542
1541
  // Quality tier maps straight to the wire `mode`: 720p→std, 1080p→pro, 4k→4k.
1543
1542
  ...params.resolution(["720p", "1080p", "4k"], "720p"),
1544
- ...params.generateAudio(false),
1543
+ ...params.generateAudio(),
1545
1544
  ...params.startFrame("First Frame"),
1546
1545
  ...params.endFrame("End Frame"),
1547
1546
  // Vendor cap: reference images + frames + multi-image elements ≤ 7
@@ -1593,7 +1592,7 @@ var { MODELS } = defineModels("kling", [
1593
1592
  ...params.aspectRatio(["16:9", "9:16", "1:1"]),
1594
1593
  ...params.duration([5, 10], 5),
1595
1594
  ...params.renderingSpeed([{ id: "std", label: "Standard" }, { id: "pro", label: "Pro" }], "std"),
1596
- ...params.generateAudio(false)
1595
+ ...params.generateAudio()
1597
1596
  }
1598
1597
  },
1599
1598
  // ── Video: Motion Control ─────────────────────────────────────────
@@ -1937,7 +1936,7 @@ function assertMultiPrompt(multiPrompt, totalDuration, model) {
1937
1936
  }
1938
1937
  var buildKlingV3Payload = (defaultMode = "std") => (input) => {
1939
1938
  const hasEndFrame = !!(input.startFrame && input.endFrame);
1940
- const hasSound = !!input.generateAudio;
1939
+ const hasSound = input.generateAudio ?? true;
1941
1940
  const mode = input.renderingSpeed ?? defaultMode;
1942
1941
  const totalDuration = input.duration ?? 5;
1943
1942
  if (input.multiShot && (input.shotType ?? "customize") !== "intelligence") {
@@ -1977,7 +1976,7 @@ var buildKlingV3TurboPayload = (input) => ({
1977
1976
  });
1978
1977
  var buildKlingV26Payload = (input) => {
1979
1978
  const hasEndFrame = !!(input.startFrame && input.endFrame);
1980
- const hasSound = !!input.generateAudio && !hasEndFrame;
1979
+ const hasSound = (input.generateAudio ?? true) && !hasEndFrame;
1981
1980
  return {
1982
1981
  prompt: input.prompt,
1983
1982
  aspect_ratio: input.aspectRatio ?? "16:9",
@@ -2004,7 +2003,7 @@ var buildOmniV3 = (input) => {
2004
2003
  }] : [];
2005
2004
  const hasBaseEdit = videoList[0]?.refer_type === "base";
2006
2005
  const hasReferenceVideo = videoList.length > 0;
2007
- const hasSound = !!input.generateAudio && !hasReferenceVideo;
2006
+ const hasSound = (input.generateAudio ?? true) && !hasReferenceVideo;
2008
2007
  const mode = input.resolution === "4k" ? hasReferenceVideo ? "pro" : "4k" : input.resolution === "1080p" ? "pro" : "std";
2009
2008
  const totalDuration = input.duration ?? 5;
2010
2009
  if (input.multiShot && !hasBaseEdit) {
@@ -2027,7 +2026,7 @@ var buildOmniV3 = (input) => {
2027
2026
  };
2028
2027
  };
2029
2028
  var buildVideoO1 = (input) => {
2030
- const hasSound = !!input.generateAudio;
2029
+ const hasSound = input.generateAudio ?? true;
2031
2030
  return {
2032
2031
  prompt: input.prompt,
2033
2032
  model_name: "kling-video-o1",
@@ -4359,7 +4358,7 @@ var buildSeedance15ProPayload = (ctx) => ({
4359
4358
  ratio: ctx.aspectRatio ?? "16:9",
4360
4359
  duration: ctx.duration ?? 5,
4361
4360
  resolution: ctx.resolution ?? "720p",
4362
- generate_audio: ctx.generateAudio ?? false,
4361
+ generate_audio: ctx.generateAudio ?? true,
4363
4362
  ...ctx.negativePrompt ? { negative_prompt: ctx.negativePrompt } : {}
4364
4363
  });
4365
4364
  var buildSeedanceI2VPayload = (ctx) => ({
@@ -4665,7 +4664,7 @@ var seedance25TaskTypeParam = {
4665
4664
  }
4666
4665
  }
4667
4666
  };
4668
- var { MODELS: MODELS13 } = defineModels("seedance", [
4667
+ var { MODELS: MODELS13 } = defineModels("bytedance", [
4669
4668
  {
4670
4669
  id: "seedance-2.5",
4671
4670
  name: "Seedance 2.5",
@@ -5199,7 +5198,7 @@ var { MODELS: MODELS13 } = defineModels("seedance", [
5199
5198
  ...params.aspectRatio(SEEDANCE_AR),
5200
5199
  ...params.resolution(["480p", "720p"], "720p"),
5201
5200
  ...params.duration(SEEDANCE_15_DURATIONS, 5),
5202
- ...params.generateAudio(false),
5201
+ ...params.generateAudio(),
5203
5202
  ...params.startFrame(),
5204
5203
  ...params.endFrame()
5205
5204
  }
@@ -5253,7 +5252,7 @@ var seedreamV2Params = {
5253
5252
  ...params.imageInput(2, "Source Images"),
5254
5253
  ...params.negativePrompt()
5255
5254
  };
5256
- var { MODELS: MODELS14 } = defineModels("seedream", [
5255
+ var { MODELS: MODELS14 } = defineModels("bytedance", [
5257
5256
  {
5258
5257
  id: "seedream-5.0-flash",
5259
5258
  name: "Seedream 5.0 Flash",
@@ -5420,7 +5419,7 @@ var refMutexConstraints = [
5420
5419
  imageUrls: { disabled: true, reason: REF_MUTEX_REASON }
5421
5420
  } }
5422
5421
  ];
5423
- var { MODELS: MODELS15 } = defineModels("seedaudio", [
5422
+ var { MODELS: MODELS15 } = defineModels("bytedance", [
5424
5423
  {
5425
5424
  id: "seed-audio-1.0-multilingual",
5426
5425
  name: "Seed Audio Multilingual",
@@ -9803,13 +9802,13 @@ var { MODELS: MODELS32 } = defineModels("happyhorse", [
9803
9802
  // src/vendors/catalog/pixverse.ts
9804
9803
  var PIXVERSE_QUALITIES = ["360p", "540p", "720p", "1080p"];
9805
9804
  var PIXVERSE_ASPECT_RATIOS = ["16:9", "4:3", "1:1", "3:4", "9:16", "2:3", "3:2", "21:9"];
9806
- var PIXVERSE_DURATIONS = [5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15];
9805
+ var PIXVERSE_DURATION = { min: 5, max: 15 };
9807
9806
  var MAX_REFERENCE_IMAGES = 7;
9808
9807
  var baseParams = {
9809
9808
  ...params.prompt({ maxLength: 5e3 }),
9810
9809
  ...p.quality(PIXVERSE_QUALITIES, "540p"),
9811
- ...params.duration(PIXVERSE_DURATIONS, 5),
9812
- ...params.generateAudio(false)
9810
+ ...params.durationRange(PIXVERSE_DURATION.min, PIXVERSE_DURATION.max, 5),
9811
+ ...params.generateAudio()
9813
9812
  };
9814
9813
  var baseFeatures = [
9815
9814
  feat("Audio", "audio"),
@@ -9919,7 +9918,7 @@ var commonFields = (input, model) => ({
9919
9918
  model,
9920
9919
  quality: input.quality ?? "540p",
9921
9920
  duration: input.duration ?? 5,
9922
- ...input.generateAudio != null ? { generate_audio_switch: input.generateAudio } : {}
9921
+ generate_audio_switch: input.generateAudio ?? true
9923
9922
  });
9924
9923
  var buildTextToVideoPayload = (model) => (input) => ({
9925
9924
  ...commonFields(input, model),
@@ -11045,7 +11044,7 @@ function buildItemMetadata(parsed, item, _index, provider) {
11045
11044
  const lastFrame = it?.last_frame_url ?? top?.last_frame_url;
11046
11045
  if (typeof lastFrame === "string") meta.lastFrameUrl = lastFrame;
11047
11046
  const draftTask = top?.draft_task;
11048
- if (provider === "seedance" && isSeedanceDraftTask(draftTask)) {
11047
+ if (provider === "bytedance" && isSeedanceDraftTask(draftTask)) {
11049
11048
  meta.draftTask = { id: draftTask.id, video_input: draftTask.video_input, signature: draftTask.signature };
11050
11049
  }
11051
11050
  return Object.keys(meta).length > 0 ? meta : void 0;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@picsart/ai-sdk",
3
- "version": "6.20.0",
3
+ "version": "6.21.0",
4
4
  "type": "module",
5
5
  "description": "Type-safe SDK for 100+ AI models — image, video, audio, and text generation with Picsart",
6
6
  "license": "MIT",