@imgly/plugin-ai-image-generation-web 0.2.7 → 0.2.8
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 +11 -0
- package/README.md +119 -43
- package/dist/.tsbuildinfo +1 -0
- package/dist/fal-ai/SeedreamV4.constants.d.ts +4 -0
- package/dist/fal-ai/SeedreamV4.d.ts +23 -0
- package/dist/fal-ai/SeedreamV4Edit.d.ts +22 -0
- package/dist/fal-ai/index.d.ts +4 -0
- package/dist/fal-ai/index.mjs +17 -40
- package/dist/fal-ai/index.mjs.map +4 -4
- package/dist/index.mjs +11 -34
- package/dist/index.mjs.map +1 -1
- package/dist/open-ai/index.mjs +10 -33
- package/dist/open-ai/index.mjs.map +1 -1
- package/package.json +7 -17
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,17 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [0.2.8] - 2025-09-29
|
|
6
|
+
|
|
7
|
+
### New Features
|
|
8
|
+
|
|
9
|
+
- [image-generation] **SeedreamV4 Provider**: Added ByteDance Seedream 4.0 text-to-image provider via fal.ai for high-quality image generation with multiple size presets (square HD 2048×2048, square 1024×1024, portrait/landscape variants), custom dimensions support (1024-4096 pixels), and safety checker enabled by default
|
|
10
|
+
- [image-generation] **SeedreamV4Edit Provider**: Added ByteDance Seedream 4.0 image-to-image provider via fal.ai for advanced image editing with unified generation/editing architecture, support for multiple input images (up to 10), and full canvas quick actions support (editImage, swapBackground, styleTransfer, artistTransfer, createVariant, combineImages, remixPage, remixPageWithPrompt)
|
|
11
|
+
|
|
12
|
+
### Fixed
|
|
13
|
+
|
|
14
|
+
- [sticker-generation] **Fixed Input Types Not Enabled**: Fixed an issue where the sticker generation panel would show "No input types are enabled" error by properly enabling the `fromText` and `fromImage` feature flags during plugin initialization
|
|
15
|
+
|
|
5
16
|
## [0.2.7] - 2025-09-26
|
|
6
17
|
|
|
7
18
|
### New Features
|
package/README.md
CHANGED
|
@@ -179,8 +179,8 @@ text2image: FalAiImage.RecraftV3({
|
|
|
179
179
|
},
|
|
180
180
|
// Optional: Configure default property values
|
|
181
181
|
properties: {
|
|
182
|
-
style: 'realistic_image', // Default style
|
|
183
|
-
image_size: 'square_hd' // Default size
|
|
182
|
+
style: { default: 'realistic_image' }, // Default style
|
|
183
|
+
image_size: { default: 'square_hd' } // Default size
|
|
184
184
|
}
|
|
185
185
|
})
|
|
186
186
|
```
|
|
@@ -265,17 +265,19 @@ Key features:
|
|
|
265
265
|
text2image: FalAiImage.RecraftV3({
|
|
266
266
|
proxyUrl: 'http://your-proxy-server.com/api/proxy',
|
|
267
267
|
properties: {
|
|
268
|
-
prompt: '', // User will fill this
|
|
269
|
-
style: 'realistic_image/natural_light',
|
|
270
|
-
image_size: 'landscape_16_9',
|
|
268
|
+
prompt: { default: '' }, // User will fill this
|
|
269
|
+
style: { default: 'realistic_image/natural_light' },
|
|
270
|
+
image_size: { default: 'landscape_16_9' },
|
|
271
271
|
|
|
272
272
|
// Dynamic style based on context
|
|
273
|
-
style:
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
273
|
+
style: {
|
|
274
|
+
default: (context) => {
|
|
275
|
+
const hour = new Date().getHours();
|
|
276
|
+
if (hour < 6 || hour > 18) {
|
|
277
|
+
return 'realistic_image/evening_light';
|
|
278
|
+
}
|
|
279
|
+
return 'realistic_image/natural_light';
|
|
277
280
|
}
|
|
278
|
-
return 'realistic_image/natural_light';
|
|
279
281
|
}
|
|
280
282
|
}
|
|
281
283
|
})
|
|
@@ -319,13 +321,15 @@ text2image: FalAiImage.Recraft20b({
|
|
|
319
321
|
// Optional: Configure default property values
|
|
320
322
|
properties: {
|
|
321
323
|
// Dynamic style defaults based on style type
|
|
322
|
-
style:
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
324
|
+
style: {
|
|
325
|
+
default: (context) => {
|
|
326
|
+
// Different defaults for different style categories
|
|
327
|
+
// This is handled internally by the provider
|
|
328
|
+
return 'broken_line'; // Default for icon styles
|
|
329
|
+
}
|
|
326
330
|
},
|
|
327
|
-
image_size: 'square_hd',
|
|
328
|
-
n_colors: 4 // Default color count for icon styles
|
|
331
|
+
image_size: { default: 'square_hd' },
|
|
332
|
+
n_colors: { default: 4 } // Default color count for icon styles
|
|
329
333
|
}
|
|
330
334
|
})
|
|
331
335
|
```
|
|
@@ -380,17 +384,19 @@ Key features:
|
|
|
380
384
|
text2image: FalAiImage.Recraft20b({
|
|
381
385
|
proxyUrl: 'http://your-proxy-server.com/api/proxy',
|
|
382
386
|
properties: {
|
|
383
|
-
prompt: '', // User will fill this
|
|
384
|
-
style: 'icon/colored_outline', // Default to icon style
|
|
385
|
-
image_size: 'square',
|
|
386
|
-
n_colors: 3, // Number of colors for icon styles
|
|
387
|
+
prompt: { default: '' }, // User will fill this
|
|
388
|
+
style: { default: 'icon/colored_outline' }, // Default to icon style
|
|
389
|
+
image_size: { default: 'square' },
|
|
390
|
+
n_colors: { default: 3 }, // Number of colors for icon styles
|
|
387
391
|
|
|
388
392
|
// Dynamic style based on use case
|
|
389
|
-
style:
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
393
|
+
style: {
|
|
394
|
+
default: (context) => {
|
|
395
|
+
// You could check block type or other context
|
|
396
|
+
const engine = context.engine;
|
|
397
|
+
// Return appropriate style
|
|
398
|
+
return 'icon/broken_line';
|
|
399
|
+
}
|
|
394
400
|
}
|
|
395
401
|
}
|
|
396
402
|
})
|
|
@@ -437,9 +443,9 @@ text2image: OpenAiImage.GptImage1.Text2Image({
|
|
|
437
443
|
},
|
|
438
444
|
// Optional: Configure default property values
|
|
439
445
|
properties: {
|
|
440
|
-
size: '1024x1024', // Options: '1024x1024', '1792x1024', '1024x1792'
|
|
441
|
-
quality: 'standard', // Options: 'standard', 'hd'
|
|
442
|
-
style: 'vivid' // Options: 'vivid', 'natural'
|
|
446
|
+
size: { default: '1024x1024' }, // Options: '1024x1024', '1792x1024', '1024x1792'
|
|
447
|
+
quality: { default: 'standard' }, // Options: 'standard', 'hd'
|
|
448
|
+
style: { default: 'vivid' } // Options: 'vivid', 'natural'
|
|
443
449
|
}
|
|
444
450
|
})
|
|
445
451
|
```
|
|
@@ -464,9 +470,9 @@ image2image: FalAiImage.GeminiFlashEdit({
|
|
|
464
470
|
},
|
|
465
471
|
// Optional: Configure default property values
|
|
466
472
|
properties: {
|
|
467
|
-
strength: 0.8, // Transformation strength (0.0-1.0)
|
|
468
|
-
guidance_scale: 7.5, // Guidance scale (0-20)
|
|
469
|
-
num_inference_steps: 50 // Number of inference steps
|
|
473
|
+
strength: { default: 0.8 }, // Transformation strength (0.0-1.0)
|
|
474
|
+
guidance_scale: { default: 7.5 }, // Guidance scale (0-20)
|
|
475
|
+
num_inference_steps: { default: 50 } // Number of inference steps
|
|
470
476
|
}
|
|
471
477
|
})
|
|
472
478
|
```
|
|
@@ -522,9 +528,9 @@ text2image: FalAiImage.IdeogramV3({
|
|
|
522
528
|
},
|
|
523
529
|
// Optional: Configure default property values
|
|
524
530
|
properties: {
|
|
525
|
-
style: 'GENERAL', // Options: 'AUTO', 'GENERAL', 'REALISTIC', 'DESIGN'
|
|
526
|
-
image_size: 'square_hd', // Same options as Recraft
|
|
527
|
-
seed: 12345 // Fixed seed for reproducibility
|
|
531
|
+
style: { default: 'GENERAL' }, // Options: 'AUTO', 'GENERAL', 'REALISTIC', 'DESIGN'
|
|
532
|
+
image_size: { default: 'square_hd' }, // Same options as Recraft
|
|
533
|
+
seed: { default: 12345 } // Fixed seed for reproducibility
|
|
528
534
|
}
|
|
529
535
|
})
|
|
530
536
|
```
|
|
@@ -547,9 +553,9 @@ image2image: FalAiImage.IdeogramV3Remix({
|
|
|
547
553
|
},
|
|
548
554
|
// Optional: Configure default property values
|
|
549
555
|
properties: {
|
|
550
|
-
style: 'AUTO', // Options: 'AUTO', 'GENERAL', 'REALISTIC', 'DESIGN'
|
|
551
|
-
image_size: 'square_hd',
|
|
552
|
-
remix_strength: 0.7 // How much to transform (0.0-1.0)
|
|
556
|
+
style: { default: 'AUTO' }, // Options: 'AUTO', 'GENERAL', 'REALISTIC', 'DESIGN'
|
|
557
|
+
image_size: { default: 'square_hd' },
|
|
558
|
+
remix_strength: { default: 0.7 } // How much to transform (0.0-1.0)
|
|
553
559
|
}
|
|
554
560
|
})
|
|
555
561
|
```
|
|
@@ -573,8 +579,8 @@ image2image: FalAiImage.QwenImageEdit({
|
|
|
573
579
|
},
|
|
574
580
|
// Optional: Configure default property values
|
|
575
581
|
properties: {
|
|
576
|
-
seed: 12345, // Fixed seed for reproducibility
|
|
577
|
-
guidance_scale: 7.5 // Guidance strength (0-20)
|
|
582
|
+
seed: { default: 12345 }, // Fixed seed for reproducibility
|
|
583
|
+
guidance_scale: { default: 7.5 } // Guidance strength (0-20)
|
|
578
584
|
}
|
|
579
585
|
})
|
|
580
586
|
```
|
|
@@ -631,7 +637,7 @@ text2image: FalAiImage.NanoBanana({
|
|
|
631
637
|
},
|
|
632
638
|
// Optional: Configure default property values
|
|
633
639
|
properties: {
|
|
634
|
-
output_format: 'PNG' // Options: 'PNG', 'JPEG'
|
|
640
|
+
output_format: { default: 'PNG' } // Options: 'PNG', 'JPEG'
|
|
635
641
|
}
|
|
636
642
|
})
|
|
637
643
|
```
|
|
@@ -656,7 +662,53 @@ cesdk.i18n.setTranslations({
|
|
|
656
662
|
});
|
|
657
663
|
```
|
|
658
664
|
|
|
659
|
-
#### 10.
|
|
665
|
+
#### 10. SeedreamV4 (Text-to-Image)
|
|
666
|
+
|
|
667
|
+
A powerful text-to-image model from ByteDance's Seedream 4.0 available through fal.ai:
|
|
668
|
+
|
|
669
|
+
```typescript
|
|
670
|
+
text2image: FalAiImage.SeedreamV4({
|
|
671
|
+
proxyUrl: 'http://your-proxy-server.com/api/proxy',
|
|
672
|
+
headers: {
|
|
673
|
+
'x-custom-header': 'value',
|
|
674
|
+
'x-client-version': '1.0.0'
|
|
675
|
+
},
|
|
676
|
+
// Optional: Configure default property values
|
|
677
|
+
properties: {
|
|
678
|
+
image_size: { default: 'square_hd' } // Options: square_hd, square, portrait/landscape variants
|
|
679
|
+
}
|
|
680
|
+
})
|
|
681
|
+
```
|
|
682
|
+
|
|
683
|
+
Key features:
|
|
684
|
+
- High-quality image generation with ByteDance's Seedream 4.0 model
|
|
685
|
+
- Multiple image size presets: square HD (2048×2048), square (1024×1024), portrait 4:3/16:9, landscape 4:3/16:9
|
|
686
|
+
- Custom dimensions support (1024-4096 pixels)
|
|
687
|
+
- Fast generation times
|
|
688
|
+
- Safety checker enabled by default
|
|
689
|
+
|
|
690
|
+
#### 11. SeedreamV4Edit (Image-to-Image)
|
|
691
|
+
|
|
692
|
+
An advanced image editing model from ByteDance's Seedream 4.0 for transforming existing images:
|
|
693
|
+
|
|
694
|
+
```typescript
|
|
695
|
+
image2image: FalAiImage.SeedreamV4Edit({
|
|
696
|
+
proxyUrl: 'http://your-proxy-server.com/api/proxy',
|
|
697
|
+
headers: {
|
|
698
|
+
'x-custom-header': 'value',
|
|
699
|
+
'x-client-version': '1.0.0'
|
|
700
|
+
}
|
|
701
|
+
})
|
|
702
|
+
```
|
|
703
|
+
|
|
704
|
+
Key features:
|
|
705
|
+
- Unified architecture for both generation and editing
|
|
706
|
+
- Supports multiple input images (up to 10)
|
|
707
|
+
- Full canvas quick actions support: edit image, swap background, style transfer, artist styles, create variants, combine images, remix page
|
|
708
|
+
- Maintains original image dimensions
|
|
709
|
+
- Custom headers support for API requests
|
|
710
|
+
|
|
711
|
+
#### 12. NanoBananaEdit (Image-to-Image)
|
|
660
712
|
|
|
661
713
|
An image editing model from fal.ai that transforms existing images using text prompts:
|
|
662
714
|
|
|
@@ -669,8 +721,8 @@ image2image: FalAiImage.NanoBananaEdit({
|
|
|
669
721
|
},
|
|
670
722
|
// Optional: Configure default property values
|
|
671
723
|
properties: {
|
|
672
|
-
strength: 0.7, // Edit strength (0.0-1.0)
|
|
673
|
-
output_format: 'PNG' // Options: 'PNG', 'JPEG'
|
|
724
|
+
strength: { default: 0.7 }, // Edit strength (0.0-1.0)
|
|
725
|
+
output_format: { default: 'PNG' } // Options: 'PNG', 'JPEG'
|
|
674
726
|
}
|
|
675
727
|
})
|
|
676
728
|
```
|
|
@@ -1089,6 +1141,26 @@ FalAiImage.NanoBananaEdit(config: {
|
|
|
1089
1141
|
})
|
|
1090
1142
|
```
|
|
1091
1143
|
|
|
1144
|
+
#### SeedreamV4
|
|
1145
|
+
|
|
1146
|
+
```typescript
|
|
1147
|
+
FalAiImage.SeedreamV4(config: {
|
|
1148
|
+
proxyUrl: string;
|
|
1149
|
+
headers?: Record<string, string>;
|
|
1150
|
+
debug?: boolean;
|
|
1151
|
+
})
|
|
1152
|
+
```
|
|
1153
|
+
|
|
1154
|
+
#### SeedreamV4Edit
|
|
1155
|
+
|
|
1156
|
+
```typescript
|
|
1157
|
+
FalAiImage.SeedreamV4Edit(config: {
|
|
1158
|
+
proxyUrl: string;
|
|
1159
|
+
headers?: Record<string, string>;
|
|
1160
|
+
debug?: boolean;
|
|
1161
|
+
})
|
|
1162
|
+
```
|
|
1163
|
+
|
|
1092
1164
|
## UI Integration
|
|
1093
1165
|
|
|
1094
1166
|
The plugin automatically registers the following UI components:
|
|
@@ -1184,6 +1256,8 @@ const myImageProvider = {
|
|
|
1184
1256
|
- FluxProKontextMaxEdit: `ly.img.ai.fal-ai/flux-pro/kontext/max`
|
|
1185
1257
|
- NanoBanana: `ly.img.ai.fal-ai/nano-banana`
|
|
1186
1258
|
- NanoBananaEdit: `ly.img.ai.fal-ai/nano-banana/edit`
|
|
1259
|
+
- SeedreamV4: `ly.img.ai.fal-ai/bytedance/seedream/v4/text-to-image`
|
|
1260
|
+
- SeedreamV4Edit: `ly.img.ai.fal-ai/bytedance/seedream/v4/edit`
|
|
1187
1261
|
|
|
1188
1262
|
### Asset History
|
|
1189
1263
|
|
|
@@ -1200,6 +1274,8 @@ Generated images are automatically stored in asset sources with the following ID
|
|
|
1200
1274
|
- FluxProKontextMaxEdit: `fal-ai/flux-pro/kontext/max.history`
|
|
1201
1275
|
- NanoBanana: `fal-ai/nano-banana.history`
|
|
1202
1276
|
- NanoBananaEdit: `fal-ai/nano-banana/edit.history`
|
|
1277
|
+
- SeedreamV4: `fal-ai/bytedance/seedream/v4/text-to-image.history`
|
|
1278
|
+
- SeedreamV4Edit: `fal-ai/bytedance/seedream/v4/edit.history`
|
|
1203
1279
|
|
|
1204
1280
|
### Dock Integration
|
|
1205
1281
|
|