@ai-sdk/fal 3.0.0-beta.3 → 3.0.0-beta.31

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 CHANGED
@@ -1,5 +1,244 @@
1
1
  # @ai-sdk/fal
2
2
 
3
+ ## 3.0.0-beta.31
4
+
5
+ ### Major Changes
6
+
7
+ - 04e9009: chore: make provider implementations code patterns more consistent, including renaming certain exported symbols
8
+
9
+ For all externally exported symbols that were renamed, the old names continue to work via deprecated aliases.
10
+
11
+ ### Patch Changes
12
+
13
+ - Updated dependencies [08d2129]
14
+ - @ai-sdk/provider-utils@5.0.0-beta.30
15
+
16
+ ## 3.0.0-beta.30
17
+
18
+ ### Patch Changes
19
+
20
+ - 258c093: chore: ensure consistent import handling and avoid import duplicates or cycles
21
+ - Updated dependencies [9bd6512]
22
+ - Updated dependencies [258c093]
23
+ - Updated dependencies [b6783da]
24
+ - @ai-sdk/provider-utils@5.0.0-beta.29
25
+ - @ai-sdk/provider@4.0.0-beta.14
26
+
27
+ ## 3.0.0-beta.29
28
+
29
+ ### Patch Changes
30
+
31
+ - 9f0e36c: trigger release for all packages after provenance setup
32
+ - Updated dependencies [9f0e36c]
33
+ - @ai-sdk/provider@4.0.0-beta.13
34
+ - @ai-sdk/provider-utils@5.0.0-beta.28
35
+
36
+ ## 3.0.0-beta.28
37
+
38
+ ### Patch Changes
39
+
40
+ - Updated dependencies [785fe16]
41
+ - Updated dependencies [67df0a0]
42
+ - Updated dependencies [befb78c]
43
+ - Updated dependencies [0458559]
44
+ - Updated dependencies [5852c0a]
45
+ - Updated dependencies [fc92055]
46
+ - @ai-sdk/provider-utils@5.0.0-beta.27
47
+
48
+ ## 3.0.0-beta.27
49
+
50
+ ### Patch Changes
51
+
52
+ - Updated dependencies [2e98477]
53
+ - @ai-sdk/provider-utils@5.0.0-beta.26
54
+
55
+ ## 3.0.0-beta.26
56
+
57
+ ### Patch Changes
58
+
59
+ - Updated dependencies [eea8d98]
60
+ - @ai-sdk/provider-utils@5.0.0-beta.25
61
+
62
+ ## 3.0.0-beta.25
63
+
64
+ ### Patch Changes
65
+
66
+ - Updated dependencies [f807e45]
67
+ - @ai-sdk/provider-utils@5.0.0-beta.24
68
+
69
+ ## 3.0.0-beta.24
70
+
71
+ ### Patch Changes
72
+
73
+ - Updated dependencies [350ea38]
74
+ - @ai-sdk/provider-utils@5.0.0-beta.23
75
+
76
+ ## 3.0.0-beta.23
77
+
78
+ ### Patch Changes
79
+
80
+ - Updated dependencies [083947b]
81
+ - @ai-sdk/provider-utils@5.0.0-beta.22
82
+
83
+ ## 3.0.0-beta.22
84
+
85
+ ### Patch Changes
86
+
87
+ - Updated dependencies [add1126]
88
+ - @ai-sdk/provider-utils@5.0.0-beta.21
89
+
90
+ ## 3.0.0-beta.21
91
+
92
+ ### Patch Changes
93
+
94
+ - b3976a2: Add workflow serialization support to all provider models.
95
+
96
+ **`@ai-sdk/provider-utils`:** New `serializeModel()` helper that extracts only serializable properties from a model instance, filtering out functions and objects containing functions. Third-party provider authors can use this to add workflow support to their own models.
97
+
98
+ **All providers:** `headers` is now optional in provider config types. This is non-breaking — existing code that passes `headers` continues to work. Custom provider implementations that construct model configs manually can now omit `headers`, which is useful when models are deserialized from a workflow step boundary where auth is provided separately.
99
+
100
+ All provider model classes now include `WORKFLOW_SERIALIZE` and `WORKFLOW_DESERIALIZE` static methods, enabling them to cross workflow step boundaries without serialization errors.
101
+
102
+ - Updated dependencies [b3976a2]
103
+ - Updated dependencies [ff5eba1]
104
+ - @ai-sdk/provider-utils@5.0.0-beta.20
105
+ - @ai-sdk/provider@4.0.0-beta.12
106
+
107
+ ## 3.0.0-beta.20
108
+
109
+ ### Major Changes
110
+
111
+ - ef992f8: Remove CommonJS exports from all packages. All packages are now ESM-only (`"type": "module"`). Consumers using `require()` must switch to ESM `import` syntax.
112
+
113
+ ### Patch Changes
114
+
115
+ - Updated dependencies [ef992f8]
116
+ - @ai-sdk/provider@4.0.0-beta.11
117
+ - @ai-sdk/provider-utils@5.0.0-beta.19
118
+
119
+ ## 3.0.0-beta.19
120
+
121
+ ### Patch Changes
122
+
123
+ - 90e2d8a: chore: fix unused vars not being flagged by our lint tooling
124
+ - Updated dependencies [90e2d8a]
125
+ - @ai-sdk/provider-utils@5.0.0-beta.18
126
+
127
+ ## 3.0.0-beta.18
128
+
129
+ ### Patch Changes
130
+
131
+ - Updated dependencies [3ae1786]
132
+ - @ai-sdk/provider-utils@5.0.0-beta.17
133
+
134
+ ## 3.0.0-beta.17
135
+
136
+ ### Patch Changes
137
+
138
+ - Updated dependencies [176466a]
139
+ - @ai-sdk/provider@4.0.0-beta.10
140
+ - @ai-sdk/provider-utils@5.0.0-beta.16
141
+
142
+ ## 3.0.0-beta.16
143
+
144
+ ### Patch Changes
145
+
146
+ - Updated dependencies [e311194]
147
+ - @ai-sdk/provider@4.0.0-beta.9
148
+ - @ai-sdk/provider-utils@5.0.0-beta.15
149
+
150
+ ## 3.0.0-beta.15
151
+
152
+ ### Patch Changes
153
+
154
+ - Updated dependencies [34bd95d]
155
+ - Updated dependencies [008271d]
156
+ - @ai-sdk/provider@4.0.0-beta.8
157
+ - @ai-sdk/provider-utils@5.0.0-beta.14
158
+
159
+ ## 3.0.0-beta.14
160
+
161
+ ### Patch Changes
162
+
163
+ - Updated dependencies [b0c2869]
164
+ - Updated dependencies [7e26e81]
165
+ - @ai-sdk/provider-utils@5.0.0-beta.13
166
+
167
+ ## 3.0.0-beta.13
168
+
169
+ ### Patch Changes
170
+
171
+ - Updated dependencies [46d1149]
172
+ - @ai-sdk/provider-utils@5.0.0-beta.12
173
+
174
+ ## 3.0.0-beta.12
175
+
176
+ ### Patch Changes
177
+
178
+ - Updated dependencies [6fd51c0]
179
+ - @ai-sdk/provider-utils@5.0.0-beta.11
180
+ - @ai-sdk/provider@4.0.0-beta.7
181
+
182
+ ## 3.0.0-beta.11
183
+
184
+ ### Patch Changes
185
+
186
+ - Updated dependencies [c29a26f]
187
+ - @ai-sdk/provider-utils@5.0.0-beta.10
188
+ - @ai-sdk/provider@4.0.0-beta.6
189
+
190
+ ## 3.0.0-beta.10
191
+
192
+ ### Patch Changes
193
+
194
+ - 38fc777: Add AI Gateway hint to provider READMEs
195
+
196
+ ## 3.0.0-beta.9
197
+
198
+ ### Patch Changes
199
+
200
+ - Updated dependencies [2e17091]
201
+ - @ai-sdk/provider-utils@5.0.0-beta.9
202
+
203
+ ## 3.0.0-beta.8
204
+
205
+ ### Patch Changes
206
+
207
+ - Updated dependencies [986c6fd]
208
+ - Updated dependencies [493295c]
209
+ - @ai-sdk/provider-utils@5.0.0-beta.8
210
+
211
+ ## 3.0.0-beta.7
212
+
213
+ ### Patch Changes
214
+
215
+ - Updated dependencies [1f509d4]
216
+ - @ai-sdk/provider-utils@5.0.0-beta.7
217
+ - @ai-sdk/provider@4.0.0-beta.5
218
+
219
+ ## 3.0.0-beta.6
220
+
221
+ ### Patch Changes
222
+
223
+ - Updated dependencies [3887c70]
224
+ - @ai-sdk/provider-utils@5.0.0-beta.6
225
+ - @ai-sdk/provider@4.0.0-beta.4
226
+
227
+ ## 3.0.0-beta.5
228
+
229
+ ### Patch Changes
230
+
231
+ - Updated dependencies [776b617]
232
+ - @ai-sdk/provider-utils@5.0.0-beta.5
233
+ - @ai-sdk/provider@4.0.0-beta.3
234
+
235
+ ## 3.0.0-beta.4
236
+
237
+ ### Patch Changes
238
+
239
+ - Updated dependencies [61753c3]
240
+ - @ai-sdk/provider-utils@5.0.0-beta.4
241
+
3
242
  ## 3.0.0-beta.3
