summaryrefslogtreecommitdiffhomepage
path: root/patches/@ai-sdk%[email protected]
diff options
context:
space:
mode:
Diffstat (limited to 'patches/@ai-sdk%[email protected]')
-rw-r--r--patches/@ai-sdk%[email protected]61
1 files changed, 61 insertions, 0 deletions
diff --git a/patches/@ai-sdk%[email protected] b/patches/@ai-sdk%[email protected]
new file mode 100644
index 000000000..b93092c46
--- /dev/null
+++ b/patches/@ai-sdk%[email protected]
@@ -0,0 +1,61 @@
+diff --git a/dist/index.js b/dist/index.js
+index 9aa8e83684777e860d905ff7a6895995a7347a4f..820797581ac2a33e731e139da3ebc98b4d93fdcf 100644
+--- a/dist/index.js
++++ b/dist/index.js
+@@ -395,10 +395,13 @@ function validateDownloadUrl(url) {
+ message: `Invalid URL: ${url}`
+ });
+ }
++ if (parsed.protocol === "data:") {
++ return;
++ }
+ if (parsed.protocol !== "http:" && parsed.protocol !== "https:") {
+ throw new DownloadError({
+ url,
+- message: `URL scheme must be http or https, got ${parsed.protocol}`
++ message: `URL scheme must be http, https, or data, got ${parsed.protocol}`
+ });
+ }
+ const hostname = parsed.hostname;
+diff --git a/dist/index.mjs b/dist/index.mjs
+index 095fdc188b1d7f227b42591c78ecb71fe2e2cf8b..ca5227d3b6e358aea8ecd85782a0a2b48130a2c9 100644
+--- a/dist/index.mjs
++++ b/dist/index.mjs
+@@ -299,10 +299,13 @@ function validateDownloadUrl(url) {
+ message: `Invalid URL: ${url}`
+ });
+ }
++ if (parsed.protocol === "data:") {
++ return;
++ }
+ if (parsed.protocol !== "http:" && parsed.protocol !== "https:") {
+ throw new DownloadError({
+ url,
+- message: `URL scheme must be http or https, got ${parsed.protocol}`
++ message: `URL scheme must be http, https, or data, got ${parsed.protocol}`
+ });
+ }
+ const hostname = parsed.hostname;
+diff --git a/src/validate-download-url.ts b/src/validate-download-url.ts
+index 7c026ad6b400aef551ce3a424c343e1cedc60997..6a2f11398e58f80a8e11995ac1ce5f4d7c110561 100644
+--- a/src/validate-download-url.ts
++++ b/src/validate-download-url.ts
+@@ -18,11 +18,16 @@ export function validateDownloadUrl(url: string): void {
+ });
+ }
+
+- // Only allow http and https protocols
++ // data: URLs are inline content and do not make network requests.
++ if (parsed.protocol === 'data:') {
++ return;
++ }
++
++ // Only allow http and https network protocols
+ if (parsed.protocol !== 'http:' && parsed.protocol !== 'https:') {
+ throw new DownloadError({
+ url,
+- message: `URL scheme must be http or https, got ${parsed.protocol}`,
++ message: `URL scheme must be http, https, or data, got ${parsed.protocol}`,
+ });
+ }
+