From b01cd4fe4a574c23dabb81b19718e0e8edf92342 Mon Sep 17 00:00:00 2001 From: sqhell Date: Mon, 9 Feb 2026 09:49:30 -0600 Subject: [PATCH] fix: netlify settings to cache and multithread in prod better --- netlify.toml | 36 ++++++++++++++++++++++ packages/snap/scripts/generate-manifest.js | 10 ++++-- 2 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 netlify.toml diff --git a/netlify.toml b/netlify.toml new file mode 100644 index 00000000..e7488a2c --- /dev/null +++ b/netlify.toml @@ -0,0 +1,36 @@ +[build] + base = "packages/web-wallet" + publish = "dist" + command = "npm run build" + +# Required for WASM multi-threading (SharedArrayBuffer) +[[headers]] + for = "/*" + [headers.values] + Cross-Origin-Opener-Policy = "same-origin" + Cross-Origin-Embedder-Policy = "require-corp" + Cross-Origin-Resource-Policy = "same-site" + +# Cache WASM files for 1 year (they have content hashes) +[[headers]] + for = "/*.wasm" + [headers.values] + Cache-Control = "public, max-age=31536000, immutable" + +# Cache JS bundles for 1 year (they have content hashes) +[[headers]] + for = "/*.js" + [headers.values] + Cache-Control = "public, max-age=31536000, immutable" + +# Cache CSS for 1 year +[[headers]] + for = "/*.css" + [headers.values] + Cache-Control = "public, max-age=31536000, immutable" + +# SPA routing - serve index.html for all routes +[[redirects]] + from = "/*" + to = "/index.html" + status = 200 diff --git a/packages/snap/scripts/generate-manifest.js b/packages/snap/scripts/generate-manifest.js index 50e60a7b..7c3c890e 100644 --- a/packages/snap/scripts/generate-manifest.js +++ b/packages/snap/scripts/generate-manifest.js @@ -7,8 +7,14 @@ const manifest = JSON.parse(fs.readFileSync(manifestPath, 'utf8')); const origins = manifest.initialPermissions['endowment:rpc'].allowedOrigins; if (isDev) { - if (!origins.includes('http://localhost:3000')) { - origins.push('http://localhost:3000'); + const devOrigins = [ + 'http://localhost:3000', + 'http://app-provider.localhost:3000', + ]; + for (const origin of devOrigins) { + if (!origins.includes(origin)) { + origins.push(origin); + } } } else { manifest.initialPermissions['endowment:rpc'].allowedOrigins =