4
243
 
5
244
  ### Patch Changes
@@ -235,13 +474,13 @@
235
474
  Before
236
475
 
237
476
  ```ts
238
- model.textEmbeddingModel('my-model-id');
477
+ model.textEmbeddingModel("my-model-id");
239
478
  ```
240
479
 
241
480
  After
242
481
 
243
482
  ```ts
244
- model.embeddingModel('my-model-id');
483
+ model.embeddingModel("my-model-id");
245
484
  ```
246
485
 
247
486
  - 95f65c2: chore: use import \* from zod/v4
@@ -445,13 +684,13 @@
445
684
  Before
446
685
 
447
686
  ```ts
448
- model.textEmbeddingModel('my-model-id');
687
+ model.textEmbeddingModel("my-model-id");
449
688
  ```
450
689
 
451
690
  After
452
691
 
453
692
  ```ts
454
- model.embeddingModel('my-model-id');
693
+ model.embeddingModel("my-model-id");
455
694
  ```
456
695
 
457
696
  - Updated dependencies [8d9e8ad]
@@ -853,7 +1092,7 @@
853
1092
 
854
1093
  ```js
855
1094
  await generateImage({
856
- model: luma.image('photon-flash-1', {
1095
+ model: luma.image("photon-flash-1", {
857
1096
  maxImagesPerCall: 5,
858
1097
  pollIntervalMillis: 500,
859
1098
  }),
@@ -866,7 +1105,7 @@
866
1105
 
867
1106
  ```js
