@shop-os/modelkit 0.2.8 → 0.2.10
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/CHANGELOG.md +14 -0
- package/dist/catalog.cjs +126 -82
- package/dist/catalog.cjs.map +1 -1
- package/dist/catalog.d.cts +26 -5
- package/dist/catalog.d.ts +26 -5
- package/dist/catalog.js +126 -82
- package/dist/catalog.js.map +1 -1
- package/dist/index.cjs +158 -88
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +26 -5
- package/dist/index.d.ts +26 -5
- package/dist/index.js +152 -88
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/catalog.js
CHANGED
|
@@ -120,6 +120,27 @@ var Catalog = class _Catalog {
|
|
|
120
120
|
}
|
|
121
121
|
};
|
|
122
122
|
|
|
123
|
+
// src/catalog/exposure.ts
|
|
124
|
+
var SURFACES = ["cowork", "space_builder"];
|
|
125
|
+
function normalizeExposure(value) {
|
|
126
|
+
if (value === "catalog") return ["cowork", "space_builder"];
|
|
127
|
+
if (value === "internal") return [];
|
|
128
|
+
if (Array.isArray(value)) {
|
|
129
|
+
if (value.every((entry) => SURFACES.includes(entry))) {
|
|
130
|
+
const present = new Set(value);
|
|
131
|
+
return SURFACES.filter((surface) => present.has(surface));
|
|
132
|
+
}
|
|
133
|
+
return value;
|
|
134
|
+
}
|
|
135
|
+
return value;
|
|
136
|
+
}
|
|
137
|
+
function isListedOn(row, surface) {
|
|
138
|
+
return row.lifecycle === "active" && row.exposure.includes(surface);
|
|
139
|
+
}
|
|
140
|
+
function isListed(row) {
|
|
141
|
+
return row.lifecycle === "active" && row.exposure.length > 0;
|
|
142
|
+
}
|
|
143
|
+
|
|
123
144
|
// src/catalog/image.ts
|
|
124
145
|
var IMAGE_USAGE = { unit: "images" };
|
|
125
146
|
var GEMINI_RATIOS = [
|
|
@@ -170,7 +191,7 @@ var IMAGE_MODELS = [
|
|
|
170
191
|
description: "Create stunning, production-quality visuals with exceptional realism, detail, and typography. Best for campaigns, e-commerce, product photography, and hero creatives.",
|
|
171
192
|
logo: "https://d31vvfpk2ppdyq.cloudfront.net/assets/image/192485d2-a76a-4657-9c06-930b2c70badd_compressed.png"
|
|
172
193
|
},
|
|
173
|
-
"
|
|
194
|
+
["cowork", "space_builder"],
|
|
174
195
|
{ images: 14 }
|
|
175
196
|
),
|
|
176
197
|
geminiImage(
|
|
@@ -184,7 +205,7 @@ var IMAGE_MODELS = [
|
|
|
184
205
|
description: "Generate high-quality images at speed. Perfect for brainstorming, moodboards, concept testing, creative exploration, and large batch workflows.",
|
|
185
206
|
logo: "https://d31vvfpk2ppdyq.cloudfront.net/assets/image/192485d2-a76a-4657-9c06-930b2c70badd_compressed.png"
|
|
186
207
|
},
|
|
187
|
-
"
|
|
208
|
+
["cowork", "space_builder"],
|
|
188
209
|
{ images: 14 }
|
|
189
210
|
),
|
|
190
211
|
geminiImage(
|
|
@@ -197,7 +218,7 @@ var IMAGE_MODELS = [
|
|
|
197
218
|
description: "The fastest and most affordable image model. Ideal for rapid drafts, bulk exploration, and iterative concept testing at 1K resolution.",
|
|
198
219
|
logo: "https://d31vvfpk2ppdyq.cloudfront.net/assets/image/192485d2-a76a-4657-9c06-930b2c70badd_compressed.png"
|
|
199
220
|
},
|
|
200
|
-
"
|
|
221
|
+
["cowork", "space_builder"],
|
|
201
222
|
{ images: 14 }
|
|
202
223
|
),
|
|
203
224
|
// trigger-workflows validates 1K only; pricing seeds 2K/4K rows so allow all three.
|
|
@@ -210,7 +231,7 @@ var IMAGE_MODELS = [
|
|
|
210
231
|
provider: "google",
|
|
211
232
|
description: "Nano Banana (legacy Gemini 2.5 Flash Image) native image generation and editing model for high-volume, low-latency creative workflows."
|
|
212
233
|
},
|
|
213
|
-
|
|
234
|
+
[]
|
|
214
235
|
),
|
|
215
236
|
{
|
|
216
237
|
// Cowork "auto" lets OpenAI pick the size; the canonical equivalent is adaptive.
|
|
@@ -221,7 +242,7 @@ var IMAGE_MODELS = [
|
|
|
221
242
|
adapter: "openai-image",
|
|
222
243
|
providerModelId: "gpt-image-2",
|
|
223
244
|
lifecycle: "active",
|
|
224
|
-
exposure: "
|
|
245
|
+
exposure: ["cowork", "space_builder"],
|
|
225
246
|
constraints: {
|
|
226
247
|
exactSizes: {
|
|
227
248
|
"1:1": "1024x1024",
|
|
@@ -256,7 +277,7 @@ var IMAGE_MODELS = [
|
|
|
256
277
|
adapter: "openai-image",
|
|
257
278
|
providerModelId: "gpt-image-2.5-sunburst",
|
|
258
279
|
lifecycle: "active",
|
|
259
|
-
exposure: "
|
|
280
|
+
exposure: ["cowork", "space_builder"],
|
|
260
281
|
constraints: {
|
|
261
282
|
exactSizes: {
|
|
262
283
|
"1:1": "1024x1024",
|
|
@@ -290,7 +311,7 @@ var IMAGE_MODELS = [
|
|
|
290
311
|
adapter: "openai-image",
|
|
291
312
|
providerModelId: "gpt-image-2.5-flare",
|
|
292
313
|
lifecycle: "active",
|
|
293
|
-
exposure: "
|
|
314
|
+
exposure: ["cowork", "space_builder"],
|
|
294
315
|
constraints: {
|
|
295
316
|
exactSizes: {
|
|
296
317
|
"1:1": "1024x1024",
|
|
@@ -324,7 +345,7 @@ var IMAGE_MODELS = [
|
|
|
324
345
|
adapter: "fal",
|
|
325
346
|
providerModelId: "muse-image-1.0",
|
|
326
347
|
lifecycle: "active",
|
|
327
|
-
exposure: "
|
|
348
|
+
exposure: ["cowork", "space_builder"],
|
|
328
349
|
constraints: {
|
|
329
350
|
aspectRatios: [
|
|
330
351
|
"21:9",
|
|
@@ -359,7 +380,7 @@ var IMAGE_MODELS = [
|
|
|
359
380
|
adapter: "ark",
|
|
360
381
|
providerModelId: "dola-seedream-5-0-pro-260628",
|
|
361
382
|
lifecycle: "active",
|
|
362
|
-
exposure: "
|
|
383
|
+
exposure: ["cowork", "space_builder"],
|
|
363
384
|
constraints: {
|
|
364
385
|
aspectRatios: ["1:1", "4:3", "3:4", "16:9", "9:16", "3:2", "2:3", "21:9", "4:5", "5:4"],
|
|
365
386
|
sizes: ["1K", "2K"],
|
|
@@ -385,7 +406,7 @@ var IMAGE_MODELS = [
|
|
|
385
406
|
adapter: "ark",
|
|
386
407
|
providerModelId: "seedream-4-5-251128",
|
|
387
408
|
lifecycle: "active",
|
|
388
|
-
exposure:
|
|
409
|
+
exposure: [],
|
|
389
410
|
constraints: {
|
|
390
411
|
// 97:30 has no Ark size spelling; the A+ flow pads inputs to 97:30 and
|
|
391
412
|
// omits the ratio instead. Advertise only sizes the adapter can send.
|
|
@@ -422,7 +443,7 @@ var IMAGE_MODELS = [
|
|
|
422
443
|
adapter: "prodia",
|
|
423
444
|
providerModelId: "flux-2-pro",
|
|
424
445
|
lifecycle: "active",
|
|
425
|
-
exposure: "
|
|
446
|
+
exposure: ["cowork", "space_builder"],
|
|
426
447
|
constraints: {
|
|
427
448
|
aspectRatios: ["1:1", "2:3", "3:2", "16:9", "9:16", "4:3", "3:4", "4:5", "5:4", "21:9"],
|
|
428
449
|
sizes: ["1K"],
|
|
@@ -449,7 +470,7 @@ var IMAGE_MODELS = [
|
|
|
449
470
|
adapter: "prodia",
|
|
450
471
|
providerModelId: "inference.gemini-3-pro.img2img.v1",
|
|
451
472
|
lifecycle: "active",
|
|
452
|
-
exposure:
|
|
473
|
+
exposure: [],
|
|
453
474
|
constraints: {
|
|
454
475
|
aspectRatios: ["1:1", "2:3", "3:2", "4:3", "3:4", "4:5", "5:4", "9:16", "16:9", "21:9"],
|
|
455
476
|
sizes: ["1K", "2K", "4K"],
|
|
@@ -474,7 +495,7 @@ var IMAGE_MODELS = [
|
|
|
474
495
|
adapter: "prodia",
|
|
475
496
|
providerModelId: "inference.nano-banana.img2img.v2",
|
|
476
497
|
lifecycle: "active",
|
|
477
|
-
exposure:
|
|
498
|
+
exposure: [],
|
|
478
499
|
constraints: {
|
|
479
500
|
aspectRatios: ["1:1", "2:3", "3:4", "4:3", "9:16", "16:9", "21:9"],
|
|
480
501
|
sizes: ["1K"],
|
|
@@ -500,7 +521,7 @@ var IMAGE_MODELS = [
|
|
|
500
521
|
adapter: "replicate",
|
|
501
522
|
providerModelId: "wan-video/wan-2.7-image-pro",
|
|
502
523
|
lifecycle: "active",
|
|
503
|
-
exposure:
|
|
524
|
+
exposure: [],
|
|
504
525
|
constraints: {
|
|
505
526
|
aspectRatios: ["1:1", "16:9", "9:16", "4:3", "3:4"],
|
|
506
527
|
sizes: ["1K", "2K", "4K"],
|
|
@@ -526,7 +547,7 @@ var IMAGE_MODELS = [
|
|
|
526
547
|
adapter: "replicate",
|
|
527
548
|
providerModelId: "qwen/qwen-image-2-pro",
|
|
528
549
|
lifecycle: "active",
|
|
529
|
-
exposure:
|
|
550
|
+
exposure: [],
|
|
530
551
|
constraints: {
|
|
531
552
|
aspectRatios: ["1:1", "16:9", "9:16", "4:3", "3:4", "3:2", "2:3"],
|
|
532
553
|
sizes: [],
|
|
@@ -552,7 +573,7 @@ var IMAGE_MODELS = [
|
|
|
552
573
|
adapter: "replicate",
|
|
553
574
|
providerModelId: "qwen-edit-apps/qwen-image-edit-plus-lora-skin",
|
|
554
575
|
lifecycle: "active",
|
|
555
|
-
exposure:
|
|
576
|
+
exposure: [],
|
|
556
577
|
constraints: {
|
|
557
578
|
aspectRatios: ["1:1", "16:9", "9:16", "4:3", "3:4"],
|
|
558
579
|
sizes: [],
|
|
@@ -581,7 +602,7 @@ var OTHER_MODELS = [
|
|
|
581
602
|
adapter: "google-genai",
|
|
582
603
|
providerModelId: "lyria-3-clip-preview",
|
|
583
604
|
lifecycle: "active",
|
|
584
|
-
exposure: "
|
|
605
|
+
exposure: ["cowork", "space_builder"],
|
|
585
606
|
constraints: {
|
|
586
607
|
durations: [30],
|
|
587
608
|
references: { images: 10 },
|
|
@@ -605,7 +626,7 @@ var OTHER_MODELS = [
|
|
|
605
626
|
adapter: "google-genai",
|
|
606
627
|
providerModelId: "lyria-3-pro-preview",
|
|
607
628
|
lifecycle: "active",
|
|
608
|
-
exposure: "
|
|
629
|
+
exposure: ["cowork", "space_builder"],
|
|
609
630
|
constraints: {
|
|
610
631
|
references: { images: 10 },
|
|
611
632
|
supports: []
|
|
@@ -628,7 +649,7 @@ var OTHER_MODELS = [
|
|
|
628
649
|
adapter: "replicate",
|
|
629
650
|
providerModelId: "google/lyria-2",
|
|
630
651
|
lifecycle: "active",
|
|
631
|
-
exposure:
|
|
652
|
+
exposure: [],
|
|
632
653
|
constraints: {
|
|
633
654
|
durations: [30],
|
|
634
655
|
supports: ["seed", "negativePrompt"]
|
|
@@ -650,7 +671,7 @@ var OTHER_MODELS = [
|
|
|
650
671
|
adapter: "replicate",
|
|
651
672
|
providerModelId: "zsxkib/mmaudio:62871fb59889b2d7c13777f08deb3b36bdff88f7e1d53a50ad7694548a41b484",
|
|
652
673
|
lifecycle: "active",
|
|
653
|
-
exposure: "
|
|
674
|
+
exposure: ["cowork", "space_builder"],
|
|
654
675
|
constraints: {
|
|
655
676
|
durations: { min: 1, max: 30 },
|
|
656
677
|
requires: ["sourceVideo"],
|
|
@@ -673,7 +694,7 @@ var OTHER_MODELS = [
|
|
|
673
694
|
adapter: "replicate",
|
|
674
695
|
providerModelId: "elevenlabs/music",
|
|
675
696
|
lifecycle: "active",
|
|
676
|
-
exposure:
|
|
697
|
+
exposure: [],
|
|
677
698
|
constraints: {
|
|
678
699
|
durations: { min: 5, max: 300 },
|
|
679
700
|
supports: ["instrumental"]
|
|
@@ -696,7 +717,7 @@ var OTHER_MODELS = [
|
|
|
696
717
|
adapter: "replicate",
|
|
697
718
|
providerModelId: "topazlabs/image-upscale",
|
|
698
719
|
lifecycle: "active",
|
|
699
|
-
exposure: "
|
|
720
|
+
exposure: ["cowork", "space_builder"],
|
|
700
721
|
constraints: {
|
|
701
722
|
references: { images: 1 },
|
|
702
723
|
requires: ["references"],
|
|
@@ -719,7 +740,7 @@ var OTHER_MODELS = [
|
|
|
719
740
|
adapter: "prodia",
|
|
720
741
|
providerModelId: "inference.remove-background.v1",
|
|
721
742
|
lifecycle: "active",
|
|
722
|
-
exposure: "
|
|
743
|
+
exposure: ["cowork", "space_builder"],
|
|
723
744
|
constraints: {
|
|
724
745
|
references: { images: 1 },
|
|
725
746
|
requires: ["references"],
|
|
@@ -758,7 +779,7 @@ function text(id, label, providerModelId, extra) {
|
|
|
758
779
|
adapter: "ai-sdk-text",
|
|
759
780
|
providerModelId,
|
|
760
781
|
lifecycle: "active",
|
|
761
|
-
exposure:
|
|
782
|
+
exposure: [],
|
|
762
783
|
constraints: { supports: [] },
|
|
763
784
|
defaults: {},
|
|
764
785
|
usage: { ...TEXT_USAGE },
|
|
@@ -777,7 +798,7 @@ var OPENAI_REASONING = { openai: { reasoningEffort: "medium", reasoningSummary:
|
|
|
777
798
|
var DEEPSEEK_THINKING = { deepseek: { thinking: { type: "enabled" } } };
|
|
778
799
|
var TEXT_MODELS = [
|
|
779
800
|
text("gpt-4o", "GPT-4o", "gpt-4o", {
|
|
780
|
-
exposure:
|
|
801
|
+
exposure: [],
|
|
781
802
|
display: {
|
|
782
803
|
provider: "openai",
|
|
783
804
|
costTier: 2,
|
|
@@ -786,7 +807,7 @@ var TEXT_MODELS = [
|
|
|
786
807
|
capabilities: { vision: true, contextWindow: 128e3 }
|
|
787
808
|
}),
|
|
788
809
|
text("gpt-4o-mini", "GPT-4o mini", "gpt-4o-mini", {
|
|
789
|
-
exposure:
|
|
810
|
+
exposure: [],
|
|
790
811
|
display: {
|
|
791
812
|
provider: "openai",
|
|
792
813
|
costTier: 1,
|
|
@@ -795,7 +816,7 @@ var TEXT_MODELS = [
|
|
|
795
816
|
capabilities: { vision: true, contextWindow: 128e3 }
|
|
796
817
|
}),
|
|
797
818
|
text("gpt-5.1", "GPT-5.1", "gpt-5.1", {
|
|
798
|
-
exposure: "
|
|
819
|
+
exposure: ["cowork", "space_builder"],
|
|
799
820
|
display: {
|
|
800
821
|
provider: "openai",
|
|
801
822
|
costTier: 3,
|
|
@@ -804,7 +825,7 @@ var TEXT_MODELS = [
|
|
|
804
825
|
capabilities: { vision: true, contextWindow: 4e5 }
|
|
805
826
|
}),
|
|
806
827
|
text("gpt-5.2", "GPT-5.2", "gpt-5.2", {
|
|
807
|
-
exposure: "
|
|
828
|
+
exposure: ["cowork", "space_builder"],
|
|
808
829
|
display: {
|
|
809
830
|
provider: "openai",
|
|
810
831
|
costTier: 3,
|
|
@@ -814,7 +835,7 @@ var TEXT_MODELS = [
|
|
|
814
835
|
}),
|
|
815
836
|
// 1.05M-token context: https://platform.openai.com/docs/models/gpt-5.4
|
|
816
837
|
text("gpt-5.4", "GPT-5.4", "gpt-5.4", {
|
|
817
|
-
exposure:
|
|
838
|
+
exposure: [],
|
|
818
839
|
display: {
|
|
819
840
|
provider: "openai",
|
|
820
841
|
costTier: 3,
|
|
@@ -827,7 +848,7 @@ var TEXT_MODELS = [
|
|
|
827
848
|
}),
|
|
828
849
|
// OpenAI never shipped gpt-5.1-mini or gpt-5.2-mini; callers that still send them get 5.4 mini.
|
|
829
850
|
text("gpt-5.4-mini", "GPT-5.4 mini", "gpt-5.4-mini", {
|
|
830
|
-
exposure: "
|
|
851
|
+
exposure: ["cowork", "space_builder"],
|
|
831
852
|
aliases: ["gpt-5.1-mini", "gpt-5.2-mini"],
|
|
832
853
|
display: {
|
|
833
854
|
provider: "openai",
|
|
@@ -837,7 +858,7 @@ var TEXT_MODELS = [
|
|
|
837
858
|
capabilities: { vision: true, contextWindow: 4e5 }
|
|
838
859
|
}),
|
|
839
860
|
text("gpt-5.5", "GPT-5.5", "gpt-5.5", {
|
|
840
|
-
exposure: "
|
|
861
|
+
exposure: ["cowork", "space_builder"],
|
|
841
862
|
display: {
|
|
842
863
|
provider: "openai",
|
|
843
864
|
costTier: 3,
|
|
@@ -849,7 +870,7 @@ var TEXT_MODELS = [
|
|
|
849
870
|
}
|
|
850
871
|
}),
|
|
851
872
|
text("gpt-5.6-luna", "GPT-5.6 Luna", "gpt-5.6-luna", {
|
|
852
|
-
exposure: "
|
|
873
|
+
exposure: ["cowork", "space_builder"],
|
|
853
874
|
display: {
|
|
854
875
|
chat: { providerOptions: OPENAI_REASONING },
|
|
855
876
|
provider: "openai",
|
|
@@ -863,7 +884,7 @@ var TEXT_MODELS = [
|
|
|
863
884
|
}
|
|
864
885
|
}),
|
|
865
886
|
text("gpt-5.6-terra", "GPT-5.6 Terra", "gpt-5.6-terra", {
|
|
866
|
-
exposure: "
|
|
887
|
+
exposure: ["cowork", "space_builder"],
|
|
867
888
|
display: {
|
|
868
889
|
chat: { providerOptions: OPENAI_REASONING },
|
|
869
890
|
provider: "openai",
|
|
@@ -877,7 +898,7 @@ var TEXT_MODELS = [
|
|
|
877
898
|
}
|
|
878
899
|
}),
|
|
879
900
|
text("gpt-5.6-sol", "GPT-5.6 Sol", "gpt-5.6-sol", {
|
|
880
|
-
exposure: "
|
|
901
|
+
exposure: ["cowork", "space_builder"],
|
|
881
902
|
display: {
|
|
882
903
|
chat: { providerOptions: OPENAI_REASONING },
|
|
883
904
|
provider: "openai",
|
|
@@ -892,7 +913,7 @@ var TEXT_MODELS = [
|
|
|
892
913
|
}),
|
|
893
914
|
// Library key "claude-sonnet-4.5" maps to the SDK id "claude-sonnet-4-5".
|
|
894
915
|
text("claude-sonnet-4-5", "Claude Sonnet 4.5", "claude-sonnet-4-5", {
|
|
895
|
-
exposure:
|
|
916
|
+
exposure: [],
|
|
896
917
|
aliases: ["claude-sonnet-4.5", "claude-sonnet-4-5-20250929"],
|
|
897
918
|
display: {
|
|
898
919
|
provider: "anthropic",
|
|
@@ -903,7 +924,7 @@ var TEXT_MODELS = [
|
|
|
903
924
|
}),
|
|
904
925
|
// Anthropic retired the dated 4.0 ids; callers that still send them get 4.6.
|
|
905
926
|
text("claude-sonnet-4-6", "Claude Sonnet 4.6", "claude-sonnet-4-6", {
|
|
906
|
-
exposure: "
|
|
927
|
+
exposure: ["cowork", "space_builder"],
|
|
907
928
|
aliases: [
|
|
908
929
|
"claude-sonnet-4.6",
|
|
909
930
|
"claude-sonnet-4",
|
|
@@ -923,7 +944,7 @@ var TEXT_MODELS = [
|
|
|
923
944
|
}
|
|
924
945
|
}),
|
|
925
946
|
text("claude-sonnet-5", "Claude Sonnet 5", "claude-sonnet-5", {
|
|
926
|
-
exposure: "
|
|
947
|
+
exposure: ["cowork", "space_builder"],
|
|
927
948
|
display: {
|
|
928
949
|
chat: { providerOptions: ANTHROPIC_ADAPTIVE },
|
|
929
950
|
provider: "anthropic",
|
|
@@ -937,7 +958,7 @@ var TEXT_MODELS = [
|
|
|
937
958
|
}
|
|
938
959
|
}),
|
|
939
960
|
text("claude-opus-4-8", "Claude Opus 4.8", "claude-opus-4-8", {
|
|
940
|
-
exposure: "
|
|
961
|
+
exposure: ["cowork", "space_builder"],
|
|
941
962
|
aliases: ["claude-opus-4.8", "claude-opus-4", "claude-opus-4.0", "claude-opus-4-20250514"],
|
|
942
963
|
display: {
|
|
943
964
|
chat: { providerOptions: ANTHROPIC_ADAPTIVE },
|
|
@@ -952,7 +973,7 @@ var TEXT_MODELS = [
|
|
|
952
973
|
}
|
|
953
974
|
}),
|
|
954
975
|
text("claude-haiku-4-5", "Claude Haiku 4.5", "claude-haiku-4-5", {
|
|
955
|
-
exposure: "
|
|
976
|
+
exposure: ["cowork", "space_builder"],
|
|
956
977
|
aliases: ["claude-haiku-4.5", "claude-haiku-4-5-20251001", "claude-haiku-4"],
|
|
957
978
|
display: {
|
|
958
979
|
chat: { providerOptions: ANTHROPIC_THINKING },
|
|
@@ -967,7 +988,7 @@ var TEXT_MODELS = [
|
|
|
967
988
|
}
|
|
968
989
|
}),
|
|
969
990
|
text("claude-opus-5", "Claude Opus 5", "claude-opus-5", {
|
|
970
|
-
exposure:
|
|
991
|
+
exposure: [],
|
|
971
992
|
aliases: ["claude-opus-5.0"],
|
|
972
993
|
display: {
|
|
973
994
|
provider: "anthropic",
|
|
@@ -980,7 +1001,7 @@ var TEXT_MODELS = [
|
|
|
980
1001
|
}
|
|
981
1002
|
}),
|
|
982
1003
|
text("claude-fable-5", "Claude Fable 5", "claude-fable-5", {
|
|
983
|
-
exposure:
|
|
1004
|
+
exposure: [],
|
|
984
1005
|
display: {
|
|
985
1006
|
provider: "anthropic",
|
|
986
1007
|
costTier: 3,
|
|
@@ -992,7 +1013,7 @@ var TEXT_MODELS = [
|
|
|
992
1013
|
}
|
|
993
1014
|
}),
|
|
994
1015
|
text("gemini-2.5-flash", "Gemini 2.5 Flash", "gemini-2.5-flash", {
|
|
995
|
-
exposure:
|
|
1016
|
+
exposure: [],
|
|
996
1017
|
display: {
|
|
997
1018
|
provider: "google",
|
|
998
1019
|
costTier: 1,
|
|
@@ -1004,7 +1025,7 @@ var TEXT_MODELS = [
|
|
|
1004
1025
|
}
|
|
1005
1026
|
}),
|
|
1006
1027
|
text("gemini-2.5-pro", "Gemini 2.5 Pro", "gemini-2.5-pro", {
|
|
1007
|
-
exposure:
|
|
1028
|
+
exposure: [],
|
|
1008
1029
|
display: {
|
|
1009
1030
|
provider: "google",
|
|
1010
1031
|
costTier: 2,
|
|
@@ -1016,7 +1037,7 @@ var TEXT_MODELS = [
|
|
|
1016
1037
|
}
|
|
1017
1038
|
}),
|
|
1018
1039
|
text("gemini-3.1-pro-preview", "Gemini 3.1 Pro (preview)", "gemini-3.1-pro-preview", {
|
|
1019
|
-
exposure: "
|
|
1040
|
+
exposure: ["cowork", "space_builder"],
|
|
1020
1041
|
display: {
|
|
1021
1042
|
provider: "google",
|
|
1022
1043
|
costTier: 2,
|
|
@@ -1028,7 +1049,7 @@ var TEXT_MODELS = [
|
|
|
1028
1049
|
}
|
|
1029
1050
|
}),
|
|
1030
1051
|
text("gemini-3.5-flash", "Gemini 3.5 Flash", "gemini-3.5-flash", {
|
|
1031
|
-
exposure: "
|
|
1052
|
+
exposure: ["cowork", "space_builder"],
|
|
1032
1053
|
display: {
|
|
1033
1054
|
provider: "google",
|
|
1034
1055
|
costTier: 1,
|
|
@@ -1040,7 +1061,7 @@ var TEXT_MODELS = [
|
|
|
1040
1061
|
}
|
|
1041
1062
|
}),
|
|
1042
1063
|
text("gemini-3.6-flash", "Gemini 3.6 Flash", "gemini-3.6-flash", {
|
|
1043
|
-
exposure: "
|
|
1064
|
+
exposure: ["cowork", "space_builder"],
|
|
1044
1065
|
display: {
|
|
1045
1066
|
provider: "google",
|
|
1046
1067
|
costTier: 1,
|
|
@@ -1052,7 +1073,7 @@ var TEXT_MODELS = [
|
|
|
1052
1073
|
}
|
|
1053
1074
|
}),
|
|
1054
1075
|
text("gemini-3.7-flash", "Gemini 3.7 Flash", "gemini-3.7-flash", {
|
|
1055
|
-
exposure: "
|
|
1076
|
+
exposure: ["cowork", "space_builder"],
|
|
1056
1077
|
display: {
|
|
1057
1078
|
provider: "google",
|
|
1058
1079
|
costTier: 1,
|
|
@@ -1065,7 +1086,7 @@ var TEXT_MODELS = [
|
|
|
1065
1086
|
}
|
|
1066
1087
|
}),
|
|
1067
1088
|
text("gemini-3.8-flash", "Gemini 3.8 Flash", "gemini-3.8-flash", {
|
|
1068
|
-
exposure:
|
|
1089
|
+
exposure: [],
|
|
1069
1090
|
display: {
|
|
1070
1091
|
provider: "google",
|
|
1071
1092
|
costTier: 1,
|
|
@@ -1078,12 +1099,12 @@ var TEXT_MODELS = [
|
|
|
1078
1099
|
}),
|
|
1079
1100
|
// Renamed to gemini-3.6-flash in vibe-shared model-migration.ts.
|
|
1080
1101
|
text("gemini-3-flash-preview", "Gemini 3 Flash (preview)", "gemini-3-flash-preview", {
|
|
1081
|
-
exposure:
|
|
1102
|
+
exposure: [],
|
|
1082
1103
|
lifecycle: "deprecated",
|
|
1083
1104
|
replacedBy: "gemini-3.6-flash"
|
|
1084
1105
|
}),
|
|
1085
1106
|
text("gemini-3.1-flash-lite", "Gemini 3.1 Flash Lite", "gemini-3.1-flash-lite", {
|
|
1086
|
-
exposure:
|
|
1107
|
+
exposure: [],
|
|
1087
1108
|
display: {
|
|
1088
1109
|
provider: "google",
|
|
1089
1110
|
costTier: 1,
|
|
@@ -1095,7 +1116,7 @@ var TEXT_MODELS = [
|
|
|
1095
1116
|
}
|
|
1096
1117
|
}),
|
|
1097
1118
|
text("sonar", "Sonar", "sonar", {
|
|
1098
|
-
exposure:
|
|
1119
|
+
exposure: [],
|
|
1099
1120
|
display: {
|
|
1100
1121
|
provider: "perplexity",
|
|
1101
1122
|
costTier: 1,
|
|
@@ -1107,7 +1128,7 @@ var TEXT_MODELS = [
|
|
|
1107
1128
|
}
|
|
1108
1129
|
}),
|
|
1109
1130
|
text("sonar-pro", "Sonar Pro", "sonar-pro", {
|
|
1110
|
-
exposure:
|
|
1131
|
+
exposure: [],
|
|
1111
1132
|
display: {
|
|
1112
1133
|
provider: "perplexity",
|
|
1113
1134
|
costTier: 2,
|
|
@@ -1119,7 +1140,7 @@ var TEXT_MODELS = [
|
|
|
1119
1140
|
}
|
|
1120
1141
|
}),
|
|
1121
1142
|
text("sonar-reasoning-pro", "Sonar Reasoning Pro", "sonar-reasoning-pro", {
|
|
1122
|
-
exposure:
|
|
1143
|
+
exposure: [],
|
|
1123
1144
|
display: {
|
|
1124
1145
|
provider: "perplexity",
|
|
1125
1146
|
costTier: 2,
|
|
@@ -1135,7 +1156,7 @@ var TEXT_MODELS = [
|
|
|
1135
1156
|
// stays an alias so stored selections keep resolving.
|
|
1136
1157
|
text("deepseek-flash", "DeepSeek V4.1 Flash", "deepseek-flash", {
|
|
1137
1158
|
aliases: ["deepseek-v4-flash"],
|
|
1138
|
-
exposure: "
|
|
1159
|
+
exposure: ["cowork", "space_builder"],
|
|
1139
1160
|
display: {
|
|
1140
1161
|
chat: { providerOptions: DEEPSEEK_THINKING },
|
|
1141
1162
|
provider: "deepseek",
|
|
@@ -1150,7 +1171,7 @@ var TEXT_MODELS = [
|
|
|
1150
1171
|
}
|
|
1151
1172
|
}),
|
|
1152
1173
|
text("deepseek-v4-pro", "DeepSeek V4 Pro", "deepseek-v4-pro", {
|
|
1153
|
-
exposure: "
|
|
1174
|
+
exposure: ["cowork", "space_builder"],
|
|
1154
1175
|
display: {
|
|
1155
1176
|
chat: { providerOptions: DEEPSEEK_THINKING },
|
|
1156
1177
|
provider: "deepseek",
|
|
@@ -1165,7 +1186,7 @@ var TEXT_MODELS = [
|
|
|
1165
1186
|
}),
|
|
1166
1187
|
// 1M-token context: https://docs.x.ai/docs/models/grok-4.3
|
|
1167
1188
|
text("grok-4.3", "Grok 4.3", "grok-4.3", {
|
|
1168
|
-
exposure: "
|
|
1189
|
+
exposure: ["cowork", "space_builder"],
|
|
1169
1190
|
display: {
|
|
1170
1191
|
provider: "xai",
|
|
1171
1192
|
costTier: 2,
|
|
@@ -1180,7 +1201,7 @@ var TEXT_MODELS = [
|
|
|
1180
1201
|
text("kimi-k2.5", "Kimi K2.5", "kimi-k2.5", {
|
|
1181
1202
|
lifecycle: "deprecated",
|
|
1182
1203
|
replacedBy: "kimi-k3",
|
|
1183
|
-
exposure:
|
|
1204
|
+
exposure: [],
|
|
1184
1205
|
display: {
|
|
1185
1206
|
chat: { temperature: 1 },
|
|
1186
1207
|
provider: "moonshot",
|
|
@@ -1190,7 +1211,7 @@ var TEXT_MODELS = [
|
|
|
1190
1211
|
capabilities: {}
|
|
1191
1212
|
}),
|
|
1192
1213
|
text("kimi-k3", "Kimi K3", "kimi-k3", {
|
|
1193
|
-
exposure: "
|
|
1214
|
+
exposure: ["cowork", "space_builder"],
|
|
1194
1215
|
display: {
|
|
1195
1216
|
chat: { temperature: 1 },
|
|
1196
1217
|
provider: "moonshot",
|
|
@@ -1206,7 +1227,7 @@ var TEXT_MODELS = [
|
|
|
1206
1227
|
// Cowork calls the provider "MiniMax-M3"; the pricing key is lowercase.
|
|
1207
1228
|
// 1M-token context: https://platform.minimax.io/docs/api-reference/text-openai-api
|
|
1208
1229
|
text("minimax-m3", "MiniMax M3", "MiniMax-M3", {
|
|
1209
|
-
exposure: "
|
|
1230
|
+
exposure: ["cowork", "space_builder"],
|
|
1210
1231
|
aliases: ["MiniMax-M3"],
|
|
1211
1232
|
display: {
|
|
1212
1233
|
provider: "minimax",
|
|
@@ -1243,7 +1264,7 @@ var VIDEO_MODELS = [
|
|
|
1243
1264
|
adapter: "google-genai",
|
|
1244
1265
|
providerModelId: "veo-3.1-generate-preview",
|
|
1245
1266
|
lifecycle: "active",
|
|
1246
|
-
exposure: "
|
|
1267
|
+
exposure: ["cowork", "space_builder"],
|
|
1247
1268
|
constraints: {
|
|
1248
1269
|
aspectRatios: [...OMNI_RATIOS],
|
|
1249
1270
|
resolutions: ["720p", "1080p", "4k"],
|
|
@@ -1273,7 +1294,7 @@ var VIDEO_MODELS = [
|
|
|
1273
1294
|
adapter: "google-genai",
|
|
1274
1295
|
providerModelId: "veo-3.1-fast-generate-preview",
|
|
1275
1296
|
lifecycle: "active",
|
|
1276
|
-
exposure:
|
|
1297
|
+
exposure: [],
|
|
1277
1298
|
constraints: {
|
|
1278
1299
|
aspectRatios: [...OMNI_RATIOS],
|
|
1279
1300
|
resolutions: ["720p", "1080p", "4k"],
|
|
@@ -1302,7 +1323,7 @@ var VIDEO_MODELS = [
|
|
|
1302
1323
|
adapter: "google-genai",
|
|
1303
1324
|
providerModelId: "veo-3.1-lite-generate-preview",
|
|
1304
1325
|
lifecycle: "active",
|
|
1305
|
-
exposure:
|
|
1326
|
+
exposure: [],
|
|
1306
1327
|
constraints: {
|
|
1307
1328
|
aspectRatios: [...OMNI_RATIOS],
|
|
1308
1329
|
resolutions: ["720p", "1080p"],
|
|
@@ -1332,7 +1353,7 @@ var VIDEO_MODELS = [
|
|
|
1332
1353
|
adapter: "google-genai",
|
|
1333
1354
|
providerModelId: "gemini-omni-flash-preview",
|
|
1334
1355
|
lifecycle: "active",
|
|
1335
|
-
exposure: "
|
|
1356
|
+
exposure: ["cowork", "space_builder"],
|
|
1336
1357
|
constraints: {
|
|
1337
1358
|
// 1.0 rejects `resolution`; it renders 720p. No defaults: the adapter
|
|
1338
1359
|
// sends ratio and duration only when the caller set them, so a
|
|
@@ -1360,7 +1381,7 @@ var VIDEO_MODELS = [
|
|
|
1360
1381
|
adapter: "google-genai",
|
|
1361
1382
|
providerModelId: "gemini-omni-1.1-flash",
|
|
1362
1383
|
lifecycle: "active",
|
|
1363
|
-
exposure: "
|
|
1384
|
+
exposure: ["cowork", "space_builder"],
|
|
1364
1385
|
constraints: {
|
|
1365
1386
|
aspectRatios: [...OMNI_RATIOS],
|
|
1366
1387
|
resolutions: ["360p", "720p", "1080p", "4k"],
|
|
@@ -1387,7 +1408,7 @@ var VIDEO_MODELS = [
|
|
|
1387
1408
|
adapter: "ark",
|
|
1388
1409
|
providerModelId: "dreamina-seedance-2-0-260128",
|
|
1389
1410
|
lifecycle: "active",
|
|
1390
|
-
exposure: "
|
|
1411
|
+
exposure: ["cowork", "space_builder"],
|
|
1391
1412
|
constraints: {
|
|
1392
1413
|
aspectRatios: [...SEEDANCE_RATIOS],
|
|
1393
1414
|
resolutions: ["480p", "720p", "1080p", "4k"],
|
|
@@ -1420,7 +1441,7 @@ var VIDEO_MODELS = [
|
|
|
1420
1441
|
adapter: "ark",
|
|
1421
1442
|
providerModelId: "dreamina-seedance-2-0-fast-260128",
|
|
1422
1443
|
lifecycle: "active",
|
|
1423
|
-
exposure: "
|
|
1444
|
+
exposure: ["cowork", "space_builder"],
|
|
1424
1445
|
constraints: {
|
|
1425
1446
|
aspectRatios: [...SEEDANCE_RATIOS],
|
|
1426
1447
|
resolutions: ["480p", "720p"],
|
|
@@ -1446,6 +1467,7 @@ var VIDEO_MODELS = [
|
|
|
1446
1467
|
},
|
|
1447
1468
|
{
|
|
1448
1469
|
// generateAudio defaults to false here (trigger-workflows); Space Builder defaults it to true.
|
|
1470
|
+
// omni_reference_task_type edit/extend: adaptive ratio, edit sends duration -1.
|
|
1449
1471
|
id: "seedance-2.5",
|
|
1450
1472
|
aliases: ["seedance-2-5", "dreamina-seedance-2-5-260628"],
|
|
1451
1473
|
label: "Seedance 2.5",
|
|
@@ -1453,14 +1475,14 @@ var VIDEO_MODELS = [
|
|
|
1453
1475
|
adapter: "ark",
|
|
1454
1476
|
providerModelId: "dreamina-seedance-2-5-260628",
|
|
1455
1477
|
lifecycle: "active",
|
|
1456
|
-
exposure: "
|
|
1478
|
+
exposure: ["cowork", "space_builder"],
|
|
1457
1479
|
constraints: {
|
|
1458
1480
|
aspectRatios: [...SEEDANCE_RATIOS],
|
|
1459
1481
|
resolutions: ["480p", "720p", "1080p"],
|
|
1460
1482
|
durations: { min: 4, max: 30 },
|
|
1461
1483
|
references: { images: 30, videos: 10, audios: 10 },
|
|
1462
1484
|
ratioIgnoredWith: ["firstFrame", "sourceVideo"],
|
|
1463
|
-
supports: ["generateAudio", "seed", "lastFrame", "watermark"]
|
|
1485
|
+
supports: ["generateAudio", "seed", "lastFrame", "watermark", "taskType"]
|
|
1464
1486
|
},
|
|
1465
1487
|
defaults: {
|
|
1466
1488
|
durationSeconds: 5,
|
|
@@ -1486,7 +1508,7 @@ var VIDEO_MODELS = [
|
|
|
1486
1508
|
adapter: "xai-video",
|
|
1487
1509
|
providerModelId: "grok-imagine-video",
|
|
1488
1510
|
lifecycle: "active",
|
|
1489
|
-
exposure: "
|
|
1511
|
+
exposure: ["cowork", "space_builder"],
|
|
1490
1512
|
constraints: {
|
|
1491
1513
|
aspectRatios: [...GROK_RATIOS],
|
|
1492
1514
|
resolutions: ["480p", "720p"],
|
|
@@ -1514,7 +1536,7 @@ var VIDEO_MODELS = [
|
|
|
1514
1536
|
adapter: "higgsfield",
|
|
1515
1537
|
providerModelId: "kling-video/v2.5-turbo/pro/image-to-video",
|
|
1516
1538
|
lifecycle: "active",
|
|
1517
|
-
exposure: "
|
|
1539
|
+
exposure: ["cowork", "space_builder"],
|
|
1518
1540
|
constraints: {
|
|
1519
1541
|
aspectRatios: [...KLING_RATIOS],
|
|
1520
1542
|
durations: [5, 10],
|
|
@@ -1545,7 +1567,7 @@ var VIDEO_MODELS = [
|
|
|
1545
1567
|
adapter: "higgsfield",
|
|
1546
1568
|
providerModelId: "kling-video/v3.0/pro/image-to-video",
|
|
1547
1569
|
lifecycle: "active",
|
|
1548
|
-
exposure: "
|
|
1570
|
+
exposure: ["cowork", "space_builder"],
|
|
1549
1571
|
constraints: {
|
|
1550
1572
|
aspectRatios: [...KLING_RATIOS],
|
|
1551
1573
|
durations: { min: 3, max: 15 },
|
|
@@ -1569,6 +1591,9 @@ var VIDEO_MODELS = [
|
|
|
1569
1591
|
},
|
|
1570
1592
|
{
|
|
1571
1593
|
// mode standard/pro selects 720p/1080p; the endpoint takes no separate resolution.
|
|
1594
|
+
// Replicate: "Max 7 [images] without video, 4 with video"; 4K does not support
|
|
1595
|
+
// reference_video. No `videos` limit yet: the adapter sends no reference video,
|
|
1596
|
+
// so `imagesWithVideo` stays dormant until one is wired through.
|
|
1572
1597
|
id: "kling-v3-omni-video",
|
|
1573
1598
|
aliases: ["kwaivgi/kling-v3-omni-video", "kling-v3-omni"],
|
|
1574
1599
|
label: "Kling V3 Omni",
|
|
@@ -1576,12 +1601,12 @@ var VIDEO_MODELS = [
|
|
|
1576
1601
|
adapter: "replicate",
|
|
1577
1602
|
providerModelId: "kwaivgi/kling-v3-omni-video",
|
|
1578
1603
|
lifecycle: "active",
|
|
1579
|
-
exposure: "
|
|
1604
|
+
exposure: ["cowork", "space_builder"],
|
|
1580
1605
|
constraints: {
|
|
1581
1606
|
aspectRatios: [...KLING_RATIOS],
|
|
1582
1607
|
resolutions: ["720p", "1080p"],
|
|
1583
1608
|
durations: { min: 3, max: 15 },
|
|
1584
|
-
references: { images: 7 },
|
|
1609
|
+
references: { images: 7, imagesWithVideo: 4 },
|
|
1585
1610
|
supports: ["generateAudio", "lastFrame"]
|
|
1586
1611
|
},
|
|
1587
1612
|
defaults: { durationSeconds: 5, aspectRatio: "16:9", generateAudio: false, mode: "pro" },
|
|
@@ -1602,7 +1627,7 @@ var VIDEO_MODELS = [
|
|
|
1602
1627
|
adapter: "fal",
|
|
1603
1628
|
providerModelId: "minimax/h3",
|
|
1604
1629
|
lifecycle: "active",
|
|
1605
|
-
exposure: "
|
|
1630
|
+
exposure: ["cowork", "space_builder"],
|
|
1606
1631
|
constraints: {
|
|
1607
1632
|
aspectRatios: [...H3_RATIOS],
|
|
1608
1633
|
resolutions: ["480p", "768p", "2k", "4k"],
|
|
@@ -1632,7 +1657,7 @@ var VIDEO_MODELS = [
|
|
|
1632
1657
|
adapter: "fal",
|
|
1633
1658
|
providerModelId: "minimax/h3-max",
|
|
1634
1659
|
lifecycle: "active",
|
|
1635
|
-
exposure: "
|
|
1660
|
+
exposure: ["cowork", "space_builder"],
|
|
1636
1661
|
constraints: {
|
|
1637
1662
|
aspectRatios: [...H3_RATIOS],
|
|
1638
1663
|
resolutions: ["480p", "768p"],
|
|
@@ -1662,7 +1687,7 @@ var VIDEO_MODELS = [
|
|
|
1662
1687
|
adapter: "fal",
|
|
1663
1688
|
providerModelId: "minimax/h3/reference-to-video",
|
|
1664
1689
|
lifecycle: "active",
|
|
1665
|
-
exposure: "
|
|
1690
|
+
exposure: ["cowork", "space_builder"],
|
|
1666
1691
|
constraints: {
|
|
1667
1692
|
aspectRatios: [...H3_REFERENCE_RATIOS],
|
|
1668
1693
|
resolutions: ["480p", "768p", "2k", "4k"],
|
|
@@ -1693,7 +1718,7 @@ var VIDEO_MODELS = [
|
|
|
1693
1718
|
adapter: "fal",
|
|
1694
1719
|
providerModelId: "minimax/h3-max/reference-to-video",
|
|
1695
1720
|
lifecycle: "active",
|
|
1696
|
-
exposure: "
|
|
1721
|
+
exposure: ["cowork", "space_builder"],
|
|
1697
1722
|
constraints: {
|
|
1698
1723
|
aspectRatios: [...H3_REFERENCE_RATIOS],
|
|
1699
1724
|
resolutions: ["480p", "768p"],
|
|
@@ -1725,7 +1750,7 @@ var VIDEO_MODELS = [
|
|
|
1725
1750
|
adapter: "fal",
|
|
1726
1751
|
providerModelId: "fal-ai/kling-video/o1/video-to-video/reference",
|
|
1727
1752
|
lifecycle: "active",
|
|
1728
|
-
exposure:
|
|
1753
|
+
exposure: [],
|
|
1729
1754
|
constraints: {
|
|
1730
1755
|
aspectRatios: [...KLING_RATIOS],
|
|
1731
1756
|
durations: { min: 3, max: 10 },
|
|
@@ -1750,7 +1775,7 @@ var VIDEO_MODELS = [
|
|
|
1750
1775
|
adapter: "replicate",
|
|
1751
1776
|
providerModelId: "minimax/hailuo-02",
|
|
1752
1777
|
lifecycle: "active",
|
|
1753
|
-
exposure:
|
|
1778
|
+
exposure: [],
|
|
1754
1779
|
constraints: {
|
|
1755
1780
|
resolutions: ["768p"],
|
|
1756
1781
|
durations: [6, 10],
|
|
@@ -1774,7 +1799,7 @@ var VIDEO_MODELS = [
|
|
|
1774
1799
|
adapter: "higgsfield",
|
|
1775
1800
|
providerModelId: "dop-preview",
|
|
1776
1801
|
lifecycle: "active",
|
|
1777
|
-
exposure:
|
|
1802
|
+
exposure: [],
|
|
1778
1803
|
constraints: {
|
|
1779
1804
|
requires: ["firstFrame"],
|
|
1780
1805
|
supports: ["seed", "lastFrame"]
|
|
@@ -1814,6 +1839,12 @@ var ADAPTER_IDS = [
|
|
|
1814
1839
|
];
|
|
1815
1840
|
var ModelTypeSchema = z.enum(["text", "image", "video", "audio", "upscale", "bg-remove"]);
|
|
1816
1841
|
var LifecycleSchema = z.enum(["active", "deprecated", "retired"]);
|
|
1842
|
+
var SurfaceSchema = z.enum(["cowork", "space_builder"]);
|
|
1843
|
+
var SURFACES2 = SurfaceSchema.options;
|
|
1844
|
+
var ExposureSchema = z.preprocess(
|
|
1845
|
+
normalizeExposure,
|
|
1846
|
+
z.array(SurfaceSchema)
|
|
1847
|
+
);
|
|
1817
1848
|
var AdapterSchema = z.enum(ADAPTER_IDS);
|
|
1818
1849
|
var AspectRatioSchema = z.enum([
|
|
1819
1850
|
"1:1",
|
|
@@ -1851,6 +1882,7 @@ var SupportedOptionSchema = z.enum([
|
|
|
1851
1882
|
"upscale",
|
|
1852
1883
|
"watermark",
|
|
1853
1884
|
"safetyChecker",
|
|
1885
|
+
"taskType",
|
|
1854
1886
|
"instrumental"
|
|
1855
1887
|
]);
|
|
1856
1888
|
var UsageUnitSchema = z.enum([
|
|
@@ -1873,6 +1905,7 @@ var ProviderOptionValueSchema = z.lazy(
|
|
|
1873
1905
|
var ProviderOptionsSchema = z.record(z.string(), z.record(z.string(), ProviderOptionValueSchema));
|
|
1874
1906
|
var ReferenceLimitsSchema = z.looseObject({
|
|
1875
1907
|
images: z.number().optional(),
|
|
1908
|
+
imagesWithVideo: z.number().optional(),
|
|
1876
1909
|
videos: z.number().optional(),
|
|
1877
1910
|
audios: z.number().optional(),
|
|
1878
1911
|
total: z.number().optional(),
|
|
@@ -1934,6 +1967,7 @@ var DefaultsSchema = z.looseObject({
|
|
|
1934
1967
|
promptExpansion: z.enum(["fast", "balanced", "quality"]).optional(),
|
|
1935
1968
|
watermark: z.boolean().optional(),
|
|
1936
1969
|
safetyChecker: z.boolean().optional(),
|
|
1970
|
+
taskType: z.enum(["reference", "edit", "extend"]).optional(),
|
|
1937
1971
|
mode: z.enum(["standard", "pro"]).optional(),
|
|
1938
1972
|
instrumental: z.boolean().optional()
|
|
1939
1973
|
});
|
|
@@ -1965,7 +1999,7 @@ var CatalogModelSchemaBase = z.looseObject({
|
|
|
1965
1999
|
providerModelId: z.string().min(1),
|
|
1966
2000
|
lifecycle: LifecycleSchema,
|
|
1967
2001
|
replacedBy: z.string().optional(),
|
|
1968
|
-
exposure:
|
|
2002
|
+
exposure: ExposureSchema,
|
|
1969
2003
|
constraints: ModelConstraintsSchema,
|
|
1970
2004
|
defaults: DefaultsSchema,
|
|
1971
2005
|
providerOptions: ProviderOptionsSchema.optional(),
|
|
@@ -2470,6 +2504,9 @@ function resolveVideoOptions(model, request, onUnsupported = "error") {
|
|
|
2470
2504
|
model,
|
|
2471
2505
|
warnings
|
|
2472
2506
|
);
|
|
2507
|
+
if (limits.imagesWithVideo !== void 0 && (limits.videos ?? 0) > 0 && videos.length > 0 && images.length > limits.imagesWithVideo) {
|
|
2508
|
+
images = trim("referenceImages", images, limits.imagesWithVideo, model, warnings);
|
|
2509
|
+
}
|
|
2473
2510
|
if (limits.total !== void 0) {
|
|
2474
2511
|
let over = images.length + videos.length + audios.length - limits.total;
|
|
2475
2512
|
if (over > 0) {
|
|
@@ -2503,7 +2540,8 @@ function resolveVideoOptions(model, request, onUnsupported = "error") {
|
|
|
2503
2540
|
"promptExpansion",
|
|
2504
2541
|
"lastFrame",
|
|
2505
2542
|
"watermark",
|
|
2506
|
-
"safetyChecker"
|
|
2543
|
+
"safetyChecker",
|
|
2544
|
+
"taskType"
|
|
2507
2545
|
]);
|
|
2508
2546
|
return { request: merged, warnings };
|
|
2509
2547
|
}
|
|
@@ -2582,17 +2620,23 @@ export {
|
|
|
2582
2620
|
Catalog,
|
|
2583
2621
|
CatalogModelSchema,
|
|
2584
2622
|
CatalogSchema,
|
|
2623
|
+
ExposureSchema,
|
|
2585
2624
|
IMAGE_MODELS,
|
|
2586
2625
|
MODELS,
|
|
2587
2626
|
ModelKitError,
|
|
2588
2627
|
OTHER_MODELS,
|
|
2628
|
+
SURFACES2 as SURFACES,
|
|
2629
|
+
SurfaceSchema,
|
|
2589
2630
|
TEXT_MODELS,
|
|
2590
2631
|
VIDEO_MODELS,
|
|
2591
2632
|
compareCatalogOrder,
|
|
2633
|
+
isListed,
|
|
2634
|
+
isListedOn,
|
|
2592
2635
|
isModelKitError,
|
|
2593
2636
|
liveCatalog,
|
|
2594
2637
|
liveState,
|
|
2595
2638
|
nearestAspectRatio,
|
|
2639
|
+
normalizeExposure,
|
|
2596
2640
|
primeCatalog,
|
|
2597
2641
|
resetLiveCatalog,
|
|
2598
2642
|
resolveAudioOptions,
|