diff --git a/packages/snaps-execution-environments/lavamoat/build-system/policy.json b/packages/snaps-execution-environments/lavamoat/build-system/policy.json index 25d8697264..05ee3e7c27 100644 --- a/packages/snaps-execution-environments/lavamoat/build-system/policy.json +++ b/packages/snaps-execution-environments/lavamoat/build-system/policy.json @@ -52,7 +52,7 @@ "@metamask/snaps-utils>@babel/types": { "globals": { "console.warn": true, - "process.env": true + "process.env.BABEL_TYPES_8_BREAKING": true }, "packages": { "@metamask/snaps-utils>@babel/types>@babel/helper-string-parser": true, @@ -130,6 +130,7 @@ "process._rawDebug": true }, "packages": { + "depcheck>@babel/parser": true, "lavamoat>@lavamoat/aa": true, "@lavamoat/webpack>browser-resolve": true, "lavamoat>lavamoat-core": true, diff --git a/packages/snaps-execution-environments/lavamoat/webpack/iframe/policy.json b/packages/snaps-execution-environments/lavamoat/webpack/iframe/policy.json index 013c733b84..b91b21d38b 100644 --- a/packages/snaps-execution-environments/lavamoat/webpack/iframe/policy.json +++ b/packages/snaps-execution-environments/lavamoat/webpack/iframe/policy.json @@ -1,5 +1,39 @@ { "resources": { + "@metamask/snaps-utils>@metamask/base-controller": { + "globals": { + "setTimeout": true + }, + "packages": { + "@metamask/snaps-utils>@metamask/base-controller>immer": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils": { + "globals": { + "Buffer.from": true, + "URL": true, + "console.error": true, + "fetch": true, + "setTimeout": true + }, + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit": true, + "@metamask/utils": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@spruceid/siwe-parser": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>bn.js": true, + "@metamask/providers>extension-port-stream>readable-stream>buffer": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>cockatiel": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash": true, + "eslint>fast-deep-equal": true, + "depcheck>lodash": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit": { + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>bn.js": true + } + }, "@metamask/json-rpc-engine": { "packages": { "@metamask/rpc-errors": true, @@ -18,6 +52,27 @@ "readable-stream": true } }, + "@metamask/snaps-sdk>@metamask/key-tree": { + "globals": { + "crypto.subtle": true, + "ed25519": true, + "ed25519Bip32": true, + "secp256k1": true + }, + "packages": { + "@metamask/snaps-sdk>@metamask/key-tree>@metamask/scure-bip39": true, + "@metamask/utils": true, + "@metamask/snaps-sdk>@metamask/key-tree>@noble/curves": true, + "@metamask/utils>@noble/hashes": true, + "@metamask/utils>@scure/base": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn": { + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>bn.js": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn>strip-hex-prefix": true + } + }, "@metamask/object-multiplex": { "globals": { "console.warn": true @@ -27,6 +82,22 @@ "readable-stream": true } }, + "@metamask/snaps-utils>@metamask/permission-controller": { + "globals": { + "console.error": true, + "permissionRpcMethods": true + }, + "packages": { + "@metamask/snaps-utils>@metamask/base-controller": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils": true, + "@metamask/json-rpc-engine": true, + "@metamask/rpc-errors": true, + "@metamask/utils": true, + "@metamask/snaps-utils>@metamask/permission-controller>deep-freeze-strict": true, + "@metamask/snaps-utils>@metamask/base-controller>immer": true, + "vite>postcss>nanoid": true + } + }, "@metamask/post-message-stream": { "globals": { "MessageEvent.prototype": true, @@ -71,44 +142,136 @@ "webpack>events": true } }, + "@metamask/snaps-sdk>@metamask/key-tree>@metamask/scure-bip39": { + "globals": { + "TextEncoder": true + }, + "packages": { + "@metamask/snaps-sdk>@metamask/key-tree>@metamask/scure-bip39>@noble/hashes": true, + "@metamask/utils>@scure/base": true + } + }, "@metamask/snaps-sdk": { + "globals": { + "URL": true, + "fetch": true + }, "packages": { + "@metamask/rpc-errors": true, "@metamask/superstruct": true, "@metamask/utils": true } }, "@metamask/snaps-utils": { "globals": { + "File": true, + "FileReader": true, + "TextDecoder": true, "URL": true, "console.error": true, "console.log": true, - "console.warn": true + "console.warn": true, + "crypto": true, + "document.body.appendChild": true, + "document.createElement": true, + "fetch": true, + "navigator": true, + "type": true }, "packages": { + "@metamask/snaps-sdk>@metamask/key-tree": true, + "@metamask/snaps-utils>@metamask/permission-controller": true, "@metamask/rpc-errors": true, + "@metamask/snaps-utils>@metamask/slip44": true, "@metamask/snaps-sdk": true, "@metamask/superstruct": true, - "@metamask/utils": true + "@metamask/utils": true, + "@metamask/utils>@noble/hashes": true, + "@metamask/utils>@scure/base": true, + "eslint>chalk": true, + "@metamask/snaps-utils>cron-parser": true, + "@metamask/snaps-utils>fast-json-stable-stringify": true, + "@metamask/snaps-utils>fast-xml-parser": true, + "@metamask/snaps-utils>luxon": true, + "@metamask/snaps-utils>marked": true, + "@metamask/snaps-utils>rfdc": true, + "depcheck>semver": true, + "@metamask/snaps-utils>validate-npm-package-name": true } }, "@metamask/utils": { "globals": { + "Buffer": true, + "TextDecoder": true, "TextEncoder": true }, "packages": { "@metamask/superstruct": true, "@metamask/utils>@noble/hashes": true, + "@metamask/utils>@scure/base": true, + "@metamask/providers>extension-port-stream>readable-stream>buffer": true, "eslint>debug": true, "depcheck>lodash": true, "@metamask/utils>pony-cause": true, "depcheck>semver": true } }, + "@metamask/snaps-sdk>@metamask/key-tree>@noble/curves": { + "globals": { + "TextEncoder": true + }, + "packages": { + "@metamask/utils>@noble/hashes": true + } + }, + "@metamask/snaps-sdk>@metamask/key-tree>@metamask/scure-bip39>@noble/hashes": { + "globals": { + "TextEncoder": true, + "crypto": true + } + }, "@metamask/utils>@noble/hashes": { "globals": { + "TextEncoder": true, + "crypto": true + } + }, + "@metamask/utils>@scure/base": { + "globals": { + "TextDecoder": true, "TextEncoder": true } }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@spruceid/siwe-parser": { + "globals": { + "console.error": true, + "console.log": true + }, + "packages": { + "@metamask/utils>@noble/hashes": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@spruceid/siwe-parser>apg-js": true + } + }, + "eslint>chalk>ansi-styles": { + "packages": { + "eslint>chalk>ansi-styles>color-convert": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@spruceid/siwe-parser>apg-js": { + "globals": { + "Buffer.alloc": true, + "Buffer.from": true, + "Buffer.isBuffer": true + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>buffer": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>bn.js": { + "globals": { + "Buffer": true + } + }, "@metamask/providers>extension-port-stream>readable-stream>buffer": { "globals": { "console": true @@ -118,6 +281,44 @@ "@metamask/providers>extension-port-stream>readable-stream>buffer>ieee754": true } }, + "@metamask/snaps-utils>validate-npm-package-name>builtins": { + "globals": { + "process.version": true + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>process": true, + "depcheck>semver": true + } + }, + "eslint>chalk": { + "packages": { + "eslint>chalk>ansi-styles": true, + "eslint>chalk>supports-color": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>cockatiel": { + "globals": { + "AbortController": true, + "AbortSignal": true, + "clearTimeout": true, + "performance": true, + "process.hrtime.bigint": true, + "setTimeout": true + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>process": true + } + }, + "eslint>chalk>ansi-styles>color-convert": { + "packages": { + "eslint>chalk>ansi-styles>color-convert>color-name": true + } + }, + "@metamask/snaps-utils>cron-parser": { + "packages": { + "@metamask/snaps-utils>cron-parser>luxon": true + } + }, "eslint>debug": { "globals": { "console": true, @@ -131,16 +332,78 @@ "@metamask/providers>extension-port-stream>readable-stream>process": true } }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash": { + "globals": { + "Buffer": true, + "name": "write" + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>buffer": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>idna-uts46-hx": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>js-sha3": true + } + }, "webpack>events": { "globals": { "console": true } }, + "@metamask/snaps-utils>fast-xml-parser": { + "globals": { + "entityName": true, + "val": true + }, + "packages": { + "@metamask/snaps-utils>fast-xml-parser>strnum": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>idna-uts46-hx": { + "globals": { + "define": true + }, + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>idna-uts46-hx>punycode": true + } + }, + "@metamask/snaps-utils>@metamask/base-controller>immer": { + "globals": { + "process.env.NODE_ENV": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>js-sha3": { + "globals": { + "process": true + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>process": true + } + }, "depcheck>lodash": { "globals": { "define": true } }, + "@metamask/snaps-utils>luxon": { + "globals": { + "Intl": true + } + }, + "@metamask/snaps-utils>cron-parser>luxon": { + "globals": { + "Intl": true + } + }, + "@metamask/snaps-utils>marked": { + "globals": { + "console.error": true, + "console.warn": true + } + }, + "vite>postcss>nanoid": { + "globals": { + "crypto.getRandomValues": true + } + }, "@metamask/object-multiplex>once": { "packages": { "@metamask/object-multiplex>once>wrappy": true @@ -167,6 +430,14 @@ "readable-stream>util-deprecate": true } }, + "@metamask/snaps-utils>rfdc": { + "globals": { + "Buffer": true + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>buffer": true + } + }, "readable-stream>string_decoder>safe-buffer": { "packages": { "@metamask/providers>extension-port-stream>readable-stream>buffer": true @@ -186,12 +457,22 @@ "readable-stream>string_decoder>safe-buffer": true } }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn>strip-hex-prefix": { + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn>strip-hex-prefix>is-hex-prefixed": true + } + }, "readable-stream>util-deprecate": { "globals": { "console.trace": true, "console.warn": true, "localStorage": true } + }, + "@metamask/snaps-utils>validate-npm-package-name": { + "packages": { + "@metamask/snaps-utils>validate-npm-package-name>builtins": true + } } } } \ No newline at end of file diff --git a/packages/snaps-execution-environments/lavamoat/webpack/node-process/policy.json b/packages/snaps-execution-environments/lavamoat/webpack/node-process/policy.json index 0e608d3ee7..4cda929cb5 100644 --- a/packages/snaps-execution-environments/lavamoat/webpack/node-process/policy.json +++ b/packages/snaps-execution-environments/lavamoat/webpack/node-process/policy.json @@ -1,5 +1,38 @@ { "resources": { + "@metamask/snaps-utils>@metamask/base-controller": { + "globals": { + "setTimeout": true + }, + "packages": { + "@metamask/snaps-utils>@metamask/base-controller>immer": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils": { + "globals": { + "Buffer.from": true, + "URL": true, + "console.error": true, + "fetch": true, + "setTimeout": true + }, + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit": true, + "@metamask/utils": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@spruceid/siwe-parser": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>bn.js": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>cockatiel": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash": true, + "eslint>fast-deep-equal": true, + "depcheck>lodash": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit": { + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>bn.js": true + } + }, "@metamask/json-rpc-engine": { "packages": { "@metamask/rpc-errors": true, @@ -18,6 +51,27 @@ "readable-stream": true } }, + "@metamask/snaps-sdk>@metamask/key-tree": { + "globals": { + "crypto.subtle": true, + "ed25519": true, + "ed25519Bip32": true, + "secp256k1": true + }, + "packages": { + "@metamask/snaps-sdk>@metamask/key-tree>@metamask/scure-bip39": true, + "@metamask/utils": true, + "@metamask/snaps-sdk>@metamask/key-tree>@noble/curves": true, + "@metamask/utils>@noble/hashes": true, + "@metamask/utils>@scure/base": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn": { + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>bn.js": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn>strip-hex-prefix": true + } + }, "@metamask/object-multiplex": { "globals": { "console.warn": true @@ -27,6 +81,22 @@ "readable-stream": true } }, + "@metamask/snaps-utils>@metamask/permission-controller": { + "globals": { + "console.error": true, + "permissionRpcMethods": true + }, + "packages": { + "@metamask/snaps-utils>@metamask/base-controller": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils": true, + "@metamask/json-rpc-engine": true, + "@metamask/rpc-errors": true, + "@metamask/utils": true, + "@metamask/snaps-utils>@metamask/permission-controller>deep-freeze-strict": true, + "@metamask/snaps-utils>@metamask/base-controller>immer": true, + "vite>postcss>nanoid": true + } + }, "@metamask/post-message-stream": { "builtin": { "worker_threads": true @@ -77,44 +147,180 @@ "setTimeout": true } }, + "@metamask/snaps-sdk>@metamask/key-tree>@metamask/scure-bip39": { + "globals": { + "TextEncoder": true + }, + "packages": { + "@metamask/snaps-sdk>@metamask/key-tree>@metamask/scure-bip39>@noble/hashes": true, + "@metamask/utils>@scure/base": true + } + }, "@metamask/snaps-sdk": { + "globals": { + "URL": true, + "fetch": true + }, "packages": { + "@metamask/rpc-errors": true, "@metamask/superstruct": true, "@metamask/utils": true } }, "@metamask/snaps-utils": { "globals": { + "File": true, + "FileReader": true, + "TextDecoder": true, "URL": true, "console.error": true, "console.log": true, - "console.warn": true + "console.warn": true, + "crypto": true, + "document.body.appendChild": true, + "document.createElement": true, + "fetch": true, + "navigator": true, + "type": true }, "packages": { + "@metamask/snaps-sdk>@metamask/key-tree": true, + "@metamask/snaps-utils>@metamask/permission-controller": true, "@metamask/rpc-errors": true, + "@metamask/snaps-utils>@metamask/slip44": true, "@metamask/snaps-sdk": true, "@metamask/superstruct": true, - "@metamask/utils": true + "@metamask/utils": true, + "@metamask/utils>@noble/hashes": true, + "@metamask/utils>@scure/base": true, + "eslint>chalk": true, + "@metamask/snaps-utils>cron-parser": true, + "@metamask/snaps-utils>fast-json-stable-stringify": true, + "@metamask/snaps-utils>fast-xml-parser": true, + "@metamask/snaps-utils>luxon": true, + "@metamask/snaps-utils>marked": true, + "@metamask/snaps-utils>rfdc": true, + "depcheck>semver": true, + "@metamask/snaps-utils>validate-npm-package-name": true } }, "@metamask/utils": { "globals": { + "Buffer": true, + "TextDecoder": true, "TextEncoder": true }, "packages": { "@metamask/superstruct": true, "@metamask/utils>@noble/hashes": true, + "@metamask/utils>@scure/base": true, "eslint>debug": true, "depcheck>lodash": true, "@metamask/utils>pony-cause": true, "depcheck>semver": true } }, + "@metamask/snaps-sdk>@metamask/key-tree>@noble/curves": { + "globals": { + "TextEncoder": true + }, + "packages": { + "@metamask/utils>@noble/hashes": true + } + }, + "@metamask/snaps-sdk>@metamask/key-tree>@metamask/scure-bip39>@noble/hashes": { + "builtin": { + "node:crypto": true + }, + "globals": { + "TextEncoder": true + } + }, "@metamask/utils>@noble/hashes": { + "builtin": { + "node:crypto": true + }, "globals": { "TextEncoder": true } }, + "@metamask/utils>@scure/base": { + "globals": { + "TextDecoder": true, + "TextEncoder": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@spruceid/siwe-parser": { + "globals": { + "console.error": true, + "console.log": true + }, + "packages": { + "@metamask/utils>@noble/hashes": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@spruceid/siwe-parser>apg-js": true + } + }, + "eslint>chalk>ansi-styles": { + "packages": { + "eslint>chalk>ansi-styles>color-convert": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@spruceid/siwe-parser>apg-js": { + "globals": { + "Buffer.alloc": true, + "Buffer.from": true, + "Buffer.isBuffer": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>bn.js": { + "builtin": { + "buffer.Buffer": true + }, + "globals": { + "Buffer": true + } + }, + "@metamask/snaps-utils>validate-npm-package-name>builtins": { + "globals": { + "process.version": true + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>process": true, + "depcheck>semver": true + } + }, + "eslint>chalk": { + "packages": { + "eslint>chalk>ansi-styles": true, + "eslint>chalk>supports-color": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>cockatiel": { + "globals": { + "AbortController": true, + "AbortSignal": true, + "clearTimeout": true, + "performance": true, + "process.hrtime.bigint": true, + "setTimeout": true + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>process": true + } + }, + "eslint>chalk>ansi-styles>color-convert": { + "packages": { + "eslint>chalk>ansi-styles>color-convert>color-name": true + } + }, + "@metamask/snaps-utils>cron-parser": { + "builtin": { + "fs.readFile": true + }, + "packages": { + "@metamask/snaps-utils>cron-parser>luxon": true + } + }, "eslint>debug": { "builtin": { "tty.isatty": true, @@ -135,6 +341,25 @@ "eslint>chalk>supports-color": true } }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash": { + "globals": { + "Buffer": true, + "name": "write" + }, + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>idna-uts46-hx": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>js-sha3": true + } + }, + "@metamask/snaps-utils>fast-xml-parser": { + "globals": { + "entityName": true, + "val": true + }, + "packages": { + "@metamask/snaps-utils>fast-xml-parser>strnum": true + } + }, "eslint>chalk>supports-color>has-flag": { "globals": { "process.argv": true @@ -143,16 +368,61 @@ "@metamask/providers>extension-port-stream>readable-stream>process": true } }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>idna-uts46-hx": { + "builtin": { + "punycode": true + }, + "globals": { + "define": true + } + }, + "@metamask/snaps-utils>@metamask/base-controller>immer": { + "globals": { + "process.env.NODE_ENV": true + } + }, "readable-stream>inherits": { "builtin": { "util.inherits": true } }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>js-sha3": { + "globals": { + "process": true + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>process": true + } + }, "depcheck>lodash": { "globals": { "define": true } }, + "@metamask/snaps-utils>luxon": { + "globals": { + "Intl": true + } + }, + "@metamask/snaps-utils>cron-parser>luxon": { + "globals": { + "Intl": true + } + }, + "@metamask/snaps-utils>marked": { + "globals": { + "console.error": true, + "console.warn": true + } + }, + "vite>postcss>nanoid": { + "builtin": { + "crypto": true + }, + "globals": { + "Buffer.allocUnsafe": true + } + }, "@metamask/object-multiplex>once": { "packages": { "@metamask/object-multiplex>once>wrappy": true @@ -184,6 +454,11 @@ "readable-stream>util-deprecate": true } }, + "@metamask/snaps-utils>rfdc": { + "globals": { + "Buffer": true + } + }, "readable-stream>string_decoder>safe-buffer": { "builtin": { "buffer": true @@ -203,6 +478,11 @@ "readable-stream>string_decoder>safe-buffer": true } }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn>strip-hex-prefix": { + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn>strip-hex-prefix>is-hex-prefixed": true + } + }, "eslint>chalk>supports-color": { "builtin": { "os.release": true, @@ -221,6 +501,11 @@ "builtin": { "util.deprecate": true } + }, + "@metamask/snaps-utils>validate-npm-package-name": { + "packages": { + "@metamask/snaps-utils>validate-npm-package-name>builtins": true + } } } } \ No newline at end of file diff --git a/packages/snaps-execution-environments/lavamoat/webpack/node-thread/policy.json b/packages/snaps-execution-environments/lavamoat/webpack/node-thread/policy.json index 0e608d3ee7..4cda929cb5 100644 --- a/packages/snaps-execution-environments/lavamoat/webpack/node-thread/policy.json +++ b/packages/snaps-execution-environments/lavamoat/webpack/node-thread/policy.json @@ -1,5 +1,38 @@ { "resources": { + "@metamask/snaps-utils>@metamask/base-controller": { + "globals": { + "setTimeout": true + }, + "packages": { + "@metamask/snaps-utils>@metamask/base-controller>immer": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils": { + "globals": { + "Buffer.from": true, + "URL": true, + "console.error": true, + "fetch": true, + "setTimeout": true + }, + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit": true, + "@metamask/utils": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@spruceid/siwe-parser": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>bn.js": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>cockatiel": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash": true, + "eslint>fast-deep-equal": true, + "depcheck>lodash": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit": { + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>bn.js": true + } + }, "@metamask/json-rpc-engine": { "packages": { "@metamask/rpc-errors": true, @@ -18,6 +51,27 @@ "readable-stream": true } }, + "@metamask/snaps-sdk>@metamask/key-tree": { + "globals": { + "crypto.subtle": true, + "ed25519": true, + "ed25519Bip32": true, + "secp256k1": true + }, + "packages": { + "@metamask/snaps-sdk>@metamask/key-tree>@metamask/scure-bip39": true, + "@metamask/utils": true, + "@metamask/snaps-sdk>@metamask/key-tree>@noble/curves": true, + "@metamask/utils>@noble/hashes": true, + "@metamask/utils>@scure/base": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn": { + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>bn.js": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn>strip-hex-prefix": true + } + }, "@metamask/object-multiplex": { "globals": { "console.warn": true @@ -27,6 +81,22 @@ "readable-stream": true } }, + "@metamask/snaps-utils>@metamask/permission-controller": { + "globals": { + "console.error": true, + "permissionRpcMethods": true + }, + "packages": { + "@metamask/snaps-utils>@metamask/base-controller": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils": true, + "@metamask/json-rpc-engine": true, + "@metamask/rpc-errors": true, + "@metamask/utils": true, + "@metamask/snaps-utils>@metamask/permission-controller>deep-freeze-strict": true, + "@metamask/snaps-utils>@metamask/base-controller>immer": true, + "vite>postcss>nanoid": true + } + }, "@metamask/post-message-stream": { "builtin": { "worker_threads": true @@ -77,44 +147,180 @@ "setTimeout": true } }, + "@metamask/snaps-sdk>@metamask/key-tree>@metamask/scure-bip39": { + "globals": { + "TextEncoder": true + }, + "packages": { + "@metamask/snaps-sdk>@metamask/key-tree>@metamask/scure-bip39>@noble/hashes": true, + "@metamask/utils>@scure/base": true + } + }, "@metamask/snaps-sdk": { + "globals": { + "URL": true, + "fetch": true + }, "packages": { + "@metamask/rpc-errors": true, "@metamask/superstruct": true, "@metamask/utils": true } }, "@metamask/snaps-utils": { "globals": { + "File": true, + "FileReader": true, + "TextDecoder": true, "URL": true, "console.error": true, "console.log": true, - "console.warn": true + "console.warn": true, + "crypto": true, + "document.body.appendChild": true, + "document.createElement": true, + "fetch": true, + "navigator": true, + "type": true }, "packages": { + "@metamask/snaps-sdk>@metamask/key-tree": true, + "@metamask/snaps-utils>@metamask/permission-controller": true, "@metamask/rpc-errors": true, + "@metamask/snaps-utils>@metamask/slip44": true, "@metamask/snaps-sdk": true, "@metamask/superstruct": true, - "@metamask/utils": true + "@metamask/utils": true, + "@metamask/utils>@noble/hashes": true, + "@metamask/utils>@scure/base": true, + "eslint>chalk": true, + "@metamask/snaps-utils>cron-parser": true, + "@metamask/snaps-utils>fast-json-stable-stringify": true, + "@metamask/snaps-utils>fast-xml-parser": true, + "@metamask/snaps-utils>luxon": true, + "@metamask/snaps-utils>marked": true, + "@metamask/snaps-utils>rfdc": true, + "depcheck>semver": true, + "@metamask/snaps-utils>validate-npm-package-name": true } }, "@metamask/utils": { "globals": { + "Buffer": true, + "TextDecoder": true, "TextEncoder": true }, "packages": { "@metamask/superstruct": true, "@metamask/utils>@noble/hashes": true, + "@metamask/utils>@scure/base": true, "eslint>debug": true, "depcheck>lodash": true, "@metamask/utils>pony-cause": true, "depcheck>semver": true } }, + "@metamask/snaps-sdk>@metamask/key-tree>@noble/curves": { + "globals": { + "TextEncoder": true + }, + "packages": { + "@metamask/utils>@noble/hashes": true + } + }, + "@metamask/snaps-sdk>@metamask/key-tree>@metamask/scure-bip39>@noble/hashes": { + "builtin": { + "node:crypto": true + }, + "globals": { + "TextEncoder": true + } + }, "@metamask/utils>@noble/hashes": { + "builtin": { + "node:crypto": true + }, "globals": { "TextEncoder": true } }, + "@metamask/utils>@scure/base": { + "globals": { + "TextDecoder": true, + "TextEncoder": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@spruceid/siwe-parser": { + "globals": { + "console.error": true, + "console.log": true + }, + "packages": { + "@metamask/utils>@noble/hashes": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@spruceid/siwe-parser>apg-js": true + } + }, + "eslint>chalk>ansi-styles": { + "packages": { + "eslint>chalk>ansi-styles>color-convert": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@spruceid/siwe-parser>apg-js": { + "globals": { + "Buffer.alloc": true, + "Buffer.from": true, + "Buffer.isBuffer": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>bn.js": { + "builtin": { + "buffer.Buffer": true + }, + "globals": { + "Buffer": true + } + }, + "@metamask/snaps-utils>validate-npm-package-name>builtins": { + "globals": { + "process.version": true + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>process": true, + "depcheck>semver": true + } + }, + "eslint>chalk": { + "packages": { + "eslint>chalk>ansi-styles": true, + "eslint>chalk>supports-color": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>cockatiel": { + "globals": { + "AbortController": true, + "AbortSignal": true, + "clearTimeout": true, + "performance": true, + "process.hrtime.bigint": true, + "setTimeout": true + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>process": true + } + }, + "eslint>chalk>ansi-styles>color-convert": { + "packages": { + "eslint>chalk>ansi-styles>color-convert>color-name": true + } + }, + "@metamask/snaps-utils>cron-parser": { + "builtin": { + "fs.readFile": true + }, + "packages": { + "@metamask/snaps-utils>cron-parser>luxon": true + } + }, "eslint>debug": { "builtin": { "tty.isatty": true, @@ -135,6 +341,25 @@ "eslint>chalk>supports-color": true } }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash": { + "globals": { + "Buffer": true, + "name": "write" + }, + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>idna-uts46-hx": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>js-sha3": true + } + }, + "@metamask/snaps-utils>fast-xml-parser": { + "globals": { + "entityName": true, + "val": true + }, + "packages": { + "@metamask/snaps-utils>fast-xml-parser>strnum": true + } + }, "eslint>chalk>supports-color>has-flag": { "globals": { "process.argv": true @@ -143,16 +368,61 @@ "@metamask/providers>extension-port-stream>readable-stream>process": true } }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>idna-uts46-hx": { + "builtin": { + "punycode": true + }, + "globals": { + "define": true + } + }, + "@metamask/snaps-utils>@metamask/base-controller>immer": { + "globals": { + "process.env.NODE_ENV": true + } + }, "readable-stream>inherits": { "builtin": { "util.inherits": true } }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>js-sha3": { + "globals": { + "process": true + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>process": true + } + }, "depcheck>lodash": { "globals": { "define": true } }, + "@metamask/snaps-utils>luxon": { + "globals": { + "Intl": true + } + }, + "@metamask/snaps-utils>cron-parser>luxon": { + "globals": { + "Intl": true + } + }, + "@metamask/snaps-utils>marked": { + "globals": { + "console.error": true, + "console.warn": true + } + }, + "vite>postcss>nanoid": { + "builtin": { + "crypto": true + }, + "globals": { + "Buffer.allocUnsafe": true + } + }, "@metamask/object-multiplex>once": { "packages": { "@metamask/object-multiplex>once>wrappy": true @@ -184,6 +454,11 @@ "readable-stream>util-deprecate": true } }, + "@metamask/snaps-utils>rfdc": { + "globals": { + "Buffer": true + } + }, "readable-stream>string_decoder>safe-buffer": { "builtin": { "buffer": true @@ -203,6 +478,11 @@ "readable-stream>string_decoder>safe-buffer": true } }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn>strip-hex-prefix": { + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn>strip-hex-prefix>is-hex-prefixed": true + } + }, "eslint>chalk>supports-color": { "builtin": { "os.release": true, @@ -221,6 +501,11 @@ "builtin": { "util.deprecate": true } + }, + "@metamask/snaps-utils>validate-npm-package-name": { + "packages": { + "@metamask/snaps-utils>validate-npm-package-name>builtins": true + } } } } \ No newline at end of file diff --git a/packages/snaps-execution-environments/lavamoat/webpack/webview/policy.json b/packages/snaps-execution-environments/lavamoat/webpack/webview/policy.json index 013c733b84..b91b21d38b 100644 --- a/packages/snaps-execution-environments/lavamoat/webpack/webview/policy.json +++ b/packages/snaps-execution-environments/lavamoat/webpack/webview/policy.json @@ -1,5 +1,39 @@ { "resources": { + "@metamask/snaps-utils>@metamask/base-controller": { + "globals": { + "setTimeout": true + }, + "packages": { + "@metamask/snaps-utils>@metamask/base-controller>immer": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils": { + "globals": { + "Buffer.from": true, + "URL": true, + "console.error": true, + "fetch": true, + "setTimeout": true + }, + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit": true, + "@metamask/utils": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@spruceid/siwe-parser": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>bn.js": true, + "@metamask/providers>extension-port-stream>readable-stream>buffer": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>cockatiel": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash": true, + "eslint>fast-deep-equal": true, + "depcheck>lodash": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit": { + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>bn.js": true + } + }, "@metamask/json-rpc-engine": { "packages": { "@metamask/rpc-errors": true, @@ -18,6 +52,27 @@ "readable-stream": true } }, + "@metamask/snaps-sdk>@metamask/key-tree": { + "globals": { + "crypto.subtle": true, + "ed25519": true, + "ed25519Bip32": true, + "secp256k1": true + }, + "packages": { + "@metamask/snaps-sdk>@metamask/key-tree>@metamask/scure-bip39": true, + "@metamask/utils": true, + "@metamask/snaps-sdk>@metamask/key-tree>@noble/curves": true, + "@metamask/utils>@noble/hashes": true, + "@metamask/utils>@scure/base": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn": { + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>bn.js": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn>strip-hex-prefix": true + } + }, "@metamask/object-multiplex": { "globals": { "console.warn": true @@ -27,6 +82,22 @@ "readable-stream": true } }, + "@metamask/snaps-utils>@metamask/permission-controller": { + "globals": { + "console.error": true, + "permissionRpcMethods": true + }, + "packages": { + "@metamask/snaps-utils>@metamask/base-controller": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils": true, + "@metamask/json-rpc-engine": true, + "@metamask/rpc-errors": true, + "@metamask/utils": true, + "@metamask/snaps-utils>@metamask/permission-controller>deep-freeze-strict": true, + "@metamask/snaps-utils>@metamask/base-controller>immer": true, + "vite>postcss>nanoid": true + } + }, "@metamask/post-message-stream": { "globals": { "MessageEvent.prototype": true, @@ -71,44 +142,136 @@ "webpack>events": true } }, + "@metamask/snaps-sdk>@metamask/key-tree>@metamask/scure-bip39": { + "globals": { + "TextEncoder": true + }, + "packages": { + "@metamask/snaps-sdk>@metamask/key-tree>@metamask/scure-bip39>@noble/hashes": true, + "@metamask/utils>@scure/base": true + } + }, "@metamask/snaps-sdk": { + "globals": { + "URL": true, + "fetch": true + }, "packages": { + "@metamask/rpc-errors": true, "@metamask/superstruct": true, "@metamask/utils": true } }, "@metamask/snaps-utils": { "globals": { + "File": true, + "FileReader": true, + "TextDecoder": true, "URL": true, "console.error": true, "console.log": true, - "console.warn": true + "console.warn": true, + "crypto": true, + "document.body.appendChild": true, + "document.createElement": true, + "fetch": true, + "navigator": true, + "type": true }, "packages": { + "@metamask/snaps-sdk>@metamask/key-tree": true, + "@metamask/snaps-utils>@metamask/permission-controller": true, "@metamask/rpc-errors": true, + "@metamask/snaps-utils>@metamask/slip44": true, "@metamask/snaps-sdk": true, "@metamask/superstruct": true, - "@metamask/utils": true + "@metamask/utils": true, + "@metamask/utils>@noble/hashes": true, + "@metamask/utils>@scure/base": true, + "eslint>chalk": true, + "@metamask/snaps-utils>cron-parser": true, + "@metamask/snaps-utils>fast-json-stable-stringify": true, + "@metamask/snaps-utils>fast-xml-parser": true, + "@metamask/snaps-utils>luxon": true, + "@metamask/snaps-utils>marked": true, + "@metamask/snaps-utils>rfdc": true, + "depcheck>semver": true, + "@metamask/snaps-utils>validate-npm-package-name": true } }, "@metamask/utils": { "globals": { + "Buffer": true, + "TextDecoder": true, "TextEncoder": true }, "packages": { "@metamask/superstruct": true, "@metamask/utils>@noble/hashes": true, + "@metamask/utils>@scure/base": true, + "@metamask/providers>extension-port-stream>readable-stream>buffer": true, "eslint>debug": true, "depcheck>lodash": true, "@metamask/utils>pony-cause": true, "depcheck>semver": true } }, + "@metamask/snaps-sdk>@metamask/key-tree>@noble/curves": { + "globals": { + "TextEncoder": true + }, + "packages": { + "@metamask/utils>@noble/hashes": true + } + }, + "@metamask/snaps-sdk>@metamask/key-tree>@metamask/scure-bip39>@noble/hashes": { + "globals": { + "TextEncoder": true, + "crypto": true + } + }, "@metamask/utils>@noble/hashes": { "globals": { + "TextEncoder": true, + "crypto": true + } + }, + "@metamask/utils>@scure/base": { + "globals": { + "TextDecoder": true, "TextEncoder": true } }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@spruceid/siwe-parser": { + "globals": { + "console.error": true, + "console.log": true + }, + "packages": { + "@metamask/utils>@noble/hashes": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@spruceid/siwe-parser>apg-js": true + } + }, + "eslint>chalk>ansi-styles": { + "packages": { + "eslint>chalk>ansi-styles>color-convert": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@spruceid/siwe-parser>apg-js": { + "globals": { + "Buffer.alloc": true, + "Buffer.from": true, + "Buffer.isBuffer": true + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>buffer": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>bn.js": { + "globals": { + "Buffer": true + } + }, "@metamask/providers>extension-port-stream>readable-stream>buffer": { "globals": { "console": true @@ -118,6 +281,44 @@ "@metamask/providers>extension-port-stream>readable-stream>buffer>ieee754": true } }, + "@metamask/snaps-utils>validate-npm-package-name>builtins": { + "globals": { + "process.version": true + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>process": true, + "depcheck>semver": true + } + }, + "eslint>chalk": { + "packages": { + "eslint>chalk>ansi-styles": true, + "eslint>chalk>supports-color": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>cockatiel": { + "globals": { + "AbortController": true, + "AbortSignal": true, + "clearTimeout": true, + "performance": true, + "process.hrtime.bigint": true, + "setTimeout": true + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>process": true + } + }, + "eslint>chalk>ansi-styles>color-convert": { + "packages": { + "eslint>chalk>ansi-styles>color-convert>color-name": true + } + }, + "@metamask/snaps-utils>cron-parser": { + "packages": { + "@metamask/snaps-utils>cron-parser>luxon": true + } + }, "eslint>debug": { "globals": { "console": true, @@ -131,16 +332,78 @@ "@metamask/providers>extension-port-stream>readable-stream>process": true } }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash": { + "globals": { + "Buffer": true, + "name": "write" + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>buffer": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>idna-uts46-hx": true, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>js-sha3": true + } + }, "webpack>events": { "globals": { "console": true } }, + "@metamask/snaps-utils>fast-xml-parser": { + "globals": { + "entityName": true, + "val": true + }, + "packages": { + "@metamask/snaps-utils>fast-xml-parser>strnum": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>idna-uts46-hx": { + "globals": { + "define": true + }, + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>idna-uts46-hx>punycode": true + } + }, + "@metamask/snaps-utils>@metamask/base-controller>immer": { + "globals": { + "process.env.NODE_ENV": true + } + }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>eth-ens-namehash>js-sha3": { + "globals": { + "process": true + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>process": true + } + }, "depcheck>lodash": { "globals": { "define": true } }, + "@metamask/snaps-utils>luxon": { + "globals": { + "Intl": true + } + }, + "@metamask/snaps-utils>cron-parser>luxon": { + "globals": { + "Intl": true + } + }, + "@metamask/snaps-utils>marked": { + "globals": { + "console.error": true, + "console.warn": true + } + }, + "vite>postcss>nanoid": { + "globals": { + "crypto.getRandomValues": true + } + }, "@metamask/object-multiplex>once": { "packages": { "@metamask/object-multiplex>once>wrappy": true @@ -167,6 +430,14 @@ "readable-stream>util-deprecate": true } }, + "@metamask/snaps-utils>rfdc": { + "globals": { + "Buffer": true + }, + "packages": { + "@metamask/providers>extension-port-stream>readable-stream>buffer": true + } + }, "readable-stream>string_decoder>safe-buffer": { "packages": { "@metamask/providers>extension-port-stream>readable-stream>buffer": true @@ -186,12 +457,22 @@ "readable-stream>string_decoder>safe-buffer": true } }, + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn>strip-hex-prefix": { + "packages": { + "@metamask/snaps-utils>@metamask/permission-controller>@metamask/controller-utils>@metamask/ethjs-unit>@metamask/number-to-bn>strip-hex-prefix>is-hex-prefixed": true + } + }, "readable-stream>util-deprecate": { "globals": { "console.trace": true, "console.warn": true, "localStorage": true } + }, + "@metamask/snaps-utils>validate-npm-package-name": { + "packages": { + "@metamask/snaps-utils>validate-npm-package-name>builtins": true + } } } } \ No newline at end of file diff --git a/packages/snaps-execution-environments/package.json b/packages/snaps-execution-environments/package.json index 8dbd42dc62..00a5223cc9 100644 --- a/packages/snaps-execution-environments/package.json +++ b/packages/snaps-execution-environments/package.json @@ -82,7 +82,7 @@ "@esbuild-plugins/node-modules-polyfill": "^0.2.2", "@lavamoat/allow-scripts": "^3.3.5", "@lavamoat/lavatube": "^1.0.0", - "@lavamoat/webpack": "^1.2.0", + "@lavamoat/webpack": "^1.4.0", "@metamask/auto-changelog": "^5.0.2", "@swc/core": "1.11.31", "@swc/jest": "^0.2.38", diff --git a/packages/snaps-execution-environments/webpack.config.js b/packages/snaps-execution-environments/webpack.config.js index ebce9e9961..a78dda8b65 100644 --- a/packages/snaps-execution-environments/webpack.config.js +++ b/packages/snaps-execution-environments/webpack.config.js @@ -174,6 +174,7 @@ const baseConfig = { plugins: [ new ProvidePlugin({ process: 'process/browser', + Buffer: ['buffer', 'Buffer'], }), ], @@ -183,6 +184,7 @@ const baseConfig = { // Used in the `crypto` endowment, but only as fallback, so we can // safely ignore it if it's not available. crypto: false, + buffer: require.resolve('buffer'), stream: require.resolve('stream-browserify'), }, @@ -239,6 +241,7 @@ const configs = ENTRY_POINTS.map( ...scuttleGlobalThisExceptions, ], }, + readableResourceIds: true, skipRepairs: ['MessageEvent'], }), diff --git a/yarn.lock b/yarn.lock index ca331597e5..53c0760896 100644 --- a/yarn.lock +++ b/yarn.lock @@ -418,14 +418,14 @@ __metadata: languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.15, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.21.3, @babel/parser@npm:^7.23.0, @babel/parser@npm:^7.23.9, @babel/parser@npm:^7.25.4, @babel/parser@npm:^7.27.1, @babel/parser@npm:^7.27.2, @babel/parser@npm:^7.27.3, @babel/parser@npm:^7.27.5": - version: 7.27.5 - resolution: "@babel/parser@npm:7.27.5" +"@babel/parser@npm:7.28.3, @babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.15, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.21.3, @babel/parser@npm:^7.23.0, @babel/parser@npm:^7.23.9, @babel/parser@npm:^7.25.4, @babel/parser@npm:^7.27.1, @babel/parser@npm:^7.27.2, @babel/parser@npm:^7.27.3, @babel/parser@npm:^7.27.5": + version: 7.28.3 + resolution: "@babel/parser@npm:7.28.3" dependencies: - "@babel/types": "npm:^7.27.3" + "@babel/types": "npm:^7.28.2" bin: parser: ./bin/babel-parser.js - checksum: 10/0ad671be7994dba7d31ec771bd70ea5090aa34faf73e93b1b072e3c0a704ab69f4a7a68ebfb9d6a7fa455e0aa03dfa65619c4df6bae1cf327cba925b1d233fc4 + checksum: 10/9fa08282e345b9d892a6757b2789a9a53a00f7b7b34d6254a4ee0bf32c5eb275919091ea96d6f136a948d5de9c8219235957d04a36ab7378a9d93a4cf0799155 languageName: node linkType: hard @@ -1480,13 +1480,13 @@ __metadata: languageName: node linkType: hard -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.22.15, @babel/types@npm:^7.22.19, @babel/types@npm:^7.22.5, @babel/types@npm:^7.23.0, @babel/types@npm:^7.25.4, @babel/types@npm:^7.27.1, @babel/types@npm:^7.27.3, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4": - version: 7.27.6 - resolution: "@babel/types@npm:7.27.6" +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.22.15, @babel/types@npm:^7.22.19, @babel/types@npm:^7.22.5, @babel/types@npm:^7.23.0, @babel/types@npm:^7.25.4, @babel/types@npm:^7.27.1, @babel/types@npm:^7.27.3, @babel/types@npm:^7.28.2, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4": + version: 7.28.4 + resolution: "@babel/types@npm:7.28.4" dependencies: "@babel/helper-string-parser": "npm:^7.27.1" "@babel/helper-validator-identifier": "npm:^7.27.1" - checksum: 10/174741c667775680628a09117828bbeffb35ea543f59bf80649d0d60672f7815a0740ddece3cca87516199033a039166a6936434131fce2b6a820227e64f91ae + checksum: 10/db50bf257aafa5d845ad16dae0587f57d596e4be4cbb233ea539976a4c461f9fbcc0bf3d37adae3f8ce5dcb4001462aa608f3558161258b585f6ce6ce21a2e45 languageName: node linkType: hard @@ -2761,18 +2761,29 @@ __metadata: languageName: node linkType: hard -"@lavamoat/webpack@npm:^1.2.0": - version: 1.2.0 - resolution: "@lavamoat/webpack@npm:1.2.0" +"@lavamoat/types@npm:^0.0.1": + version: 0.0.1 + resolution: "@lavamoat/types@npm:0.0.1" dependencies: + "@babel/types": "npm:7.27.3" + checksum: 10/93a8ca413d7d82b5940c618379285d4358a17d63d792233b5086446050bbac341f991f9ddd72b185cb4aea5e15d70de05fb673595e7cef79681ae5ee8289b203 + languageName: node + linkType: hard + +"@lavamoat/webpack@npm:^1.4.0": + version: 1.4.0 + resolution: "@lavamoat/webpack@npm:1.4.0" + dependencies: + "@babel/parser": "npm:7.28.3" "@lavamoat/aa": "npm:^4.3.4" + "@lavamoat/types": "npm:^0.0.1" browser-resolve: "npm:2.0.0" json-stable-stringify: "npm:1.3.0" - lavamoat-core: "npm:^16.5.1" + lavamoat-core: "npm:^16.7.0" ses: "npm:1.14.0" peerDependencies: webpack: ^5.80.2 - checksum: 10/bef023b5e044f5f458b2cf4324286ffa538cebebdca39bf63ebb4b8011dbd5fee22febf964a28a037758e30ecc1f21fc74ea5fcd3d4aff1869a5211a498f0477 + checksum: 10/422a58d7243396e7fc552f90ac585fcf20880ae36605d37cf5719718ec7c9ff173436d519abfc60d235b7d370ea31fb540f9cac652e77c05e2babfe2b104d96c languageName: node linkType: hard @@ -4297,7 +4308,7 @@ __metadata: "@esbuild-plugins/node-modules-polyfill": "npm:^0.2.2" "@lavamoat/allow-scripts": "npm:^3.3.5" "@lavamoat/lavatube": "npm:^1.0.0" - "@lavamoat/webpack": "npm:^1.2.0" + "@lavamoat/webpack": "npm:^1.4.0" "@metamask/auto-changelog": "npm:^5.0.2" "@metamask/json-rpc-engine": "npm:^10.0.2" "@metamask/object-multiplex": "npm:^2.1.0" @@ -13632,33 +13643,35 @@ __metadata: languageName: node linkType: hard -"lavamoat-core@npm:^16.5.0, lavamoat-core@npm:^16.5.1": - version: 16.5.1 - resolution: "lavamoat-core@npm:16.5.1" +"lavamoat-core@npm:^16.5.0, lavamoat-core@npm:^16.7.0": + version: 16.7.0 + resolution: "lavamoat-core@npm:16.7.0" dependencies: "@babel/types": "npm:7.27.3" + "@lavamoat/types": "npm:^0.0.1" json-stable-stringify: "npm:1.3.0" - lavamoat-tofu: "npm:^8.0.8" + lavamoat-tofu: "npm:^8.0.10" merge-deep: "npm:3.0.3" ses: "npm:1.14.0" bin: lavamoat-sort-policy: src/policy-sort-cli.js - checksum: 10/91f043b733902b1af02f5efa1862598c21f80fba14d531a276ff6017a6bf51b01dd9cee4cd241eee2279acf59847c220f473d364d1d88290f4e67a029dfb4a5a + checksum: 10/ad5c3fa47f0c59bbb4b7dbf0b709788aa7091d7eb69bf7dbb8dc395fe0b276d9b01e28fe72b9a81560de02da19ae8bd85468cc04fe8f2a48918477e7183a420d languageName: node linkType: hard -"lavamoat-tofu@npm:^8.0.8": - version: 8.0.8 - resolution: "lavamoat-tofu@npm:8.0.8" +"lavamoat-tofu@npm:^8.0.10, lavamoat-tofu@npm:^8.0.8": + version: 8.0.10 + resolution: "lavamoat-tofu@npm:8.0.10" dependencies: "@babel/parser": "npm:7.27.3" "@babel/traverse": "npm:7.27.3" "@babel/types": "npm:7.27.3" + "@lavamoat/types": "npm:^0.0.1" "@types/babel__traverse": "npm:7.20.7" type-fest: "npm:4.41.0" peerDependencies: lavamoat-core: ">15.4.0" - checksum: 10/f1d807ab5f11fa666e4c1b975270dcbc7592e4bc782ae6535fa318bd220d8fb7465d617cf9acd52f243e2b753f5dc8791ed3ef86eaed47645f6bb15a01c0a603 + checksum: 10/e1a4ae12089e720840e6999384957d0d509c024e92a63656dbca665c0c112e02bd1f496272c613b33c8166d05727964fa84d879a59233d8762e58ac8337e5986 languageName: node linkType: hard