868
1107
  await generateImage({
869
- model: luma.image('photon-flash-1'),
1108
+ model: luma.image("photon-flash-1"),
870
1109
  prompt,
871
1110
  n: 10,
872
1111
  maxImagesPerCall: 5,
@@ -1108,7 +1347,7 @@
1108
1347
 
1109
1348
  ```js
1110
1349
  await generateImage({
1111
- model: luma.image('photon-flash-1', {
1350
+ model: luma.image("photon-flash-1", {
1112
1351
  maxImagesPerCall: 5,
1113
1352
  pollIntervalMillis: 500,
1114
1353
  }),
@@ -1121,7 +1360,7 @@
1121
1360
 
1122
1361
  ```js
1123
1362
  await generateImage({
1124
- model: luma.image('photon-flash-1'),
1363
+ model: luma.image("photon-flash-1"),
1125
1364
  prompt,
1126
1365
  n: 10,
1127
1366
  maxImagesPerCall: 5,
package/README.md CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  The **[fal provider](https://ai-sdk.dev/providers/ai-sdk-providers/fal)** for the [AI SDK](https://ai-sdk.dev/docs) contains image model support for the [fal.ai API](https://fal.ai/).
4
4
 
5
+ > **Deploying to Vercel?** With Vercel's AI Gateway you can access fal (and hundreds of models from other providers) — no additional packages, API keys, or extra cost. [Get started with AI Gateway](https://vercel.com/ai-gateway).
6
+
5
7
  ## Setup
6
8
 
7
9
  The fal provider is available in the `@ai-sdk/fal` module. You can install it with
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { ProviderV3, ImageModelV3, TranscriptionModelV3, Experimental_VideoModelV3, SpeechModelV3 } from '@ai-sdk/provider';
1
+ import { ProviderV4, ImageModelV4, TranscriptionModelV4, Experimental_VideoModelV4, SpeechModelV4 } from '@ai-sdk/provider';
2
2
  import * as _ai_sdk_provider_utils from '@ai-sdk/provider-utils';
3
3
  import { FetchFunction, InferSchema } from '@ai-sdk/provider-utils';
4
4
  import { z } from 'zod/v4';
@@ -32,31 +32,31 @@ interface FalProviderSettings {
32
32
  */
33
33
  fetch?: FetchFunction;
34
34
  }
35
- interface FalProvider extends ProviderV3 {
35
+ interface FalProvider extends ProviderV4 {
36
36
  /**
37
37
  * Creates a model for image generation.
38
38
  */
39
- image(modelId: FalImageModelId): ImageModelV3;
39
+ image(modelId: FalImageModelId): ImageModelV4;
40
40
  /**
41
41
  * Creates a model for image generation.
42
42
  */
43
- imageModel(modelId: FalImageModelId): ImageModelV3;
43
+ imageModel(modelId: FalImageModelId): ImageModelV4;
44
44
  /**
45
45
  * Creates a model for transcription.
46
46
  */
47
- transcription(modelId: FalTranscriptionModelId): TranscriptionModelV3;
47
+ transcription(modelId: FalTranscriptionModelId): TranscriptionModelV4;
48
48
  /**
49
49
  * Creates a model for video generation.
50
50
  */
51
- video(modelId: FalVideoModelId): Experimental_VideoModelV3;
51
+ video(modelId: FalVideoModelId): Experimental_VideoModelV4;
52
52
  /**
53
53
  * Creates a model for video generation.
54
54
  */
55
- videoModel(modelId: FalVideoModelId): Experimental_VideoModelV3;
55
+ videoModel(modelId: FalVideoModelId): Experimental_VideoModelV4;
56
56
  /**
57
57
  * Creates a model for speech generation.
58
58
  */
59
- speech(modelId: FalSpeechModelId): SpeechModelV3;
59
+ speech(modelId: FalSpeechModelId): SpeechModelV4;
60
60
  /**
61
61
  * @deprecated Use `embeddingModel` instead.
62
62
  */