{"_id":"@hominis/fireforge","_rev":"93-84f60e1d3b722f0b5a71f0c1e311cc67","name":"@hominis/fireforge","dist-tags":{"latest":"0.48.0"},"versions":{"0.9.0":{"name":"@hominis/fireforge","version":"0.9.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.9.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/topfi/fireforge","bugs":{"url":"https://github.com/topfi/fireforge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"dcf0a73276dc8b476b8d6ebf2865e3e6bcb74946","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.9.0.tgz","fileCount":316,"integrity":"sha512-h5QMEVsyiyIf53ePneClKxj3pjo5rYrXLo8sYsx1fXcncu4ta4adQnV/0vKXg7Vy58O3C2PLi7TMXL8a69gQgg==","signatures":[{"sig":"MEUCIQCKjZqb65lfpsbrRH+z/JW8pLRKE2ub5CfMUa1oahJ23AIgTtro1HZehCsDsIB6viSQ39S2n7YuMzCBvKXzVE/msu0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":977327},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"daf78c710e10bb4744169af0e4c554d5e919ed5e","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"topfi","email":"npm@noduz.eu"},"repository":{"url":"git+https://github.com/topfi/fireforge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"25.9.0","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.9.0_1775674026145_0.5362537878347271","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@hominis/fireforge","version":"0.10.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.10.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"38033a7542989706f0f38be0004f798f48be4330","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.10.0.tgz","fileCount":316,"integrity":"sha512-ac269Ri7uMWsbz54qtLKw6LEtmeA3G3PRPAa2lGPbo3hSIGRvzAVak7dJKNO2C9ZUSBllZn0MHO7iPlqNrrFGA==","signatures":[{"sig":"MEUCIQCHYPjfN18t9aIqp9/pryYDEYhKofIwFwAnwdl4vIE3sgIgHFPH8/ZW3R0irEPW0JRdbo7SZ0I5snfGtWZGcKnvYJE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":981523},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"adae9685087c0c414d46d6307fee05598266cbd1","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.10.0_1775821880543_0.0699499620162427","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"@hominis/fireforge","version":"0.10.1","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.10.1","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"4a0ee801b2938a324580f934c9a23eeed66f0b4a","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.10.1.tgz","fileCount":316,"integrity":"sha512-3t4DCdgujyZDspbb21hvWIkI5kcZMqeNCzI2mA2Dw+YyD+4PTUYr6TkP3S7be4tuyIzj6t7CoNl/1KDoF755Iw==","signatures":[{"sig":"MEUCIQDZhAL8uR/XFUEW5IiH/8UIZIi3mH2jxzBR0GCMDwLqUgIgF60YOMLJKkW3i8WQt02cHqXW/XfxqglSBkzMn2CRRfs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.10.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":981464},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"549936c89080e1e82c5920b8142ddf2419e61239","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.10.1_1775839798962_0.6182970823692506","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@hominis/fireforge","version":"0.11.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.11.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"8a5a0c7a6613d4f13865f20a9dc78cce7b9c9ffc","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.11.0.tgz","fileCount":366,"integrity":"sha512-NLvLQVIMXe1Ih8kiGKw3ANuLckFCv3MBbkw+plAsLzjzCh0V0RZr73Gm1/h2IX5hlM66jPOyG8kG8T+Pz3sWBQ==","signatures":[{"sig":"MEQCICLfbm0MBG1c1D6MBCfFJFAPEQOb66TmtU/3ud3VMuAZAiAc3WPaBQazj7FjptuWSaRNnBiicNN9TJ7uIFfA6jbcfg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1492667},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"e7c4a706d09cbfed0d6928d9e0da8e999dffcaa0","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.11.0_1776042884458_0.4463051848440791","host":"s3://npm-registry-packages-npm-production"}},"0.11.1":{"name":"@hominis/fireforge","version":"0.11.1","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.11.1","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"55bfab23656c02744354f7505c8bf5a8fbb03772","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.11.1.tgz","fileCount":366,"integrity":"sha512-eukEeUG3cHlGHg0E+2x/MKyz4Q5Pzm8QAIEHCrCK5MdvBfTLfcoso1WudVuvyKP7tAYbPq3FVoHsWP+kiv4D0A==","signatures":[{"sig":"MEUCIA+qdTQ8sNHUh3N6TG/QozEGv85MQ2VUoYSXRsJ5s6R9AiEAr/1HJ+srbjFkqppP0rEeLszP4deFI38jzYTWtJpuCvo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.11.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1492949},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"b68e9e9629204634ceaa58b53e9828fb23a6ec01","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.11.1_1776106576891_0.21594490758706542","host":"s3://npm-registry-packages-npm-production"}},"0.11.2":{"name":"@hominis/fireforge","version":"0.11.2","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.11.2","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"dd613dd92981cdda43d5d971d939a62822c169a7","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.11.2.tgz","fileCount":366,"integrity":"sha512-xVfs/Jb370WdnqZqDozyzSQIpCc3u4Ec2Y58PUG+FsRPwFHPY8TllkF5KmYhHrnZYwbJwchjTjHEN7f2WkwB3w==","signatures":[{"sig":"MEUCIBk1f47vb4bHm4WRt8PAmmwA1x6UwjAw9RbMfclWj9eiAiEAm5bvy0INR0Jmbi/5XwqhC7T6nQzOu6hsYXId4XPvXNs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.11.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1496389},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"25c1c1e1d6e235bb732a9afbb1821495e7c8e4af","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.11.2_1776113041693_0.9629681352795656","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@hominis/fireforge","version":"0.12.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.12.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"22d1ca6685f452ec5e65df0b0d0f90d7d095da21","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.12.0.tgz","fileCount":372,"integrity":"sha512-aoIVwIbbx6YnNtPrw9dcF0d4h+mBbF2+hlnKVP38dFxq2S6XqfvYKQnyuAwbSCia3QtSR7mTii2gc7X4jSFSdg==","signatures":[{"sig":"MEQCIBH4B67Zwqies6c4vpOiW9vpbudUhqFtAhL2NpNVh82CAiBRIX4aB58IGTPF7GClXBpnQXe3SAnclHIu/d8VEnhfPA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1532154},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"cd8cb8c7bf18152f73333b3040cab664153d2151","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.12.0_1776197830078_0.8718244891146776","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"@hominis/fireforge","version":"0.13.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.13.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"4c5892a255685c198d43466e5592d4182ff39fdf","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.13.0.tgz","fileCount":376,"integrity":"sha512-Nx18UzdzY9bGtFTzVBmX125aesS8SN/6KMrthY1qXzsj8lTZZLW021Sz6NTsMsM7hGwmuHnGg5EEeQ7W1xiLjw==","signatures":[{"sig":"MEUCIQCZNpzo+3wYIuvPADNeo++W0ZshB1gduiqUa6bxsMERWwIgZ4jqTxJvJKyCsN3wDscXcTpXNoDEz9RSCAPDxlfAkEc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1544023},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"9ee16ed12beb5e12892090daeae8d9e384e95e64","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.13.0_1776277487636_0.4507746164925155","host":"s3://npm-registry-packages-npm-production"}},"0.13.1":{"name":"@hominis/fireforge","version":"0.13.1","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.13.1","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"9ee665d1afaa1887e2d9dcbc1571040439ddc04c","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.13.1.tgz","fileCount":376,"integrity":"sha512-sV7LgSY4Mb393GBnGl4+wrvGvobuprT6ddQxUlNjUJg7CWVX1dQ+qKL3wMaEQmqGSryKxGWXmc4HpENup2OgRA==","signatures":[{"sig":"MEUCIQDYKaoRJjgtMs6G+yPwU3ayMOtwMnYdC5jzAOLm+TqsEgIgBT9LMUNJa6vXfYzlO9bOnnLFbMLpxg3EDUM5psJ+xio=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.13.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1544839},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"484e5bc693ad6466443752f9cd7ab2172eb705e4","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.13.1_1776282379229_0.5750777269933327","host":"s3://npm-registry-packages-npm-production"}},"0.13.2":{"name":"@hominis/fireforge","version":"0.13.2","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.13.2","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"8cf96a5127160624428e34cba73b2a4f8284a46d","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.13.2.tgz","fileCount":378,"integrity":"sha512-jdcoc8sbCAsvf75ip4v6AEm7F9GglizRG7cqBwVCweDyWHbZgMTKIZdO1Ko4TsJHUpOWV00qF2qLb/JK+oyyUw==","signatures":[{"sig":"MEYCIQDm1VBHdeStSqd78R3nZaDlz2pGAl5ngY1bJHLhyeMK9gIhANb9whTcH5IbvwFoY6aZ27STBKH20oSZjAowrQ1ghVaU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.13.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1558199},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"bd4feef89473cdc61a71708386c9d36010f5d8db","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.13.2_1776287592180_0.7636680197315249","host":"s3://npm-registry-packages-npm-production"}},"0.14.0":{"name":"@hominis/fireforge","version":"0.14.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.14.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"57768ac1efaf2b22f9e7dc23c0844225baf4ffcf","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.14.0.tgz","fileCount":382,"integrity":"sha512-piZMZTAt/IX8tqqVz4Ck01PaS+uRWJRr8Hr2PhjHjQ6MBOxFor/ai2LIZS9x6szk9H2bBYABaojZ+nEM+ATqIA==","signatures":[{"sig":"MEUCIQCs4Ud/OqQL8tUeJsR3U+9W9fuRLA933By5tN4LZm/sswIgOtGgxTo+584IVjWe7BBN66kIJ0hv4Af4nv2qouKLVTc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1619231},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"4e9475bc523df24f191c3c47a206f382391df2bd","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.14.0_1776376369261_0.7207282528165433","host":"s3://npm-registry-packages-npm-production"}},"0.15.1":{"name":"@hominis/fireforge","version":"0.15.1","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.15.1","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"0febdc71f6e199b6927dc66f71ce142107d5425e","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.15.1.tgz","fileCount":390,"integrity":"sha512-+f5CShBNSqFDwXAiR6mPxymthNMOjECp5S2XhwDBoatImuH8zSIc5fgoWhqoIHpX6xeRV5ahriC7ckMaEUSskQ==","signatures":[{"sig":"MEUCIDNSDwo1XhDHfJskiAuLtyUiu2kqFQY5WWJ1O2GRwuGkAiEAjOGbpzZAJtzCpFm6VhlsVswyc2dNYyT7OYiyXwrlKeY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.15.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1673520},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"b295972ed093d9cba1c59306282de5fa48c99ee4","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.15.1_1776444257669_0.8659811996068307","host":"s3://npm-registry-packages-npm-production"}},"0.15.2":{"name":"@hominis/fireforge","version":"0.15.2","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.15.2","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"42080ec10a8d83d807c920b05f35a695e1fe8d74","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.15.2.tgz","fileCount":392,"integrity":"sha512-3zvWZ+jSkAs2YOC4k34Ho+1MA2pO7XVxN6J7tNpbZQ472QLG2poyCnKUQNw1fbbVwgA6/XSW3n69DCv7I5BuGA==","signatures":[{"sig":"MEQCIDXNRAjFER1hKsRO77CkkHLwkeHY171qGJ48oRUTOm+3AiBDsoL1yi8LmJXHiOx6eNsphMwko90T/KHhyqR3jOEn9A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.15.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1701148},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"07588a45f3ee5397f97bb5f5750c002a0d05cf62","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.15.2_1776457971820_0.5306249390402731","host":"s3://npm-registry-packages-npm-production"}},"0.15.3":{"name":"@hominis/fireforge","version":"0.15.3","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.15.3","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"b52b0895792659de634b3750e13a95f89f33cbe2","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.15.3.tgz","fileCount":406,"integrity":"sha512-4T5+Zmg+BUotsveQUddrJtCVf0m5k0TPP7kWhWIsV5eJbu3rT/c/t/oFwnw6WH4EpXWSnu0oioN3Cuxeh8Jt6g==","signatures":[{"sig":"MEUCIGF5dnRIKhwZm8AZHcEBIVfep2FzIbtHhtsgHfhn3hQwAiEAl1y64yXJqXaekIhPYrWMNeED8EvXC4nytAWrJb72tZw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.15.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1781409},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"b1cd0187230ce5b8191196761b9b1eaf00b8aca0","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.15.3_1776510868868_0.2449614563017386","host":"s3://npm-registry-packages-npm-production"}},"0.15.4":{"name":"@hominis/fireforge","version":"0.15.4","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.15.4","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"1bd6227811cd0527f3186eb501ace48ac5d5f68c","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.15.4.tgz","fileCount":406,"integrity":"sha512-9suoQPjPI5j5IvG6r6ypTA8Ct3uYVFkoK+Xu2uhvq9tederLa71J8i9Cm57EYUJ195/QbfpVzfq+fG4aWpYHbg==","signatures":[{"sig":"MEQCICP2AFZX+pBh1mXZJqvxdHZryD6m+KEnnrIeNhmYcl79AiAvU+y8uDJNULpSWBimltj57nIEF0+qn7cYQfVqw1rIjQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.15.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1788992},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"16fdb79dea336a4bb59e1cfea21d6cdd07e12a29","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.15.4_1776512210798_0.6756554914649531","host":"s3://npm-registry-packages-npm-production"}},"0.15.5":{"name":"@hominis/fireforge","version":"0.15.5","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.15.5","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"c854f8fad8584cc8c3f9b94f99a8105acc7c70b8","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.15.5.tgz","fileCount":410,"integrity":"sha512-JA4ZAUqF5n6ZiCs8jzv+uzKb3ZxfjMRBgss7hi7bHx11TUqlZ09ult+2dR2lAJ1AnmljPerAJ58LKfpuNlD/Sg==","signatures":[{"sig":"MEUCIQCz8mbLtPeFRfiN0uHMBE+QY6K/o6YP6gIJScG/Gw23NgIgeEUAWV/By7RPk8eHYwzq3fbLyVyXlG7X+M/2GtnORu0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.15.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1815953},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"7545022e8fd6912f81d50f6c863f7d0aa8ca1b2c","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.15.5_1776537756502_0.7536222820872704","host":"s3://npm-registry-packages-npm-production"}},"0.15.6":{"name":"@hominis/fireforge","version":"0.15.6","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.15.6","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"7d9c5ac65f31400ad18281eeb1b6dbffff4e782d","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.15.6.tgz","fileCount":410,"integrity":"sha512-O65hvCqqYqcOpuv0FzvQcierMHSd9xDpk5ORvqAgry9snYtxYgzyqKS1rMX/vzWZaXV9BmzTY7iMOZ2C/MXCXA==","signatures":[{"sig":"MEUCIQCEC4QSSNJHWcg+UT4fDm9kyA9WjaIb9QygAMzzZXrgagIgTZvcQSaaa9eq8+QsWTqFXHoZ0ajBr4kkUItIj2tUW5k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.15.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1828120},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"57c192694d2f871d38bcf91e4562fb95e07f9eef","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.15.6_1776540795694_0.4515694622203097","host":"s3://npm-registry-packages-npm-production"}},"0.15.7":{"name":"@hominis/fireforge","version":"0.15.7","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.15.7","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"1484f04c9bc7dc535c1a0599553d44c8f2a353b4","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.15.7.tgz","fileCount":420,"integrity":"sha512-bwnoe4VtFX9M+C8Iuz9EcJ/PHlTs4HoUh+SnUCKKLoo8+lx5D5GgKKQmuBOp8WZh+Pl8PkDwK/Pz9obCpd/xRg==","signatures":[{"sig":"MEQCIAJyaqDB6ayVGPnap8y/BwGaAiht/Tx6VecyUPGVey8eAiAlWaa0pUObVxxtF/tDAA0rVT0mI+KIxg/irRfzuDZSnA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.15.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1918184},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"5689a000f9002ec216de373dcd767ecc0de40e58","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.15.7_1776552305973_0.3737535090889761","host":"s3://npm-registry-packages-npm-production"}},"0.15.8":{"name":"@hominis/fireforge","version":"0.15.8","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.15.8","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"a27f1e8ad1fc87c09cd472c860e7ae276bf08688","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.15.8.tgz","fileCount":432,"integrity":"sha512-+LrZuBk4esp2tIZipbZGtwQTVkwxQG0oQ/KsQj6Dgi/C06QebOybObgcCrJ02dVVVkIR14ADIN0JuM0e8yuEYw==","signatures":[{"sig":"MEUCIQDT0HG/XGeUXeCQKBQmRVo6+Eb2Una6e/LNJqLoJsQhVQIgHZCRhVaJsFlSVmd/cxaSgXJ60NyOS9jS8bzMXQjL5dU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.15.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2010498},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"d2d0e7c0f93b5f47bbefc8041ca1668006c11b73","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.15.8_1776621359904_0.5428693488330021","host":"s3://npm-registry-packages-npm-production"}},"0.15.9":{"name":"@hominis/fireforge","version":"0.15.9","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.15.9","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"6ac437ce205faaf765aac34bcad81390a8880a1b","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.15.9.tgz","fileCount":432,"integrity":"sha512-mtvRxS/qq9Ea7YZ368KpriiWkQGVbU5Qk2nemzbscVkXF7kSLY3V0mnHWuZg7ivBQ6/ZNli/vf5XZxbHyozcMQ==","signatures":[{"sig":"MEUCIQCz8UuBOQaU6NaJ+PJbGdieW6JExukc+MCU5kzf4HSTrwIgSEXRSuFtV6mJQigg8tSc9Dnv+g/YT0fEJAwHUaHpTSY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.15.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2030532},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"3a149a4ae5899a022b8848d0617ec8a0fe0aee75","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.15.9_1776633785209_0.7786928692042248","host":"s3://npm-registry-packages-npm-production"}},"0.16.0":{"name":"@hominis/fireforge","version":"0.16.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.16.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"cc1d3b0305ab08eb4007338aefe0fce2cace9a64","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.16.0.tgz","fileCount":432,"integrity":"sha512-ibuq3q5dtKXLBjCEsoJ+l7AwnET8oNZqODXpPxIjdpBbOPt+o3aD613BjtXAx178OxmCts6qr/d2PcPCduiFsQ==","signatures":[{"sig":"MEQCIBQiRoQM52euQ/ZFyydxrMs86KUdh+zCchmYLOD2GxeeAiAd+Lo2RBK1/7KuAsIbw1OfqkCC2xomnA9wxgr13iAZHg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.16.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2089449},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"6cd4a5ccb06e6bf0ffa602bce0ebf4418e967b02","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.16.0_1776673760752_0.6666774007457639","host":"s3://npm-registry-packages-npm-production"}},"0.16.1":{"name":"@hominis/fireforge","version":"0.16.1","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.16.1","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"0ba02e32924bbe03ff857927340b078139625c6d","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.16.1.tgz","fileCount":434,"integrity":"sha512-n0rVlRTwCX5dgbncvlu999cIVHvhfobRDzzqANX1RO8JelydpQ0opEiJJ3cZZ9AV+G5CyWZhFJae9fdjpO3lwQ==","signatures":[{"sig":"MEQCIE0duuPxbEbJdp+kQHVbRSpCMPSAFDftX4WtZI4ZYWT6AiA8RaQBhuVCt+GZOOMX0uuIlI13/sfrQoC4HkkNHNx+kQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.16.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2145611},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"da87ebb6ad01b967e81a8fd54dab1f13921e5425","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.16.1_1776683899729_0.8863996696182626","host":"s3://npm-registry-packages-npm-production"}},"0.16.2":{"name":"@hominis/fireforge","version":"0.16.2","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.16.2","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"bce609896eadf694a2face9d3c1209384e0e22c6","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.16.2.tgz","fileCount":434,"integrity":"sha512-cB6P0olvMevdXqR+8+ha/HDElMBF1zATPQl/mXbEh87BbOgtIb5Aggs/YLSXhEJNryfpnuy9aCKzoNIGb8KsSA==","signatures":[{"sig":"MEQCIC0SGhLFHzhNz6S4C69BA+EvXPR5qWaXja6cdVjB1e00AiAbAZ5RR0Pw0zL2gVoPGhHs2a/nmfL6Ll090Kotn2ZvNg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.16.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2154297},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"448cd8e6934de6f3d2c0726c0296f587e17fa3d4","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.16.2_1776687315422_0.8077638978225674","host":"s3://npm-registry-packages-npm-production"}},"0.16.3":{"name":"@hominis/fireforge","version":"0.16.3","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.16.3","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"06b47709eb6caa6a590240df03d5742b9610e67c","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.16.3.tgz","fileCount":434,"integrity":"sha512-QMU7V21NnMLIqG8nXmQ6K4QTnaAob8QKcmXhDxBEIcmayh4rlJw2Wz69kWGXiih0u/aqor8aHDXPjIeABCJ1tg==","signatures":[{"sig":"MEUCIBgq/6W2rnrQtnTgmQm/7ENsDXg/Lu612gI/mUo/sckBAiEA6Ohw7OlNujD06SSaORuWJH9V36uMdLyDA4uwUqQtFMg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.16.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2213467},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"ef8bba0054394b70d9489e699681b7dfb8338bfa","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.16.3_1776716182144_0.5897885559438802","host":"s3://npm-registry-packages-npm-production"}},"0.16.5":{"name":"@hominis/fireforge","version":"0.16.5","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.16.5","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"a702efab226c7bbc38c0e44fb1e3f4fb4e8d6e8c","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.16.5.tgz","fileCount":436,"integrity":"sha512-V+aLIK9sJJ1B01/XFvB6ua5NynBFfAsjB06yuQgFxiwWos4DZnOLzCrrzgVuH4sdkYz6SRxd6hY8/P96bXs+EA==","signatures":[{"sig":"MEQCICU3VcZkx5bdqjzGNO+xaVEQ1fTttBigFDePv/5lYXqAAiBZMqSbC3ojbM/FbW5gVqQnPn+9OXnaIMLch4CUSXFz5Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.16.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2260927},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"2ad73cd6874d785d3c507cb113a15706edf6a41d","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.16.5_1776725764312_0.4871139943346463","host":"s3://npm-registry-packages-npm-production"}},"0.17.0":{"name":"@hominis/fireforge","version":"0.17.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.17.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"68be76e21d4d326a3c4cbe1df1143fe727d336bf","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.17.0.tgz","fileCount":442,"integrity":"sha512-yazyiPjhCvW/hYCiYpXuIHaVG+1BkegBlmL+MLqcKOlNtYuJUi1D6Y7tdSRAJIoxk2/HIlnDQealT8eQnHTZjg==","signatures":[{"sig":"MEYCIQDKvEn6MimTVsVnBGqSlnki51+pVFGuYsYom+e/KWjinwIhANJoK/LNNwmM17uvAh9Fi3eSIiUzM76MS+XDKYV/TPSY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2345275},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"d41640340612a0702e547620bab91b5e0644be02","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.17.0_1776768658801_0.5473537908678889","host":"s3://npm-registry-packages-npm-production"}},"0.18.0":{"name":"@hominis/fireforge","version":"0.18.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.18.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"5ea629b3fe4566f752e185cf145f7b64ca565ea8","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.18.0.tgz","fileCount":446,"integrity":"sha512-yseD0NsWbj+5cSDEFR9IPdXNMe7HCm8dKLp46SGCS1JCCrohlV99jshoxO9AMt7f7h+fcnzWz2HOUxE1bwy0zA==","signatures":[{"sig":"MEQCIBkV0pBMx2+WHtKQu7H++R60C2lVqoo9f9GUUyI4E6OZAiADWlFD0YdvpelloZZ+bdgpL6EjKOwrS2P2wswxgunkkA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.18.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2423658},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"bf164a4d61158db06d19856294804e4020b61d78","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.18.0_1777028639400_0.5314937979907235","host":"s3://npm-registry-packages-npm-production"}},"0.18.1":{"name":"@hominis/fireforge","version":"0.18.1","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.18.1","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"ef9e15cf5ca2855c96b1ca32030eda15915037c0","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.18.1.tgz","fileCount":450,"integrity":"sha512-uMksp/OH0GhlyKi8X1HQL9rzJ8caOwL0gxSVXMQklSeyn2M34Guq1Tn7t5M+T0YJDqschINqy9N4wXMH8IllmQ==","signatures":[{"sig":"MEYCIQDZ1He9QEzuUB72SAL+T0zFbz1SaATntjVNTBATYpAjCAIhAIQkhXNq5i2J9Ujd+1Vwm+tKw53lOwGVQF3zdU8Bpr4E","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.18.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2495390},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"f474a7a47a30b5adbfd53218c47abb6c11dd9a6f","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.18.1_1777060632168_0.5179553966292405","host":"s3://npm-registry-packages-npm-production"}},"0.18.2":{"name":"@hominis/fireforge","version":"0.18.2","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.18.2","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"123bdbcdf2cca38308b587ea5cf66845816e2717","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.18.2.tgz","fileCount":454,"integrity":"sha512-fDsWCIpW6duDTusGZNGPrdeKbxYjVLiJmHi8vdm+yJx/At0pQEZey1jfAUcfbE64lPH1bi/Ql4+CZz4oQJmK7A==","signatures":[{"sig":"MEUCIQDiuSCHZKuICBKhwbU5RteaZdOTRXrRhthi0RR+SPWTlQIgSAtvnbQF3bvzYRZkRNCvrw6FQqZTPveRMTU5tg/oAj4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.18.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2539911},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"8252309106b9fc185486d079b6a2906fd626b323","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.18.2_1777112809821_0.3767358540460195","host":"s3://npm-registry-packages-npm-production"}},"0.18.3":{"name":"@hominis/fireforge","version":"0.18.3","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.18.3","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"b99a3a281e4b76c5668cfb3339e3e19bd8fbe87b","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.18.3.tgz","fileCount":454,"integrity":"sha512-s0EGc4s2l8D+jPIpdwtUeFCBMvnPojZcuasdnmh/vPPL6vS4dJC+TN357dLFzH96+Gz0IHWc0VrxmKPJJ8yNeQ==","signatures":[{"sig":"MEYCIQCapKkLGuC58a3JgZvU6bjnhfbi5BMeH19kaZ9ezY/vYgIhAP6ai4uA5njcM2pPd5C+xDUW3C0a7mXsgRLfuh7ccWrX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.18.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2563010},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"fcd9002e401091dc0fdee3eb7d05e0b166ae46da","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.18.3_1777154736329_0.5775274724511323","host":"s3://npm-registry-packages-npm-production"}},"0.18.5":{"name":"@hominis/fireforge","version":"0.18.5","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.18.5","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"90eac2c7ff362b0759dbcb60e3f83b8b324d99ae","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.18.5.tgz","fileCount":458,"integrity":"sha512-vtL07qOQDICK5B+PIHNVUT2JLLmqkd4uMEZYK3CyAY94JJa/00XihiZ5nvZ4ux4Tfb1aaJyLNkfmmyMTj9X0Bg==","signatures":[{"sig":"MEQCIE0Mkw/3mb54j0mJ06LYAUMnAPyG+EWHQM6lgSrMh/MRAiBb+fdQZaer4PyYij3yfE81OA2PI614/39kQkBOwQ+f4w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.18.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2596833},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"6a9ec6662103fe142595977730b0ae60ed1c319b","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.18.5_1777274739403_0.003788327122144386","host":"s3://npm-registry-packages-npm-production"}},"0.18.6":{"name":"@hominis/fireforge","version":"0.18.6","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.18.6","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"aae1cb75c1eb80ba07e2672e5158353b27445e5d","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.18.6.tgz","fileCount":458,"integrity":"sha512-mpIHR5Pibx4W5eUNKOoL5zTEz9AKx0bhjN2AgOrsEngfd4r9o75IHAdXE5aQkQ1ceHr4I7mmzWUsdiSh4q300g==","signatures":[{"sig":"MEUCIBFRfvUygYlS0ayLSOLmfU1dNG1Z4G2CMhPt7D6MLkgSAiEAx/HyCM9QIvdqZH0BDdpp2pKFNFNNYc7rpDsWG16MclU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.18.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2596944},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"30a0cb3abf06ae7c9baf75368842949c39bfc84f","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.18.6_1777392182510_0.7377737033325342","host":"s3://npm-registry-packages-npm-production"}},"0.18.8":{"name":"@hominis/fireforge","version":"0.18.8","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.18.8","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"3db26752365e9d077a2dcba7dfa86e2b383cb49c","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.18.8.tgz","fileCount":458,"integrity":"sha512-GJfxQCcCF968YXtmSzQAi++Kh1l1eQa33u0h0F3JWiOQPjc7/5JC9nfTkqEecqSqZ30Lo7fchkNqdlnSH7vAIw==","signatures":[{"sig":"MEUCICGTD5pszLrtB5CNeZJR2csccVflG2uRaW8CN9/7Wd5BAiEA1eEAeivB5D8xhqVOLQFTEaNORe1I9eL4UurL3DMHkFQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.18.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2607394},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"6889b42839b7205dc6c8a48fa3bc0797d3f13929","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.18.8_1777487533171_0.24340639088636307","host":"s3://npm-registry-packages-npm-production"}},"0.18.9":{"name":"@hominis/fireforge","version":"0.18.9","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.18.9","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"9386f8b852c83d61500900dc155a54bdfc2fdd25","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.18.9.tgz","fileCount":460,"integrity":"sha512-AZcAwOq9IY1HNh3BibOGUkiRFDHsWKi5eW3B9jljoAYzKDnOcyfNnRaALArdMOkuO6iG1qzMr8kyzF9zmrbxHQ==","signatures":[{"sig":"MEQCIC8ptn8mw2lN3Q6kwJXfCAxyl8i4uSQF8jRG7wTo5k22AiBzSM0o1Nm+k9oPYdnEaMt+ohwUViEeZWEaA4fQAc5f/A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.18.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2632113},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"81a0c857f2420f732def613dfe90b172d0fef434","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.18.9_1777541079967_0.7066359376384796","host":"s3://npm-registry-packages-npm-production"}},"0.18.10":{"name":"@hominis/fireforge","version":"0.18.10","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.18.10","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"c23b7c5b977c1da7d7c0cd2dabef420f2e029437","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.18.10.tgz","fileCount":462,"integrity":"sha512-oAPwaPphHEwy5980do1PXB1uGX6WYSpZsuqQDv+dp01lkKfkkNk9HzSaWOTPLZxYCrFRVrJsqZDMBLjlhec77w==","signatures":[{"sig":"MEUCICfbw3vgfJ5jPrD0HCpujZ4S+eSeQjVSwVdn9hsnfAVgAiEA3zPrl1dnVo1lTlNCBaVAc7u6ltgQ8ztIuqtyAfMw+Lc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.18.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2655472},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"e25f66959a64ab6c3ca5fab360182cb4ac9e542a","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.18.10_1777546525503_0.1953825174359547","host":"s3://npm-registry-packages-npm-production"}},"0.18.11":{"name":"@hominis/fireforge","version":"0.18.11","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.18.11","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"627c2f1a16fe323612be7f99d729555a0cbbe105","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.18.11.tgz","fileCount":470,"integrity":"sha512-SwzULx5eMqVWFLLyUYfEig73N8Jwwhh3GYLHyc08R+66EQ5pXLOoJad6Ts3pVlK3sHjQPfTQFBWMmfbbPdZZcA==","signatures":[{"sig":"MEUCIQC9jNGzpNavcIscG+o9QlLYnHq5W+j4pBrNr8T2y9ZsmAIgEbriE2Fw9fGTHHdF70oWs2ZbHIa150jaD15MiNezSlo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.18.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2699084},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"e3e43088497ae66d9a0f714697cce5a259736f71","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.18.11_1777556700046_0.5635078530716651","host":"s3://npm-registry-packages-npm-production"}},"0.19.0":{"name":"@hominis/fireforge","version":"0.19.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.19.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"1cbcdbb4e10e6751b059d58016c26519536a03e5","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.19.0.tgz","fileCount":472,"integrity":"sha512-m3FI62/IoGU6Jk3RrQvkhJX7jupaT6nmCnPDVD7iDeaUKD5MUdl2l+bEBPQ/qTO0UxoCKOvMAKicAlTcLW6f6w==","signatures":[{"sig":"MEYCIQDaPhFebIkYxR5qu8pFw8FGXp+s2FGTKYpsKs5JIPxSTQIhAJ/aCI67twfRYi3BrpzHpehCfh7Ho3wp1Lnxbc5raME2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.19.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2706687},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"d23f0e3b7e88b685f5d6669fc3cf7bc85e9bbfb9","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.19.0_1777585758415_0.37824102271726634","host":"s3://npm-registry-packages-npm-production"}},"0.19.1":{"name":"@hominis/fireforge","version":"0.19.1","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.19.1","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"565665b0bc9db2dd32672b00f11410481762904b","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.19.1.tgz","fileCount":472,"integrity":"sha512-ZmAGR/S7vTo119MlRhvTXdebAfThUFX03xIWoSoT2WdaUJT3A87meA98sOTDhCtqykTqF/I+I/yUE1Gngv7r3A==","signatures":[{"sig":"MEUCIH1mGMBj+hH71AqiurIBC0jt0TG0m0QU8FHzdSrHEA48AiEAs9qc6p9pzVxUDkfOaoYT+NjzDw4PfwgOqqQXsr0vHB4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.19.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2707857},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"f72c0e25288b2312e413a9524e8bb54bbb514472","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.19.1_1777589488217_0.41408136396988193","host":"s3://npm-registry-packages-npm-production"}},"0.19.2":{"name":"@hominis/fireforge","version":"0.19.2","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.19.2","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"eec79662681aa186ae305ff30c66796cb5acc94f","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.19.2.tgz","fileCount":472,"integrity":"sha512-//T7z0QLCkboHk489XNKoClwhzMTfMJUvAPb/+nBxGqe/0QqPpGGfYd8JGo+e6z6jdXqFrjdR8LCAvx3UCaFbQ==","signatures":[{"sig":"MEYCIQCYadfZkgln+DDZni1rFczVMWuoEsyY3Bd92ciyv2XRlwIhAKR6SAcNFORsYWvcsoqI0SXajlurPvqyfnXS728Fve6l","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.19.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2709905},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"b8100d14edea8e78cd4e0e5636f903b4d955bcb0","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.19.2_1777632399385_0.1510391571411045","host":"s3://npm-registry-packages-npm-production"}},"0.19.3":{"name":"@hominis/fireforge","version":"0.19.3","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.19.3","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"b30c31daeda4e008f1d666b9e38f1e9a87551fae","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.19.3.tgz","fileCount":472,"integrity":"sha512-HZ7sgFIZz+us0paMvOf9HLktoakkrTUPSFupYiCPrMTyZed2/7pJab335guOxNPmryhzKG6EAT4RPCYRP/tKTA==","signatures":[{"sig":"MEUCIQDIfzn8imb36L1W7exCKh3N1kTxM4jV1sB4ZDXTP3/aTAIgbzPOehQcIVJOHgHQZK8qrjkhxFu5hty49YE7q4ZfVRo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.19.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2714682},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"e59b0a1ad915436a32a7a2aeb9df6555edd461ff","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.19.3_1777662427437_0.04991079272278176","host":"s3://npm-registry-packages-npm-production"}},"0.19.4":{"name":"@hominis/fireforge","version":"0.19.4","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.19.4","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"9fd5b4a1250a6be7a2adbc9a9d3b0f3560583aea","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.19.4.tgz","fileCount":476,"integrity":"sha512-q9zDcypPT0H/ad4cYuBmoccm700UBbAYPOLuharz8qpKra96LFrnWeyYWr5Yf8AZBu/EXM1S2K25JnWeCSQXOg==","signatures":[{"sig":"MEQCIGfRVPxsAcBg1XiTvJVcvZuYkkuUm1larA3CbHqT6S8fAiBx3dGPzQXEtyI6vKRAPuXvMVKNEv373o8et/lEwNZPAA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.19.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2708165},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"36cd6c0b0a108dccb83796f8d5b1c22a3a2bd4d0","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.19.4_1777665932727_0.05779422965398617","host":"s3://npm-registry-packages-npm-production"}},"0.19.5":{"name":"@hominis/fireforge","version":"0.19.5","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.19.5","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"6adc039beef4d6c978063bc1d62b0d290fefc6ee","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.19.5.tgz","fileCount":476,"integrity":"sha512-OlwaIjdBkYujY/B3FccsfgHeKA2rJGhriZ5gPFUZkz+kWRX1E9y7MZeytD48LVzKyBCkqtYGfw+Uw6Ypb2beTQ==","signatures":[{"sig":"MEMCHzfVEJvB6hcjRCLvlsJOKs2ezjQR8q7MQu7RX1Rx7ewCIFGmOXRFabUVEs9n8MiWBY7JCtngWk+SXCd1RlgEu/EO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.19.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2710232},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"9e6c643014982dacc3a4939685242ffe741271ef","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.19.5_1777671205302_0.23472457856436968","host":"s3://npm-registry-packages-npm-production"}},"0.19.6":{"name":"@hominis/fireforge","version":"0.19.6","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.19.6","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"4095d7f210d27d12ebd207dce5b80c61713ae78c","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.19.6.tgz","fileCount":476,"integrity":"sha512-cDAt5Mv6sm0RaFsr7crUcyf4smv/aXeMaM8UQmGZuej/WtqpFLd7JRDDZsJTNM4ho1FiO8UKZyxuvvyZFAn7Qg==","signatures":[{"sig":"MEYCIQCyJryGxqIIvMg+Ru2cqftFupkd0H95zXM/L/1peKHNRAIhAMEtY6hb5lg5rr+MuT4Q4mLL5OwAt+6sFDooXPXcW50t","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.19.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2712998},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"97d6c8c7a29db20e71d419bede31f5e76260bb61","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.13.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.19.6_1777744757113_0.23757471660381468","host":"s3://npm-registry-packages-npm-production"}},"0.20.0":{"name":"@hominis/fireforge","version":"0.20.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.20.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"ff8b4ef0931cf0e91bf70e8767380314be0e5214","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.20.0.tgz","fileCount":484,"integrity":"sha512-HG2VMbCvpo3v1DdpBxRwG0nuiEr4VanSax3iWwqhHBWT3ekrkLa/0yzGZkMIz6E9DnOOiF3HVwdzw3A8JFJM0A==","signatures":[{"sig":"MEUCIF3SBjLMQoG0dLJdOaisptpqvSx5dV1HAr/CLQCuoRdBAiEAtlqbM87klgpyqhqK2k3Ly4pf0wrz1NxAefSEhE0aj8Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.20.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2729066},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"9842f358903b2dabed2dfc2a3c31bc8aabf98a5d","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.14.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^16.2.7","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.20.0_1778440366010_0.3669514132437155","host":"s3://npm-registry-packages-npm-production"}},"0.21.0":{"name":"@hominis/fireforge","version":"0.21.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.21.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"ccf11a9abff780ee23013a59fd4d0f72e1bc612f","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.21.0.tgz","fileCount":488,"integrity":"sha512-Db4iAMZ3wcfZM48eIKDYAxoSFnRzdHCeTrlLSx1Toy/h9cb1MWtxGPk1dOS9gAbmkvrQEfwxWEzLRLkGAP5Yjg==","signatures":[{"sig":"MEYCIQCsIkkcXgyYIBAAVGaW1pgJPVUwR1lHcRk/3mB+1+J/wAIhAO7QpRYRtj8d+NvruScmDa7QuIrPUeoIqOUnucNRw4wO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.21.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2750879},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"cec2dc6392093cac9cb9063c91786227866d3bbc","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.14.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.21.0_1779118238636_0.6514580469167124","host":"s3://npm-registry-packages-npm-production"}},"0.21.1":{"name":"@hominis/fireforge","version":"0.21.1","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.21.1","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"dafd1c9cd6cbeae51cd62e8b957b81bf606aa194","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.21.1.tgz","fileCount":490,"integrity":"sha512-uqj/lLZS+gSP6MNDnZzAwvyIJDKZhFDM+EuzWmB3198Anli7imkz9xvexipHff+8kH6XisCCrePgoPTMEtiPdw==","signatures":[{"sig":"MEUCIQCovzs2mJbrP9acjO57GfzHq4bbPsoJFBnolaOvcKvD2gIgRdUfXKnvX0mEIOmseB3VxvL4EzMiP8S227j/TzgJes4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.21.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2757864},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"6f3264825c433a1bdb44d4ebb7cb258423dc466d","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.14.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.21.1_1779121468628_0.919183839096108","host":"s3://npm-registry-packages-npm-production"}},"0.21.2":{"name":"@hominis/fireforge","version":"0.21.2","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.21.2","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"7fdc10f96e612d3c92c0b84066c83fab957b92f5","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.21.2.tgz","fileCount":500,"integrity":"sha512-iuYHazdjd0p2x+bPgW46Tj9gA1AiuGWULqDSO7uGY6EAVHMULU8DQbANe7Dpv4i5eESesMKhm76bzQUvvZNb5g==","signatures":[{"sig":"MEUCIAE9Ya1jK2Tui98PNVZ0rqpAgOzc/rknMahc+zw/fRLSAiEA0FFWoh7suyQlrIrc3Gywdl5dTEu6/07Kc1QQTvmFR+o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.21.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2793255},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"5f8eca52263c2bf0a0e653cdccf31ffdf3740fa2","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.14.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.21.2_1779136380884_0.7204017175600912","host":"s3://npm-registry-packages-npm-production"}},"0.21.3":{"name":"@hominis/fireforge","version":"0.21.3","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.21.3","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"d6be1993b7b6cde28b1739400d6c2eb274f17aca","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.21.3.tgz","fileCount":500,"integrity":"sha512-BnDJliHMWPcwvPO8kLPVmbpBDfOfQLsVApxfH93MkvIJMIy84Vaf7+fTVQC4GM0HJT3d3Sv4nINgERL2WD/jSg==","signatures":[{"sig":"MEYCIQCxr20u+PdhhcuCabbGsuJahHLFov1vKR0tF7wCrw8KPwIhAKr43QrSa1D5CLWk8mBJA7Ts9FuKsyO17/b2uGGzxzd7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.21.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2793255},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"90e5f464632f9bfa82e8a05b907517bc17311535","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.14.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.21.3_1779137161310_0.6241151746099776","host":"s3://npm-registry-packages-npm-production"}},"0.21.4":{"name":"@hominis/fireforge","version":"0.21.4","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.21.4","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"3c8c2123bbadfe29b677a96494306ce5d723acda","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.21.4.tgz","fileCount":502,"integrity":"sha512-SDnjb9BrO3hlMUhBQF81bEf2OaIdrKb8thmO55ZT+kpImPPiSkOTZHGTBno6//ew527XIsXQWARBtQ0bDa7HqA==","signatures":[{"sig":"MEQCICNcs92enOOylmcVOFF+qWnTEALSaP8IpVTMvvD3rlUjAiAGoImSqK7Hqh8wZuYWxRfEh8sLBspzWTiHNrCH6J149Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.21.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2809659},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"9f88e42211bca88f53a667693684212b3bed2a5b","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.14.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.21.4_1779148908669_0.1261961158251479","host":"s3://npm-registry-packages-npm-production"}},"0.22.0":{"name":"@hominis/fireforge","version":"0.22.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.22.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"81d4f379cc6391950e2b5cff5d5bff03635469bd","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.22.0.tgz","fileCount":502,"integrity":"sha512-8oyE5h16CFxj6udllj0UDAjkosJrpdmE1iet3GQjDolStdoglvvLaOEBMRo8blHanEEfmusMxOCo5HS7mhMgjA==","signatures":[{"sig":"MEUCIAF3UlmP1R3+8Fw2uW8JMBAtBlWYXNqxNXOsJvWyAi9fAiEAzDNyLBMUfWXX02zzu3AF77JqjYSD5C/Y3ADpJQEShg8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.22.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2519536},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"fca38d898d82a76f9381589271c0311a483a8977","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.15.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^62.9.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.22.0_1779574795099_0.6224880539074493","host":"s3://npm-registry-packages-npm-production"}},"0.23.0":{"name":"@hominis/fireforge","version":"0.23.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.23.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"98b827350ca044778d5e0aac65bbd52ad40e6c36","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.23.0.tgz","fileCount":502,"integrity":"sha512-bBW5EuIcxhmU++Fh79qw72bGtvh3eBzid2PLSZskZBQZtp8UTMIID9TWG8gUkcjZ9NasSUKqoztP2EGCmDWb8A==","signatures":[{"sig":"MEUCIC39kGcIcywGGxd38hiwuwHnsRRXb1WlK1fpDg4m91JoAiEApla66nCN10kzfC2c9MKj47JH7l5xdWlarWV8z75Lu6k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.23.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2523503},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"daee263807a25a2ef617791309598d9526fd87e0","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.15.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.23.0_1779816751746_0.3622692372994869","host":"s3://npm-registry-packages-npm-production"}},"0.24.0":{"name":"@hominis/fireforge","version":"0.24.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.24.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"7710a7af87779fd1e6bb268e4c461f854e7e0a6a","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.24.0.tgz","fileCount":508,"integrity":"sha512-3FHUIZ0Jvyiov3qi2oW5OeMM45BvCIIPkTvQL7GnJ0dwTOA2z/0hvD8h7Iby58FRFXyEDh3ayF6BmUDdzkR3iQ==","signatures":[{"sig":"MEUCIG9u2emAWje80GCsW9OTnf+G4ftcGfZuuftCM19SS9xXAiEA/VSKYatpGd3wv2RQsXkEA/4K2eyXXCnUfktjI1cgGKw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.24.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2551823},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"8701654de7b24e91f738687427f2c588004a6785","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.15.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"20.20.2","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.24.0_1779913269358_0.054286372898364466","host":"s3://npm-registry-packages-npm-production"}},"0.25.0":{"name":"@hominis/fireforge","version":"0.25.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.25.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"dec67e37e5fbac58749521fd0f68b1ca22b61753","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.25.0.tgz","fileCount":508,"integrity":"sha512-PPzKpi+4p2zK8Dm3x7fiS3lh+uTGsOjcG60jRQJilexiQneZk7lY4+vM9coktStcRPKOAjy5fuiPeIj/duoPmQ==","signatures":[{"sig":"MEYCIQDOvlp2bSGKzgsqR2pTPjCx11TD+Kwx6Vl1SyaKaIURNAIhAPpbaMx+OtFGifchCJxqIaDNZxDv8DNMAxfMj1uojMHO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.25.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2554531},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"88953eecf4e37544caab0ec6121f3e0beacd5c19","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.16.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.25.0_1780073012284_0.4899709287938254","host":"s3://npm-registry-packages-npm-production"}},"0.26.0":{"name":"@hominis/fireforge","version":"0.26.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.26.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"ecc8c49ba2ba907421f5245ea73618a869342805","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.26.0.tgz","fileCount":510,"integrity":"sha512-qQfOfz9utbYZidUsM51CB6CK/8PnUCqqxyfweuoD2/mNLQM0jOa2lVibva8OR7TXeTCVmsXB/qu57sJ4wXdTag==","signatures":[{"sig":"MEYCIQCYHY57z9O0v7dBnt12j/WUv/72ZmoyOnH7wO4gT9jwFgIhAOXIIPCCxNM52GjkFi2DcmeHe69VOsJYodIRXuMQCZXo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.26.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2560703},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"ed7b5c9e8e727a1d0112ea8fb9ebde3d33cfaa24","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.16.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^14.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.26.0_1780238077578_0.7552151425870366","host":"s3://npm-registry-packages-npm-production"}},"0.27.0":{"name":"@hominis/fireforge","version":"0.27.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.27.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"90e85af9b78252e5793e5c944a0a6561846ed9ee","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.27.0.tgz","fileCount":510,"integrity":"sha512-WuuUZl89OLC8/6ytnoHcld9qrNkFnUDdm2c2fODwWM7R8kOCoRbBhgcUHbuHqG3EKDig9vcYoLRo2JDGMBMvaA==","signatures":[{"sig":"MEUCIQC500ISSggN6EPolft0qQAgMCeyPgo7U7esNKbeZR5jCQIgZvVnJ5Oq/BjJw0QNc//Ss4y6ye1Unfi+bH+3IcRxfr8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.27.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2572750},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"f10644313e6c650f924f49c1721c4c5793d3df45","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.16.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.27.0_1780399093337_0.9800040876534744","host":"s3://npm-registry-packages-npm-production"}},"0.27.1":{"name":"@hominis/fireforge","version":"0.27.1","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.27.1","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"8559c711e1695c3e1ef191b8886c6e01cb5c85b6","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.27.1.tgz","fileCount":520,"integrity":"sha512-UwkoZ8s7mglPsiVmd0psiOE4z2K/m9U71MzsGhHSkg598Rm+zetyRFvTe1QTF3hZVKQEfcAanaSmlns/Ll0vPA==","signatures":[{"sig":"MEQCICXDQcuq14UUmw7B5Z7C1MzyUuKaDsKyMXpPAGgrAtOnAiALmzfny2Hk5Rht97VaN5ZdKGMxt/ZcRBGKpdZl9PsZVA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.27.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2588981},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"ee3c7c19eaeedfd3d2d1627fdc9b6cf73ca32365","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.16.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.27.1_1780433737595_0.6335053325332514","host":"s3://npm-registry-packages-npm-production"}},"0.27.2":{"name":"@hominis/fireforge","version":"0.27.2","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.27.2","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"783d995f88fb9c0be1f9bc6bbfe5fe6faffece37","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.27.2.tgz","fileCount":524,"integrity":"sha512-YTbKN8mNi9fH8HmTKuP97qDYb/NSqIbxZ+U4ER3290M+IsLhbnreyQHi7TGfvzbTY8xxgAxhDb3FYnWSu/yvng==","signatures":[{"sig":"MEQCIFGPzy5NTK407wnaNDCqSKDD25ueCY9Qi5ZjpTZYtiilAiAZYEhDmWtAjlwIKZ1lv9/sQpVnY7TyixUyeqMsPhayoQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.27.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2599998},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"8ac66725c97bc8ffff63a18a9a220f2b3093c4ce","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.16.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.27.2_1780441464228_0.8010685378769675","host":"s3://npm-registry-packages-npm-production"}},"0.27.3":{"name":"@hominis/fireforge","version":"0.27.3","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.27.3","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"4fea71bc7557d1f0e679eb630f00dd6c2bd52743","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.27.3.tgz","fileCount":524,"integrity":"sha512-ddlVNfn3cxENir5kXtB3qgsMrnkR/ZtjNazBQGvOsM9J+rMRq8ZLh+p5XrI/YWK/wCiA3dwJRMkwwzDrgf8Zhg==","signatures":[{"sig":"MEQCH2xKl7wLYvgg4q8tZAbahZZGjT8o59WwIpJIeT7IoJsCIQCqYrcd6HZiUL93Fn3qUQdeWp04B+DmY16HMEmvJ8ZQ8A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.27.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2604375},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"c19cf9bbc75675362e1bbcf52239c1855d1e5057","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.16.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.27.3_1780445203137_0.9436841859925873","host":"s3://npm-registry-packages-npm-production"}},"0.28.0":{"name":"@hominis/fireforge","version":"0.28.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.28.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"8245405435b88b165d8e5a40d5a30042366fd0f8","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.28.0.tgz","fileCount":524,"integrity":"sha512-VBAKmrc6hcJMyGhPcOnYgPpSBQ2y6Uqqtpg/+yDfHyf6wQaW+HCTtsZkqcSD+badLOxgiL86k9SiDbncLJc7sA==","signatures":[{"sig":"MEQCIHodDOBeAnDUDNh1TrF+w8pEjhx90UCzzXV2v80itTK+AiAiLOyIN2zLRLcGqfYuANi2026WwSvTC+H20iwOgmFwdQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.28.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2605015},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"55aa7f1251a82f69d73484364c3c560292522343","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.16.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.28.0_1780483759775_0.9501244255235013","host":"s3://npm-registry-packages-npm-production"}},"0.28.1":{"name":"@hominis/fireforge","version":"0.28.1","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.28.1","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"832b3437a97d8cb9aecd30802ca575f6ef34d022","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.28.1.tgz","fileCount":524,"integrity":"sha512-SYgwrG1HjMNZEPcLUwfkWrK5oZhVLuBoQjssQuevGxRDOim22ojrJXqxXjGVdQKN4loMiipgsrGW74lFuZsVKQ==","signatures":[{"sig":"MEUCIAGYDoLo/oRIBAcB3G6khqU59NVtMPFokN5RNkcNevWeAiEA1lz2hkBSLpn+I272pHUHRUrcdi73+tjTp6cUotN7dGo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.28.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2607302},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"4c3301f5b9301fda20a93ca16835bb42cbd299c8","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.16.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.28.1_1780519224023_0.2082613524090935","host":"s3://npm-registry-packages-npm-production"}},"0.28.4":{"name":"@hominis/fireforge","version":"0.28.4","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.28.4","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"7577a20a8b505aa313bda5837b569461dedf44c3","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.28.4.tgz","fileCount":532,"integrity":"sha512-MjZZTdovA0tYpT5EfJJ6Q6OQt3ywJWNgUCeuKGlEILjAWQ9wW3++eSCTH92jBimOclDPmGhG7UnCysOPAmylNg==","signatures":[{"sig":"MEYCIQC718EqZwh/XegAHQtzBKGzp93ASQcee4lj1SNy5LJThQIhALtKBdJZQzEgIthwwZMYXG9iRWn54Z2nywnrsSdhmql6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.28.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2621776},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"b98f1c357a481969e012c63f1a11d90cce3ab3f4","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.16.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.28.4_1780569552149_0.7644358142316676","host":"s3://npm-registry-packages-npm-production"}},"0.28.5":{"name":"@hominis/fireforge","version":"0.28.5","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.28.5","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"6446c386d5ae9fe9d12ab2fcd098274172f38aa3","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.28.5.tgz","fileCount":534,"integrity":"sha512-8QfwOMGVJr9984CBSp1cXn4zPKCFRxm6/tylhDsQxu0IDMwVF1vfeVDdEvMV/2QPHfF7sag9WzYOEShh3lZ84Q==","signatures":[{"sig":"MEQCIEEdbZNHeAtwgNDy4hh8+1lZLuMaTwnDwSW3/T54p/KvAiAfFnL4KvupMQpGsXoR/MzSW2YqES7P9ZLVnSeX538QUQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.28.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2624843},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"5f8a955ca771a6c92e75ea706f2bfd57f2c02f9f","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.16.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.28.5_1780574897097_0.4557037583761252","host":"s3://npm-registry-packages-npm-production"}},"0.29.0":{"name":"@hominis/fireforge","version":"0.29.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.29.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"4bfe03cc18329ec4505f8b1385d691beb0793ba7","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.29.0.tgz","fileCount":536,"integrity":"sha512-UZ7Kv3U7DGQSocdEWi3ZenbjXuQC92H9SSPLRJi6NPxPbi2XrQgCouJvMBWvQPexO5O+2kNuBuETbtpH+NLfhA==","signatures":[{"sig":"MEQCIFE0feUfRDKnKA1bjryd4Fvn+Cf3zeotoZLFfiCipveDAiAwf+17oAcRSg6WT6b9izeTB3rRuSGsUqXqf8ch728ggQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.29.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2629847},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"10d9927253704f95f6efc47e02926d33b3a791da","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.16.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.29.0_1780583320837_0.655975002897172","host":"s3://npm-registry-packages-npm-production"}},"0.30.0":{"name":"@hominis/fireforge","version":"0.30.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.30.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"911d12424853346104f92aee60a9f5d3401e479d","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.30.0.tgz","fileCount":540,"integrity":"sha512-iyDA1hvnAy/wmc18gQpomtK4UYB0fF+nm/hBHNyw57R9yj0YkTHDLNwtG4mmTDQG2B3pIokRfB+AZQ/y7Li4bg==","signatures":[{"sig":"MEYCIQDG3AT7Jif4jk4RNrPa0/1gKrRTcxx7YxHEGm39/F6T0AIhALbQ6r1z6L6ma0SYNWpd13Kwb9hUm8DM+Z6cSbpv104+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.30.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2642756},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"191b39003431c09662e2669c39fad12e6a17fe31","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.16.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.30.0_1780693484521_0.6847789046158137","host":"s3://npm-registry-packages-npm-production"}},"0.30.1":{"name":"@hominis/fireforge","version":"0.30.1","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.30.1","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"d94c99757fe5be58ddf1d934dda6f7593aabfe17","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.30.1.tgz","fileCount":540,"integrity":"sha512-cElHK39qjuTbkcV/dOd7lDR712lJW4ku5Q8Ji7Ys5ujOv+zhh4qyxq65LNE8cYDWhF4AFrIXTM+fCMr6i1UO+A==","signatures":[{"sig":"MEQCIFcJ4cIV2FOCHXybSI3t5TFGOKH8VFG70aWPoYi+ImoEAiBk4/7E7KZwkwcuSgQ6OU6YtD7bW5dePpkOc5KrPT9NHw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.30.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2643684},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"ac11d94018e4e7414f7a7eb0b3915cb3f9f084f6","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.16.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.30.1_1780697606993_0.6296506085277991","host":"s3://npm-registry-packages-npm-production"}},"0.31.0":{"name":"@hominis/fireforge","version":"0.31.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.31.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"80d5fd8717341a89e9b16b4db005de9ad5e36745","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.31.0.tgz","fileCount":568,"integrity":"sha512-emAZsUFY/1rk8ElDFcZCQ4Pg5YUJPHeqX/AZN/Nnz1LWBmJ42uKgwyKxACuUbM+wHb3crSjvNpGiYdePwa4C1Q==","signatures":[{"sig":"MEUCIQCQLNVmQLBQdeBPt4zOsDBFBAJM78zAGr2zRa1qWc1RuwIgFX5PcwRY0yteOQZoCabgY8zTVI+KmNbOn6xQYXdFnCc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.31.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2769585},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"6212626c2c89d054816afc37ef85e1f58b044d4d","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.17.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.2.0","knip":"6.16.1","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.31.0_1781220118360_0.8096412100441714","host":"s3://npm-registry-packages-npm-production"}},"0.32.0":{"name":"@hominis/fireforge","version":"0.32.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.32.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"084eb2aa5b92fef6d30c50a1341ec371b728a138","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.32.0.tgz","fileCount":570,"integrity":"sha512-zIr4ZUWBnYqwa2uA4QGsKtqv0v5I+93rHMom9nvrHCrAOnnyyQli2Bgvwc/Dw4F64tgzzjbHSy8NdghHI9csnA==","signatures":[{"sig":"MEYCIQDXA33wcLkjUEQ47NGZvw7zaTPaXj+xWAU9kgLV35Z2zwIhAK9dHkuRNnFPm9U46dN/0cJSAWjdL7F+IV3GfUsyyrsw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.32.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2830754},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"bcf92023663a6bf3ec30a02916f0cc2d78582fe1","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.17.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.2.0","knip":"6.16.1","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^25.5.2","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.32.0_1781522355046_0.3449229920377215","host":"s3://npm-registry-packages-npm-production"}},"0.33.0":{"name":"@hominis/fireforge","version":"0.33.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.33.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"c310a5c2f2759ff887cb57657c6bc3b2e241c4ed","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.33.0.tgz","fileCount":578,"integrity":"sha512-Mf5+bGpNDia31QSw+75IjYKMkFQjnx1Uf6fS3V0IY8+CtpV/NiLdQ3Jx/ZIYyAISx2E6SPymzIMTnYzlxWXAdg==","signatures":[{"sig":"MEUCICUk042Xh5bK5BGEFioEsPsreEhGlOos2/CcQmBTyWSWAiEA2VF8NFTGdWRaOCExB+4VuexPv2pY99FB9rWYNXamS1M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.33.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2878562},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"7304f594b63e8633bf93ff3dc51d2e0a7e33d608","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.17.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.2.0","knip":"6.17.1","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"^3.7.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.33.0_1782587265489_0.8382795568117631","host":"s3://npm-registry-packages-npm-production"}},"0.34.0":{"name":"@hominis/fireforge","version":"0.34.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.34.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"dc37c74a8e67ad2e6958435bd76e6a7c203e6341","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.34.0.tgz","fileCount":586,"integrity":"sha512-o8m2CdcdmU/pJI02OVm8S5RJZjWYwVPJQfsB/qgES87XjogDRl2WWWX8odDCJNqZJuhHpS52fnMCPCc+ys9UJQ==","signatures":[{"sig":"MEUCIQC4YgF68yA7f4JTEqlCWwfzX4bFifjeHNyJJwv3ZVsaowIgToAYGVcGLKFdOhYp/gFQ9+S3dDsYlDuKB2Ikz5pQbr0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.34.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2963753},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"a9dd512376db0715adb18d55744d95c807cc4b51","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.18.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.2.0","knip":"6.23.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.34.0_1783112885340_0.9155289921572465","host":"s3://npm-registry-packages-npm-production"}},"0.34.1":{"name":"@hominis/fireforge","version":"0.34.1","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.34.1","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"d1f049d215bfb0f2123cd90d89cb6ffa34ade1fc","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.34.1.tgz","fileCount":586,"integrity":"sha512-DHpypBy+cofYRCXKWrOnYwGCrPDV52I2FaWmkR9uucRT0YwpHM6Azzg3O0MFIRsgIA2gypjibbz7unzrHUDjGQ==","signatures":[{"sig":"MEUCIGODAwmyAC/Zb1mmlvoduQNKAVNEs2P2pc4uZBBQN8KrAiEApathkGIG+aajZ96+klWq1bnoExcYhUj6+Pw3BhNt1pY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.34.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2976924},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"7d19bbda925948ec755b955925b582d5f54c6954","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.18.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.2.0","knip":"6.23.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.34.1_1783118059909_0.02254772849989961","host":"s3://npm-registry-packages-npm-production"}},"0.34.2":{"name":"@hominis/fireforge","version":"0.34.2","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.34.2","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"001462e08f0127bacdf00c3bf9db938538fb1164","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.34.2.tgz","fileCount":586,"integrity":"sha512-/m6dc5ejsDHP4+1lg/BPdVY/taOWKhG9UBg0r//1GF2dQwHfPTMjyoHrGCh9YiaJyl9cqiHgCx/LINxfIGbD5g==","signatures":[{"sig":"MEQCIG0u6AERBzMYz5t8S7pMqXEyh7OliKDGxZiTosSG+G9zAiAF8HKIdSkJLrq3KzNY0Zk5oimADdf7o5ZUq5BuqrZNfw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.34.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3000746},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"9dae28ce9a44816a80c5895fbce894e56b997a4b","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.18.0","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.2.0","knip":"6.23.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.34.2_1783121600891_0.8934835320329304","host":"s3://npm-registry-packages-npm-production"}},"0.35.0":{"name":"@hominis/fireforge","version":"0.35.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.35.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"1d11b50172c45e684fda656c06c356a7b813e13f","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.35.0.tgz","fileCount":590,"integrity":"sha512-7ei6ipbIJxJ6Mf91Ow/XOtffjSIH1OIMtbkhDSB7V1dDVdsV62KblXW5eL7nm+3gFH1ULXKC33OKaL6yS9SmLQ==","signatures":[{"sig":"MEYCIQDgo/A0GQF3UL2fxJVu40kDBKW/c6LVo6+ny+4qgWxo8QIhAPYLQJ39nTsOvJYClS3a+5CDF4p+3cZsyvxw08irtQoZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.35.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3055876},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"6e6090195decd3f4c8ffc795cef136c4c1125243","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run src/__tests__/wrapper-smoke.test.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.2.0","knip":"6.23.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.35.0_1783256660405_0.9215767612166965","host":"s3://npm-registry-packages-npm-production"}},"0.36.0":{"name":"@hominis/fireforge","version":"0.36.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.36.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"54c87afbb4ecd87fe1aa8fe593529f7504665ec5","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.36.0.tgz","fileCount":604,"integrity":"sha512-UlGbrmy0lWZ6/VEQ9VcKsn9B2+loa7HK9Qx6asLWz2/U/0F1fJM27/owF0RIs/UvZpE0u6eGIGXQk7aTfaJyXQ==","signatures":[{"sig":"MEUCIFOt8mTvXk36gGd3YF5i34AxKLT9tWdVZZjOfG6bqW7jAiEA53gbuGwyNGy/QZcvOOnyYabTICx6yVVQfFuA5KpZy3I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.36.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3223358},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"3f82ec229dba6ffe0cd6cad0574a67706fe215f4","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"docs/**/*.md\" \"knip.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"docs/**/*.md\" \"knip.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.2.0","knip":"6.23.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.36.0_1783438093524_0.2032227947394949","host":"s3://npm-registry-packages-npm-production"}},"0.37.0":{"name":"@hominis/fireforge","version":"0.37.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.37.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"272c4a7a3c622256ce48d6ab78a4ff1796550f01","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.37.0.tgz","fileCount":612,"integrity":"sha512-4ic+wz/BKbf+YL47kMUKf8JpYC4+Dn01U0B3lcwQRptHoypKIIX6CwInCf/rv0G4I3URQoj7T0JI8REFIi2MzA==","signatures":[{"sig":"MEQCIGHJ9AzYkadyMi0c9lgQKg6AvicDawJxwT718PzjFtHJAiBQvpVBWYnfcSo0k+375VWdJ/oj1X1yFzF8kQmVRMsrMg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.37.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3306526},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"009804b4dec02d1a9e2ecb06bb3c339a5418672d","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"docs/**/*.md\" \"knip.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"docs/**/*.md\" \"knip.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.2.0","knip":"6.25.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.4","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.37.0_1783788904780_0.6499878630637133","host":"s3://npm-registry-packages-npm-production"}},"0.38.0":{"name":"@hominis/fireforge","version":"0.38.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.38.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"94d8b4bd43f7b56616391bcba038f51de21ad5aa","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.38.0.tgz","fileCount":616,"integrity":"sha512-hmGRN2seXrnA5D/lDMWGhD046fUEANj30Ju9468pYd4PeYz3LI398tPuseHIGv9t2fpiOcmX8HqH4k1fhvz/0g==","signatures":[{"sig":"MEQCIHRFhhHLxt1EeBSmHLgPErCda/YuZi/6ret2PwWCoh+mAiAmwbmY8MrmoHzNBz6Ya4g5PpluRYrd7aCuJ/G6iVJ0eA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.38.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3374561},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"0a6b3216a4c770287083c42e49454e353a1880d2","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"docs/**/*.md\" \"knip.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"docs/**/*.md\" \"knip.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.2.0","knip":"6.26.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.5","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.38.0_1784330462707_0.6925933300344451","host":"s3://npm-registry-packages-npm-production"}},"0.39.0":{"name":"@hominis/fireforge","version":"0.39.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.39.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"901f5c0b55597b4dbb978ec1c4485b7af7159758","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.39.0.tgz","fileCount":622,"integrity":"sha512-MPS6O6eZYFHAZNUFx80X5Q6F712ff66K5+fBdMj4LtcQcMPJgj2IZmnVoNcA6+bamzSjlNtQVG+E3Eam9mg7mw==","signatures":[{"sig":"MEUCIEXrL5ryAqj6Cu8a4g5d/OD5NdxqldpFFM6C7pcAVJmaAiEAiqhi9Gz+9scYUjLxubsSEpMR2lftprYGYW3+6Lq50Pc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.39.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3459212},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"e65321c2aaaabce9ec13c4452b9000a170a83053","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"docs/**/*.md\" \"knip.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"docs/**/*.md\" \"knip.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^0.30.17","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.2.0","knip":"6.26.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.5","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^13.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.39.0_1785345870737_0.6412790480876946","host":"s3://npm-registry-packages-npm-production"}},"0.40.0":{"name":"@hominis/fireforge","version":"0.40.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.40.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"18e6e502d5fa8a0f599b037ab001d9192a7f2066","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.40.0.tgz","fileCount":640,"integrity":"sha512-WJIZIowYPS48uNXEITSljqF8oFE0uSZXfWmWvaONp1faobBylKV6kO/fyrkS77FvsOjX+gpmORrfpmX/1yNjcQ==","signatures":[{"sig":"MEUCIEC6kDHdLDAouuZ4qSSegyk7LceHCRbKAotKzl5qmDNzAiEA611UFAqgAumnZ+zr9IuNwa4DkocNSmChnMMDu+m7nYY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.40.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3580043},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"3705ee107a1e6cbe87a72c5bf6f23571a12ae406","scripts":{"lint":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"docs/**/*.md\" \"knip.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"docs/**/*.md\" \"knip.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.29.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.6","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.40.0_1786055811061_0.6562127841613079","host":"s3://npm-registry-packages-npm-production"}},"0.41.0":{"name":"@hominis/fireforge","version":"0.41.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.41.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"3f16d858a53689d0f43627d36847224b13b42082","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.41.0.tgz","fileCount":685,"integrity":"sha512-+TsSTjaJSlyOTUQ+Izw4Nhbg62LDhp5G4HSh8L1auKcmCw8+8YOVgifCOUHOIyNhn9hSrS8KB4e05ryCloFvuA==","signatures":[{"sig":"MEUCIQDETVuRPPyBQfxQDIyxKH8pcCyrIJ+X1yZl5YafHkePrQIgMU/P191/njNGIS5oZMCu2iV/y7RSwiXgimQSBwSXVB8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.41.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3897371},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"8d94512ea3928aa68b5525ddb73091fec73ce56c","scripts":{"lint":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json && node ./scripts/generate-build-info.mjs","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build && node ./scripts/generate-build-info.mjs --loud","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.32.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.6","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.41.0_1786833769321_0.08565531573628582","host":"s3://npm-registry-packages-npm-production"}},"0.42.0":{"name":"@hominis/fireforge","version":"0.42.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.42.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"a83528c873448746c5fdc2226eeec46d57c578e3","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.42.0.tgz","fileCount":685,"integrity":"sha512-T1S6Y+y6QsikbvKlAhJIF9kiGFdF9ZbL6BLiD6aNRBbLvjPk7xujOyyrFljc83L+jSA8SXzPzXNGQb6etjdwfQ==","signatures":[{"sig":"MEYCIQDezvk2sOHFK8SrASxfNESWT2giiOZVJl3SMT38dIAaMAIhAMXlWsp9cklROnMcea+D3IlwXWC58Qs1iMAn+zBz2gBF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.42.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3900115},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"8200882a267f82974cd34356112990be0650c2ee","scripts":{"lint":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json && node ./scripts/generate-build-info.mjs","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build && node ./scripts/generate-build-info.mjs --loud","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.32.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.6","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.42.0_1786903415609_0.2687022510733632","host":"s3://npm-registry-packages-npm-production"}},"0.43.0":{"name":"@hominis/fireforge","version":"0.43.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.43.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"b47111c384723a9fe35e89359a4d4cb71bbaf80c","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.43.0.tgz","fileCount":699,"integrity":"sha512-zoRBh23LzCxGcswEWQeARQBVT3Ttj9OcM/2hVP5sSlaTg3RpnzlB0i4Kpd5DN9Moe3qDVIAKbNpOJ6xQMoPABA==","signatures":[{"sig":"MEUCICFquvzeD2b4powD2N0/pXm/LoqkYCNFo3N0RatAJ/QNAiEAgkjQ2nzBTRsPJCimW6iQNcaeQMfYAIX+SUR7VL4sMMU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.43.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4039659},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"8229f32cf3e1fee429a82966440480de7618bf39","scripts":{"lint":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json && node ./scripts/generate-build-info.mjs","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build && node ./scripts/generate-build-info.mjs --loud","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.32.2","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.6","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^64.1.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.43.0_1787237362057_0.19437295769707874","host":"s3://npm-registry-packages-npm-production"}},"0.43.1":{"name":"@hominis/fireforge","version":"0.43.1","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.43.1","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"f4ba70255edd838dd4697c45484334570c7fdb82","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.43.1.tgz","fileCount":699,"integrity":"sha512-5+b0S6xtEafCoCo0nTcQzfa19lhnD3kzt13eMIQbI+uLcXQ4GjASpih2OTw8ypfWBw7Cv6aus45/7/Oes9RqCg==","signatures":[{"sig":"MEYCIQD2uJ8+D8wyK4Lrr9HvMpLEA9yrIYNB5vYbbnADPvBb0gIhAOnD3ZOBRC+vxN+FotEiRwNjP+f7FyisQZRClQerYIUp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.43.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4043711},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"b6b4729474ae50675c5ebcaf25db388b6a6c2352","scripts":{"lint":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json && node ./scripts/generate-build-info.mjs","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build && node ./scripts/generate-build-info.mjs --loud","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify && npm run pack:dry-run","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.32.2","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.6","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^64.1.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.43.1_1787243332897_0.8202146703054376","host":"s3://npm-registry-packages-npm-production"}},"0.44.0":{"name":"@hominis/fireforge","version":"0.44.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.44.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"4ee64982ee273bbcd09c673ef899ab59e77161b1","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.44.0.tgz","fileCount":717,"integrity":"sha512-GgSwIDQnt2vXBlLSB+L6YrxbpEVELc9KJXVN/U39m8bVwYVxxwzfZymJUEf0M9sLDxj5LHsCuW6Znc6QfDRpaQ==","signatures":[{"sig":"MEUCIQD5QzwYoBbEAY1tE0Q5pMpX2x585H6NGWPNbyxZ0I1LQQIgOJsJSUwxGqHPnKFo5OB/AS2zGTZIPWzTQ+5L6F+/c0Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.44.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4162095},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.1"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"93892e54177df3f88391e3b571674fd1189be43d","scripts":{"lint":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json && node ./scripts/generate-build-info.mjs","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build && node ./scripts/generate-build-info.mjs --loud","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.22.1","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.32.2","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.6","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^64.1.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.44.0_1787856937191_0.11810717232550538","host":"s3://npm-registry-packages-npm-production"}},"0.44.1":{"name":"@hominis/fireforge","version":"0.44.1","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.44.1","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"6f81e862d185c5826427cf75de1556b29661f820","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.44.1.tgz","fileCount":721,"integrity":"sha512-MN2obXFtL3kvAwMw0ZRCqzROk5o7KsjXiyPVCdpznKfmoG0pY2M+49qlHc3Y5citSr+SspBTMR6RN1unvwsRVQ==","signatures":[{"sig":"MEYCIQCVzmfP7SHI5gLVOSaJa9pRGQeZpOJGVc3/vFHn0dXgxAIhAOkvBnYOgt6XvmAECWO7f64d3IZZ6EHFRDiF2Uxp4fUb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.44.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4207703},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.2"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"b77a037425f19e19c43a64a5bb1ff79d949af92e","scripts":{"lint":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json && node ./scripts/generate-build-info.mjs","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build && node ./scripts/generate-build-info.mjs --loud","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.23.2","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.32.2","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.6","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^64.1.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.44.1_1787868544180_0.4477816477409411","host":"s3://npm-registry-packages-npm-production"}},"0.44.2":{"name":"@hominis/fireforge","version":"0.44.2","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.44.2","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"b1e1b5079e074aeaac344c2476ee52a475daed4c","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.44.2.tgz","fileCount":725,"integrity":"sha512-J1v5bnx2LcPxj/CpqJyQ4CgI0TSMOEKWHJ7r3R5z4zuv/SuntCXH+1k01XCIko5ropICBtADFCBu5HDy1R6CzA==","signatures":[{"sig":"MEUCIQCcwmUB9akTr2hwHWxXJFkCPOvi5D0NhEIHhZRd+wUqXwIgek0NRFSAFFpZvlrdcI9ICwRRgXnHhkMMNG43kqSKpT4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.44.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4266728},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.2"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"d653751d6c8a1be154647943dc346e81cc62b390","scripts":{"lint":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json && node ./scripts/generate-build-info.mjs","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build && node ./scripts/generate-build-info.mjs --loud","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.23.2","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.32.2","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.6","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^64.1.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.44.2_1787924381468_0.41886872918699214","host":"s3://npm-registry-packages-npm-production"}},"0.44.3":{"name":"@hominis/fireforge","version":"0.44.3","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.44.3","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"f0d94a8ff45cd18f2e2b3f223d2cd05d4c50be06","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.44.3.tgz","fileCount":735,"integrity":"sha512-riBseua9Kr/kFbx8NrJ4WeFWjlN+8CwsxEc17nRVqmjZRGv/cj6U/yDChE7rLCQHnuzwh+s8KCEvtHAC+XKxQg==","signatures":[{"sig":"MEUCIQCrFRI2sgbNt8Nk8+zDiKtkFzpnWzOVNR18H/2Vna3zFwIgcjI4IjqoA4uRgRQRBRIY1YYahOq3YlFa2iSj6Qpj/vI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.44.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4360650},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.2"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"760172104f6bfe523f63adfe08b8c6e63fd5d1f0","scripts":{"lint":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json && node ./scripts/generate-build-info.mjs","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build && node ./scripts/generate-build-info.mjs --loud","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.23.2","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.32.2","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.6","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^64.1.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.44.3_1787931303514_0.7836038253128534","host":"s3://npm-registry-packages-npm-production"}},"0.44.4":{"name":"@hominis/fireforge","version":"0.44.4","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.44.4","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"25976da4603b7bc3d9e5ca62ac6813eb0ee4b61c","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.44.4.tgz","fileCount":735,"integrity":"sha512-N/mC0ZVChGo914ks6fexjeBPwvl24REsCwSVcZCLWScYCrffGRQFR6FppNN++CcLCNqZu5+1nXhDLvvq36X3Wg==","signatures":[{"sig":"MEQCIDawCrIAh16nZMHxI6Zd6mWFppA6JQh+Cpf4BWZLRToHAiBFLD7G/pcUSzWVmwQDQlR65KifLkQ4mGXysR9ldlL2IQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.44.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4385399},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.2"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"b8742ddc056124f81624d9c13d182d0b0c57c86c","scripts":{"lint":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json && node ./scripts/generate-build-info.mjs","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build && node ./scripts/generate-build-info.mjs --loud","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.23.2","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.32.2","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.6","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^64.1.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.44.4_1787960891333_0.1659504354150898","host":"s3://npm-registry-packages-npm-production"}},"0.45.0":{"name":"@hominis/fireforge","version":"0.45.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.45.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"7ee37bc9f19d1d0c0e2531baeac53e79e4082315","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.45.0.tgz","fileCount":751,"integrity":"sha512-y2E5Kp2ccLTosBotf4/Pn82AYLdIB0GecAizUQw+Dx70hSevUFlRMh9Yph5NQfAKgz73VJHAr2dMqYqpzhuvxA==","signatures":[{"sig":"MEUCIQCDmstOfe2X/woWmVGGRrkxparj88Lgx2u/Q5R7ybbvLAIgQKLQSs0FOBZd6SSXCjYtEhI9IXLVPDr3XUmXHeQXrzA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.45.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4508955},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.2"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"19d461eb43b89962970510f9a2e655704e9fb952","scripts":{"lint":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json && node ./scripts/generate-build-info.mjs","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build && node ./scripts/generate-build-info.mjs --loud","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run cycles:check && npm run test:coverage && npm run pack:verify","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.23.2","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.32.2","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.6","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^64.1.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.45.0_1788259672993_0.5280977401965392","host":"s3://npm-registry-packages-npm-production"}},"0.46.0":{"name":"@hominis/fireforge","version":"0.46.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.46.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"bfcd44e52ba49fc4ea2cbadc08a2f321fd6f0299","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.46.0.tgz","fileCount":787,"integrity":"sha512-ajwvjOs2TtURwlHpsAvC2mndhZVtrKA/FnwkazVirbwkH4/L7Mw/qh2YBk4l9ZkV/YVVHNcB2wjutF5QEP1sfw==","signatures":[{"sig":"MEUCIQCU0knS02Xy/KCi2TxSdSrljeBRQ5qxCSRBNaFElpXHpQIgJT908MTFXWt6FOwRGiRuyq5tNUyFyQaT6wYyqXwWz9k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCpjczdv6AluK2yhxR5NoYJJlpNpLsNkgohlSFIxbjZfAIhAO+uX71MOMXbhHIF6gEw22FibJlnMxcRO0J1Ex1EePWE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.46.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4678829},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.2"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"cffe7e47008c7a2af690abbbe352eb685d35d3f8","scripts":{"lint":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json && node ./scripts/generate-build-info.mjs","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"knip.production.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build && node ./scripts/generate-build-info.mjs --loud","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"knip.production.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run deadcode:check:production && npm run cycles:check && npm run test:coverage && npm run pack:verify","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs","deadcode:check:production":"knip --production --config knip.production.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.23.2","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.32.3","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.6","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^22.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^64.1.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.46.0_1788636718407_0.5190384997728983","host":"s3://npm-registry-packages-npm-production"}},"0.46.1":{"name":"@hominis/fireforge","version":"0.46.1","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.46.1","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"4617561cfe5af9e63d236756b8b11d2792703275","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.46.1.tgz","fileCount":787,"integrity":"sha512-3Ado1DZ95nGsFyFsrEXX3prbAo7VO0VGCOg0/yVRxvNaprbZyjOCwhFg2caRBo5p7tyd4tO2gM2ctV3FrFCtzQ==","signatures":[{"sig":"MEUCIH5ht14yfnmWNJA7aHvBvMGyoJGQb8UCHdKGdb8qvtb6AiEAshRSmLPGiGk2VIkJHbP6d6optv6B/mtonEQkjgwL4rc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIAhvAMAaVojwg/8jIrbInmY+ElDniDqSBr5VbH2G9E+vAiEAhU+q9pVFgx6+yoFe0vAsnZQWqLXAvDcHFmrI8Lmmu5E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.46.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4408670},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.2"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"821990fd7d076a205f37618055c0a01a95180aed","scripts":{"lint":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json && node ./scripts/generate-build-info.mjs","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"knip.production.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build && node ./scripts/generate-build-info.mjs --loud","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"knip.production.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run deadcode:check:production && npm run cycles:check && npm run test:coverage && npm run pack:verify","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs","deadcode:check:production":"knip --production --config knip.production.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.23.2","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.32.3","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.6","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^22.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^64.1.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.46.1_1788647480172_0.6629229437092978","host":"s3://npm-registry-packages-npm-production"}},"0.46.2":{"name":"@hominis/fireforge","version":"0.46.2","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.46.2","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"58ff83dfbc1e80f5c62595bb791419ea7647a1a2","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.46.2.tgz","fileCount":787,"integrity":"sha512-JdsAPcaWoX+Uv//m9+KXw3tgVTThqI5FCxkSuGnPanE+iEBpg2UBr3RwiyuNtF2srXn11SYdcYLpOo9scUeKzA==","signatures":[{"sig":"MEUCIEwvIxVeE84f3GiGuuUBcaDgZi0xdOfLE37tRDk3VU6eAiEAkUobg5tVDxIAQtDVMeQGbddJ6HMmzldlhJ+baeEGMv4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIHy0zrrmIv0uoYyRyBLQ8ooXlSjwtuST2YdFjzdE19EsAiACS25wyBNaNV4bZ2e9hWrqOJc856Hdh5K5RXy90qiNNQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.46.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4409722},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.2"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"533adc217a82c2a17735e8b38e25d8f41f8bfad8","scripts":{"lint":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json && node ./scripts/generate-build-info.mjs","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"knip.production.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build && node ./scripts/generate-build-info.mjs --loud","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"knip.production.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run deadcode:check:production && npm run cycles:check && npm run test:coverage && npm run pack:verify","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs","deadcode:check:production":"knip --production --config knip.production.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.23.2","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.32.3","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^4.0.18","prettier":"3.9.6","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^22.0.0","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^4.1.2","eslint-plugin-jsdoc":"^64.1.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.46.2_1788649376869_0.5129827296332219","host":"s3://npm-registry-packages-npm-production"}},"0.47.0":{"name":"@hominis/fireforge","version":"0.47.0","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.47.0","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"bdce416d43baede4697e6417a884f61aee01ad49","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.47.0.tgz","fileCount":795,"integrity":"sha512-jw3CP5qAxxCLS4VsNL+err2Da1T9PnkxI+RTa2jcr30QCiKBIvM2yEf41TwLvW+bJctB83dHzmVAzeE20ZExpA==","signatures":[{"sig":"MEUCIQD2aiCsUkGcU75OgojofKSD3/xVerwGWOIluXVOQHJF3AIgFbJZ1YLFlB2Iq8guSEfl7Z3CP6CR8j4EQFlBlYcpKz8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGHwEkmHiRWDbveZ7u7YY0Y97G1E876z/v6tPIJdoZg1AiEAtQRpDKY44z5G64xxzaR+kUOXnoQcRhQo0QCO+FAywfI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.47.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4462534},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.2"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"2bffcb5fee31d398a521874851af09a62134ae10","scripts":{"lint":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json && node ./scripts/generate-build-info.mjs","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"knip.production.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build && node ./scripts/generate-build-info.mjs --loud","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"knip.production.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run deadcode:check:production && npm run cycles:check && npm run test:coverage && npm run pack:verify","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs","deadcode:check:production":"knip --production --config knip.production.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.23.2","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.35.1","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^5.0.0","prettier":"3.9.6","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.4.1","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^5.0.0","eslint-plugin-jsdoc":"^64.1.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.47.0_1789222128110_0.6984654892081859","host":"s3://npm-registry-packages-npm-production"}},"0.47.1":{"name":"@hominis/fireforge","version":"0.47.1","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"license":"EUPL-1.2","_id":"@hominis/fireforge@0.47.1","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"homepage":"https://github.com/HominisBrowser/FireForge","bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"bin":{"fireforge":"dist/bin/fireforge.js"},"dist":{"shasum":"262718d8825c94ca6a029c3e6f917846365b7252","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.47.1.tgz","fileCount":801,"integrity":"sha512-X95bZil8MH3Vcvakx8tt3VWss2dun6Ztchyu+uOD8H4v0NwT8Hr2pMIarQftXeIO8anvhMqguX/xIOLts3AIng==","signatures":[{"sig":"MEQCIBPptB2sxIPa/mf84k5MfbtJZpMR8MzgNqw/dM3PJUpQAiAMhroouc6HyR2fG07SbxeretGR0MUxZk9hneqcJA04Vw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIDk+nwvdorrKj99cMgZ9kwIS6y3bUqsXyYOGgyPwtANMAiEAm9Jy7Gx0WU3FBx8nsVsac5KQNlImIg01kYR5IXlgylg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.47.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4521588},"main":"./dist/src/index.js","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.2"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"11b30621b46142df7a8035ae7b9e8a13936787bb","scripts":{"lint":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json && node ./scripts/generate-build-info.mjs","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"knip.production.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build && node ./scripts/generate-build-info.mjs --loud","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"knip.production.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run deadcode:check:production && npm run cycles:check && npm run test:coverage && npm run pack:verify","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs","deadcode:check:production":"knip --production --config knip.production.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"_nodeVersion":"22.23.2","dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.35.1","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^5.0.0","prettier":"3.9.6","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.4.1","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^5.0.0","eslint-plugin-jsdoc":"^64.1.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/fireforge_0.47.1_1789327341625_0.7448503611388655","host":"s3://npm-registry-packages-npm-production"}},"0.48.0":{"_id":"@hominis/fireforge@0.48.0","bin":{"fireforge":"dist/bin/fireforge.js"},"bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"dist":{"shasum":"4d8234778dc4d1672e05acfaa43b27a0f729c44e","tarball":"https://registry.npmjs.org/@hominis/fireforge/-/fireforge-0.48.0.tgz","fileCount":815,"integrity":"sha512-SXe81Kmny4PpFcTt/uEIclPjzy2/9s7cnH9qQB9GSyVJ97j8AWvm+GTXMEK/gbqTUv6PrVFk5QPxzAzNX4pl0w==","signatures":[{"sig":"MEUCIBHTU0aILfW1ilrFTemKLg80GXXz3eXh77+3MdYXcnoTAiEAhNnaoPYw5bIy5tbr17EKPnmiGQB/I35uknJFRQU0o9g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDk7Yu0LRgWfsBt2Lqmpm6Hj7LwkqWs5Zg0Zg11SyAiVgIgZxc+lWIvjKTzWC44iCih72BJm5IhYNVsE/KoByhTcrI="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hominis%2ffireforge@0.48.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4620696},"main":"./dist/src/index.js","name":"@hominis/fireforge","type":"module","types":"./dist/src/index.d.ts","engines":{"node":">=22.22.2"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./*":null,"./package.json":"./package.json"},"gitHead":"9215c35e3907f14cc03379fb04c867ebd954085a","license":"EUPL-1.2","scripts":{"lint":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts","test":"vitest run","build":"npm run clean && tsc -p tsconfig.build.json && node ./scripts/generate-build-info.mjs","clean":"node ./scripts/clean.mjs","format":"prettier --write --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"knip.production.json\"","lint:ci":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --max-warnings 0","prepack":"npm run build && node ./scripts/generate-build-info.mjs --loud","prepare":"node -e \"import('./scripts/prepare.mjs').catch((error) => { if (error && typeof error === 'object' && 'code' in error && error.code === 'ERR_MODULE_NOT_FOUND') process.exit(0); throw error; })\"","lint:fix":"eslint src/ bin/ scripts/ eslint-rules/ eslint.config.js vitest.config.ts vitest.pack.config.ts --fix","fireforge":"tsx bin/fireforge.ts","typecheck":"tsc --noEmit -p tsconfig.json","test:watch":"vitest","pack:verify":"vitest run --config vitest.pack.config.ts","cycles:check":"dpdm --no-output --no-tree --no-warning --exit-code circular:1 src/index.ts bin/fireforge.ts","format:check":"prettier --check --ignore-unknown \"src/**/*.ts\" \"bin/**/*.ts\" \"scripts/**/*.mjs\" \"eslint-rules/**/*.js\" \"package.json\" \"eslint.config.js\" \"vitest.config.ts\" \"vitest.pack.config.ts\" \"tsconfig.json\" \"tsconfig.build.json\" \".lintstagedrc.json\" \".prettierignore\" \".prettierrc\" \".gitignore\" \"README.md\" \"CHANGELOG.md\" \"docs/**/*.md\" \"knip.json\" \"knip.production.json\"","pack:dry-run":"npm pack --dry-run --json --silent","test:package":"npm run pack:verify","release:check":"npm run format:check && npm run whitespace:check && npm run lint:ci && npm run typecheck && npm run deadcode:check && npm run deadcode:check:production && npm run cycles:check && npm run test:coverage && npm run pack:verify","test:coverage":"vitest run --coverage && node ./scripts/check-coverage-thresholds.mjs","deadcode:check":"knip","prepublishOnly":"npm run release:check","whitespace:check":"node ./scripts/check-worktree-whitespace.mjs","test:firefox-full":"node ./scripts/run-full-firefox-integration.mjs","deadcode:check:production":"knip --production --config knip.production.json"},"version":"0.48.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5563611b-38e4-44cd-bde2-444c98e24a1e"}},"homepage":"https://github.com/HominisBrowser/FireForge","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"_npmVersion":"11.12.1","description":"FireForge — a build tool for customizing Firefox","directories":{},"maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"_nodeVersion":"22.23.2","allowScripts":{"esbuild@0.28.1":true,"fsevents@2.3.3":true},"dependencies":{"acorn":"^8.14.0","commander":"^15.0.0","picocolors":"^1.1.0","jsonc-parser":"^3.3.1","magic-string":"^1.1.0","estree-walker":"^3.0.3","@clack/prompts":"^1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"packageManager":"npm@11.12.1","devDependencies":{"tsx":"^4.7.0","dpdm":"4.3.0","knip":"6.37.0","vite":"^8.0.7","husky":"^9.1.7","eslint":"^10.0.0","vitest":"^5.0.0","prettier":"3.9.8","@eslint/js":"^10.0.0","fast-check":"^4.6.0","typescript":"~6.0.0","@types/node":"^26.4.1","lint-staged":"^17.0.4","@types/estree":"^1.0.8","typescript-eslint":"^8.0.0","@vitest/coverage-v8":"^5.0.0","eslint-plugin-jsdoc":"^64.1.0","eslint-config-prettier":"^10.1.8","eslint-plugin-simple-import-sort":"^14.0.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/fireforge_0.48.0_1790113127954_0.5013658667053309"}}},"time":{"created":"2026-04-08T18:47:06.005Z","modified":"2026-09-22T21:38:48.507Z","0.9.0":"2026-04-08T18:47:06.334Z","0.10.0":"2026-04-10T11:51:20.704Z","0.10.1":"2026-04-10T16:49:59.161Z","0.11.0":"2026-04-13T01:14:44.641Z","0.11.1":"2026-04-13T18:56:17.091Z","0.11.2":"2026-04-13T20:44:01.972Z","0.12.0":"2026-04-14T20:17:10.258Z","0.13.0":"2026-04-15T18:24:47.806Z","0.13.1":"2026-04-15T19:46:19.411Z","0.13.2":"2026-04-15T21:13:12.362Z","0.14.0":"2026-04-16T21:52:49.477Z","0.15.1":"2026-04-17T16:44:17.908Z","0.15.2":"2026-04-17T20:32:51.985Z","0.15.3":"2026-04-18T11:14:29.113Z","0.15.4":"2026-04-18T11:36:50.956Z","0.15.5":"2026-04-18T18:42:36.663Z","0.15.6":"2026-04-18T19:33:15.873Z","0.15.7":"2026-04-18T22:45:06.208Z","0.15.8":"2026-04-19T17:56:00.048Z","0.15.9":"2026-04-19T21:23:05.392Z","0.16.0":"2026-04-20T08:29:20.929Z","0.16.1":"2026-04-20T11:18:19.894Z","0.16.2":"2026-04-20T12:15:15.602Z","0.16.3":"2026-04-20T20:16:22.370Z","0.16.5":"2026-04-20T22:56:04.549Z","0.17.0":"2026-04-21T10:50:59.021Z","0.18.0":"2026-04-24T11:03:59.603Z","0.18.1":"2026-04-24T19:57:12.496Z","0.18.2":"2026-04-25T10:26:50.013Z","0.18.3":"2026-04-25T22:05:36.555Z","0.18.5":"2026-04-27T07:25:39.617Z","0.18.6":"2026-04-28T16:03:02.700Z","0.18.8":"2026-04-29T18:32:13.371Z","0.18.9":"2026-04-30T09:24:40.117Z","0.18.10":"2026-04-30T10:55:25.752Z","0.18.11":"2026-04-30T13:45:00.263Z","0.19.0":"2026-04-30T21:49:18.667Z","0.19.1":"2026-04-30T22:51:28.407Z","0.19.2":"2026-05-01T10:46:39.549Z","0.19.3":"2026-05-01T19:07:07.703Z","0.19.4":"2026-05-01T20:05:33.022Z","0.19.5":"2026-05-01T21:33:25.616Z","0.19.6":"2026-05-02T17:59:17.322Z","0.20.0":"2026-05-10T19:12:46.245Z","0.21.0":"2026-05-18T15:30:38.827Z","0.21.1":"2026-05-18T16:24:28.840Z","0.21.2":"2026-05-18T20:33:01.214Z","0.21.3":"2026-05-18T20:46:01.496Z","0.21.4":"2026-05-19T00:01:48.927Z","0.22.0":"2026-05-23T22:19:55.289Z","0.23.0":"2026-05-26T17:32:31.992Z","0.24.0":"2026-05-27T20:21:09.604Z","0.25.0":"2026-05-29T16:43:32.539Z","0.26.0":"2026-05-31T14:34:37.807Z","0.27.0":"2026-06-02T11:18:13.513Z","0.27.1":"2026-06-02T20:55:37.819Z","0.27.2":"2026-06-02T23:04:24.389Z","0.27.3":"2026-06-03T00:06:43.486Z","0.28.0":"2026-06-03T10:49:19.982Z","0.28.1":"2026-06-03T20:40:24.194Z","0.28.4":"2026-06-04T10:39:12.373Z","0.28.5":"2026-06-04T12:08:17.370Z","0.29.0":"2026-06-04T14:28:41.036Z","0.30.0":"2026-06-05T21:04:44.769Z","0.30.1":"2026-06-05T22:13:27.169Z","0.31.0":"2026-06-11T23:21:58.583Z","0.32.0":"2026-06-15T11:19:15.244Z","0.33.0":"2026-06-27T19:07:45.668Z","0.34.0":"2026-07-03T21:08:05.566Z","0.34.1":"2026-07-03T22:34:20.074Z","0.34.2":"2026-07-03T23:33:21.048Z","0.35.0":"2026-07-05T13:04:20.585Z","0.36.0":"2026-07-07T15:28:13.769Z","0.37.0":"2026-07-11T16:55:04.954Z","0.38.0":"2026-07-17T23:21:02.895Z","0.39.0":"2026-07-29T17:24:30.931Z","0.40.0":"2026-08-06T22:36:51.251Z","0.41.0":"2026-08-15T22:42:49.503Z","0.42.0":"2026-08-16T18:03:35.794Z","0.43.0":"2026-08-20T14:49:22.535Z","0.43.1":"2026-08-20T16:28:53.145Z","0.44.0":"2026-08-27T18:55:37.389Z","0.44.1":"2026-08-27T22:09:04.344Z","0.44.2":"2026-08-28T13:39:41.675Z","0.44.3":"2026-08-28T15:35:03.739Z","0.44.4":"2026-08-28T23:48:11.514Z","0.45.0":"2026-09-01T10:47:53.155Z","0.46.0":"2026-09-05T19:31:58.547Z","0.46.1":"2026-09-05T22:31:20.295Z","0.46.2":"2026-09-05T23:02:57.018Z","0.47.0":"2026-09-12T14:08:48.252Z","0.47.1":"2026-09-13T19:22:21.763Z","0.48.0":"2026-09-22T21:38:48.120Z"},"bugs":{"url":"https://github.com/HominisBrowser/FireForge/issues"},"license":"EUPL-1.2","homepage":"https://github.com/HominisBrowser/FireForge","keywords":["fireforge","firefox","browser","build-tool","customization","patch-workflow"],"repository":{"url":"git+https://github.com/HominisBrowser/FireForge.git","type":"git"},"description":"FireForge — a build tool for customizing Firefox","maintainers":[{"name":"topfi","email":"npm@noduz.eu"}],"readme":"# FireForge\n\n[![npm version](https://img.shields.io/npm/v/@hominis/fireforge)](https://www.npmjs.com/package/@hominis/fireforge)\n[![license](https://img.shields.io/npm/l/@hominis/fireforge)](LICENSE.md)\n[![node](https://img.shields.io/node/v/@hominis/fireforge)](package.json)\n\nFireForge is a CLI tool for maintaining Firefox-based browser forks. It downloads Firefoxs source code, lets you export changes as patches, helps apply them and has some neat/mad code quality enforcement, built by taking a lot of learnings from the existing Firefox source code and trying to make the process as robust as can be. Ideally, FireForge makes everything from managing custom UI components to enforcing some rudimentary typechecking much easier, but I'll be honest, there is only so much one can do, so understanding upstream is advised, especially once future updates come into the mix. ~~I cannot guarantee how reliably these will apply, but I did try to assist in that process as much as I can by learning from prior Firefox versions which had major changes made to them, though this is of course still no guarantee for future success or that the methods will remain reliable. Beware of that.~~ Edit 16.07.2026: I have now upgraded and downgraded and sidegraded, really all the graded, across all the versions in many scenarios with modifications so far removed from upstream that I think it's fair to say upgrading is fairly reliable.\n\nInspired by [fern.js](https://github.com/ghostery/user-agent-desktop) and [Melon](https://github.com/dothq/melon).\n\n## What It Does\n\n- **Patch based** Edit Firefox inside the `engine/` directory, then export changes into `.patch` files with manifest metadata.\n- **Source rebasing** Reapply your patches onto newer Firefox source trees, including ESR, Beta, and Developer Edition archives, resolve rejects and re-export the queue against the new baseline, hopefully...\n- **Firefox source and build helpers** Download, bootstrap, build, run, test, package, smoke-check, etc.\n- **Wiring and registration** Add chrome scripts, DOM fragments, modules, styles, tests and manifest entries through commands built by learning from existing Firefox conventions.\n- **Furnace components** Create or override `MozLitElement` widgets easily to add new or adapt existing UI components to your needs.\n- **Quality** `lint`, `typecheck`, `verify` and `doctor` catch common issues early.\n- **Tests** FireForge was built by taking apart and applying patches of all sorts to original Firefox source code across different versions and products, learning what works vs doesn't and creating some quite extensive tests based on that covering all manner of scenarios. Yes, we mock quite a bit, but when building a tool that modifies a separate code base, I think it's a solid compromise for the time being. Full end-to-end runs are currently run locally on my MacBook, as they require about 30 GB of disk and significant compute for multiple full builds. Full end-to-end via Actions will be added soonishlyTM but might need a different runner...\n\n## Requirements\n\n- Node.js 22.22.2+\n- Python 3\n- Git\n- The normal Firefox platform build tools: Xcode command line tools on macOS, `build-essential`-style packages on Linux, Visual Studio Build Tools on Windows.\n- Watchman, if you want `fireforge watch` (optional)\n\n## Getting Started\n\nCreate a project and install FireForge locally:\n\n```bash\nmkdir mybrowser && cd mybrowser\nnpm init -y\nnpm install --save-dev @hominis/fireforge\n```\n\nThen initialise and build:\n\n```bash\nnpx fireforge setup\nnpx fireforge download\nnpx fireforge bootstrap\nnpx fireforge import\nnpx fireforge build\nnpx fireforge run\n```\n\nAfter setup you should have a `fireforge.json`, an `engine/` directory containing Firefox source and a `patches/` directory containing the patch manifest. From there, the usual loop is to change code inside the `engine/` directory, export these changes, then verify the queue still applies cleanly.\n\n## Regular Workflow\n\n```bash\nnpx fireforge status\nnpx fireforge export browser/base/content/browser.js --name custom-toolbar --category ui\nnpx fireforge re-export custom-toolbar\nnpx fireforge lint --per-patch\nnpx fireforge verify\nnpx fireforge build\nnpx fireforge test browser/base/content/test/browser/\n```\n\nUse `fireforge --help` for the full set of commands, and\n[`docs/patch-workflow.md`](docs/patch-workflow.md) for what the loop actually\nguarantees.\n\n## Rebasing Firefox Source\n\nWhen Mozilla publishes a new Firefox source release you need to update the configured version/product, download the new source code and reapply the patches:\n\n```bash\nnpx fireforge source set --version 145.0.0esr --product firefox-esr --sha256 <archive-sha256>\nnpx fireforge download --force\nnpx fireforge rebase\n```\n\nIf a patch fails, fix the reject inside the `engine/` directory, then run `npx fireforge rebase --continue`.\n\n## Furnace\n\nFurnace is our solution for UI components. It can track stock widgets, create new fork-owned widgets and override existing ones. The files still land inside the Firefox source directory and end up as part of the regular patches to export.\n\n```bash\nnpx fireforge furnace scan\nnpx fireforge furnace override moz-button -t css-only\nnpx fireforge furnace create moz-my-widget\nnpx fireforge furnace deploy\nnpx fireforge furnace status\nnpx fireforge furnace preview\n```\n\nUse `fireforge furnace --help` for the full set of component commands, and\n[`docs/furnace.md`](docs/furnace.md) for shared CSS fragments and typed\ncross-module imports.\n\n## Documentation\n\n[`docs/`](docs/README.md) holds the reference material:\n\n- [Patch workflow](docs/patch-workflow.md) — export, re-export, queue maintenance, per-patch lint, CI gating\n- [Testing](docs/testing.md) — `fireforge test` scope, modes, build freshness, the verdict line\n- [Furnace](docs/furnace.md) — components, shared CSS fragments, typed imports\n- [Verification trees](docs/verification-trees.md) — CoW snapshots for concurrent verification\n- [Configuration](docs/configuration.md) — `fireforge.json`, design tokens, lock waits, environment variables\n- [Exit codes](docs/exit-codes.md) and [machine-readable output](docs/machine-output.md) — the contract for scripts and CI\n- [Run logs](docs/run-logs.md) — what `test` and `build` leave behind\n- [Lifecycle invariants](docs/lifecycle-invariants.md) — locking, rollback and signal handling internals\n\n## Roadmap\n\n- **Docker builds** Reproducible builds using Docker containers.\n- **CI mode** Automated setup for continuous integration pipelines.\n- **Update manifests** Generate update server manifests for auto-updates.\n- **Nightly source support** Requires implementing `hg clone` support via mozilla-central. ESR, Beta, and Developer Edition source archives are supported through `fireforge source set`.\n- **E2E Github Actions** Requires either a higher tier of Githubs offering, an external VPS or another provider entirely. In any case, full end-to-end testing is currently run solely locally.\n\n## Licence\n\nFireForge is licensed under [EUPL-1.2](LICENSE.md).\n\nFirefox source downloaded into `engine/` is licensed under [MPL-2.0](https://www.mozilla.org/en-US/MPL/2.0/) and is not distributed by this repository. Firefox-derived files created through Furnace keep MPL-2.0 headers, regardless of the licence you choose for your own project files during `fireforge setup`.\n","readmeFilename":"README.md"}