@shop-os/modelkit 0.4.0 → 0.4.2

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/catalog.js CHANGED
@@ -211,35 +211,43 @@ var IMAGE_MODELS = [
211
211
  GEMINI_PROMPT_MAX_CHARS,
212
212
  NANO_BANANA_2_1_RATIOS
213
213
  ),
214
- geminiImage(
215
- "gemini-3-pro-image-preview",
216
- "Nano Banana Pro",
217
- ["nb-pro"],
218
- ["1K", "2K", "4K"],
219
- {
220
- provider: "google",
221
- description: "Create stunning, production-quality visuals with exceptional realism, detail, and typography. Best for campaigns, e-commerce, product photography, and hero creatives.",
222
- logo: "https://d31vvfpk2ppdyq.cloudfront.net/assets/image/192485d2-a76a-4657-9c06-930b2c70badd_compressed.png"
223
- },
224
- ["cowork", "space_builder"],
225
- { images: 14 },
226
- GEMINI_PROMPT_MAX_CHARS
227
- ),
228
- geminiImage(
229
- "gemini-3.1-flash-image-preview",
230
- "Nano Banana 2",
231
- ["nb-2"],
232
- // Flash 3.1 is the only Gemini image model with the 512 tier.
233
- ["512", "1K", "2K", "4K"],
234
- {
235
- provider: "google",
236
- description: "Generate high-quality images at speed. Perfect for brainstorming, concept boards, concept testing, creative exploration, and large batch workflows.",
237
- logo: "https://d31vvfpk2ppdyq.cloudfront.net/assets/image/192485d2-a76a-4657-9c06-930b2c70badd_compressed.png"
238
- },
239
- ["cowork", "space_builder"],
240
- { images: 14 },
241
- GEMINI_PROMPT_MAX_CHARS
242
- ),
214
+ // Google retired the -preview endpoints for the GA ids; the catalog ids stay because they
215
+ // are pricing keys and stored model ids.
216
+ {
217
+ ...geminiImage(
218
+ "gemini-3-pro-image-preview",
219
+ "Nano Banana Pro",
220
+ ["nb-pro"],
221
+ ["1K", "2K", "4K"],
222
+ {
223
+ provider: "google",
224
+ description: "Create stunning, production-quality visuals with exceptional realism, detail, and typography. Best for campaigns, e-commerce, product photography, and hero creatives.",
225
+ logo: "https://d31vvfpk2ppdyq.cloudfront.net/assets/image/192485d2-a76a-4657-9c06-930b2c70badd_compressed.png"
226
+ },
227
+ ["cowork", "space_builder"],
228
+ { images: 14 },
229
+ GEMINI_PROMPT_MAX_CHARS
230
+ ),
231
+ providerModelId: "gemini-3-pro-image"
232
+ },
233
+ {
234
+ ...geminiImage(
235
+ "gemini-3.1-flash-image-preview",
236
+ "Nano Banana 2",
237
+ ["nb-2"],
238
+ // Flash 3.1 is the only Gemini image model with the 512 tier.
239
+ ["512", "1K", "2K", "4K"],
240
+ {
241
+ provider: "google",
242
+ description: "Generate high-quality images at speed. Perfect for brainstorming, concept boards, concept testing, creative exploration, and large batch workflows.",
243
+ logo: "https://d31vvfpk2ppdyq.cloudfront.net/assets/image/192485d2-a76a-4657-9c06-930b2c70badd_compressed.png"
244
+ },
245
+ ["cowork", "space_builder"],
246
+ { images: 14 },
247
+ GEMINI_PROMPT_MAX_CHARS
248
+ ),
249
+ providerModelId: "gemini-3.1-flash-image"
250
+ },
243
251
  geminiImage(
244
252
  "gemini-3.1-flash-lite-image",
245
253
  "Nano Banana Lite",
@@ -1359,6 +1367,7 @@ var OMNI_RATIOS = ["16:9", "9:16"];
1359
1367
  var GROK_RATIOS = ["1:1", "16:9", "9:16", "4:3", "3:4", "3:2", "2:3"];
1360
1368
  var H3_RATIOS = ["21:9", "16:9", "4:3", "1:1", "3:4", "9:16"];
1361
1369
  var H3_REFERENCE_RATIOS = ["adaptive", ...H3_RATIOS];
1370
+ var WAN_RATIOS = ["adaptive", "16:9", "4:3", "1:1", "3:4", "9:16"];
1362
1371
  var NEGATIVE_PROMPT = "blur, distort, and low quality";
1363
1372
  var FRAMES_EXCLUDE_REFERENCES = { framesExcludeReferences: true };
1364
1373
  var KLING_PROMPT = { referenceSyntax: "numbered", maxChars: 2500 };
@@ -1369,10 +1378,12 @@ var SEEDANCE_2_AUDIO = {
1369
1378
  audioMaxBytes: 15 * 1024 * 1024
1370
1379
  };
1371
1380
  var H3_PROMPT = { referenceSyntax: "numbered", maxChars: 5e4 };
1381
+ var WAN_PROMPT = { referenceSyntax: "numbered", maxChars: 2e4 };
1372
1382
  var OMNI_PROMPT = { referenceSyntax: "caption", maxChars: 5e4 };
1373
1383
  var BYTEDANCE_LOGO = "https://d31vvfpk2ppdyq.cloudfront.net/assets/image/3bba5d81-4e57-4e71-911b-cdfa05acca2c_compressed.png";
1374
1384
  var GOOGLE_LOGO2 = "https://d31vvfpk2ppdyq.cloudfront.net/assets/image/192485d2-a76a-4657-9c06-930b2c70badd_compressed.png";
1375
1385
  var VIDEO_MODELS = [
1386
+ // Google shuts down the Veo 3.1 previews and Omni Flash 1.0 on 2026-10-22.
1376
1387
  {
1377
1388
  id: "veo-3.1",
1378
1389
  aliases: [
@@ -1385,8 +1396,9 @@ var VIDEO_MODELS = [
1385
1396
  type: "video",
1386
1397
  adapter: "google-genai",
1387
1398
  providerModelId: "veo-3.1-generate-preview",
1388
- lifecycle: "active",
1389
- exposure: ["cowork", "space_builder"],
1399
+ lifecycle: "deprecated",
1400
+ replacedBy: "gemini-omni-1.1-flash",
1401
+ exposure: [],
1390
1402
  constraints: {
1391
1403
  aspectRatios: [...OMNI_RATIOS],
1392
1404
  resolutions: ["720p", "1080p", "4k"],
@@ -1421,7 +1433,8 @@ var VIDEO_MODELS = [
1421
1433
  type: "video",
1422
1434
  adapter: "google-genai",
1423
1435
  providerModelId: "veo-3.1-fast-generate-preview",
1424
- lifecycle: "active",
1436
+ lifecycle: "deprecated",
1437
+ replacedBy: "gemini-omni-1.1-flash",
1425
1438
  exposure: [],
1426
1439
  constraints: {
1427
1440
  aspectRatios: [...OMNI_RATIOS],
@@ -1451,7 +1464,8 @@ var VIDEO_MODELS = [
1451
1464
  type: "video",
1452
1465
  adapter: "google-genai",
1453
1466
  providerModelId: "veo-3.1-lite-generate-preview",
1454
- lifecycle: "active",
1467
+ lifecycle: "deprecated",
1468
+ replacedBy: "gemini-omni-1.1-flash",
1455
1469
  exposure: [],
1456
1470
  constraints: {
1457
1471
  aspectRatios: [...OMNI_RATIOS],
@@ -1482,8 +1496,9 @@ var VIDEO_MODELS = [
1482
1496
  type: "video",
1483
1497
  adapter: "google-genai",
1484
1498
  providerModelId: "gemini-omni-flash-preview",
1485
- lifecycle: "active",
1486
- exposure: ["cowork", "space_builder"],
1499
+ lifecycle: "deprecated",
1500
+ replacedBy: "gemini-omni-1.1-flash",
1501
+ exposure: [],
1487
1502
  constraints: {
1488
1503
  // 1.0 rejects `resolution`; it renders 720p. No defaults: the adapter
1489
1504
  // sends ratio and duration only when the caller set them, so a
@@ -1969,6 +1984,48 @@ var VIDEO_MODELS = [
1969
1984
  // references instead of the adapter silently dropping the frame.
1970
1985
  capabilities: { ...FRAMES_EXCLUDE_REFERENCES }
1971
1986
  },
1987
+ {
1988
+ // One row for fal's three Wan 3.0 endpoints; the adapter picks text-, image- or
1989
+ // reference-to-video from the inputs. Each takes aspect_ratio, so none is ignored.
1990
+ // https://fal.ai/models/alibaba/wan-3.0/reference-to-video/api
1991
+ id: "wan-3.0",
1992
+ aliases: ["wan-3", "wan3"],
1993
+ label: "Wan 3",
1994
+ type: "video",
1995
+ adapter: "fal",
1996
+ providerModelId: "alibaba/wan-3.0",
1997
+ lifecycle: "active",
1998
+ exposure: ["cowork", "space_builder"],
1999
+ constraints: {
2000
+ aspectRatios: [...WAN_RATIOS],
2001
+ resolutions: ["480p", "720p", "1080p"],
2002
+ durations: { min: 2, max: 30 },
2003
+ durationPresets: [5, 10, 15, 30],
2004
+ references: {
2005
+ images: 10,
2006
+ videos: 5,
2007
+ audios: 5,
2008
+ videoSeconds: { total: 15 },
2009
+ audioSeconds: { total: 15 }
2010
+ },
2011
+ supports: ["seed", "lastFrame", "generateAudio", "safetyChecker"],
2012
+ prompt: WAN_PROMPT,
2013
+ audio: "optional"
2014
+ },
2015
+ defaults: {
2016
+ durationSeconds: 5,
2017
+ resolution: "1080p",
2018
+ aspectRatio: "adaptive",
2019
+ generateAudio: true
2020
+ },
2021
+ usage: { ...VIDEO_USAGE },
2022
+ pricingKind: "video_per_second",
2023
+ display: {
2024
+ provider: "alibaba",
2025
+ description: "Alibaba Wan 3 video model for text-to-video, image-to-video (start/end frame), and reference-to-video from up to 10 images, 5 videos and 5 audio clips, with native audio; 2-30 seconds at up to 1080p."
2026
+ },
2027
+ capabilities: { ...FRAMES_EXCLUDE_REFERENCES, lastFrameRequiresFirstFrame: true }
2028
+ },
1972
2029
  {
1973
2030
  // Duration 3-10s per trigger-workflows mapDuration; the endpoint takes no resolution.
1974
2031
  id: "kling-o1-v2v",
@@ -2038,7 +2095,8 @@ var VIDEO_MODELS = [
2038
2095
  },
2039
2096
  defaults: {},
2040
2097
  usage: { ...VIDEO_USAGE },
2041
- pricingKind: "video_per_second",
2098
+ // Higgsfield bills DoP per generation: a fixed-length clip with no duration knob.
2099
+ pricingKind: "flat",
2042
2100
  display: {
2043
2101
  provider: "higgsfield",
2044
2102
  description: "Higgsfield DOP image-to-video model; animates a required first-frame image from a text prompt with an optional last-frame image and motion controls."