@ai-sdk/provider-utils 4.0.8 → 4.0.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.
Files changed (58) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/index.js +29 -1
  3. package/dist/index.js.map +1 -1
  4. package/dist/index.mjs +29 -1
  5. package/dist/index.mjs.map +1 -1
  6. package/package.json +6 -2
  7. package/src/handle-fetch-error.ts +33 -0
  8. package/src/__snapshots__/schema.test.ts.snap +0 -346
  9. package/src/add-additional-properties-to-json-schema.test.ts +0 -289
  10. package/src/convert-async-iterator-to-readable-stream.test.ts +0 -78
  11. package/src/convert-image-model-file-to-data-uri.test.ts +0 -85
  12. package/src/convert-to-form-data.test.ts +0 -167
  13. package/src/create-tool-name-mapping.test.ts +0 -163
  14. package/src/delay.test.ts +0 -212
  15. package/src/delayed-promise.test.ts +0 -132
  16. package/src/download-blob.test.ts +0 -145
  17. package/src/generate-id.test.ts +0 -31
  18. package/src/get-from-api.test.ts +0 -199
  19. package/src/get-runtime-environment-user-agent.test.ts +0 -47
  20. package/src/inject-json-instruction.test.ts +0 -404
  21. package/src/is-url-supported.test.ts +0 -282
  22. package/src/media-type-to-extension.test.ts +0 -26
  23. package/src/normalize-headers.test.ts +0 -64
  24. package/src/parse-json.test.ts +0 -191
  25. package/src/remove-undefined-entries.test.ts +0 -57
  26. package/src/resolve.test.ts +0 -125
  27. package/src/response-handler.test.ts +0 -89
  28. package/src/schema.test-d.ts +0 -11
  29. package/src/schema.test.ts +0 -502
  30. package/src/secure-json-parse.test.ts +0 -59
  31. package/src/to-json-schema/zod3-to-json-schema/parse-def.test.ts +0 -224
  32. package/src/to-json-schema/zod3-to-json-schema/parsers/array.test.ts +0 -98
  33. package/src/to-json-schema/zod3-to-json-schema/parsers/bigint.test.ts +0 -51
  34. package/src/to-json-schema/zod3-to-json-schema/parsers/branded.test.ts +0 -16
  35. package/src/to-json-schema/zod3-to-json-schema/parsers/catch.test.ts +0 -15
  36. package/src/to-json-schema/zod3-to-json-schema/parsers/date.test.ts +0 -97
  37. package/src/to-json-schema/zod3-to-json-schema/parsers/default.test.ts +0 -54
  38. package/src/to-json-schema/zod3-to-json-schema/parsers/effects.test.ts +0 -41
  39. package/src/to-json-schema/zod3-to-json-schema/parsers/intersection.test.ts +0 -92
  40. package/src/to-json-schema/zod3-to-json-schema/parsers/map.test.ts +0 -48
  41. package/src/to-json-schema/zod3-to-json-schema/parsers/native-enum.test.ts +0 -102
  42. package/src/to-json-schema/zod3-to-json-schema/parsers/nullable.test.ts +0 -67
  43. package/src/to-json-schema/zod3-to-json-schema/parsers/number.test.ts +0 -65
  44. package/src/to-json-schema/zod3-to-json-schema/parsers/object.test.ts +0 -149
  45. package/src/to-json-schema/zod3-to-json-schema/parsers/optional.test.ts +0 -147
  46. package/src/to-json-schema/zod3-to-json-schema/parsers/pipe.test.ts +0 -35
  47. package/src/to-json-schema/zod3-to-json-schema/parsers/promise.test.ts +0 -15
  48. package/src/to-json-schema/zod3-to-json-schema/parsers/readonly.test.ts +0 -20
  49. package/src/to-json-schema/zod3-to-json-schema/parsers/record.test.ts +0 -108
  50. package/src/to-json-schema/zod3-to-json-schema/parsers/set.test.ts +0 -20
  51. package/src/to-json-schema/zod3-to-json-schema/parsers/string.test.ts +0 -438
  52. package/src/to-json-schema/zod3-to-json-schema/parsers/tuple.test.ts +0 -33
  53. package/src/to-json-schema/zod3-to-json-schema/parsers/union.test.ts +0 -226
  54. package/src/to-json-schema/zod3-to-json-schema/refs.test.ts +0 -919
  55. package/src/to-json-schema/zod3-to-json-schema/zod3-to-json-schema.test.ts +0 -862
  56. package/src/types/tool.test-d.ts +0 -228
  57. package/src/validate-types.test.ts +0 -105
  58. package/src/with-user-agent-suffix.test.ts +0 -84
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # @ai-sdk/provider-utils
2
2
 
3
+ ## 4.0.10
4
+
5
+ ### Patch Changes
6
+
7
+ - 462ad00: fix(provider-utils): recognize bun fetch errors as retryable
8
+
9
+ ## 4.0.9
10
+
11
+ ### Patch Changes
12
+
13
+ - 4de5a1d: chore: excluded tests from src folder in npm package
14
+ - Updated dependencies [4de5a1d]
15
+ - @ai-sdk/provider@3.0.5
16
+
3
17
  ## 4.0.8
4
18
 
5
19
  ### Patch Changes
package/dist/index.js CHANGED
@@ -398,6 +398,25 @@ function isAbortError(error) {
398
398
 
399
399
  // src/handle-fetch-error.ts
400
400
  var FETCH_FAILED_ERROR_MESSAGES = ["fetch failed", "failed to fetch"];
401
+ var BUN_ERROR_CODES = [
402
+ "ConnectionRefused",
403
+ "ConnectionClosed",
404
+ "FailedToOpenSocket",
405
+ "ECONNRESET",
406
+ "ECONNREFUSED",
407
+ "ETIMEDOUT",
408
+ "EPIPE"
409
+ ];
410
+ function isBunNetworkError(error) {
411
+ if (!(error instanceof Error)) {
412
+ return false;
413
+ }
414
+ const code = error.code;
415
+ if (typeof code === "string" && BUN_ERROR_CODES.includes(code)) {
416
+ return true;
417
+ }
418
+ return false;
419
+ }
401
420
  function handleFetchError({
402
421
  error,
403
422
  url,
@@ -419,6 +438,15 @@ function handleFetchError({
419
438
  });
420
439
  }
421
440
  }
441
+ if (isBunNetworkError(error)) {
442
+ return new import_provider3.APICallError({
443
+ message: `Cannot connect to API: ${error.message}`,
444
+ cause: error,
445
+ url,
446
+ requestBodyValues,
447
+ isRetryable: true
448
+ });
449
+ }
422
450
  return error;
423
451
  }
424
452
 
@@ -475,7 +503,7 @@ function withUserAgentSuffix(headers, ...userAgentSuffixParts) {
475
503
  }
476
504
 
477
505
  // src/version.ts
478
- var VERSION = true ? "4.0.8" : "0.0.0-test";
506
+ var VERSION = true ? "4.0.10" : "0.0.0-test";
479
507
 
480
508
  // src/get-from-api.ts
481
509
  var getOriginalFetch = () => globalThis.fetch;