@ai-sdk/fal 3.0.0-beta.4 → 3.0.0-beta.50

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,390 @@
1
1
  # @ai-sdk/fal
2
2
 
3
+ ## 3.0.0-beta.50
4
+
5
+ ### Patch Changes
6
+
7
+ - b8396f0: trigger initial beta release
8
+ - Updated dependencies [b8396f0]
9
+ - @ai-sdk/provider-utils@5.0.0-beta.49
10
+ - @ai-sdk/provider@4.0.0-beta.19
11
+
12
+ ## 3.0.0-canary.49
13
+
14
+ ### Patch Changes
15
+
16
+ - aeda373: fix: only send provider credentials to same-origin response-supplied URLs
17
+
18
+ Several provider clients followed a URL taken from the provider's API response (a polling/status URL or a final media URL such as `polling_url`, `urls.get`, `result_url`, `result.sample`, or `video.uri`) and reused the authenticated headers — or appended `?key=<API_KEY>` — on that request. Because the host of the response-supplied URL was never validated, the long-lived API key was sent to whatever host the response named (a CDN in the benign case, or an attacker-chosen host if the provider response was tampered with), allowing credential exfiltration.
19
+
20
+ A new `isSameOrigin` helper is added to `@ai-sdk/provider-utils`, and the affected fetches in `@ai-sdk/black-forest-labs`, `@ai-sdk/fireworks`, `@ai-sdk/replicate`, `@ai-sdk/gladia`, `@ai-sdk/fal`, and `@ai-sdk/google` now attach credentials only when the followed URL is same-origin with the provider's configured API origin. Requests to a foreign origin are made without the credential.
21
+
22
+ - Updated dependencies [aeda373]
23
+ - Updated dependencies [375fdd7]
24
+ - Updated dependencies [b4507d5]
25
+ - @ai-sdk/provider-utils@5.0.0-canary.48
26
+
27
+ ## 3.0.0-canary.48
28
+
29
+ ### Patch Changes
30
+
31
+ - Updated dependencies [bae5e2b]
32
+ - @ai-sdk/provider-utils@5.0.0-canary.47
33
+
34
+ ## 3.0.0-canary.47
35
+
36
+ ### Patch Changes
37
+
38
+ - Updated dependencies [ce769dd]
39
+ - @ai-sdk/provider@4.0.0-canary.18
40
+ - @ai-sdk/provider-utils@5.0.0-canary.46
41
+
42
+ ## 3.0.0-canary.46
43
+
44
+ ### Patch Changes
45
+
46
+ - Updated dependencies [ee798eb]
47
+ - Updated dependencies [daf6637]
48
+ - @ai-sdk/provider-utils@5.0.0-canary.45
49
+
50
+ ## 3.0.0-canary.45
51
+
52
+ ### Patch Changes
53
+
54
+ - Updated dependencies [6c93e36]
55
+ - Updated dependencies [f617ac2]
56
+ - @ai-sdk/provider-utils@5.0.0-canary.44
57
+
58
+ ## 3.0.0-canary.44
59
+
60
+ ### Patch Changes
61
+
62
+ - 7fc6bd6: Raise minimum supported Node.js version to 22. Supported versions: 22, 24, and 26.
63
+ - Updated dependencies [7fc6bd6]
64
+ - @ai-sdk/provider-utils@5.0.0-canary.43
65
+ - @ai-sdk/provider@4.0.0-canary.17
66
+
67
+ ## 3.0.0-canary.43
68
+
69
+ ### Patch Changes
70
+
71
+ - Updated dependencies [a6617c5]
72
+ - @ai-sdk/provider-utils@5.0.0-canary.42
73
+
74
+ ## 3.0.0-canary.42
75
+
76
+ ### Patch Changes
77
+
78
+ - Updated dependencies [28dfa06]
79
+ - Updated dependencies [e93fa91]
80
+ - @ai-sdk/provider-utils@5.0.0-canary.41
81
+
82
+ ## 3.0.0-canary.41
83
+
84
+ ### Patch Changes
85
+
86
+ - Updated dependencies [a7de9c9]
87
+ - @ai-sdk/provider-utils@5.0.0-canary.40
88
+
89
+ ## 3.0.0-canary.40
90
+
91
+ ### Patch Changes
92
+
93
+ - Updated dependencies [105f95b]
94
+ - @ai-sdk/provider-utils@5.0.0-canary.39
95
+
96
+ ## 3.0.0-canary.39
97
+
98
+ ### Patch Changes
99
+
100
+ - Updated dependencies [ca446f8]
101
+ - @ai-sdk/provider-utils@5.0.0-canary.38
102
+
103
+ ## 3.0.0-canary.38
104
+
105
+ ### Patch Changes
106
+
107
+ - Updated dependencies [d848405]
108
+ - @ai-sdk/provider-utils@5.0.0-canary.37
109
+
110
+ ## 3.0.0-canary.37
111
+
112
+ ### Patch Changes
113
+
114
+ - Updated dependencies [ca39020]
115
+ - @ai-sdk/provider-utils@5.0.0-canary.36
116
+
117
+ ## 3.0.0-canary.36
118
+
119
+ ### Patch Changes
120
+
121
+ - Updated dependencies [f634bac]
122
+ - @ai-sdk/provider-utils@5.0.0-canary.35
123
+
124
+ ## 3.0.0-canary.35
125
+
126
+ ### Patch Changes
127
+
128
+ - Updated dependencies [69254e0]
129
+ - Updated dependencies [3015fc3]
130
+ - @ai-sdk/provider-utils@5.0.0-canary.34
131
+
132
+ ## 3.0.0-canary.34
133
+
134
+ ### Patch Changes
135
+
136
+ - Updated dependencies [2427d88]
137
+ - @ai-sdk/provider-utils@5.0.0-canary.33
138
+
139
+ ## 3.0.0-canary.33
140
+
141
+ ### Patch Changes
142
+
143
+ - Updated dependencies [5463d0d]
144
+ - @ai-sdk/provider-utils@5.0.0-canary.32
145
+ - @ai-sdk/provider@4.0.0-canary.16
146
+
147
+ ## 3.0.0-canary.32
148
+
149
+ ### Patch Changes
150
+
151
+ - 0c4c275: trigger initial canary release
152
+ - Updated dependencies [0c4c275]
153
+ - @ai-sdk/provider-utils@5.0.0-canary.31
154
+ - @ai-sdk/provider@4.0.0-canary.15
155
+
156
+ ## 3.0.0-beta.31
157
+
158
+ ### Major Changes
159
+
160
+ - 04e9009: chore: make provider implementations code patterns more consistent, including renaming certain exported symbols
161
+
162
+ For all externally exported symbols that were renamed, the old names continue to work via deprecated aliases.
163
+
164
+ ### Patch Changes
165
+
166
+ - Updated dependencies [08d2129]
167
+ - @ai-sdk/provider-utils@5.0.0-beta.30
168
+
169
+ ## 3.0.0-beta.30
170
+
171
+ ### Patch Changes
172
+
173
+ - 258c093: chore: ensure consistent import handling and avoid import duplicates or cycles
174
+ - Updated dependencies [9bd6512]
175
+ - Updated dependencies [258c093]
176
+ - Updated dependencies [b6783da]
177
+ - @ai-sdk/provider-utils@5.0.0-beta.29
178
+ - @ai-sdk/provider@4.0.0-beta.14
179
+
180
+ ## 3.0.0-beta.29
181
+
182
+ ### Patch Changes
183
+
184
+ - 9f0e36c: trigger release for all packages after provenance setup
185
+ - Updated dependencies [9f0e36c]
186
+ - @ai-sdk/provider@4.0.0-beta.13
187
+ - @ai-sdk/provider-utils@5.0.0-beta.28
188
+
189
+ ## 3.0.0-beta.28
190
+
191
+ ### Patch Changes
192
+
193
+ - Updated dependencies [785fe16]
194
+ - Updated dependencies [67df0a0]
195
+ - Updated dependencies [befb78c]
196
+ - Updated dependencies [0458559]
197
+ - Updated dependencies [5852c0a]
198
+ - Updated dependencies [fc92055]
199
+ - @ai-sdk/provider-utils@5.0.0-beta.27
200
+
201
+ ## 3.0.0-beta.27
202
+
203
+ ### Patch Changes
204
+
205
+ - Updated dependencies [2e98477]
206
+ - @ai-sdk/provider-utils@5.0.0-beta.26
207
+
208
+ ## 3.0.0-beta.26
209
+
210
+ ### Patch Changes
211
+
212
+ - Updated dependencies [eea8d98]
213
+ - @ai-sdk/provider-utils@5.0.0-beta.25
214
+
215
+ ## 3.0.0-beta.25
216
+
217
+ ### Patch Changes
218
+
219
+ - Updated dependencies [f807e45]
220
+ - @ai-sdk/provider-utils@5.0.0-beta.24
221
+
222
+ ## 3.0.0-beta.24
223
+
224
+ ### Patch Changes
225
+
226
+ - Updated dependencies [350ea38]
227
+ - @ai-sdk/provider-utils@5.0.0-beta.23
228
+
229
+ ## 3.0.0-beta.23
230
+
231
+ ### Patch Changes
232
+
233
+ - Updated dependencies [083947b]
234
+ - @ai-sdk/provider-utils@5.0.0-beta.22
235
+
236
+ ## 3.0.0-beta.22
237
+
238
+ ### Patch Changes
239
+
240
+ - Updated dependencies [add1126]
241
+ - @ai-sdk/provider-utils@5.0.0-beta.21
242
+
243
+ ## 3.0.0-beta.21
244
+
245
+ ### Patch Changes
246
+
247
+ - b3976a2: Add workflow serialization support to all provider models.
248
+
249
+ **`@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.
250
+
251
+ **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.
252
+
253
+ All provider model classes now include `WORKFLOW_SERIALIZE` and `WORKFLOW_DESERIALIZE` static methods, enabling them to cross workflow step boundaries without serialization errors.
254
+
255
+ - Updated dependencies [b3976a2]
256
+ - Updated dependencies [ff5eba1]
257
+ - @ai-sdk/provider-utils@5.0.0-beta.20
258
+ - @ai-sdk/provider@4.0.0-beta.12
259
+
260
+ ## 3.0.0-beta.20
261
+
262
+ ### Major Changes
263
+
264
+ - ef992f8: Remove CommonJS exports from all packages. All packages are now ESM-only (`"type": "module"`). Consumers using `require()` must switch to ESM `import` syntax.
265
+
266
+ ### Patch Changes
267
+
268
+ - Updated dependencies [ef992f8]
269
+ - @ai-sdk/provider@4.0.0-beta.11
270
+ - @ai-sdk/provider-utils@5.0.0-beta.19
271
+
272
+ ## 3.0.0-beta.19
273
+
274
+ ### Patch Changes
275
+
276
+ - 90e2d8a: chore: fix unused vars not being flagged by our lint tooling
277
+ - Updated dependencies [90e2d8a]
278
+ - @ai-sdk/provider-utils@5.0.0-beta.18
279
+
280
+ ## 3.0.0-beta.18
281
+
282
+ ### Patch Changes
283
+
284
+ - Updated dependencies [3ae1786]
285
+ - @ai-sdk/provider-utils@5.0.0-beta.17
286
+
287
+ ## 3.0.0-beta.17
288
+
289
+ ### Patch Changes
290
+
291
+ - Updated dependencies [176466a]
292
+ - @ai-sdk/provider@4.0.0-beta.10
293
+ - @ai-sdk/provider-utils@5.0.0-beta.16
294
+
295
+ ## 3.0.0-beta.16
296
+
297
+ ### Patch Changes
298
+
299
+ - Updated dependencies [e311194]
300
+ - @ai-sdk/provider@4.0.0-beta.9
301
+ - @ai-sdk/provider-utils@5.0.0-beta.15
302
+
303
+ ## 3.0.0-beta.15
304
+
305
+ ### Patch Changes
306
+
307
+ - Updated dependencies [34bd95d]
308
+ - Updated dependencies [008271d]
309
+ - @ai-sdk/provider@4.0.0-beta.8
310
+ - @ai-sdk/provider-utils@5.0.0-beta.14
311
+
312
+ ## 3.0.0-beta.14
313
+
314
+ ### Patch Changes
315
+
316
+ - Updated dependencies [b0c2869]
317
+ - Updated dependencies [7e26e81]
318
+ - @ai-sdk/provider-utils@5.0.0-beta.13
319
+
320
+ ## 3.0.0-beta.13
321
+
322
+ ### Patch Changes
323
+
324
+ - Updated dependencies [46d1149]
325
+ - @ai-sdk/provider-utils@5.0.0-beta.12
326
+
327
+ ## 3.0.0-beta.12
328
+
329
+ ### Patch Changes
330
+
331
+ - Updated dependencies [6fd51c0]
332
+ - @ai-sdk/provider-utils@5.0.0-beta.11
333
+ - @ai-sdk/provider@4.0.0-beta.7
334
+
335
+ ## 3.0.0-beta.11
336
+
337
+ ### Patch Changes
338
+
339
+ - Updated dependencies [c29a26f]
340
+ - @ai-sdk/provider-utils@5.0.0-beta.10
341
+ - @ai-sdk/provider@4.0.0-beta.6
342
+
343
+ ## 3.0.0-beta.10
344
+
345
+ ### Patch Changes
346
+
347
+ - 38fc777: Add AI Gateway hint to provider READMEs
348
+
349
+ ## 3.0.0-beta.9
350
+
351
+ ### Patch Changes
352
+
353
+ - Updated dependencies [2e17091]
354
+ - @ai-sdk/provider-utils@5.0.0-beta.9
355
+
356
+ ## 3.0.0-beta.8
357
+
358
+ ### Patch Changes
359
+
360
+ - Updated dependencies [986c6fd]
361
+ - Updated dependencies [493295c]
362
+ - @ai-sdk/provider-utils@5.0.0-beta.8
363
+
364
+ ## 3.0.0-beta.7
365
+
366
+ ### Patch Changes
367
+
368
+ - Updated dependencies [1f509d4]
369
+ - @ai-sdk/provider-utils@5.0.0-beta.7
370
+ - @ai-sdk/provider@4.0.0-beta.5
371
+
372
+ ## 3.0.0-beta.6
373
+
374
+ ### Patch Changes
375
+
376
+ - Updated dependencies [3887c70]
377
+ - @ai-sdk/provider-utils@5.0.0-beta.6
378
+ - @ai-sdk/provider@4.0.0-beta.4
379
+
380
+ ## 3.0.0-beta.5
381
+
382
+ ### Patch Changes
383
+
384
+ - Updated dependencies [776b617]
385
+ - @ai-sdk/provider-utils@5.0.0-beta.5
386
+ - @ai-sdk/provider@4.0.0-beta.3
387
+
3
388
  ## 3.0.0-beta.4
4
389
 
5
390
  ### Patch Changes
@@ -242,13 +627,13 @@
242
627
  Before
243
628
 
244
629
  ```ts
245
- model.textEmbeddingModel('my-model-id');
630
+ model.textEmbeddingModel("my-model-id");
246
631
  ```
247
632
 
248
633
  After
249
634
 
250
635
  ```ts
251
- model.embeddingModel('my-model-id');
636
+ model.embeddingModel("my-model-id");
252
637
  ```
253
638
 
254
639
  - 95f65c2: chore: use import \* from zod/v4
@@ -452,13 +837,13 @@
452
837
  Before
453
838
 
454
839
  ```ts
455
- model.textEmbeddingModel('my-model-id');
840
+ model.textEmbeddingModel("my-model-id");
456
841
  ```
457
842
 
458
843
  After
459
844
 
460
845
  ```ts
461
- model.embeddingModel('my-model-id');
846
+ model.embeddingModel("my-model-id");
462
847
  ```
463
848
 
464
849
  - Updated dependencies [8d9e8ad]
@@ -860,7 +1245,7 @@
860
1245
 
861
1246
  ```js
862
1247
  await generateImage({
863
- model: luma.image('photon-flash-1', {
1248
+ model: luma.image("photon-flash-1", {
864
1249
  maxImagesPerCall: 5,
865
1250
  pollIntervalMillis: 500,
866
1251
  }),
@@ -873,7 +1258,7 @@
873
1258
 
874
1259
  ```js
875
1260
  await generateImage({
876
- model: luma.image('photon-flash-1'),
1261
+ model: luma.image("photon-flash-1"),
877
1262
  prompt,
878
1263
  n: 10,
879
1264
  maxImagesPerCall: 5,
@@ -1115,7 +1500,7 @@
1115
1500
 
1116
1501
  ```js
1117
1502
  await generateImage({
1118
- model: luma.image('photon-flash-1', {
1503
+ model: luma.image("photon-flash-1", {
1119
1504
  maxImagesPerCall: 5,
1120
1505
  pollIntervalMillis: 500,
1121
1506
  }),
@@ -1128,7 +1513,7 @@
1128
1513
 
1129
1514
  ```js
1130
1515
  await generateImage({
1131
- model: luma.image('photon-flash-1'),
1516
+ model: luma.image("photon-flash-1"),
1132
1517
  prompt,
1133
1518
  n: 10,
1134
1519
  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