{"_id":"babel-plugin-transform-rewrite-imports","_rev":"12-e9a1e3eac41063ee20cd79b7e3c1261f","name":"babel-plugin-transform-rewrite-imports","dist-tags":{"latest":"1.5.4"},"versions":{"1.0.0":{"name":"babel-plugin-transform-rewrite-imports","version":"1.0.0","keywords":["babel","plugin","map","export","typescript","extension","commonjs","extensions","import","transform","esm","add","replace","append","mjs","cjs","require","es","module","dynamic","rewrite"],"author":{"name":"Xunnamius"},"license":"MIT","_id":"babel-plugin-transform-rewrite-imports@1.0.0","maintainers":[{"name":"xunnamius","email":"git@bernarddickens.dev"}],"homepage":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports","bugs":{"url":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/issues"},"dist":{"shasum":"1c38c3d0a9dc17e3668c3e65d8729af7817eba3d","tarball":"https://registry.npmjs.org/babel-plugin-transform-rewrite-imports/-/babel-plugin-transform-rewrite-imports-1.0.0.tgz","fileCount":6,"integrity":"sha512-Pv51SLeFuu5xMgwug0X+Uq5Gh41XQ2xedFqd6ARpf66DztqmIkwCWck2XTSod5DbG/wQ9FMlR/CR+h1TawqNwQ==","signatures":[{"sig":"MEUCIHRU6z300i9i++1x9TsnFeEc9WY8PjYp5iT23figYHp4AiEA1naGtXr/Y69acgEMXToT2bQn9qSH4McgLI3iO0pRQNY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42435,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj01HEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoZmBAAhFSJZAJW/kyhak1WzB6/OZy77rUKMBmWNX3gbsdq8rzHNUe4\r\nIQ0tM8iVHLah3HAiw9sZm2xFqfRqGU9figq5LKuzQ48AHxIsYuLBB3084/Am\r\nOeiZ722PCtkrUcQMSTUj6GIbkLXDHkdEvasawsXS22DTwwbOrZAYNuTLQsV1\r\nm7eNAwgS/mMqy0sholW+4X//eAhSWwyBTFhfQQcO39X64tz7lfNowSPD1CF1\r\nrUdQwqVL79IcjM/jJ7qxX758GUIm05AZTyIKeJsY8EWWCzH+bX1G2t5QyvAx\r\nZ9jlJafRQYREok2kBp1xh5uQNfysgsYpZCEmrE5iWqzSzik5D6qki+XhjEjy\r\nkPDXuSXvbn65ozifCuGGaUaavspWfYYyj3QKXKQ2ixmPaGp4BwAw6SKkbJYZ\r\nl3slLAjrrV5y91auc+kdHJcY3vE3E5GkJKgJpBONTgOTktBGwirhGtUIVRql\r\n71IN7KwNZgu8IKFGRosthNFt+mk1PvLPV5kNc06r72euq7Z94vi7FBV/6SKk\r\nvHtG/WeSphXTEaEX1Y9/DEUPcaJ94CkpwyZlEtmpfPuLXtBWkIXe4XVtEEsS\r\nG41slvLuS16SWgF3AoAJjfUVFBzuRuc8IGXEiBpYE9WzytqdkmCIamH4YCLW\r\nMv05ebDlwjmgD0utIIcG2eY017m4G2uSd+g=\r\n=wx1l\r\n-----END PGP SIGNATURE-----\r\n"},"type":"commonjs","config":{"plugin-build":{"docs":{"entry":"./src/index.ts"}}},"engines":{"node":"^14.20.0 || ^16.16.0 || >=18.5.0"},"exports":{".":{"types":"./dist/types/src/index.d.ts","default":"./dist/index.js"},"./package":"./package.json","./package.json":"./package.json"},"gitHead":"5569a9a5ebdeadfc87572fa84ed7ef2286c5f38e","scripts":{"lint":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.lint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.lint.json --no-error-on-unmatched-pattern packages src; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test":"npm run test:unit --","build":"npm run build:dist --","clean":"git ls-files --exclude-standard --ignored --others --directory | grep -vE '^((\\.(env|vscode|husky))|next-env\\.d\\.ts|node_modules)($|\\/)' | xargs -p rm -rf","format":"MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && (echo $MD_FILES | xargs remark --no-config --no-stdout --quiet --frail --use gfm --use lint-no-undefined-references || (echo -n '\u001b' && echo '[37;41;1m FAIL \u001b[0m cannot continue with undefined references present' && false)) && sort-package-json './package.json' './packages/*/package.json' && echo $MD_FILES | NODE_ENV=format xargs remark --output --frail && echo $MD_FILES | xargs doctoc --no-title --maxlevel 3 --update-only && prettier --write .","prepare":"node -e \"execa = require('execa'); if(process.env.CI === undefined && (process.env.NODE_ENV === undefined || process.env.NODE_ENV == 'development')) { execa.sync('npx', ['husky', 'install'], { stdout: 'inherit', stderr: 'inherit' }); } else { console.log('skipped installing husky git hooks'); }\"","lint:all":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.eslint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.eslint.json .; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test:all":"NODE_ENV=test jest --coverage","test:unit":"NODE_ENV=test jest 'unit-.*\\.test\\.ts.*'","build:dist":"NODE_ENV=production tsc --project tsconfig.types.json --incremental false && tsconfig-replace-paths --project tsconfig.types.json && NODE_ENV=production-cjs babel src --extensions .ts --out-dir dist","build:docs":"if [ -r ./next.config.js ]; then typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none lib src test types external-scripts --exclude '**/*.test.*' --exclude external-scripts/bin; else ENTRY=`node -e 'const entry = require(\"./package.json\").config?.[\"plugin-build\"]?.docs?.entry; if(!entry) throw new Error(\"\\\"config['\"'\"'plugin-build'\"'\"'].docs.entry\\\" field is not defined in package.json\"); console.log(entry)'` && echo 'Entry file:' \"$ENTRY\" && typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none $(echo $ENTRY); fi","list-tasks":"node -e 'console.log(Object.keys(require(\"./package.json\").scripts).join(\"\\n\"))' && (npm run -ws list-tasks --if-present 2>/dev/null || true)","build:changelog":"conventional-changelog --outfile CHANGELOG.md --config ./conventional.config.js --release-count 0 --skip-unstable && (if [ \"$CHANGELOG_SKIP_TITLE\" != 'true' ]; then { node -e 'console.log(require(\"./conventional.config.js\").changelogTitle)'; cat CHANGELOG.md; } > CHANGELOG.md.ignore && mv CHANGELOG.md.ignore CHANGELOG.md; fi) && NODE_ENV=format remark --output --frail CHANGELOG.md && prettier --write CHANGELOG.md","build:externals":"NODE_ENV=production-external babel external-scripts --extensions .ts --out-dir external-scripts/bin --out-file-extension .mjs","test:repeat:all":"npm run __test:repeat:all --silent","test:integration":"NODE_ENV=test jest 'integration-.*\\.test\\.ts.*'","test:repeat:unit":"npm run __test:repeat:unit --silent","__test:repeat:all":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter || exit; done) && echo \"All tests passed! Congrats!\"","__test:repeat:unit":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter --testPathIgnorePatterns 'integration-.*\\.test\\.ts.*' dist || exit; done) && echo \"All tests passed! Congrats!\"","test:integration:node":"NODE_ENV=test jest 'integration-node.*\\.test\\.ts.*'","test:integration:client":"NODE_ENV=test jest 'integration-client.*\\.test\\.ts.*'","test:integration:externals":"NODE_ENV=test jest 'integration-external.*\\.test\\.ts.*'"},"_npmUser":{"name":"xunnamius","email":"git@bernarddickens.dev"},"repository":{"url":"git+https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports.git","type":"git"},"_npmVersion":"8.19.3","description":"Add an extension to import specifiers that do not already have one, replace the extensions of those that do, or even rewrite specifiers entirely.","directories":{},"sideEffects":false,"_nodeVersion":"18.13.0","dependencies":{"debug":"^4.3.4","core-js":"^3.27.2","@babel/types":"^7.20.7","@babel/template":"^7.20.7"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"*":["dist/types/src/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"del":"^7.0.0","glob":"^8.1.0","jest":"^29.4.1","execa":"^5.1.1","husky":"^8.0.3","doctoc":"^2.2.1","dotenv":"^16.0.3","eslint":"^8.32.0","semver":"^7.3.8","typedoc":"^0.23.24","prettier":"^2.8.3","type-fest":"^3.5.3","@babel/cli":"^7.20.7","babel-jest":"^29.4.1","remark-cli":"^11.0.0","remark-gfm":"^3.0.1","simple-git":"^3.16.0","strip-ansi":"^6.0.1","typescript":"^4.9.4","@types/jest":"^29.4.0","@types/node":"^18.11.18","jest-circus":"^29.4.1","lint-staged":"^13.1.0","remark-lint":"^9.1.1","@types/debug":"^4.1.7","babel-loader":"^9.1.2","spellchecker":"^3.7.1","jest-extended":"^3.2.3","remark-ignore":"^1.0.5","glob-gitignore":"^1.0.14","@commitlint/cli":"^17.4.2","@ergodark/types":"^1.0.17","text-extensions":"^2.4.0","unique-filename":"^3.0.0","lodash.mergewith":"^4.6.2","semantic-release":"https://xunn.at/semantic-release-atam","@babel/preset-env":"^7.20.2","sort-package-json":"^2.2.0","eslint-plugin-jest":"^27.2.1","remark-frontmatter":"^4.0.1","source-map-support":"^0.5.21","babel-plugin-tester":"^11.0.4","remark-lint-no-tabs":"^3.1.1","@babel/eslint-parser":"^7.19.1","all-contributors-cli":"^6.24.0","eslint-plugin-import":"^2.27.5","@semantic-release/git":"^10.0.1","eslint-plugin-unicorn":"^45.0.2","remark-tight-comments":"^1.0.5","remark-validate-links":"^12.1.0","@semantic-release/exec":"^6.0.3","remark-reference-links":"^6.0.1","tsconfig-replace-paths":"^0.0.11","@types/lodash.mergewith":"^4.6.7","remark-sort-definitions":"^1.0.4","typedoc-plugin-markdown":"^3.14.0","@babel/preset-typescript":"^7.18.6","remark-lint-no-empty-url":"https://xunn.at/remark-lint-no-empty-url","@typescript-eslint/parser":"^5.49.0","confusing-browser-globals":"^1.0.11","remark-lint-final-newline":"^2.1.1","conventional-changelog-cli":"^2.2.2","remark-capitalize-headings":"^1.0.2","remark-lint-file-extension":"^2.1.1","remark-renumber-references":"^1.0.4","@semantic-release/changelog":"^6.0.2","remark-lint-definition-case":"^3.1.1","remark-lint-list-item-style":"^1.1.2","remark-lint-no-literal-urls":"^3.1.1","babel-plugin-module-resolver":"^5.0.0","eslint-import-resolver-alias":"^1.1.2","remark-lint-fenced-code-flag":"^3.1.1","remark-lint-no-shell-dollars":"^3.1.1","eslint-plugin-module-resolver":"^1.5.0","remark-lint-hard-break-spaces":"^3.1.1","remark-lint-heading-increment":"^3.1.1","remark-lint-no-empty-sections":"^4.0.0","remark-lint-no-inline-padding":"^4.1.1","remark-lint-heading-whitespace":"^1.0.0","@commitlint/config-conventional":"^17.4.2","babel-plugin-source-map-support":"^2.2.0","remark-lint-first-heading-level":"^3.1.1","remark-lint-heading-word-length":"^1.0.2","@types/confusing-browser-globals":"^1.0.0","@typescript-eslint/eslint-plugin":"^5.49.0","remark-lint-strikethrough-marker":"^2.1.1","remark-remove-unused-definitions":"^1.0.3","remark-remove-url-trailing-slash":"^1.0.1","@types/babel__helper-plugin-utils":"^7.10.0","eslint-import-resolver-typescript":"^3.5.3","remark-lint-fenced-code-flag-case":"^1.0.3","remark-lint-no-reference-like-url":"^3.1.1","remark-lint-no-unused-definitions":"^3.1.1","remark-lint-no-heading-punctuation":"^3.1.1","eslint-import-resolver-babel-module":"^5.3.2","remark-lint-no-undefined-references":"^4.2.0","@babel/plugin-proposal-function-bind":"^7.18.9","babel-plugin-transform-rename-import":"^2.3.0","remark-lint-no-duplicate-definitions":"^3.1.1","remark-lint-no-duplicate-defined-urls":"^2.1.1","remark-lint-no-heading-content-indent":"^4.1.1","remark-lint-no-heading-like-paragraph":"^3.1.1","remark-lint-ordered-list-marker-style":"^3.1.1","remark-lint-ordered-list-marker-value":"^3.1.1","@babel/plugin-syntax-import-assertions":"^7.20.0","remark-lint-no-shortcut-reference-link":"^3.1.1","remark-lint-no-shortcut-reference-image":"^3.1.1","remark-lint-unordered-list-marker-style":"^3.1.1","babel-plugin-explicit-exports-references":"^1.0.2","remark-lint-no-blockquote-without-marker":"^5.1.1","remark-lint-no-auto-link-without-protocol":"^3.1.1","remark-lint-no-multiple-toplevel-headings":"^3.1.1","@babel/plugin-proposal-export-default-from":"^7.18.10","@xunnamius/conventional-changelog-projector":"^1.2.1","babel-plugin-transform-default-named-imports":"^1.2.2","remark-lint-no-duplicate-headings-in-section":"^3.1.1","@babel/plugin-proposal-nullish-coalescing-operator":"^7.18.6"},"peerDependencies":{"@babel/core":">=7.11.6"},"_npmOperationalInternal":{"tmp":"tmp/babel-plugin-transform-rewrite-imports_1.0.0_1674793412417_0.775944727067307","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"babel-plugin-transform-rewrite-imports","version":"1.0.1","keywords":["babel","plugin","map","export","typescript","extension","commonjs","extensions","import","transform","esm","add","replace","append","mjs","cjs","require","es","module","dynamic","rewrite"],"author":{"name":"Xunnamius"},"license":"MIT","_id":"babel-plugin-transform-rewrite-imports@1.0.1","maintainers":[{"name":"xunnamius","email":"git@bernarddickens.dev"}],"homepage":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports","bugs":{"url":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/issues"},"dist":{"shasum":"a700ec52f203eda824471f972f85a541897ad30f","tarball":"https://registry.npmjs.org/babel-plugin-transform-rewrite-imports/-/babel-plugin-transform-rewrite-imports-1.0.1.tgz","fileCount":5,"integrity":"sha512-OMvEqULyksagBuetpEozR/0Hf8pf/YfA5otcmEZpiQPNafcMFf9RsBJxiNhg+uv+D5gfKLZCdMl+G72c17wVdw==","signatures":[{"sig":"MEUCIGB20+VPtlyvjmUHowar6GydCZybIKCm3mrhTruezZu7AiEAqlfXq75VPqlwc0g3h5wFny+hOjPm4BgVSHS0iQJ7qIo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42662,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj1PPTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmovZg/5AHKUNf1IcW/LyAV7V/CIDuAekBn1bs+zVQ44qTAp802+06Gx\r\nkRXNMdYRme59Fo/o8RQiMKGx07Q6uyJyvAUqyiave2pig+joAu41J1G9lIXF\r\n8TXcqHAkmUC03eaGYvEf5I/Cnc8uz2C0DUy+C/g2EffKDmvsY0rwi2IzeWBo\r\nV5xYUqeDFRoTum/oy31N0Gw/cNRCEYb0CQtQfJQO0QDz5rE5jiwzbQYUVJ/z\r\nAm1y62PkxRSzngS+829pnVftuQ4P0qEuhkwThLyY4og9n4835uilXIQWrZuX\r\nmSK1OiXdHqYAxwy6EI7cal4fa+WEAKwEfEmizOM+MlNGXut+VcmeS7AYUoV9\r\nsEojxZPL3rORfYOSrGZ13d9tewPZSeXVkF7B37d3InjlU/SChUFGSiHeoa87\r\npRIjKkYuLd84j2LzWdztjXbaezb4tYnV+FewfXBPvic4+2/BXi1TpXV8mHNx\r\nhPO/s2wHZ5yJcp6/RDyqF0593eYem0nudW9uAgWuwv5JDYI2wNbCFIFG8aae\r\n5xEeWo7zI21/sn0bT1dDjvUMXmFX82oumwsZOC96VhJhq5esM9BZ7AwlHguu\r\nujhVQR8S4PPIEACcOmVv9QG+fDu1yuMCTDPyXWL89hgvQa9K9rVlAz7uQxBB\r\nnvqhnLyh3Nq6DTIW+cZRAju1EkhPh+7J1DI=\r\n=3JQr\r\n-----END PGP SIGNATURE-----\r\n"},"type":"commonjs","config":{"plugin-build":{"docs":{"entry":"./src/index.ts"}}},"engines":{"node":"^14.20.0 || ^16.16.0 || >=18.5.0"},"exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/src/index.js"},"./package":"./package.json","./package.json":"./package.json"},"gitHead":"2d2a9123005a65ac097671cdc4cd3ee7f9069047","scripts":{"lint":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.lint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.lint.json --no-error-on-unmatched-pattern packages src; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test":"npm run test:unit --","build":"npm run build:dist --","clean":"git ls-files --exclude-standard --ignored --others --directory | grep -vE '^((\\.(env|vscode|husky))|next-env\\.d\\.ts|node_modules)($|\\/)' | xargs -p rm -rf","format":"MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && (echo $MD_FILES | xargs remark --no-config --no-stdout --quiet --frail --use gfm --use lint-no-undefined-references || (echo -n '\u001b' && echo '[37;41;1m FAIL \u001b[0m cannot continue with undefined references present' && false)) && sort-package-json './package.json' './packages/*/package.json' && echo $MD_FILES | NODE_ENV=format xargs remark --output --frail && echo $MD_FILES | xargs doctoc --no-title --maxlevel 3 --update-only && prettier --write .","prepare":"node -e \"execa = require('execa'); if(process.env.CI === undefined && (process.env.NODE_ENV === undefined || process.env.NODE_ENV == 'development')) { execa.sync('npx', ['husky', 'install'], { stdout: 'inherit', stderr: 'inherit' }); } else { console.log('skipped installing husky git hooks'); }\"","lint:all":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.eslint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.eslint.json .; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test:all":"NODE_ENV=test jest --coverage","test:unit":"NODE_ENV=test jest 'unit-.*\\.test\\.ts.*'","build:dist":"NODE_ENV=production tsc --project tsconfig.types.json --incremental false && tsconfig-replace-paths --project tsconfig.types.json && NODE_ENV=production-cjs babel src --extensions .ts --out-dir dist/src","build:docs":"if [ -r ./next.config.js ]; then typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none lib src test types external-scripts --exclude '**/*.test.*' --exclude external-scripts/bin; else ENTRY=`node -e 'const entry = require(\"./package.json\").config?.[\"plugin-build\"]?.docs?.entry; if(!entry) throw new Error(\"\\\"config['\"'\"'plugin-build'\"'\"'].docs.entry\\\" field is not defined in package.json\"); console.log(entry)'` && echo 'Entry file:' \"$ENTRY\" && typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none $(echo $ENTRY); fi","list-tasks":"node -e 'console.log(Object.keys(require(\"./package.json\").scripts).join(\"\\n\"))' && (npm run -ws list-tasks --if-present 2>/dev/null || true)","build:changelog":"conventional-changelog --outfile CHANGELOG.md --config ./conventional.config.js --release-count 0 --skip-unstable && (if [ \"$CHANGELOG_SKIP_TITLE\" != 'true' ]; then { node -e 'console.log(require(\"./conventional.config.js\").changelogTitle)'; cat CHANGELOG.md; } > CHANGELOG.md.ignore && mv CHANGELOG.md.ignore CHANGELOG.md; fi) && NODE_ENV=format remark --output --frail CHANGELOG.md && prettier --write CHANGELOG.md","build:externals":"NODE_ENV=production-external babel external-scripts --extensions .ts --out-dir external-scripts/bin --out-file-extension .mjs","test:repeat:all":"npm run __test:repeat:all --silent","test:integration":"NODE_ENV=test jest 'integration-.*\\.test\\.ts.*'","test:repeat:unit":"npm run __test:repeat:unit --silent","__test:repeat:all":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter || exit; done) && echo \"All tests passed! Congrats!\"","__test:repeat:unit":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter --testPathIgnorePatterns 'integration-.*\\.test\\.ts.*' dist || exit; done) && echo \"All tests passed! Congrats!\"","test:integration:node":"NODE_ENV=test jest 'integration-node.*\\.test\\.ts.*'","test:integration:client":"NODE_ENV=test jest 'integration-client.*\\.test\\.ts.*'","test:integration:externals":"NODE_ENV=test jest 'integration-external.*\\.test\\.ts.*'"},"_npmUser":{"name":"xunnamius","email":"git@bernarddickens.dev"},"repository":{"url":"git+https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports.git","type":"git"},"_npmVersion":"8.19.3","description":"Add an extension to import specifiers that do not already have one, replace the extensions of those that do, or even rewrite specifiers entirely.","directories":{},"sideEffects":false,"_nodeVersion":"18.13.0","dependencies":{"debug":"^4.3.4","core-js":"^3.27.2","@babel/types":"^7.20.7","@babel/template":"^7.20.7"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"*":["dist/src/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"del":"^7.0.0","glob":"^8.1.0","jest":"^29.4.1","execa":"^5.1.1","husky":"^8.0.3","doctoc":"^2.2.1","dotenv":"^16.0.3","eslint":"^8.32.0","semver":"^7.3.8","typedoc":"^0.23.24","prettier":"^2.8.3","type-fest":"^3.5.3","@babel/cli":"^7.20.7","babel-jest":"^29.4.1","remark-cli":"^11.0.0","remark-gfm":"^3.0.1","simple-git":"^3.16.0","strip-ansi":"^6.0.1","typescript":"^4.9.4","@types/jest":"^29.4.0","@types/node":"^18.11.18","jest-circus":"^29.4.1","lint-staged":"^13.1.0","remark-lint":"^9.1.1","@types/debug":"^4.1.7","babel-loader":"^9.1.2","spellchecker":"^3.7.1","jest-extended":"^3.2.3","remark-ignore":"^1.0.5","glob-gitignore":"^1.0.14","@commitlint/cli":"^17.4.2","@ergodark/types":"^1.0.17","text-extensions":"^2.4.0","unique-filename":"^3.0.0","lodash.mergewith":"^4.6.2","semantic-release":"https://xunn.at/semantic-release-atam","@babel/preset-env":"^7.20.2","sort-package-json":"^2.2.0","eslint-plugin-jest":"^27.2.1","remark-frontmatter":"^4.0.1","source-map-support":"^0.5.21","babel-plugin-tester":"^11.0.4","remark-lint-no-tabs":"^3.1.1","@babel/eslint-parser":"^7.19.1","all-contributors-cli":"^6.24.0","eslint-plugin-import":"^2.27.5","@semantic-release/git":"^10.0.1","eslint-plugin-unicorn":"^45.0.2","remark-tight-comments":"^1.0.5","remark-validate-links":"^12.1.0","@semantic-release/exec":"^6.0.3","remark-reference-links":"^6.0.1","tsconfig-replace-paths":"^0.0.11","@types/lodash.mergewith":"^4.6.7","remark-sort-definitions":"^1.0.4","typedoc-plugin-markdown":"^3.14.0","@babel/preset-typescript":"^7.18.6","remark-lint-no-empty-url":"https://xunn.at/remark-lint-no-empty-url","@typescript-eslint/parser":"^5.49.0","confusing-browser-globals":"^1.0.11","remark-lint-final-newline":"^2.1.1","conventional-changelog-cli":"^2.2.2","remark-capitalize-headings":"^1.0.2","remark-lint-file-extension":"^2.1.1","remark-renumber-references":"^1.0.4","@semantic-release/changelog":"^6.0.2","remark-lint-definition-case":"^3.1.1","remark-lint-list-item-style":"^1.1.2","remark-lint-no-literal-urls":"^3.1.1","babel-plugin-module-resolver":"^5.0.0","eslint-import-resolver-alias":"^1.1.2","remark-lint-fenced-code-flag":"^3.1.1","remark-lint-no-shell-dollars":"^3.1.1","eslint-plugin-module-resolver":"^1.5.0","remark-lint-hard-break-spaces":"^3.1.1","remark-lint-heading-increment":"^3.1.1","remark-lint-no-empty-sections":"^4.0.0","remark-lint-no-inline-padding":"^4.1.1","remark-lint-heading-whitespace":"^1.0.0","@commitlint/config-conventional":"^17.4.2","babel-plugin-source-map-support":"^2.2.0","remark-lint-first-heading-level":"^3.1.1","remark-lint-heading-word-length":"^1.0.2","@types/confusing-browser-globals":"^1.0.0","@typescript-eslint/eslint-plugin":"^5.49.0","remark-lint-strikethrough-marker":"^2.1.1","remark-remove-unused-definitions":"^1.0.3","remark-remove-url-trailing-slash":"^1.0.1","@types/babel__helper-plugin-utils":"^7.10.0","eslint-import-resolver-typescript":"^3.5.3","remark-lint-fenced-code-flag-case":"^1.0.3","remark-lint-no-reference-like-url":"^3.1.1","remark-lint-no-unused-definitions":"^3.1.1","remark-lint-no-heading-punctuation":"^3.1.1","eslint-import-resolver-babel-module":"^5.3.2","remark-lint-no-undefined-references":"^4.2.0","@babel/plugin-proposal-function-bind":"^7.18.9","babel-plugin-transform-rename-import":"^2.3.0","remark-lint-no-duplicate-definitions":"^3.1.1","remark-lint-no-duplicate-defined-urls":"^2.1.1","remark-lint-no-heading-content-indent":"^4.1.1","remark-lint-no-heading-like-paragraph":"^3.1.1","remark-lint-ordered-list-marker-style":"^3.1.1","remark-lint-ordered-list-marker-value":"^3.1.1","@babel/plugin-syntax-import-assertions":"^7.20.0","babel-plugin-transform-rewrite-imports":"^1.0.0","remark-lint-no-shortcut-reference-link":"^3.1.1","remark-lint-no-shortcut-reference-image":"^3.1.1","remark-lint-unordered-list-marker-style":"^3.1.1","babel-plugin-explicit-exports-references":"^1.0.2","remark-lint-no-blockquote-without-marker":"^5.1.1","remark-lint-no-auto-link-without-protocol":"^3.1.1","remark-lint-no-multiple-toplevel-headings":"^3.1.1","@babel/plugin-proposal-export-default-from":"^7.18.10","@xunnamius/conventional-changelog-projector":"^1.2.1","babel-plugin-transform-default-named-imports":"^1.2.2","remark-lint-no-duplicate-headings-in-section":"^3.1.1","@babel/plugin-proposal-nullish-coalescing-operator":"^7.18.6"},"peerDependencies":{"@babel/core":">=7.11.6"},"_npmOperationalInternal":{"tmp":"tmp/babel-plugin-transform-rewrite-imports_1.0.1_1674900435811_0.8166679583409338","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"babel-plugin-transform-rewrite-imports","version":"1.1.0","keywords":["babel","plugin","map","export","typescript","extension","commonjs","extensions","import","transform","esm","add","replace","append","mjs","cjs","require","es","module","dynamic","rewrite"],"author":{"name":"Xunnamius"},"license":"MIT","_id":"babel-plugin-transform-rewrite-imports@1.1.0","maintainers":[{"name":"xunnamius","email":"git@bernarddickens.dev"}],"homepage":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports","bugs":{"url":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/issues"},"dist":{"shasum":"cbaf17c46aaba5ea27c875a9aebc62029133d850","tarball":"https://registry.npmjs.org/babel-plugin-transform-rewrite-imports/-/babel-plugin-transform-rewrite-imports-1.1.0.tgz","fileCount":5,"integrity":"sha512-Mo1G1mApyDzwPArs0taT8Q0e4mIUYv23UFK6djOsITeu0LEVqPykk1F7YH8egFCOk5CwrwQAYn+iZGMMP4MK4w==","signatures":[{"sig":"MEYCIQDLJA4BeSH4Dq2icMkylnBsilRs6x8FgA9x+05WCnURTAIhANS3SwOwuovE4sxw90EvHFzG1GKzEXrZe+v6FSqhbrm8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43225,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj1hNhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmraHQ//aatj0ZuRh5pnBcvltiESfWy+BlfoicbQS2hT613gafC5rB2l\r\n/DuUPs9mFKG6TdVvrkfegrSZyyJcQZ4ZeomkfD4FXl3xVDW40VtoEZYOW1c0\r\n0d2JWspOMH3vETQQ3ZtJDvjyeT5D6q59mHWnpRHDauNiQTy4R883bv6ahVXT\r\nnZu+5jhazj2qh+r+cNwz5KkV/wa8lLCY45T63go7/f8mUj5EcE8VU6RpDmcy\r\n+lNzmS5Le3Wsje+kfm16diJUUlCE2qdJifEgEN8kcwZYblmqxTaxIAplRwW+\r\nzl6X15zQkLjhDCmOuGq+nUAwozNQ/uNrP2hJgDu7BS07+S0ZjZAISQwO/6/7\r\npKRBdMcXrE+3qk3etT5Nb6Z1KW2/27ExG/BYxrF5OKbZaTRib39yY1/21Dea\r\nluQ8a1UMP+1L6bfWzDO70NEodt+1SRTe9U/yMleoAB3bYZKS0U0Ms3ZLyni3\r\nRQxaBZ+quvBPiYVeT36EYe/lwpEpQJmdQo64VjQVQKn4otxDjaeMjIADeRDC\r\nWAB2fPgWYhOWYJmwWFPT/IuM/9PYziXZhxBZ4YB5SI4F0FTE9BuaFLMI+FFF\r\netB6CXc2Na9jdNjon+sdf/fupSdOV6nvGI4LcJ3yCNgM/q8t1GeDtrzIPOso\r\nQGksVCU+LB5K6ACmrdg2WJyp+FWvzZREgsk=\r\n=LqpG\r\n-----END PGP SIGNATURE-----\r\n"},"type":"commonjs","config":{"plugin-build":{"docs":{"entry":"./src/index.ts"}}},"engines":{"node":"^14.20.0 || ^16.16.0 || >=18.5.0"},"exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/src/index.js"},"./package":"./package.json","./package.json":"./package.json"},"gitHead":"6fe2ea84f801e3864dd03532a04c774b7aaf7a92","scripts":{"lint":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.lint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.lint.json --no-error-on-unmatched-pattern packages src; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test":"npm run test:unit --","build":"npm run build:dist --","clean":"git ls-files --exclude-standard --ignored --others --directory | grep -vE '^((\\.(env|vscode|husky))|next-env\\.d\\.ts|node_modules)($|\\/)' | xargs -p rm -rf","format":"MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && (echo $MD_FILES | xargs remark --no-config --no-stdout --quiet --frail --use gfm --use lint-no-undefined-references || (echo -n '\u001b' && echo '[37;41;1m FAIL \u001b[0m cannot continue with undefined references present' && false)) && sort-package-json './package.json' './packages/*/package.json' && echo $MD_FILES | NODE_ENV=format xargs remark --output --frail && echo $MD_FILES | xargs doctoc --no-title --maxlevel 3 --update-only && prettier --write .","prepare":"node -e \"execa = require('execa'); if(process.env.CI === undefined && (process.env.NODE_ENV === undefined || process.env.NODE_ENV == 'development')) { execa.sync('npx', ['husky', 'install'], { stdout: 'inherit', stderr: 'inherit' }); } else { console.log('skipped installing husky git hooks'); }\"","lint:all":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.eslint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.eslint.json .; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test:all":"NODE_ENV=test jest --coverage","test:unit":"NODE_ENV=test jest 'unit-.*\\.test\\.ts.*'","build:dist":"NODE_ENV=production tsc --project tsconfig.types.json --incremental false && tsconfig-replace-paths --project tsconfig.types.json && NODE_ENV=production-cjs babel src --extensions .ts --out-dir dist/src","build:docs":"if [ -r ./next.config.js ]; then typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none lib src test types external-scripts --exclude '**/*.test.*' --exclude external-scripts/bin; else ENTRY=`node -e 'const entry = require(\"./package.json\").config?.[\"plugin-build\"]?.docs?.entry; if(!entry) throw new Error(\"\\\"config['\"'\"'plugin-build'\"'\"'].docs.entry\\\" field is not defined in package.json\"); console.log(entry)'` && echo 'Entry file:' \"$ENTRY\" && typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none $(echo $ENTRY); fi","list-tasks":"node -e 'console.log(Object.keys(require(\"./package.json\").scripts).join(\"\\n\"))' && (npm run -ws list-tasks --if-present 2>/dev/null || true)","build:changelog":"conventional-changelog --outfile CHANGELOG.md --config ./conventional.config.js --release-count 0 --skip-unstable && (if [ \"$CHANGELOG_SKIP_TITLE\" != 'true' ]; then { node -e 'console.log(require(\"./conventional.config.js\").changelogTitle)'; cat CHANGELOG.md; } > CHANGELOG.md.ignore && mv CHANGELOG.md.ignore CHANGELOG.md; fi) && NODE_ENV=format remark --output --frail CHANGELOG.md && prettier --write CHANGELOG.md","build:externals":"NODE_ENV=production-external babel external-scripts --extensions .ts --out-dir external-scripts/bin --out-file-extension .mjs","test:repeat:all":"npm run __test:repeat:all --silent","test:integration":"NODE_ENV=test jest 'integration-.*\\.test\\.ts.*'","test:repeat:unit":"npm run __test:repeat:unit --silent","__test:repeat:all":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter || exit; done) && echo \"All tests passed! Congrats!\"","__test:repeat:unit":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter --testPathIgnorePatterns 'integration-.*\\.test\\.ts.*' dist || exit; done) && echo \"All tests passed! Congrats!\"","test:integration:node":"NODE_ENV=test jest 'integration-node.*\\.test\\.ts.*'","test:integration:client":"NODE_ENV=test jest 'integration-client.*\\.test\\.ts.*'","test:integration:externals":"NODE_ENV=test jest 'integration-external.*\\.test\\.ts.*'"},"_npmUser":{"name":"xunnamius","email":"git@bernarddickens.dev"},"repository":{"url":"git+https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports.git","type":"git"},"_npmVersion":"8.19.3","description":"Add an extension to import specifiers that do not already have one, replace the extensions of those that do, or even rewrite specifiers entirely.","directories":{},"sideEffects":false,"_nodeVersion":"18.13.0","dependencies":{"debug":"^4.3.4","core-js":"^3.27.2","@babel/types":"^7.20.7","@babel/template":"^7.20.7"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"*":["dist/src/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"del":"^7.0.0","glob":"^8.1.0","jest":"^29.4.1","execa":"^5.1.1","husky":"^8.0.3","doctoc":"^2.2.1","dotenv":"^16.0.3","eslint":"^8.33.0","semver":"^7.3.8","typedoc":"^0.23.24","prettier":"^2.8.3","type-fest":"^3.5.3","@babel/cli":"^7.20.7","babel-jest":"^29.4.1","remark-cli":"^11.0.0","remark-gfm":"^3.0.1","simple-git":"^3.16.0","strip-ansi":"^6.0.1","typescript":"^4.9.4","@types/jest":"^29.4.0","@types/node":"^18.11.18","jest-circus":"^29.4.1","lint-staged":"^13.1.0","remark-lint":"^9.1.1","@types/debug":"^4.1.7","babel-loader":"^9.1.2","spellchecker":"^3.7.1","jest-extended":"^3.2.3","remark-ignore":"^1.0.6","glob-gitignore":"^1.0.14","@commitlint/cli":"^17.4.2","@ergodark/types":"^1.0.17","text-extensions":"^2.4.0","unique-filename":"^3.0.0","lodash.mergewith":"^4.6.2","semantic-release":"https://xunn.at/semantic-release-atam","@babel/preset-env":"^7.20.2","sort-package-json":"^2.2.0","eslint-plugin-jest":"^27.2.1","remark-frontmatter":"^4.0.1","source-map-support":"^0.5.21","babel-plugin-tester":"^11.0.4","remark-lint-no-tabs":"^3.1.1","@babel/eslint-parser":"^7.19.1","all-contributors-cli":"^6.24.0","eslint-plugin-import":"^2.27.5","@semantic-release/git":"^10.0.1","eslint-plugin-unicorn":"^45.0.2","remark-tight-comments":"^1.0.6","remark-validate-links":"^12.1.0","@semantic-release/exec":"^6.0.3","remark-reference-links":"^6.0.1","tsconfig-replace-paths":"^0.0.11","@types/lodash.mergewith":"^4.6.7","remark-sort-definitions":"^1.0.5","typedoc-plugin-markdown":"^3.14.0","@babel/preset-typescript":"^7.18.6","remark-lint-no-empty-url":"https://xunn.at/remark-lint-no-empty-url","@typescript-eslint/parser":"^5.49.0","confusing-browser-globals":"^1.0.11","remark-lint-final-newline":"^2.1.1","conventional-changelog-cli":"^2.2.2","remark-capitalize-headings":"^1.0.3","remark-lint-file-extension":"^2.1.1","remark-renumber-references":"^1.0.5","@semantic-release/changelog":"^6.0.2","remark-lint-definition-case":"^3.1.1","remark-lint-list-item-style":"^1.1.3","remark-lint-no-literal-urls":"^3.1.1","babel-plugin-module-resolver":"^5.0.0","eslint-import-resolver-alias":"^1.1.2","remark-lint-fenced-code-flag":"^3.1.1","remark-lint-no-shell-dollars":"^3.1.1","eslint-plugin-module-resolver":"^1.5.0","remark-lint-hard-break-spaces":"^3.1.1","remark-lint-heading-increment":"^3.1.1","remark-lint-no-empty-sections":"^4.0.0","remark-lint-no-inline-padding":"^4.1.1","remark-lint-heading-whitespace":"^1.0.0","@commitlint/config-conventional":"^17.4.2","babel-plugin-source-map-support":"^2.2.0","remark-lint-first-heading-level":"^3.1.1","remark-lint-heading-word-length":"^1.0.3","@types/confusing-browser-globals":"^1.0.0","@typescript-eslint/eslint-plugin":"^5.49.0","remark-lint-strikethrough-marker":"^2.1.1","remark-remove-unused-definitions":"^1.0.4","remark-remove-url-trailing-slash":"^1.0.2","@types/babel__helper-plugin-utils":"^7.10.0","eslint-import-resolver-typescript":"^3.5.3","remark-lint-fenced-code-flag-case":"^1.0.4","remark-lint-no-reference-like-url":"^3.1.1","remark-lint-no-unused-definitions":"^3.1.1","remark-lint-no-heading-punctuation":"^3.1.1","eslint-import-resolver-babel-module":"^5.3.2","remark-lint-no-undefined-references":"^4.2.0","@babel/plugin-proposal-function-bind":"^7.18.9","babel-plugin-transform-rename-import":"^2.3.0","remark-lint-no-duplicate-definitions":"^3.1.1","remark-lint-no-duplicate-defined-urls":"^2.1.1","remark-lint-no-heading-content-indent":"^4.1.1","remark-lint-no-heading-like-paragraph":"^3.1.1","remark-lint-ordered-list-marker-style":"^3.1.1","remark-lint-ordered-list-marker-value":"^3.1.1","@babel/plugin-syntax-import-assertions":"^7.20.0","babel-plugin-transform-rewrite-imports":"^1.0.1","remark-lint-no-shortcut-reference-link":"^3.1.1","remark-lint-no-shortcut-reference-image":"^3.1.1","remark-lint-unordered-list-marker-style":"^3.1.1","babel-plugin-explicit-exports-references":"^1.0.2","remark-lint-no-blockquote-without-marker":"^5.1.1","remark-lint-no-auto-link-without-protocol":"^3.1.1","remark-lint-no-multiple-toplevel-headings":"^3.1.1","@babel/plugin-proposal-export-default-from":"^7.18.10","@xunnamius/conventional-changelog-projector":"^1.2.1","babel-plugin-transform-default-named-imports":"^1.2.2","remark-lint-no-duplicate-headings-in-section":"^3.1.1","@babel/plugin-proposal-nullish-coalescing-operator":"^7.18.6"},"peerDependencies":{"@babel/core":">=7.11.6"},"_npmOperationalInternal":{"tmp":"tmp/babel-plugin-transform-rewrite-imports_1.1.0_1674974048758_0.695549359522103","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"babel-plugin-transform-rewrite-imports","version":"1.2.0","keywords":["babel","plugin","map","export","typescript","extension","commonjs","extensions","import","transform","esm","add","replace","append","mjs","cjs","require","es","module","dynamic","rewrite"],"author":{"name":"Xunnamius"},"license":"MIT","_id":"babel-plugin-transform-rewrite-imports@1.2.0","maintainers":[{"name":"xunnamius","email":"git@bernarddickens.dev"}],"homepage":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports","bugs":{"url":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/issues"},"dist":{"shasum":"4034735d6a80366a0473f6351e5e1b307bfec767","tarball":"https://registry.npmjs.org/babel-plugin-transform-rewrite-imports/-/babel-plugin-transform-rewrite-imports-1.2.0.tgz","fileCount":5,"integrity":"sha512-K7v+3kFDRXrrx2UDjc8AbBYykrK6DRJfOb6YtyF9WaWD+3R6d+U1gXCcMWbqfNepLYFCDRxo5ggADc9VYvsmJw==","signatures":[{"sig":"MEUCIQC9bjZGDen3UJYAg1RfUnhfBdqtjIYBSegsBGcsI+y/uAIgBgrynUv0igWdnUeVeHRQxqHqHLdtzQFl6o5WcneNJbw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52150,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj26dWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrGbg/+JhA73tVl9vnYheK98DKRyxpoWBZicqDOUtloQZyHCl5mNJNV\r\naStTcRpqG0Cc4baAMoedPksx4bsDvraWnE/NyV57oGbkkIGzz0Dy+Wv0m2m2\r\n8t8eo1zcqcvI+8Pq0apEYAtrtaBY975vXkyLMAucolfmRAy7Ma8kcJAwB7lE\r\nHrcjkYMy8ThnRrGRKF3aBqpTH0b6AMuZFeaA39B7w9iti5hDce4B3jPqWFGW\r\nFMDYUmYy6Worh2zMkA2iuNPYK2ftZebpwwdvB69qZS0bg1ZL+i140r/HwkGZ\r\naGzMJeOT0EF0FvtMiSZ1UuEo2LO++d+Uyx9v5jecfezkJ4Cp1ZKM2Aws9mLU\r\nPtLq48bjIoDIRsK9bD8PCE/yKEXYIU2TQOnudW0p4u2iH89iccPIvlCQ0RII\r\nr1f/J6yp1RzlmGW3JPQXYiyGtL+l/mEqmN4Ypab9S9ju1oSHiHWUjP7xm8kg\r\nDznnu4oN2k9+tD3u5FmlSWiUaAeE0pFvIgjwUq4/HYEv35Itnd/JC0KXaa9m\r\ncr2gjWw1TuJ9u7gM2YdvEQPVzvbPkuGvdAyjpvNKgHR/UwPF1jJ7cys/xjsU\r\ncsGvBZUbS3JQqjzGd2AdC4yTSIJHXYDJfYELbNDiDDVjTRviMpxZHHdgTKDY\r\nElr+m3McMy6AQpK/arQRHEBchZpZFdz6ICg=\r\n=ebwo\r\n-----END PGP SIGNATURE-----\r\n"},"type":"commonjs","config":{"plugin-build":{"docs":{"entry":"./src/index.ts"}}},"engines":{"node":"^14.20.0 || ^16.16.0 || >=18.5.0"},"exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/src/index.js"},"./package":"./package.json","./package.json":"./package.json"},"gitHead":"3213cd37d9d732e2a294f06152fdf0c6fc6e8516","scripts":{"lint":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.lint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.lint.json --no-error-on-unmatched-pattern packages src; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test":"npm run test:unit --","build":"npm run build:dist --","clean":"git ls-files --exclude-standard --ignored --others --directory | grep -vE '^((\\.(env|vscode|husky))|next-env\\.d\\.ts|node_modules)($|\\/)' | xargs -p rm -rf","format":"MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && (echo $MD_FILES | xargs remark --no-config --no-stdout --quiet --frail --use gfm --use lint-no-undefined-references || (echo -n '\u001b' && echo '[37;41;1m FAIL \u001b[0m cannot continue with undefined references present' && false)) && sort-package-json './package.json' './packages/*/package.json' && echo $MD_FILES | NODE_ENV=format xargs remark --output --frail && echo $MD_FILES | xargs doctoc --no-title --maxlevel 3 --update-only && prettier --write .","prepare":"node -e \"execa = require('execa'); if(process.env.CI === undefined && (process.env.NODE_ENV === undefined || process.env.NODE_ENV == 'development')) { execa.sync('npx', ['husky', 'install'], { stdout: 'inherit', stderr: 'inherit' }); } else { console.log('skipped installing husky git hooks'); }\"","lint:all":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.eslint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.eslint.json .; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test:all":"NODE_ENV=test jest --coverage","test:unit":"NODE_ENV=test jest 'unit-.*\\.test\\.ts.*'","build:dist":"NODE_ENV=production tsc --project tsconfig.types.json --incremental false && tsconfig-replace-paths --project tsconfig.types.json && NODE_ENV=production-cjs babel src --extensions .ts --out-dir dist/src","build:docs":"if [ -r ./next.config.js ]; then typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none lib src test types external-scripts --exclude '**/*.test.*' --exclude external-scripts/bin; else ENTRY=`node -e 'const entry = require(\"./package.json\").config?.[\"plugin-build\"]?.docs?.entry; if(!entry) throw new Error(\"\\\"config['\"'\"'plugin-build'\"'\"'].docs.entry\\\" field is not defined in package.json\"); console.log(entry)'` && echo 'Entry file:' \"$ENTRY\" && typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none $(echo $ENTRY); fi","list-tasks":"node -e 'console.log(Object.keys(require(\"./package.json\").scripts).join(\"\\n\"))' && (npm run -ws list-tasks --if-present 2>/dev/null || true)","build:changelog":"conventional-changelog --outfile CHANGELOG.md --config ./conventional.config.js --release-count 0 --skip-unstable && (if [ \"$CHANGELOG_SKIP_TITLE\" != 'true' ]; then { node -e 'console.log(require(\"./conventional.config.js\").changelogTitle)'; cat CHANGELOG.md; } > CHANGELOG.md.ignore && mv CHANGELOG.md.ignore CHANGELOG.md; fi) && NODE_ENV=format remark --output --frail CHANGELOG.md && prettier --write CHANGELOG.md","build:externals":"NODE_ENV=production-external babel external-scripts --extensions .ts --out-dir external-scripts/bin --out-file-extension .mjs","test:repeat:all":"npm run __test:repeat:all --silent","test:integration":"NODE_ENV=test jest 'integration-.*\\.test\\.ts.*'","test:repeat:unit":"npm run __test:repeat:unit --silent","__test:repeat:all":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter || exit; done) && echo \"All tests passed! Congrats!\"","__test:repeat:unit":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter --testPathIgnorePatterns 'integration-.*\\.test\\.ts.*' dist || exit; done) && echo \"All tests passed! Congrats!\"","test:integration:node":"NODE_ENV=test jest 'integration-node.*\\.test\\.ts.*'","test:integration:client":"NODE_ENV=test jest 'integration-client.*\\.test\\.ts.*'","test:integration:externals":"NODE_ENV=test jest 'integration-external.*\\.test\\.ts.*'"},"_npmUser":{"name":"xunnamius","email":"git@bernarddickens.dev"},"repository":{"url":"git+https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports.git","type":"git"},"_npmVersion":"8.19.3","description":"Add an extension to import specifiers that do not already have one, replace the extensions of those that do, or even rewrite specifiers entirely.","directories":{},"sideEffects":false,"_nodeVersion":"18.13.0","dependencies":{"debug":"^4.3.4","core-js":"^3.27.2","@babel/types":"^7.20.7","@babel/template":"^7.20.7"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"*":["dist/src/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"del":"^7.0.0","glob":"^8.1.0","jest":"^29.4.1","execa":"^5.1.1","husky":"^8.0.3","doctoc":"^2.2.1","dotenv":"^16.0.3","eslint":"^8.33.0","semver":"^7.3.8","typedoc":"^0.23.24","prettier":"^2.8.3","type-fest":"^3.5.4","@babel/cli":"^7.20.7","babel-jest":"^29.4.1","remark-cli":"^11.0.0","remark-gfm":"^3.0.1","simple-git":"^3.16.0","strip-ansi":"^6.0.1","typescript":"^4.9.5","@types/jest":"^29.4.0","@types/node":"^18.11.18","jest-circus":"^29.4.1","lint-staged":"^13.1.0","remark-lint":"^9.1.1","@types/debug":"^4.1.7","babel-loader":"^9.1.2","spellchecker":"^3.7.1","jest-extended":"^3.2.3","remark-ignore":"^1.0.6","glob-gitignore":"^1.0.14","@commitlint/cli":"^17.4.2","@ergodark/types":"^1.0.17","text-extensions":"^2.4.0","unique-filename":"^3.0.0","lodash.mergewith":"^4.6.2","semantic-release":"https://xunn.at/semantic-release-atam","@babel/preset-env":"^7.20.2","sort-package-json":"https://xunn.at/sort-package-json","eslint-plugin-jest":"^27.2.1","remark-frontmatter":"^4.0.1","source-map-support":"^0.5.21","babel-plugin-tester":"^11.0.4","remark-lint-no-tabs":"^3.1.1","@babel/eslint-parser":"^7.19.1","all-contributors-cli":"^6.24.0","eslint-plugin-import":"^2.27.5","@semantic-release/git":"^10.0.1","eslint-plugin-unicorn":"^45.0.2","remark-tight-comments":"^1.0.6","remark-validate-links":"^12.1.0","@semantic-release/exec":"^6.0.3","remark-reference-links":"^6.0.1","tsconfig-replace-paths":"^0.0.11","@types/lodash.mergewith":"^4.6.7","remark-sort-definitions":"^1.0.5","typedoc-plugin-markdown":"^3.14.0","@babel/preset-typescript":"^7.18.6","remark-lint-no-empty-url":"https://xunn.at/remark-lint-no-empty-url","@typescript-eslint/parser":"^5.50.0","confusing-browser-globals":"^1.0.11","remark-lint-final-newline":"^2.1.1","conventional-changelog-cli":"^2.2.2","remark-capitalize-headings":"^1.0.3","remark-lint-file-extension":"^2.1.1","remark-renumber-references":"^1.0.5","@semantic-release/changelog":"^6.0.2","remark-lint-definition-case":"^3.1.1","remark-lint-list-item-style":"^1.1.3","remark-lint-no-literal-urls":"^3.1.1","babel-plugin-module-resolver":"^5.0.0","eslint-import-resolver-alias":"^1.1.2","remark-lint-fenced-code-flag":"^3.1.1","remark-lint-no-shell-dollars":"^3.1.1","eslint-plugin-module-resolver":"^1.5.0","remark-lint-hard-break-spaces":"^3.1.1","remark-lint-heading-increment":"^3.1.1","remark-lint-no-empty-sections":"^4.0.0","remark-lint-no-inline-padding":"^4.1.1","remark-lint-heading-whitespace":"^1.0.0","@commitlint/config-conventional":"^17.4.2","babel-plugin-source-map-support":"^2.2.0","remark-lint-first-heading-level":"^3.1.1","remark-lint-heading-word-length":"^1.0.3","@types/confusing-browser-globals":"^1.0.0","@typescript-eslint/eslint-plugin":"^5.50.0","remark-lint-strikethrough-marker":"^2.1.1","remark-remove-unused-definitions":"^1.0.4","remark-remove-url-trailing-slash":"^1.0.2","@types/babel__helper-plugin-utils":"^7.10.0","eslint-import-resolver-typescript":"^3.5.3","remark-lint-fenced-code-flag-case":"^1.0.4","remark-lint-no-reference-like-url":"^3.1.1","remark-lint-no-unused-definitions":"^3.1.1","remark-lint-no-heading-punctuation":"^3.1.1","eslint-import-resolver-babel-module":"^5.3.2","remark-lint-no-undefined-references":"^4.2.0","@babel/plugin-proposal-function-bind":"^7.18.9","babel-plugin-transform-rename-import":"^2.3.0","remark-lint-no-duplicate-definitions":"^3.1.1","remark-lint-no-duplicate-defined-urls":"^2.1.1","remark-lint-no-heading-content-indent":"^4.1.1","remark-lint-no-heading-like-paragraph":"^3.1.1","remark-lint-ordered-list-marker-style":"^3.1.1","remark-lint-ordered-list-marker-value":"^3.1.1","@babel/plugin-syntax-import-assertions":"^7.20.0","babel-plugin-transform-rewrite-imports":"^1.1.0","remark-lint-no-shortcut-reference-link":"^3.1.1","remark-lint-no-shortcut-reference-image":"^3.1.1","remark-lint-unordered-list-marker-style":"^3.1.1","babel-plugin-explicit-exports-references":"^1.0.2","remark-lint-no-blockquote-without-marker":"^5.1.1","remark-lint-no-auto-link-without-protocol":"^3.1.1","remark-lint-no-multiple-toplevel-headings":"^3.1.1","@babel/plugin-proposal-export-default-from":"^7.18.10","@xunnamius/conventional-changelog-projector":"^1.2.1","babel-plugin-transform-default-named-imports":"^1.2.2","remark-lint-no-duplicate-headings-in-section":"^3.1.1","@babel/plugin-proposal-nullish-coalescing-operator":"^7.18.6"},"peerDependencies":{"@babel/core":">=7.11.6"},"_npmOperationalInternal":{"tmp":"tmp/babel-plugin-transform-rewrite-imports_1.2.0_1675339606567_0.6225901745635678","host":"s3://npm-registry-packages"}},"1.3.0":{"name":"babel-plugin-transform-rewrite-imports","version":"1.3.0","keywords":["babel","plugin","map","export","typescript","extension","commonjs","extensions","import","transform","esm","add","replace","append","mjs","cjs","require","es","module","dynamic","rewrite"],"author":{"name":"Xunnamius"},"license":"MIT","_id":"babel-plugin-transform-rewrite-imports@1.3.0","maintainers":[{"name":"xunnamius","email":"git@bernarddickens.dev"}],"homepage":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports","bugs":{"url":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/issues"},"dist":{"shasum":"2eea416f94ef72de1a5d7ebf6010bdc4f5fee823","tarball":"https://registry.npmjs.org/babel-plugin-transform-rewrite-imports/-/babel-plugin-transform-rewrite-imports-1.3.0.tgz","fileCount":5,"integrity":"sha512-ejD3sR3lmkqrQGJin69u1rhd1U7zQ0UTI/ro5zGWTxmKoM5cDw58AfrnYTTauRgUsf2Vt+kougebd6EfBGzgfw==","signatures":[{"sig":"MEUCIQCJDWlnODuXXPjcznJVoxLbRrx1wLzvUMO3I+lXROJFrgIgaWDWz1M+DvFUBfv2y+Q0n84A/qfFEEOAUsc3frpODC8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54298},"type":"commonjs","config":{"plugin-build":{"docs":{"entry":"./src/index.ts"}}},"engines":{"node":"^14.20.0 || ^16.16.0 || >=18.5.0"},"exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/src/index.js"},"./package":"./package.json","./package.json":"./package.json"},"gitHead":"129765fa9fd266f485a1b9860b229cecd87a58f5","scripts":{"lint":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.lint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.lint.json --no-error-on-unmatched-pattern packages src; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test":"npm run test:unit --","build":"npm run build:dist --","clean":"git ls-files --exclude-standard --ignored --others --directory | grep -vE '^((\\.(env|vscode|husky))|next-env\\.d\\.ts|node_modules)($|\\/)' | xargs -p rm -rf","format":"MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && (echo $MD_FILES | xargs remark --no-config --no-stdout --quiet --frail --use gfm --use lint-no-undefined-references || (echo -n '\u001b' && echo '[37;41;1m FAIL \u001b[0m cannot continue with undefined references present' && false)) && sort-package-json './package.json' './packages/*/package.json' && echo $MD_FILES | NODE_ENV=format xargs remark --output --frail && echo $MD_FILES | xargs doctoc --no-title --maxlevel 3 --update-only && prettier --write .","prepare":"node -e \"execa = require('execa'); if(process.env.CI === undefined && (process.env.NODE_ENV === undefined || process.env.NODE_ENV === 'development')) { execa.sync('npx', ['husky', 'install'], { stdout: 'inherit', stderr: 'inherit' }); } else { console.log('skipped installing husky git hooks'); }\"","lint:all":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.eslint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.eslint.json .; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test:all":"NODE_ENV=test jest --coverage","test:unit":"NODE_ENV=test jest 'unit-.*\\.test\\.ts.*'","build:dist":"NODE_ENV=production tsc --project tsconfig.types.json --incremental false && tsconfig-replace-paths --project tsconfig.types.json && NODE_ENV=production-cjs babel src --extensions .ts --out-dir dist/src","build:docs":"if [ -r ./next.config.js ]; then typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none lib src test types external-scripts --exclude '**/*.test.*' --exclude external-scripts/bin; else ENTRY=`node -e 'const entry = require(\"./package.json\").config?.[\"plugin-build\"]?.docs?.entry; if(!entry) throw new Error(\"\\\"config['\"'\"'plugin-build'\"'\"'].docs.entry\\\" field is not defined in package.json\"); console.log(entry)'` && echo 'Entry file:' \"$ENTRY\" && typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none $(echo $ENTRY); fi","list-tasks":"node -e 'console.log(Object.keys(require(\"./package.json\").scripts).join(\"\\n\"))' && (npm run -ws list-tasks --if-present 2>/dev/null || true)","build:changelog":"conventional-changelog --outfile CHANGELOG.md --config ./conventional.config.js --release-count 0 --skip-unstable && (if [ \"$CHANGELOG_SKIP_TITLE\" != 'true' ]; then { node -e 'console.log(require(\"./conventional.config.js\").changelogTitle)'; cat CHANGELOG.md; } > CHANGELOG.md.ignore && mv CHANGELOG.md.ignore CHANGELOG.md; fi) && NODE_ENV=format remark --output --frail CHANGELOG.md && prettier --write CHANGELOG.md","build:externals":"NODE_ENV=production-external babel external-scripts --extensions .ts --out-dir external-scripts/bin --out-file-extension .mjs","test:repeat:all":"npm run __test:repeat:all --silent","test:integration":"NODE_ENV=test jest 'integration-.*\\.test\\.ts.*'","test:repeat:unit":"npm run __test:repeat:unit --silent","__test:repeat:all":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter || exit; done) && echo \"All tests passed! Congrats!\"","__test:repeat:unit":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter --testPathIgnorePatterns 'integration-.*\\.test\\.ts.*' dist || exit; done) && echo \"All tests passed! Congrats!\"","test:integration:node":"NODE_ENV=test jest 'integration-node.*\\.test\\.ts.*'","test:integration:client":"NODE_ENV=test jest 'integration-client.*\\.test\\.ts.*'","test:integration:externals":"NODE_ENV=test jest 'integration-external.*\\.test\\.ts.*'"},"_npmUser":{"name":"xunnamius","email":"git@bernarddickens.dev"},"repository":{"url":"git+https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports.git","type":"git"},"_npmVersion":"9.9.3","description":"Add an extension to import specifiers that do not already have one, replace the extensions of those that do, or even rewrite specifiers entirely.","directories":{},"sideEffects":false,"_nodeVersion":"22.10.0","dependencies":{"debug":"^4.3.7","core-js":"^3.38.1","@babel/types":"^7.26.0","@babel/template":"^7.25.9"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"*":["dist/src/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"del":"^8.0.0","glob":"^11.0.0","jest":"^29.7.0","execa":"^5.1.1","husky":"^9.1.6","doctoc":"^2.2.1","dotenv":"^16.4.5","eslint":"^8.33.0","semver":"^7.6.3","typedoc":"^0.26.10","prettier":"^3.3.3","type-fest":"^4.26.1","@babel/cli":"^7.25.9","babel-jest":"^29.7.0","remark-cli":"^12.0.1","remark-gfm":"^4.0.0","simple-git":"^3.27.0","strip-ansi":"^6.0.1","typescript":"^5.6.3","@types/jest":"^29.5.14","@types/node":"^22.8.1","jest-circus":"^29.7.0","lint-staged":"^15.2.10","remark-lint":"^10.0.0","@types/debug":"^4.1.12","babel-loader":"^9.2.1","jest-extended":"^4.0.2","remark-ignore":"^2.0.0","glob-gitignore":"^1.0.15","@commitlint/cli":"^19.5.0","@ergodark/types":"^1.0.17","text-extensions":"^3.0.0","unique-filename":"^4.0.0","lodash.mergewith":"^4.6.2","semantic-release":"https://xunn.at/semantic-release-atam@22.0.7","@babel/preset-env":"^7.26.0","sort-package-json":"^2.10.1","eslint-plugin-jest":"^28.8.3","remark-frontmatter":"^5.0.0","source-map-support":"^0.5.21","babel-plugin-tester":"^11.0.4","remark-lint-no-tabs":"^4.0.0","@babel/eslint-parser":"^7.25.9","all-contributors-cli":"^6.26.1","eslint-plugin-import":"^2.31.0","@semantic-release/git":"^10.0.1","eslint-plugin-unicorn":"^56.0.0","remark-tight-comments":"^2.0.0","remark-validate-links":"^13.0.1","@semantic-release/exec":"^6.0.3","remark-reference-links":"^7.0.0","tsconfig-replace-paths":"^0.0.14","@types/lodash.mergewith":"^4.6.9","remark-sort-definitions":"^2.0.0","typedoc-plugin-markdown":"^4.2.9","@babel/preset-typescript":"^7.26.0","remark-lint-no-empty-url":"^4.0.0","@typescript-eslint/parser":"^8.11.0","confusing-browser-globals":"^1.0.11","remark-lint-final-newline":"^3.0.0","conventional-changelog-cli":"^2.2.2","remark-capitalize-headings":"^2.0.1","remark-lint-file-extension":"^3.0.0","remark-renumber-references":"^2.0.0","@semantic-release/changelog":"^6.0.3","remark-lint-definition-case":"^4.0.0","remark-lint-list-item-style":"^2.0.0","remark-lint-no-literal-urls":"^4.0.0","babel-plugin-module-resolver":"^5.0.2","eslint-import-resolver-alias":"^1.1.2","remark-lint-fenced-code-flag":"^4.0.0","remark-lint-no-shell-dollars":"^4.0.0","eslint-plugin-module-resolver":"^1.5.0","remark-lint-hard-break-spaces":"^4.0.0","remark-lint-heading-increment":"^4.0.0","remark-lint-no-empty-sections":"^4.0.0","remark-lint-heading-whitespace":"^1.0.0","@commitlint/config-conventional":"^19.5.0","babel-plugin-source-map-support":"^2.2.0","remark-lint-first-heading-level":"^4.0.0","remark-lint-heading-word-length":"^2.0.0","@types/confusing-browser-globals":"^1.0.3","@typescript-eslint/eslint-plugin":"^8.11.0","remark-lint-strikethrough-marker":"^3.0.0","remark-remove-unused-definitions":"^2.0.0","remark-remove-url-trailing-slash":"^2.0.0","@types/babel__helper-plugin-utils":"^7.10.3","eslint-import-resolver-typescript":"^3.6.3","remark-lint-fenced-code-flag-case":"^2.0.0","remark-lint-no-reference-like-url":"^4.0.0","remark-lint-no-unused-definitions":"^4.0.0","remark-lint-no-heading-punctuation":"^4.0.0","eslint-import-resolver-babel-module":"^5.3.2","remark-lint-no-undefined-references":"^5.0.0","@babel/plugin-proposal-function-bind":"^7.25.9","babel-plugin-transform-rename-import":"^2.3.0","remark-lint-no-duplicate-definitions":"^4.0.0","remark-lint-no-duplicate-defined-urls":"^3.0.0","remark-lint-no-heading-content-indent":"^5.0.0","remark-lint-no-heading-like-paragraph":"^4.0.0","remark-lint-ordered-list-marker-style":"^4.0.0","remark-lint-ordered-list-marker-value":"^4.0.0","@babel/plugin-syntax-import-assertions":"^7.26.0","babel-plugin-transform-rewrite-imports":"^1.2.0","remark-lint-no-shortcut-reference-link":"^4.0.0","remark-lint-no-shortcut-reference-image":"^4.0.0","remark-lint-unordered-list-marker-style":"^4.0.0","babel-plugin-explicit-exports-references":"^1.0.2","remark-lint-no-blockquote-without-marker":"^6.0.0","remark-lint-no-multiple-toplevel-headings":"^4.0.0","@babel/plugin-proposal-export-default-from":"^7.25.9","@xunnamius/conventional-changelog-projector":"^1.2.2","babel-plugin-transform-default-named-imports":"^1.2.3","remark-lint-no-duplicate-headings-in-section":"^4.0.0","@babel/plugin-proposal-nullish-coalescing-operator":"^7.18.6"},"peerDependencies":{"@babel/core":">=7.11.6"},"_npmOperationalInternal":{"tmp":"tmp/babel-plugin-transform-rewrite-imports_1.3.0_1730015988806_0.6646597731378197","host":"s3://npm-registry-packages"}},"1.3.1":{"name":"babel-plugin-transform-rewrite-imports","version":"1.3.1","keywords":["babel","plugin","map","export","typescript","extension","commonjs","extensions","import","transform","esm","add","replace","append","mjs","cjs","require","es","module","dynamic","rewrite"],"author":{"name":"Xunnamius"},"license":"MIT","_id":"babel-plugin-transform-rewrite-imports@1.3.1","maintainers":[{"name":"xunnamius","email":"git@bernarddickens.dev"}],"homepage":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports","bugs":{"url":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/issues"},"dist":{"shasum":"dc3de440687fcfe2f979e5d66d29b4c667fc3768","tarball":"https://registry.npmjs.org/babel-plugin-transform-rewrite-imports/-/babel-plugin-transform-rewrite-imports-1.3.1.tgz","fileCount":5,"integrity":"sha512-sZtC7YtJDIgZ6c9xaQUFltBHSX4ub4wb0M6zHOkiLiPRBSIXs0MGZmYQtFfi7ykrrV86rtetS+XLNMb8xtcFKw==","signatures":[{"sig":"MEYCIQDB0Pn4OOJRjOx2jDW5h71BimYPYEqLBLiSwD8OOXWHsgIhAPKKwSjQsMa3X9rDJAWHETF0GCnEjpDr+Wmv+sTpW8kd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":58084},"type":"commonjs","config":{"plugin-build":{"docs":{"entry":"./src/index.ts"}}},"engines":{"node":"^14.20.0 || ^16.16.0 || >=18.5.0"},"exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/src/index.js"},"./package":"./package.json","./package.json":"./package.json"},"gitHead":"a1de3b040da6169fce26080c60b53c1db9176f93","scripts":{"lint":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.lint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.lint.json --no-error-on-unmatched-pattern packages src; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test":"npm run test:unit --","build":"npm run build:dist --","clean":"git ls-files --exclude-standard --ignored --others --directory | grep -vE '^((\\.(env|vscode|husky))|next-env\\.d\\.ts|node_modules)($|\\/)' | xargs -p rm -rf","format":"MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && (echo $MD_FILES | xargs remark --no-config --no-stdout --quiet --frail --use gfm --use lint-no-undefined-references || (echo -n '\u001b' && echo '[37;41;1m FAIL \u001b[0m cannot continue with undefined references present' && false)) && sort-package-json './package.json' './packages/*/package.json' && echo $MD_FILES | NODE_ENV=format xargs remark --output --frail && echo $MD_FILES | xargs doctoc --no-title --maxlevel 3 --update-only && prettier --write .","prepare":"node -e \"execa = require('execa'); if(process.env.CI === undefined && (process.env.NODE_ENV === undefined || process.env.NODE_ENV === 'development')) { execa.sync('npx', ['husky', 'install'], { stdout: 'inherit', stderr: 'inherit' }); } else { console.log('skipped installing husky git hooks'); }\"","lint:all":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.eslint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.eslint.json .; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test:all":"NODE_ENV=test jest --coverage","test:unit":"NODE_ENV=test jest 'unit-.*\\.test\\.ts.*'","build:dist":"NODE_ENV=production tsc --project tsconfig.types.json --incremental false && tsconfig-replace-paths --project tsconfig.types.json && NODE_ENV=production-cjs babel src --extensions .ts --out-dir dist/src","build:docs":"if [ -r ./next.config.js ]; then typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none lib src test types external-scripts --exclude '**/*.test.*' --exclude external-scripts/bin; else ENTRY=`node -e 'const entry = require(\"./package.json\").config?.[\"plugin-build\"]?.docs?.entry; if(!entry) throw new Error(\"\\\"config['\"'\"'plugin-build'\"'\"'].docs.entry\\\" field is not defined in package.json\"); console.log(entry)'` && echo 'Entry file:' \"$ENTRY\" && typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none $(echo $ENTRY); fi","list-tasks":"node -e 'console.log(Object.keys(require(\"./package.json\").scripts).join(\"\\n\"))' && (npm run -ws list-tasks --if-present 2>/dev/null || true)","build:changelog":"conventional-changelog --outfile CHANGELOG.md --config ./conventional.config.js --release-count 0 --skip-unstable && (if [ \"$CHANGELOG_SKIP_TITLE\" != 'true' ]; then { node -e 'console.log(require(\"./conventional.config.js\").changelogTitle)'; cat CHANGELOG.md; } > CHANGELOG.md.ignore && mv CHANGELOG.md.ignore CHANGELOG.md; fi) && NODE_ENV=format remark --output --frail CHANGELOG.md && prettier --write CHANGELOG.md","build:externals":"NODE_ENV=production-external babel external-scripts --extensions .ts --out-dir external-scripts/bin --out-file-extension .mjs","test:repeat:all":"npm run __test:repeat:all --silent","test:integration":"NODE_ENV=test jest 'integration-.*\\.test\\.ts.*'","test:repeat:unit":"npm run __test:repeat:unit --silent","__test:repeat:all":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter || exit; done) && echo \"All tests passed! Congrats!\"","__test:repeat:unit":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter --testPathIgnorePatterns 'integration-.*\\.test\\.ts.*' dist || exit; done) && echo \"All tests passed! Congrats!\"","test:integration:node":"NODE_ENV=test jest 'integration-node.*\\.test\\.ts.*'","test:integration:client":"NODE_ENV=test jest 'integration-client.*\\.test\\.ts.*'","test:integration:externals":"NODE_ENV=test jest 'integration-external.*\\.test\\.ts.*'"},"_npmUser":{"name":"xunnamius","email":"git@bernarddickens.dev"},"repository":{"url":"git+https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports.git","type":"git"},"_npmVersion":"9.9.3","description":"Add an extension to import specifiers that do not already have one, replace the extensions of those that do, or even rewrite specifiers entirely.","directories":{},"sideEffects":false,"_nodeVersion":"22.10.0","dependencies":{"debug":"^4.3.7","core-js":"^3.38.1","@babel/types":"^7.26.0","@babel/template":"^7.25.9"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"*":["dist/src/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"del":"^8.0.0","glob":"^11.0.0","jest":"^29.7.0","execa":"^5.1.1","husky":"^9.1.6","doctoc":"^2.2.1","dotenv":"^16.4.5","eslint":"^8.33.0","semver":"^7.6.3","typedoc":"^0.26.10","prettier":"^3.3.3","type-fest":"^4.26.1","@babel/cli":"^7.25.9","babel-jest":"^29.7.0","remark-cli":"^12.0.1","remark-gfm":"^4.0.0","simple-git":"^3.27.0","strip-ansi":"^6.0.1","typescript":"^5.6.3","@types/jest":"^29.5.14","@types/node":"^22.8.1","jest-circus":"^29.7.0","lint-staged":"^15.2.10","remark-lint":"^10.0.0","@types/debug":"^4.1.12","babel-loader":"^9.2.1","spellchecker":"^3.7.1","jest-extended":"^4.0.2","remark-ignore":"^2.0.0","glob-gitignore":"^1.0.15","@commitlint/cli":"^19.5.0","@ergodark/types":"^1.0.17","text-extensions":"^3.0.0","unique-filename":"^4.0.0","lodash.mergewith":"^4.6.2","semantic-release":"https://xunn.at/semantic-release-atam@22.0.7","@babel/preset-env":"^7.26.0","sort-package-json":"^2.10.1","eslint-plugin-jest":"^28.8.3","remark-frontmatter":"^5.0.0","source-map-support":"^0.5.21","babel-plugin-tester":"^11.0.4","remark-lint-no-tabs":"^4.0.0","@babel/eslint-parser":"^7.25.9","all-contributors-cli":"^6.26.1","eslint-plugin-import":"^2.31.0","@semantic-release/git":"^10.0.1","eslint-plugin-unicorn":"^56.0.0","remark-tight-comments":"^2.0.0","remark-validate-links":"^13.0.1","@semantic-release/exec":"^6.0.3","remark-reference-links":"^7.0.0","tsconfig-replace-paths":"^0.0.14","@types/lodash.mergewith":"^4.6.9","remark-sort-definitions":"^2.0.0","typedoc-plugin-markdown":"^4.2.9","@babel/preset-typescript":"^7.26.0","remark-lint-no-empty-url":"^4.0.0","@typescript-eslint/parser":"^8.11.0","confusing-browser-globals":"^1.0.11","remark-lint-final-newline":"^3.0.0","conventional-changelog-cli":"^2.2.2","remark-capitalize-headings":"^2.0.1","remark-lint-file-extension":"^3.0.0","remark-renumber-references":"^2.0.0","@semantic-release/changelog":"^6.0.3","remark-lint-definition-case":"^4.0.0","remark-lint-list-item-style":"^2.0.0","remark-lint-no-literal-urls":"^4.0.0","babel-plugin-module-resolver":"^5.0.2","eslint-import-resolver-alias":"^1.1.2","remark-lint-fenced-code-flag":"^4.0.0","remark-lint-no-shell-dollars":"^4.0.0","eslint-plugin-module-resolver":"^1.5.0","remark-lint-hard-break-spaces":"^4.0.0","remark-lint-heading-increment":"^4.0.0","remark-lint-no-empty-sections":"^4.0.0","remark-lint-heading-whitespace":"^1.0.0","@commitlint/config-conventional":"^19.5.0","babel-plugin-source-map-support":"^2.2.0","remark-lint-first-heading-level":"^4.0.0","remark-lint-heading-word-length":"^2.0.0","@types/confusing-browser-globals":"^1.0.3","@typescript-eslint/eslint-plugin":"^8.11.0","remark-lint-strikethrough-marker":"^3.0.0","remark-remove-unused-definitions":"^2.0.0","remark-remove-url-trailing-slash":"^2.0.0","@types/babel__helper-plugin-utils":"^7.10.3","eslint-import-resolver-typescript":"^3.6.3","remark-lint-fenced-code-flag-case":"^2.0.0","remark-lint-no-reference-like-url":"^4.0.0","remark-lint-no-unused-definitions":"^4.0.0","remark-lint-no-heading-punctuation":"^4.0.0","eslint-import-resolver-babel-module":"^5.3.2","remark-lint-no-undefined-references":"^5.0.0","@babel/plugin-proposal-function-bind":"^7.25.9","babel-plugin-transform-rename-import":"^2.3.0","remark-lint-no-duplicate-definitions":"^4.0.0","remark-lint-no-duplicate-defined-urls":"^3.0.0","remark-lint-no-heading-content-indent":"^5.0.0","remark-lint-no-heading-like-paragraph":"^4.0.0","remark-lint-ordered-list-marker-style":"^4.0.0","remark-lint-ordered-list-marker-value":"^4.0.0","@babel/plugin-syntax-import-assertions":"^7.26.0","babel-plugin-transform-rewrite-imports":"^1.2.0","remark-lint-no-shortcut-reference-link":"^4.0.0","remark-lint-no-shortcut-reference-image":"^4.0.0","remark-lint-unordered-list-marker-style":"^4.0.0","babel-plugin-explicit-exports-references":"^1.0.2","remark-lint-no-blockquote-without-marker":"^6.0.0","remark-lint-no-multiple-toplevel-headings":"^4.0.0","@babel/plugin-proposal-export-default-from":"^7.25.9","@xunnamius/conventional-changelog-projector":"^1.2.2","babel-plugin-transform-default-named-imports":"^1.2.3","remark-lint-no-duplicate-headings-in-section":"^4.0.0","@babel/plugin-proposal-nullish-coalescing-operator":"^7.18.6"},"peerDependencies":{"@babel/core":">=7.11.6"},"_npmOperationalInternal":{"tmp":"tmp/babel-plugin-transform-rewrite-imports_1.3.1_1730053879319_0.08020009052956234","host":"s3://npm-registry-packages"}},"1.4.0":{"name":"babel-plugin-transform-rewrite-imports","version":"1.4.0","keywords":["babel","plugin","map","export","typescript","extension","commonjs","extensions","import","transform","esm","add","replace","append","mjs","cjs","require","es","module","dynamic","rewrite"],"author":{"name":"Xunnamius"},"license":"MIT","_id":"babel-plugin-transform-rewrite-imports@1.4.0","maintainers":[{"name":"xunnamius","email":"git@bernarddickens.dev"}],"homepage":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports","bugs":{"url":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/issues"},"dist":{"shasum":"ee9e9b15a5dd88b6e66a2cc6e78d164f37ff71fd","tarball":"https://registry.npmjs.org/babel-plugin-transform-rewrite-imports/-/babel-plugin-transform-rewrite-imports-1.4.0.tgz","fileCount":5,"integrity":"sha512-N9WdhrVY5nOckR3ndIPeh+z99w4Gu3+2gQoPcT1ig4Px+ZfF9V+GJ/hkZnbXGqI1qGmYIpL65muzE/lznoFawA==","signatures":[{"sig":"MEUCIQDiDB8JORy90Dln2KsMqSiJVvKbPfOHNaPQjjYSnFW1UAIgHcHRVIvQoJYBORvJh3tplA5KQU0GMHsoXSbpmF6z6rA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":65752},"type":"commonjs","config":{"plugin-build":{"docs":{"entry":"./src/index.ts"}}},"engines":{"node":"^14.20.0 || ^16.16.0 || >=18.5.0"},"exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/src/index.js"},"./package":"./package.json","./package.json":"./package.json"},"gitHead":"c2615edf2822c2b33e020468fa7203349c12ab11","scripts":{"lint":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.lint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.lint.json --no-error-on-unmatched-pattern packages src; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test":"npm run test:unit --","build":"npm run build:dist --","clean":"git ls-files --exclude-standard --ignored --others --directory | grep -vE '^((\\.(env|vscode|husky))|next-env\\.d\\.ts|node_modules)($|\\/)' | xargs -p rm -rf","format":"MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && (echo $MD_FILES | xargs remark --no-config --no-stdout --quiet --frail --use gfm --use lint-no-undefined-references || (echo -n '\u001b' && echo '[37;41;1m FAIL \u001b[0m cannot continue with undefined references present' && false)) && sort-package-json './package.json' './packages/*/package.json' && echo $MD_FILES | NODE_ENV=format xargs remark --output --frail && echo $MD_FILES | xargs doctoc --no-title --maxlevel 3 --update-only && prettier --write .","prepare":"node -e \"execa = require('execa'); if(process.env.CI === undefined && (process.env.NODE_ENV === undefined || process.env.NODE_ENV === 'development')) { execa.sync('npx', ['husky', 'install'], { stdout: 'inherit', stderr: 'inherit' }); } else { console.log('skipped installing husky git hooks'); }\"","lint:all":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.eslint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.eslint.json .; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test:all":"NODE_ENV=test jest --coverage","test:unit":"NODE_ENV=test jest 'unit-.*\\.test\\.ts.*'","build:dist":"NODE_ENV=production tsc --project tsconfig.types.json --incremental false && tsconfig-replace-paths --project tsconfig.types.json && NODE_ENV=production-cjs babel src --extensions .ts --out-dir dist/src","build:docs":"if [ -r ./next.config.js ]; then typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none lib src test types external-scripts --exclude '**/*.test.*' --exclude external-scripts/bin; else ENTRY=`node -e 'const entry = require(\"./package.json\").config?.[\"plugin-build\"]?.docs?.entry; if(!entry) throw new Error(\"\\\"config['\"'\"'plugin-build'\"'\"'].docs.entry\\\" field is not defined in package.json\"); console.log(entry)'` && echo 'Entry file:' \"$ENTRY\" && typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none $(echo $ENTRY); fi","list-tasks":"node -e 'console.log(Object.keys(require(\"./package.json\").scripts).join(\"\\n\"))' && (npm run -ws list-tasks --if-present 2>/dev/null || true)","build:changelog":"conventional-changelog --outfile CHANGELOG.md --config ./conventional.config.js --release-count 0 --skip-unstable && (if [ \"$CHANGELOG_SKIP_TITLE\" != 'true' ]; then { node -e 'console.log(require(\"./conventional.config.js\").changelogTitle)'; cat CHANGELOG.md; } > CHANGELOG.md.ignore && mv CHANGELOG.md.ignore CHANGELOG.md; fi) && NODE_ENV=format remark --output --frail CHANGELOG.md && prettier --write CHANGELOG.md","build:externals":"NODE_ENV=production-external babel external-scripts --extensions .ts --out-dir external-scripts/bin --out-file-extension .mjs","test:repeat:all":"npm run __test:repeat:all --silent","test:integration":"NODE_ENV=test jest 'integration-.*\\.test\\.ts.*'","test:repeat:unit":"npm run __test:repeat:unit --silent","__test:repeat:all":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter || exit; done) && echo \"All tests passed! Congrats!\"","__test:repeat:unit":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter --testPathIgnorePatterns 'integration-.*\\.test\\.ts.*' dist || exit; done) && echo \"All tests passed! Congrats!\"","test:integration:node":"NODE_ENV=test jest 'integration-node.*\\.test\\.ts.*'","test:integration:client":"NODE_ENV=test jest 'integration-client.*\\.test\\.ts.*'","test:integration:externals":"NODE_ENV=test jest 'integration-external.*\\.test\\.ts.*'"},"_npmUser":{"name":"xunnamius","email":"git@bernarddickens.dev"},"repository":{"url":"git+https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports.git","type":"git"},"_npmVersion":"9.9.3","description":"Add an extension to import specifiers that do not already have one, replace the extensions of those that do, or even rewrite specifiers entirely.","directories":{},"sideEffects":false,"_nodeVersion":"22.10.0","dependencies":{"debug":"^4.3.7","core-js":"^3.38.1","@babel/types":"^7.26.0","@babel/template":"^7.25.9"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"*":["dist/src/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"del":"^8.0.0","glob":"^11.0.0","jest":"^29.7.0","execa":"^5.1.1","husky":"^9.1.6","doctoc":"^2.2.1","dotenv":"^16.4.5","eslint":"^8.33.0","semver":"^7.6.3","typedoc":"^0.26.10","prettier":"^3.3.3","type-fest":"^4.26.1","@babel/cli":"^7.25.9","babel-jest":"^29.7.0","remark-cli":"^12.0.1","remark-gfm":"^4.0.0","simple-git":"^3.27.0","strip-ansi":"^6.0.1","typescript":"^5.6.3","@types/jest":"^29.5.14","@types/node":"^22.8.1","jest-circus":"^29.7.0","lint-staged":"^15.2.10","remark-lint":"^10.0.0","@types/debug":"^4.1.12","babel-loader":"^9.2.1","spellchecker":"^3.7.1","jest-extended":"^4.0.2","remark-ignore":"^2.0.0","glob-gitignore":"^1.0.15","@commitlint/cli":"^19.5.0","@ergodark/types":"^1.0.17","text-extensions":"^3.0.0","unique-filename":"^4.0.0","lodash.mergewith":"^4.6.2","semantic-release":"https://xunn.at/semantic-release-atam@22.0.7","@babel/preset-env":"^7.26.0","sort-package-json":"^2.10.1","eslint-plugin-jest":"^28.8.3","remark-frontmatter":"^5.0.0","source-map-support":"^0.5.21","babel-plugin-tester":"^11.0.4","remark-lint-no-tabs":"^4.0.0","@babel/eslint-parser":"^7.25.9","all-contributors-cli":"^6.26.1","eslint-plugin-import":"^2.31.0","@semantic-release/git":"^10.0.1","eslint-plugin-unicorn":"^56.0.0","remark-tight-comments":"^2.0.0","remark-validate-links":"^13.0.1","@semantic-release/exec":"^6.0.3","remark-reference-links":"^7.0.0","tsconfig-replace-paths":"^0.0.14","@types/lodash.mergewith":"^4.6.9","remark-sort-definitions":"^2.0.0","typedoc-plugin-markdown":"^4.2.9","@babel/preset-typescript":"^7.26.0","remark-lint-no-empty-url":"^4.0.0","@typescript-eslint/parser":"^8.11.0","confusing-browser-globals":"^1.0.11","remark-lint-final-newline":"^3.0.0","conventional-changelog-cli":"^2.2.2","remark-capitalize-headings":"^2.0.1","remark-lint-file-extension":"^3.0.0","remark-renumber-references":"^2.0.0","@semantic-release/changelog":"^6.0.3","remark-lint-definition-case":"^4.0.0","remark-lint-list-item-style":"^2.0.0","remark-lint-no-literal-urls":"^4.0.0","babel-plugin-module-resolver":"^5.0.2","eslint-import-resolver-alias":"^1.1.2","remark-lint-fenced-code-flag":"^4.0.0","remark-lint-no-shell-dollars":"^4.0.0","eslint-plugin-module-resolver":"^1.5.0","remark-lint-hard-break-spaces":"^4.0.0","remark-lint-heading-increment":"^4.0.0","remark-lint-no-empty-sections":"^4.0.0","remark-lint-heading-whitespace":"^1.0.0","@commitlint/config-conventional":"^19.5.0","babel-plugin-source-map-support":"^2.2.0","remark-lint-first-heading-level":"^4.0.0","remark-lint-heading-word-length":"^2.0.0","@types/confusing-browser-globals":"^1.0.3","@typescript-eslint/eslint-plugin":"^8.11.0","remark-lint-strikethrough-marker":"^3.0.0","remark-remove-unused-definitions":"^2.0.0","remark-remove-url-trailing-slash":"^2.0.0","@types/babel__helper-plugin-utils":"^7.10.3","eslint-import-resolver-typescript":"^3.6.3","remark-lint-fenced-code-flag-case":"^2.0.0","remark-lint-no-reference-like-url":"^4.0.0","remark-lint-no-unused-definitions":"^4.0.0","remark-lint-no-heading-punctuation":"^4.0.0","eslint-import-resolver-babel-module":"^5.3.2","remark-lint-no-undefined-references":"^5.0.0","@babel/plugin-proposal-function-bind":"^7.25.9","babel-plugin-transform-rename-import":"^2.3.0","remark-lint-no-duplicate-definitions":"^4.0.0","remark-lint-no-duplicate-defined-urls":"^3.0.0","remark-lint-no-heading-content-indent":"^5.0.0","remark-lint-no-heading-like-paragraph":"^4.0.0","remark-lint-ordered-list-marker-style":"^4.0.0","remark-lint-ordered-list-marker-value":"^4.0.0","@babel/plugin-syntax-import-assertions":"^7.26.0","babel-plugin-transform-rewrite-imports":"^1.2.0","remark-lint-no-shortcut-reference-link":"^4.0.0","remark-lint-no-shortcut-reference-image":"^4.0.0","remark-lint-unordered-list-marker-style":"^4.0.0","babel-plugin-explicit-exports-references":"^1.0.2","remark-lint-no-blockquote-without-marker":"^6.0.0","remark-lint-no-multiple-toplevel-headings":"^4.0.0","@babel/plugin-proposal-export-default-from":"^7.25.9","@xunnamius/conventional-changelog-projector":"^1.2.2","babel-plugin-transform-default-named-imports":"^1.2.3","remark-lint-no-duplicate-headings-in-section":"^4.0.0","@babel/plugin-proposal-nullish-coalescing-operator":"^7.18.6"},"peerDependencies":{"@babel/core":">=7.11.6"},"_npmOperationalInternal":{"tmp":"tmp/babel-plugin-transform-rewrite-imports_1.4.0_1730108095283_0.8800326010869803","host":"s3://npm-registry-packages"}},"1.5.0":{"name":"babel-plugin-transform-rewrite-imports","version":"1.5.0","keywords":["babel","plugin","map","export","typescript","extension","commonjs","extensions","import","transform","esm","add","replace","append","mjs","cjs","require","es","module","dynamic","rewrite"],"author":{"name":"Xunnamius"},"license":"MIT","_id":"babel-plugin-transform-rewrite-imports@1.5.0","maintainers":[{"name":"xunnamius","email":"git@bernarddickens.dev"}],"homepage":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports","bugs":{"url":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/issues"},"dist":{"shasum":"2fc09e7c99087b072341d290b8d805c405df31bf","tarball":"https://registry.npmjs.org/babel-plugin-transform-rewrite-imports/-/babel-plugin-transform-rewrite-imports-1.5.0.tgz","fileCount":5,"integrity":"sha512-LeyIJf5M7s+wKcC+OZErCZiGZ8SWV28REIutR8hZcbHjgu58/S5mpuT5vn49DddziueEkkSrTbo8ne/XWVZUKA==","signatures":[{"sig":"MEQCIHpn1ZcbryqyBi7OWsRCAQSVWTFakJxEUYyvoLZQyO1rAiAdzI4FzIx5YW8MScqusWfv9WokjO8cYl37Y908Pii/AA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":66864},"type":"commonjs","config":{"plugin-build":{"docs":{"entry":"./src/index.ts"}}},"engines":{"node":"^14.20.0 || ^16.16.0 || >=18.5.0"},"exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/src/index.js"},"./package":"./package.json","./package.json":"./package.json"},"gitHead":"908ccf6b3afb884d5e98ce60a637075b7d88892b","scripts":{"lint":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.lint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.lint.json --no-error-on-unmatched-pattern packages src; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test":"npm run test:unit --","build":"npm run build:dist --","clean":"git ls-files --exclude-standard --ignored --others --directory | grep -vE '^((\\.(env|vscode|husky))|next-env\\.d\\.ts|node_modules)($|\\/)' | xargs -p rm -rf","format":"MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && (echo $MD_FILES | xargs remark --no-config --no-stdout --quiet --frail --use gfm --use lint-no-undefined-references || (echo -n '\u001b' && echo '[37;41;1m FAIL \u001b[0m cannot continue with undefined references present' && false)) && sort-package-json './package.json' './packages/*/package.json' && echo $MD_FILES | NODE_ENV=format xargs remark --output --frail && echo $MD_FILES | xargs doctoc --no-title --maxlevel 3 --update-only && prettier --write .","prepare":"node -e \"execa = require('execa'); if(process.env.CI === undefined && (process.env.NODE_ENV === undefined || process.env.NODE_ENV === 'development')) { execa.sync('npx', ['husky', 'install'], { stdout: 'inherit', stderr: 'inherit' }); } else { console.log('skipped installing husky git hooks'); }\"","lint:all":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.eslint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.eslint.json .; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test:all":"NODE_ENV=test jest --coverage","test:unit":"NODE_ENV=test jest 'unit-.*\\.test\\.ts.*'","build:dist":"NODE_ENV=production tsc --project tsconfig.types.json --incremental false && tsconfig-replace-paths --project tsconfig.types.json && NODE_ENV=production-cjs babel src --extensions .ts --out-dir dist/src","build:docs":"if [ -r ./next.config.js ]; then typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none lib src test types external-scripts --exclude '**/*.test.*' --exclude external-scripts/bin; else ENTRY=`node -e 'const entry = require(\"./package.json\").config?.[\"plugin-build\"]?.docs?.entry; if(!entry) throw new Error(\"\\\"config['\"'\"'plugin-build'\"'\"'].docs.entry\\\" field is not defined in package.json\"); console.log(entry)'` && echo 'Entry file:' \"$ENTRY\" && typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none $(echo $ENTRY); fi","list-tasks":"node -e 'console.log(Object.keys(require(\"./package.json\").scripts).join(\"\\n\"))' && (npm run -ws list-tasks --if-present 2>/dev/null || true)","build:changelog":"conventional-changelog --outfile CHANGELOG.md --config ./conventional.config.js --release-count 0 --skip-unstable && (if [ \"$CHANGELOG_SKIP_TITLE\" != 'true' ]; then { node -e 'console.log(require(\"./conventional.config.js\").changelogTitle)'; cat CHANGELOG.md; } > CHANGELOG.md.ignore && mv CHANGELOG.md.ignore CHANGELOG.md; fi) && NODE_ENV=format remark --output --frail CHANGELOG.md && prettier --write CHANGELOG.md","build:externals":"NODE_ENV=production-external babel external-scripts --extensions .ts --out-dir external-scripts/bin --out-file-extension .mjs","test:repeat:all":"npm run __test:repeat:all --silent","test:integration":"NODE_ENV=test jest 'integration-.*\\.test\\.ts.*'","test:repeat:unit":"npm run __test:repeat:unit --silent","__test:repeat:all":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter || exit; done) && echo \"All tests passed! Congrats!\"","__test:repeat:unit":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter --testPathIgnorePatterns 'integration-.*\\.test\\.ts.*' dist || exit; done) && echo \"All tests passed! Congrats!\"","test:integration:node":"NODE_ENV=test jest 'integration-node.*\\.test\\.ts.*'","test:integration:client":"NODE_ENV=test jest 'integration-client.*\\.test\\.ts.*'","test:integration:externals":"NODE_ENV=test jest 'integration-external.*\\.test\\.ts.*'"},"_npmUser":{"name":"xunnamius","email":"git@bernarddickens.dev"},"repository":{"url":"git+https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports.git","type":"git"},"_npmVersion":"9.9.3","description":"Add an extension to import specifiers that do not already have one, replace the extensions of those that do, or even rewrite specifiers entirely.","directories":{},"sideEffects":false,"_nodeVersion":"22.10.0","dependencies":{"debug":"^4.3.7","core-js":"^3.38.1","@babel/types":"^7.26.0","@babel/template":"^7.25.9"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"*":["dist/src/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"del":"^8.0.0","glob":"^11.0.0","jest":"^29.7.0","execa":"^5.1.1","husky":"^9.1.6","doctoc":"^2.2.1","dotenv":"^16.4.5","eslint":"^8.33.0","semver":"^7.6.3","typedoc":"^0.26.10","prettier":"^3.3.3","type-fest":"^4.26.1","@babel/cli":"^7.25.9","babel-jest":"^29.7.0","remark-cli":"^12.0.1","remark-gfm":"^4.0.0","simple-git":"^3.27.0","strip-ansi":"^6.0.1","typescript":"^5.6.3","@types/jest":"^29.5.14","@types/node":"^22.8.1","jest-circus":"^29.7.0","lint-staged":"^15.2.10","remark-lint":"^10.0.0","@types/debug":"^4.1.12","babel-loader":"^9.2.1","spellchecker":"^3.7.1","jest-extended":"^4.0.2","remark-ignore":"^2.0.0","glob-gitignore":"^1.0.15","@commitlint/cli":"^19.5.0","@ergodark/types":"^1.0.17","text-extensions":"^3.0.0","unique-filename":"^4.0.0","lodash.mergewith":"^4.6.2","semantic-release":"https://xunn.at/semantic-release-atam@22.0.7","@babel/preset-env":"^7.26.0","sort-package-json":"^2.10.1","eslint-plugin-jest":"^28.8.3","remark-frontmatter":"^5.0.0","source-map-support":"^0.5.21","babel-plugin-tester":"^11.0.4","remark-lint-no-tabs":"^4.0.0","@babel/eslint-parser":"^7.25.9","all-contributors-cli":"^6.26.1","eslint-plugin-import":"^2.31.0","@semantic-release/git":"^10.0.1","eslint-plugin-unicorn":"^56.0.0","remark-tight-comments":"^2.0.0","remark-validate-links":"^13.0.1","@semantic-release/exec":"^6.0.3","remark-reference-links":"^7.0.0","tsconfig-replace-paths":"^0.0.14","@types/lodash.mergewith":"^4.6.9","remark-sort-definitions":"^2.0.0","typedoc-plugin-markdown":"^4.2.9","@babel/preset-typescript":"^7.26.0","remark-lint-no-empty-url":"^4.0.0","@typescript-eslint/parser":"^8.11.0","confusing-browser-globals":"^1.0.11","remark-lint-final-newline":"^3.0.0","conventional-changelog-cli":"^2.2.2","remark-capitalize-headings":"^2.0.1","remark-lint-file-extension":"^3.0.0","remark-renumber-references":"^2.0.0","@semantic-release/changelog":"^6.0.3","remark-lint-definition-case":"^4.0.0","remark-lint-list-item-style":"^2.0.0","remark-lint-no-literal-urls":"^4.0.0","babel-plugin-module-resolver":"^5.0.2","eslint-import-resolver-alias":"^1.1.2","remark-lint-fenced-code-flag":"^4.0.0","remark-lint-no-shell-dollars":"^4.0.0","eslint-plugin-module-resolver":"^1.5.0","remark-lint-hard-break-spaces":"^4.0.0","remark-lint-heading-increment":"^4.0.0","remark-lint-no-empty-sections":"^4.0.0","remark-lint-heading-whitespace":"^1.0.0","@commitlint/config-conventional":"^19.5.0","babel-plugin-source-map-support":"^2.2.0","remark-lint-first-heading-level":"^4.0.0","remark-lint-heading-word-length":"^2.0.0","@types/confusing-browser-globals":"^1.0.3","@typescript-eslint/eslint-plugin":"^8.11.0","remark-lint-strikethrough-marker":"^3.0.0","remark-remove-unused-definitions":"^2.0.0","remark-remove-url-trailing-slash":"^2.0.0","@types/babel__helper-plugin-utils":"^7.10.3","eslint-import-resolver-typescript":"^3.6.3","remark-lint-fenced-code-flag-case":"^2.0.0","remark-lint-no-reference-like-url":"^4.0.0","remark-lint-no-unused-definitions":"^4.0.0","remark-lint-no-heading-punctuation":"^4.0.0","eslint-import-resolver-babel-module":"^5.3.2","remark-lint-no-undefined-references":"^5.0.0","@babel/plugin-proposal-function-bind":"^7.25.9","babel-plugin-transform-rename-import":"^2.3.0","remark-lint-no-duplicate-definitions":"^4.0.0","remark-lint-no-duplicate-defined-urls":"^3.0.0","remark-lint-no-heading-content-indent":"^5.0.0","remark-lint-no-heading-like-paragraph":"^4.0.0","remark-lint-ordered-list-marker-style":"^4.0.0","remark-lint-ordered-list-marker-value":"^4.0.0","@babel/plugin-syntax-import-assertions":"^7.26.0","babel-plugin-transform-rewrite-imports":"^1.2.0","remark-lint-no-shortcut-reference-link":"^4.0.0","remark-lint-no-shortcut-reference-image":"^4.0.0","remark-lint-unordered-list-marker-style":"^4.0.0","babel-plugin-explicit-exports-references":"^1.0.2","remark-lint-no-blockquote-without-marker":"^6.0.0","remark-lint-no-multiple-toplevel-headings":"^4.0.0","@babel/plugin-proposal-export-default-from":"^7.25.9","@xunnamius/conventional-changelog-projector":"^1.2.2","babel-plugin-transform-default-named-imports":"^1.2.3","remark-lint-no-duplicate-headings-in-section":"^4.0.0","@babel/plugin-proposal-nullish-coalescing-operator":"^7.18.6"},"peerDependencies":{"@babel/core":">=7.11.6"},"_npmOperationalInternal":{"tmp":"tmp/babel-plugin-transform-rewrite-imports_1.5.0_1730109521985_0.3020393597183344","host":"s3://npm-registry-packages"}},"1.5.1":{"name":"babel-plugin-transform-rewrite-imports","version":"1.5.1","keywords":["babel","plugin","map","export","typescript","extension","commonjs","extensions","import","transform","esm","add","replace","append","mjs","cjs","require","es","module","dynamic","rewrite"],"author":{"name":"Xunnamius"},"license":"MIT","_id":"babel-plugin-transform-rewrite-imports@1.5.1","maintainers":[{"name":"xunnamius","email":"git@bernarddickens.dev"}],"homepage":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports","bugs":{"url":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/issues"},"dist":{"shasum":"402910ecffeb83f543a6a58d93edd2519fc1ac5e","tarball":"https://registry.npmjs.org/babel-plugin-transform-rewrite-imports/-/babel-plugin-transform-rewrite-imports-1.5.1.tgz","fileCount":5,"integrity":"sha512-C4ywVQuIDC7IUX8V20APUO3xOnjkIm4c+cmWebeA/hx+bTI60dMsGydUO0VQBBd1/rApVN2TsCQF1GT1k1VuCw==","signatures":[{"sig":"MEQCIA39qtCO01yU3wPaAlvsKuczdCWJdUxKqZyK5fdVKlVHAiB6N324AupKL+a5osTEIF9FvHa+7XG71zDxAhpsaEqwsg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":68453},"type":"commonjs","config":{"plugin-build":{"docs":{"entry":"./src/index.ts"}}},"engines":{"node":"^14.20.0 || ^16.16.0 || >=18.5.0"},"exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/src/index.js"},"./package":"./package.json","./package.json":"./package.json"},"gitHead":"f76cc004b5387282f3d9d93a34ae77c916f2222b","scripts":{"lint":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.lint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.lint.json --no-error-on-unmatched-pattern packages src; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test":"npm run test:unit --","build":"npm run build:dist --","clean":"git ls-files --exclude-standard --ignored --others --directory | grep -vE '^((\\.(env|vscode|husky))|next-env\\.d\\.ts|node_modules)($|\\/)' | xargs -p rm -rf","format":"MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && (echo $MD_FILES | xargs remark --no-config --no-stdout --quiet --frail --use gfm --use lint-no-undefined-references || (echo -n '\u001b' && echo '[37;41;1m FAIL \u001b[0m cannot continue with undefined references present' && false)) && sort-package-json './package.json' './packages/*/package.json' && echo $MD_FILES | NODE_ENV=format xargs remark --output --frail && echo $MD_FILES | xargs doctoc --no-title --maxlevel 3 --update-only && prettier --write .","prepare":"node -e \"execa = require('execa'); if(process.env.CI === undefined && (process.env.NODE_ENV === undefined || process.env.NODE_ENV === 'development')) { execa.sync('npx', ['husky', 'install'], { stdout: 'inherit', stderr: 'inherit' }); } else { console.log('skipped installing husky git hooks'); }\"","lint:all":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.eslint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.eslint.json .; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test:all":"NODE_ENV=test jest --coverage","test:unit":"NODE_ENV=test jest 'unit-.*\\.test\\.ts.*'","build:dist":"NODE_ENV=production tsc --project tsconfig.types.json --incremental false && tsconfig-replace-paths --project tsconfig.types.json && NODE_ENV=production-cjs babel src --extensions .ts --out-dir dist/src","build:docs":"if [ -r ./next.config.js ]; then typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none lib src test types external-scripts --exclude '**/*.test.*' --exclude external-scripts/bin; else ENTRY=`node -e 'const entry = require(\"./package.json\").config?.[\"plugin-build\"]?.docs?.entry; if(!entry) throw new Error(\"\\\"config['\"'\"'plugin-build'\"'\"'].docs.entry\\\" field is not defined in package.json\"); console.log(entry)'` && echo 'Entry file:' \"$ENTRY\" && typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none $(echo $ENTRY); fi","list-tasks":"node -e 'console.log(Object.keys(require(\"./package.json\").scripts).join(\"\\n\"))' && (npm run -ws list-tasks --if-present 2>/dev/null || true)","build:changelog":"conventional-changelog --outfile CHANGELOG.md --config ./conventional.config.js --release-count 0 --skip-unstable && (if [ \"$CHANGELOG_SKIP_TITLE\" != 'true' ]; then { node -e 'console.log(require(\"./conventional.config.js\").changelogTitle)'; cat CHANGELOG.md; } > CHANGELOG.md.ignore && mv CHANGELOG.md.ignore CHANGELOG.md; fi) && NODE_ENV=format remark --output --frail CHANGELOG.md && prettier --write CHANGELOG.md","build:externals":"NODE_ENV=production-external babel external-scripts --extensions .ts --out-dir external-scripts/bin --out-file-extension .mjs","test:repeat:all":"npm run __test:repeat:all --silent","test:integration":"NODE_ENV=test jest 'integration-.*\\.test\\.ts.*'","test:repeat:unit":"npm run __test:repeat:unit --silent","__test:repeat:all":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter || exit; done) && echo \"All tests passed! Congrats!\"","__test:repeat:unit":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter --testPathIgnorePatterns 'integration-.*\\.test\\.ts.*' dist || exit; done) && echo \"All tests passed! Congrats!\"","test:integration:node":"NODE_ENV=test jest 'integration-node.*\\.test\\.ts.*'","test:integration:client":"NODE_ENV=test jest 'integration-client.*\\.test\\.ts.*'","test:integration:externals":"NODE_ENV=test jest 'integration-external.*\\.test\\.ts.*'"},"_npmUser":{"name":"xunnamius","email":"git@bernarddickens.dev"},"repository":{"url":"git+https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports.git","type":"git"},"_npmVersion":"9.9.3","description":"Add an extension to import specifiers that do not already have one, replace the extensions of those that do, or even rewrite specifiers entirely.","directories":{},"sideEffects":false,"_nodeVersion":"22.10.0","dependencies":{"debug":"^4.3.7","core-js":"^3.38.1","@babel/types":"^7.26.0","@babel/template":"^7.25.9"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"*":["dist/src/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"del":"^8.0.0","glob":"^11.0.0","jest":"^29.7.0","execa":"^5.1.1","husky":"^9.1.6","doctoc":"^2.2.1","dotenv":"^16.4.5","eslint":"^8.33.0","semver":"^7.6.3","typedoc":"^0.26.10","prettier":"^3.3.3","type-fest":"^4.26.1","@babel/cli":"^7.25.9","babel-jest":"^29.7.0","remark-cli":"^12.0.1","remark-gfm":"^4.0.0","simple-git":"^3.27.0","strip-ansi":"^6.0.1","typescript":"^5.6.3","@types/jest":"^29.5.14","@types/node":"^22.8.2","jest-circus":"^29.7.0","lint-staged":"^15.2.10","remark-lint":"^10.0.0","@types/debug":"^4.1.12","babel-loader":"^9.2.1","spellchecker":"^3.7.1","jest-extended":"^4.0.2","remark-ignore":"^2.0.0","glob-gitignore":"^1.0.15","@commitlint/cli":"^19.5.0","@ergodark/types":"^1.0.17","text-extensions":"^3.0.0","unique-filename":"^4.0.0","lodash.mergewith":"^4.6.2","semantic-release":"https://xunn.at/semantic-release-atam@22.0.7","@babel/preset-env":"^7.26.0","sort-package-json":"^2.10.1","eslint-plugin-jest":"^28.8.3","remark-frontmatter":"^5.0.0","source-map-support":"^0.5.21","babel-plugin-tester":"^11.0.4","remark-lint-no-tabs":"^4.0.0","@babel/eslint-parser":"^7.25.9","all-contributors-cli":"^6.26.1","eslint-plugin-import":"^2.31.0","@semantic-release/git":"^10.0.1","eslint-plugin-unicorn":"^56.0.0","remark-tight-comments":"^2.0.0","remark-validate-links":"^13.0.1","@semantic-release/exec":"^6.0.3","remark-reference-links":"^7.0.0","tsconfig-replace-paths":"^0.0.14","@types/lodash.mergewith":"^4.6.9","remark-sort-definitions":"^2.0.0","typedoc-plugin-markdown":"^4.2.9","@babel/preset-typescript":"^7.26.0","remark-lint-no-empty-url":"^4.0.0","@typescript-eslint/parser":"^8.12.1","confusing-browser-globals":"^1.0.11","remark-lint-final-newline":"^3.0.0","conventional-changelog-cli":"^2.2.2","remark-capitalize-headings":"^2.0.1","remark-lint-file-extension":"^3.0.0","remark-renumber-references":"^2.0.0","@semantic-release/changelog":"^6.0.3","remark-lint-definition-case":"^4.0.0","remark-lint-list-item-style":"^2.0.0","remark-lint-no-literal-urls":"^4.0.0","babel-plugin-module-resolver":"^5.0.2","eslint-import-resolver-alias":"^1.1.2","remark-lint-fenced-code-flag":"^4.0.0","remark-lint-no-shell-dollars":"^4.0.0","eslint-plugin-module-resolver":"^1.5.0","remark-lint-hard-break-spaces":"^4.0.0","remark-lint-heading-increment":"^4.0.0","remark-lint-no-empty-sections":"^4.0.0","remark-lint-heading-whitespace":"^1.0.0","@commitlint/config-conventional":"^19.5.0","babel-plugin-source-map-support":"^2.2.0","remark-lint-first-heading-level":"^4.0.0","remark-lint-heading-word-length":"^2.0.0","@types/confusing-browser-globals":"^1.0.3","@typescript-eslint/eslint-plugin":"^8.12.1","remark-lint-strikethrough-marker":"^3.0.0","remark-remove-unused-definitions":"^2.0.0","remark-remove-url-trailing-slash":"^2.0.0","@types/babel__helper-plugin-utils":"^7.10.3","eslint-import-resolver-typescript":"^3.6.3","remark-lint-fenced-code-flag-case":"^2.0.0","remark-lint-no-reference-like-url":"^4.0.0","remark-lint-no-unused-definitions":"^4.0.0","remark-lint-no-heading-punctuation":"^4.0.0","eslint-import-resolver-babel-module":"^5.3.2","remark-lint-no-undefined-references":"^5.0.0","@babel/plugin-proposal-function-bind":"^7.25.9","babel-plugin-transform-rename-import":"^2.3.0","remark-lint-no-duplicate-definitions":"^4.0.0","remark-lint-no-duplicate-defined-urls":"^3.0.0","remark-lint-no-heading-content-indent":"^5.0.0","remark-lint-no-heading-like-paragraph":"^4.0.0","remark-lint-ordered-list-marker-style":"^4.0.0","remark-lint-ordered-list-marker-value":"^4.0.0","@babel/plugin-syntax-import-assertions":"^7.26.0","babel-plugin-transform-rewrite-imports":"^1.5.0","remark-lint-no-shortcut-reference-link":"^4.0.0","remark-lint-no-shortcut-reference-image":"^4.0.0","remark-lint-unordered-list-marker-style":"^4.0.0","babel-plugin-explicit-exports-references":"^1.0.2","remark-lint-no-blockquote-without-marker":"^6.0.0","remark-lint-no-multiple-toplevel-headings":"^4.0.0","@babel/plugin-proposal-export-default-from":"^7.25.9","@xunnamius/conventional-changelog-projector":"^1.2.2","babel-plugin-transform-default-named-imports":"^1.2.3","remark-lint-no-duplicate-headings-in-section":"^4.0.0","@babel/plugin-proposal-nullish-coalescing-operator":"^7.18.6"},"peerDependencies":{"@babel/core":">=7.11.6"},"_npmOperationalInternal":{"tmp":"tmp/babel-plugin-transform-rewrite-imports_1.5.1_1730192826166_0.16675863205255803","host":"s3://npm-registry-packages"}},"1.5.2":{"name":"babel-plugin-transform-rewrite-imports","version":"1.5.2","keywords":["babel","plugin","map","export","typescript","extension","commonjs","extensions","import","transform","esm","add","replace","append","mjs","cjs","require","es","module","dynamic","rewrite"],"author":{"name":"Xunnamius"},"license":"MIT","_id":"babel-plugin-transform-rewrite-imports@1.5.2","maintainers":[{"name":"xunnamius","email":"git@bernarddickens.dev"}],"homepage":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports","bugs":{"url":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/issues"},"dist":{"shasum":"aece1a2f6435b1b041d1afaa668dbad1cbffb971","tarball":"https://registry.npmjs.org/babel-plugin-transform-rewrite-imports/-/babel-plugin-transform-rewrite-imports-1.5.2.tgz","fileCount":5,"integrity":"sha512-WPirO0oU2esXzyPY9K0gZMXfSqpRFNRvR86M+lQzXjSwikK9N5YpJpnkzOOlHKV8SkRXEGLbeK4uoIOenVMxuw==","signatures":[{"sig":"MEUCIQCAjdfnRl84gv8dVSpDit1wj/Xeu1aVn/ByMeZzWPGvqAIgcN90Ma/bDwrRoIotnyOS95f3iMLikMivcu4/uZKD8PM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":69090},"type":"commonjs","config":{"plugin-build":{"docs":{"entry":"./src/index.ts"}}},"engines":{"node":"^14.20.0 || ^16.16.0 || >=18.5.0"},"exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/src/index.js"},"./package":"./package.json","./package.json":"./package.json"},"gitHead":"bc6b9a0dd7ff73940cea1bbc53f48cd958b89d1f","scripts":{"lint":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.lint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.lint.json --no-error-on-unmatched-pattern packages src; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test":"npm run test:unit --","build":"npm run build:dist --","clean":"git ls-files --exclude-standard --ignored --others --directory | grep -vE '^((\\.(env|vscode|husky))|next-env\\.d\\.ts|node_modules)($|\\/)' | xargs -p rm -rf","format":"MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && (echo $MD_FILES | xargs remark --no-config --no-stdout --quiet --frail --use gfm --use lint-no-undefined-references || (echo -n '\u001b' && echo '[37;41;1m FAIL \u001b[0m cannot continue with undefined references present' && false)) && sort-package-json './package.json' './packages/*/package.json' && echo $MD_FILES | NODE_ENV=format xargs remark --output --frail && echo $MD_FILES | xargs doctoc --no-title --maxlevel 3 --update-only && prettier --write .","prepare":"node -e \"execa = require('execa'); if(process.env.CI === undefined && (process.env.NODE_ENV === undefined || process.env.NODE_ENV === 'development')) { execa.sync('npx', ['husky', 'install'], { stdout: 'inherit', stderr: 'inherit' }); } else { console.log('skipped installing husky git hooks'); }\"","lint:all":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.eslint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.eslint.json .; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test:all":"NODE_ENV=test jest --coverage","test:unit":"NODE_ENV=test jest 'unit-.*\\.test\\.ts.*'","build:dist":"NODE_ENV=production tsc --project tsconfig.types.json --incremental false && tsconfig-replace-paths --project tsconfig.types.json && NODE_ENV=production-cjs babel src --extensions .ts --out-dir dist/src","build:docs":"if [ -r ./next.config.js ]; then typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none lib src test types external-scripts --exclude '**/*.test.*' --exclude external-scripts/bin; else ENTRY=`node -e 'const entry = require(\"./package.json\").config?.[\"plugin-build\"]?.docs?.entry; if(!entry) throw new Error(\"\\\"config['\"'\"'plugin-build'\"'\"'].docs.entry\\\" field is not defined in package.json\"); console.log(entry)'` && echo 'Entry file:' \"$ENTRY\" && typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none $(echo $ENTRY); fi","list-tasks":"node -e 'console.log(Object.keys(require(\"./package.json\").scripts).join(\"\\n\"))' && (npm run -ws list-tasks --if-present 2>/dev/null || true)","build:changelog":"conventional-changelog --outfile CHANGELOG.md --config ./conventional.config.js --release-count 0 --skip-unstable && (if [ \"$CHANGELOG_SKIP_TITLE\" != 'true' ]; then { node -e 'console.log(require(\"./conventional.config.js\").changelogTitle)'; cat CHANGELOG.md; } > CHANGELOG.md.ignore && mv CHANGELOG.md.ignore CHANGELOG.md; fi) && NODE_ENV=format remark --output --frail CHANGELOG.md && prettier --write CHANGELOG.md","build:externals":"NODE_ENV=production-external babel external-scripts --extensions .ts --out-dir external-scripts/bin --out-file-extension .mjs","test:repeat:all":"npm run __test:repeat:all --silent","test:integration":"NODE_ENV=test jest 'integration-.*\\.test\\.ts.*'","test:repeat:unit":"npm run __test:repeat:unit --silent","__test:repeat:all":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter || exit; done) && echo \"All tests passed! Congrats!\"","__test:repeat:unit":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter --testPathIgnorePatterns 'integration-.*\\.test\\.ts.*' dist || exit; done) && echo \"All tests passed! Congrats!\"","test:integration:node":"NODE_ENV=test jest 'integration-node.*\\.test\\.ts.*'","test:integration:client":"NODE_ENV=test jest 'integration-client.*\\.test\\.ts.*'","test:integration:externals":"NODE_ENV=test jest 'integration-external.*\\.test\\.ts.*'"},"_npmUser":{"name":"xunnamius","email":"git@bernarddickens.dev"},"repository":{"url":"git+https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports.git","type":"git"},"_npmVersion":"9.9.3","description":"Add an extension to import specifiers that do not already have one, replace the extensions of those that do, or even rewrite specifiers entirely.","directories":{},"sideEffects":false,"_nodeVersion":"22.10.0","dependencies":{"debug":"^4.3.7","core-js":"^3.38.1","@babel/types":"^7.26.0","@babel/template":"^7.25.9"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"*":["dist/src/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"del":"^8.0.0","glob":"^11.0.0","jest":"^29.7.0","execa":"^5.1.1","husky":"^9.1.6","doctoc":"^2.2.1","dotenv":"^16.4.5","eslint":"^8.33.0","semver":"^7.6.3","typedoc":"^0.26.10","prettier":"^3.3.3","type-fest":"^4.26.1","@babel/cli":"^7.25.9","babel-jest":"^29.7.0","remark-cli":"^12.0.1","remark-gfm":"^4.0.0","simple-git":"^3.27.0","strip-ansi":"^6.0.1","typescript":"^5.6.3","@types/jest":"^29.5.14","@types/node":"^22.8.2","jest-circus":"^29.7.0","lint-staged":"^15.2.10","remark-lint":"^10.0.0","@types/debug":"^4.1.12","babel-loader":"^9.2.1","spellchecker":"^3.7.1","jest-extended":"^4.0.2","remark-ignore":"^2.0.0","glob-gitignore":"^1.0.15","@commitlint/cli":"^19.5.0","@ergodark/types":"^1.0.17","text-extensions":"^3.0.0","unique-filename":"^4.0.0","lodash.mergewith":"^4.6.2","semantic-release":"https://xunn.at/semantic-release-atam@22.0.7","@babel/preset-env":"^7.26.0","sort-package-json":"^2.10.1","eslint-plugin-jest":"^28.8.3","remark-frontmatter":"^5.0.0","source-map-support":"^0.5.21","babel-plugin-tester":"^11.0.4","remark-lint-no-tabs":"^4.0.0","@babel/eslint-parser":"^7.25.9","all-contributors-cli":"^6.26.1","eslint-plugin-import":"^2.31.0","@semantic-release/git":"^10.0.1","eslint-plugin-unicorn":"^56.0.0","remark-tight-comments":"^2.0.0","remark-validate-links":"^13.0.1","@semantic-release/exec":"^6.0.3","remark-reference-links":"^7.0.0","tsconfig-replace-paths":"^0.0.14","@types/lodash.mergewith":"^4.6.9","remark-sort-definitions":"^2.0.0","typedoc-plugin-markdown":"^4.2.9","@babel/preset-typescript":"^7.26.0","remark-lint-no-empty-url":"^4.0.0","@typescript-eslint/parser":"^8.12.1","confusing-browser-globals":"^1.0.11","remark-lint-final-newline":"^3.0.0","conventional-changelog-cli":"^2.2.2","remark-capitalize-headings":"^2.0.1","remark-lint-file-extension":"^3.0.0","remark-renumber-references":"^2.0.0","@semantic-release/changelog":"^6.0.3","remark-lint-definition-case":"^4.0.0","remark-lint-list-item-style":"^2.0.0","remark-lint-no-literal-urls":"^4.0.0","babel-plugin-module-resolver":"^5.0.2","eslint-import-resolver-alias":"^1.1.2","remark-lint-fenced-code-flag":"^4.0.0","remark-lint-no-shell-dollars":"^4.0.0","eslint-plugin-module-resolver":"^1.5.0","remark-lint-hard-break-spaces":"^4.0.0","remark-lint-heading-increment":"^4.0.0","remark-lint-no-empty-sections":"^4.0.0","remark-lint-heading-whitespace":"^1.0.0","@commitlint/config-conventional":"^19.5.0","babel-plugin-source-map-support":"^2.2.0","remark-lint-first-heading-level":"^4.0.0","remark-lint-heading-word-length":"^2.0.0","@types/confusing-browser-globals":"^1.0.3","@typescript-eslint/eslint-plugin":"^8.12.1","remark-lint-strikethrough-marker":"^3.0.0","remark-remove-unused-definitions":"^2.0.0","remark-remove-url-trailing-slash":"^2.0.0","@types/babel__helper-plugin-utils":"^7.10.3","eslint-import-resolver-typescript":"^3.6.3","remark-lint-fenced-code-flag-case":"^2.0.0","remark-lint-no-reference-like-url":"^4.0.0","remark-lint-no-unused-definitions":"^4.0.0","remark-lint-no-heading-punctuation":"^4.0.0","eslint-import-resolver-babel-module":"^5.3.2","remark-lint-no-undefined-references":"^5.0.0","@babel/plugin-proposal-function-bind":"^7.25.9","babel-plugin-transform-rename-import":"^2.3.0","remark-lint-no-duplicate-definitions":"^4.0.0","remark-lint-no-duplicate-defined-urls":"^3.0.0","remark-lint-no-heading-content-indent":"^5.0.0","remark-lint-no-heading-like-paragraph":"^4.0.0","remark-lint-ordered-list-marker-style":"^4.0.0","remark-lint-ordered-list-marker-value":"^4.0.0","@babel/plugin-syntax-import-assertions":"^7.26.0","babel-plugin-transform-rewrite-imports":"^1.5.1","remark-lint-no-shortcut-reference-link":"^4.0.0","remark-lint-no-shortcut-reference-image":"^4.0.0","remark-lint-unordered-list-marker-style":"^4.0.0","babel-plugin-explicit-exports-references":"^1.0.2","remark-lint-no-blockquote-without-marker":"^6.0.0","remark-lint-no-multiple-toplevel-headings":"^4.0.0","@babel/plugin-proposal-export-default-from":"^7.25.9","@xunnamius/conventional-changelog-projector":"^1.2.2","babel-plugin-transform-default-named-imports":"^1.2.3","remark-lint-no-duplicate-headings-in-section":"^4.0.0","@babel/plugin-proposal-nullish-coalescing-operator":"^7.18.6"},"peerDependencies":{"@babel/core":">=7.11.6"},"_npmOperationalInternal":{"tmp":"tmp/babel-plugin-transform-rewrite-imports_1.5.2_1730260058466_0.09587681703842277","host":"s3://npm-registry-packages"}},"1.5.3":{"name":"babel-plugin-transform-rewrite-imports","version":"1.5.3","keywords":["babel","plugin","map","export","typescript","extension","commonjs","extensions","import","transform","esm","add","replace","append","mjs","cjs","require","es","module","dynamic","rewrite"],"author":{"name":"Xunnamius"},"license":"MIT","_id":"babel-plugin-transform-rewrite-imports@1.5.3","maintainers":[{"name":"xunnamius","email":"git@bernarddickens.dev"}],"homepage":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports","bugs":{"url":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/issues"},"dist":{"shasum":"64e4338b6fdb5e799dfcae6b3779a231929c473e","tarball":"https://registry.npmjs.org/babel-plugin-transform-rewrite-imports/-/babel-plugin-transform-rewrite-imports-1.5.3.tgz","fileCount":5,"integrity":"sha512-KSEwDgkgA4zyWspZ/y60z6JiuceENWceNfIquAZDlgetNfFWOM3lPtlxqtqp8RxNSds6/pjWRmXp9qE+Qt7uAQ==","signatures":[{"sig":"MEUCIQDQb9vF48zM9iIhjfWTg8HUDxWsX6ctc9HYEPukOIedtgIgLqjry6CzKH/Zdn4cFzpGRGfJ2FWeTEvFv49PUL65m3Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":69131},"type":"commonjs","config":{"plugin-build":{"docs":{"entry":"./src/index.ts"}}},"engines":{"node":"^14.20.0 || ^16.16.0 || >=18.5.0"},"exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/src/index.js"},"./package":"./package.json","./package.json":"./package.json"},"gitHead":"64809c01c740eb71b0f69068f791ac0d40acdd09","scripts":{"lint":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.lint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.lint.json --no-error-on-unmatched-pattern packages src; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test":"npm run test:unit --","build":"npm run build:dist --","clean":"git ls-files --exclude-standard --ignored --others --directory | grep -vE '^((\\.(env|vscode|husky))|next-env\\.d\\.ts|node_modules)($|\\/)' | xargs -p rm -rf","format":"MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && (echo $MD_FILES | xargs remark --no-config --no-stdout --quiet --frail --use gfm --use lint-no-undefined-references || (echo -n '\u001b' && echo '[37;41;1m FAIL \u001b[0m cannot continue with undefined references present' && false)) && sort-package-json './package.json' './packages/*/package.json' && echo $MD_FILES | NODE_ENV=format xargs remark --output --frail && echo $MD_FILES | xargs doctoc --no-title --maxlevel 3 --update-only && prettier --write .","prepare":"node -e \"execa = require('execa'); if(process.env.CI === undefined && (process.env.NODE_ENV === undefined || process.env.NODE_ENV === 'development')) { execa.sync('npx', ['husky', 'install'], { stdout: 'inherit', stderr: 'inherit' }); } else { console.log('skipped installing husky git hooks'); }\"","lint:all":"stdbuf -i0 -o0 -e0 tsc --project tsconfig.eslint.json; X=$?; stdbuf -i0 -o0 -e0 eslint --parser-options=project:tsconfig.eslint.json .; Y=$?; MD_FILES=$(node -e 'console.log(require(`glob-gitignore`).sync(`**/*.md`, { ignore: require(`fs`).readFileSync(`.prettierignore`, `utf8`).split(`\n`).filter(Boolean), dot: true }).join(`\n`))') && echo $MD_FILES | NODE_ENV=lint xargs remark --quiet --frail --no-stdout; Z=$?; [ $X -eq 0 ] && [ $Y -eq 0 ] && [ $Z -eq 0 ]","test:all":"NODE_ENV=test jest --coverage","test:unit":"NODE_ENV=test jest 'unit-.*\\.test\\.ts.*'","build:dist":"NODE_ENV=production tsc --project tsconfig.types.json --incremental false && tsconfig-replace-paths --project tsconfig.types.json && NODE_ENV=production-cjs babel src --extensions .ts --out-dir dist/src","build:docs":"if [ -r ./next.config.js ]; then typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none lib src test types external-scripts --exclude '**/*.test.*' --exclude external-scripts/bin; else ENTRY=`node -e 'const entry = require(\"./package.json\").config?.[\"plugin-build\"]?.docs?.entry; if(!entry) throw new Error(\"\\\"config['\"'\"'plugin-build'\"'\"'].docs.entry\\\" field is not defined in package.json\"); console.log(entry)'` && echo 'Entry file:' \"$ENTRY\" && typedoc --plugin typedoc-plugin-markdown --cleanOutputDir --tsconfig tsconfig.docs.json --out docs --readme none $(echo $ENTRY); fi","list-tasks":"node -e 'console.log(Object.keys(require(\"./package.json\").scripts).join(\"\\n\"))' && (npm run -ws list-tasks --if-present 2>/dev/null || true)","build:changelog":"conventional-changelog --outfile CHANGELOG.md --config ./conventional.config.js --release-count 0 --skip-unstable && (if [ \"$CHANGELOG_SKIP_TITLE\" != 'true' ]; then { node -e 'console.log(require(\"./conventional.config.js\").changelogTitle)'; cat CHANGELOG.md; } > CHANGELOG.md.ignore && mv CHANGELOG.md.ignore CHANGELOG.md; fi) && NODE_ENV=format remark --output --frail CHANGELOG.md && prettier --write CHANGELOG.md","build:externals":"NODE_ENV=production-external babel external-scripts --extensions .ts --out-dir external-scripts/bin --out-file-extension .mjs","test:repeat:all":"npm run __test:repeat:all --silent","test:integration":"NODE_ENV=test jest 'integration-.*\\.test\\.ts.*'","test:repeat:unit":"npm run __test:repeat:unit --silent","__test:repeat:all":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter || exit; done) && echo \"All tests passed! Congrats!\"","__test:repeat:unit":"echo 'Repeating test suite [initializing]...'; (i=0; while [ \"$((( i += 1 ) <= 100 ))\" -ne 0 ]; do sleep 0.1 && echo \"\\r\\033[1A\\033[0KRepeating test suite [run $i/100]...\" && JEST_SILENT_REPORTER_SHOW_WARNINGS=true NODE_ENV=test jest --reporters=jest-silent-reporter --testPathIgnorePatterns 'integration-.*\\.test\\.ts.*' dist || exit; done) && echo \"All tests passed! Congrats!\"","test:integration:node":"NODE_ENV=test jest 'integration-node.*\\.test\\.ts.*'","test:integration:client":"NODE_ENV=test jest 'integration-client.*\\.test\\.ts.*'","test:integration:externals":"NODE_ENV=test jest 'integration-external.*\\.test\\.ts.*'"},"_npmUser":{"name":"xunnamius","email":"git@bernarddickens.dev"},"repository":{"url":"git+https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports.git","type":"git"},"_npmVersion":"9.9.3","description":"Add an extension to import specifiers that do not already have one, replace the extensions of those that do, or even rewrite specifiers entirely.","directories":{},"sideEffects":false,"_nodeVersion":"22.10.0","dependencies":{"debug":"^4.3.7","core-js":"^3.38.1","@babel/types":"^7.26.0","@babel/template":"^7.25.9"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"*":["dist/src/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"del":"^8.0.0","glob":"^11.0.0","jest":"^29.7.0","execa":"^5.1.1","husky":"^9.1.6","doctoc":"^2.2.1","dotenv":"^16.4.5","eslint":"^8.33.0","semver":"^7.6.3","typedoc":"^0.26.10","prettier":"^3.3.3","type-fest":"^4.26.1","@babel/cli":"^7.25.9","babel-jest":"^29.7.0","remark-cli":"^12.0.1","remark-gfm":"^4.0.0","simple-git":"^3.27.0","strip-ansi":"^6.0.1","typescript":"^5.6.3","@types/jest":"^29.5.14","@types/node":"^22.8.4","jest-circus":"^29.7.0","lint-staged":"^15.2.10","remark-lint":"^10.0.0","@types/debug":"^4.1.12","babel-loader":"^9.2.1","spellchecker":"^3.7.1","jest-extended":"^4.0.2","remark-ignore":"^2.0.0","glob-gitignore":"^1.0.15","@commitlint/cli":"^19.5.0","@ergodark/types":"^1.0.17","text-extensions":"^3.1.0","unique-filename":"^4.0.0","lodash.mergewith":"^4.6.2","semantic-release":"https://xunn.at/semantic-release-atam@22.0.7","@babel/preset-env":"^7.26.0","sort-package-json":"^2.10.1","eslint-plugin-jest":"^28.8.3","remark-frontmatter":"^5.0.0","source-map-support":"^0.5.21","babel-plugin-tester":"^11.0.4","remark-lint-no-tabs":"^4.0.0","@babel/eslint-parser":"^7.25.9","all-contributors-cli":"^6.26.1","eslint-plugin-import":"^2.31.0","@semantic-release/git":"^10.0.1","eslint-plugin-unicorn":"^56.0.0","remark-tight-comments":"^2.0.0","remark-validate-links":"^13.0.1","@semantic-release/exec":"^6.0.3","remark-reference-links":"^7.0.0","tsconfig-replace-paths":"^0.0.14","@types/lodash.mergewith":"^4.6.9","remark-sort-definitions":"^2.0.0","typedoc-plugin-markdown":"^4.2.9","@babel/preset-typescript":"^7.26.0","remark-lint-no-empty-url":"^4.0.0","@typescript-eslint/parser":"^8.12.2","confusing-browser-globals":"^1.0.11","remark-lint-final-newline":"^3.0.0","conventional-changelog-cli":"^2.2.2","remark-capitalize-headings":"^2.0.1","remark-lint-file-extension":"^3.0.0","remark-renumber-references":"^2.0.0","@semantic-release/changelog":"^6.0.3","remark-lint-definition-case":"^4.0.0","remark-lint-list-item-style":"^2.0.0","remark-lint-no-literal-urls":"^4.0.0","babel-plugin-module-resolver":"^5.0.2","eslint-import-resolver-alias":"^1.1.2","remark-lint-fenced-code-flag":"^4.0.0","remark-lint-no-shell-dollars":"^4.0.0","eslint-plugin-module-resolver":"^1.5.0","remark-lint-hard-break-spaces":"^4.0.0","remark-lint-heading-increment":"^4.0.0","remark-lint-no-empty-sections":"^4.0.0","remark-lint-heading-whitespace":"^1.0.0","@commitlint/config-conventional":"^19.5.0","babel-plugin-source-map-support":"^2.2.0","remark-lint-first-heading-level":"^4.0.0","remark-lint-heading-word-length":"^2.0.0","@types/confusing-browser-globals":"^1.0.3","@typescript-eslint/eslint-plugin":"^8.12.2","remark-lint-strikethrough-marker":"^3.0.0","remark-remove-unused-definitions":"^2.0.0","remark-remove-url-trailing-slash":"^2.0.0","@types/babel__helper-plugin-utils":"^7.10.3","eslint-import-resolver-typescript":"^3.6.3","remark-lint-fenced-code-flag-case":"^2.0.0","remark-lint-no-reference-like-url":"^4.0.0","remark-lint-no-unused-definitions":"^4.0.0","remark-lint-no-heading-punctuation":"^4.0.0","eslint-import-resolver-babel-module":"^5.3.2","remark-lint-no-undefined-references":"^5.0.0","@babel/plugin-proposal-function-bind":"^7.25.9","babel-plugin-transform-rename-import":"^2.3.0","remark-lint-no-duplicate-definitions":"^4.0.0","remark-lint-no-duplicate-defined-urls":"^3.0.0","remark-lint-no-heading-content-indent":"^5.0.0","remark-lint-no-heading-like-paragraph":"^4.0.0","remark-lint-ordered-list-marker-style":"^4.0.0","remark-lint-ordered-list-marker-value":"^4.0.0","@babel/plugin-syntax-import-assertions":"^7.26.0","babel-plugin-transform-rewrite-imports":"^1.5.2","remark-lint-no-shortcut-reference-link":"^4.0.0","remark-lint-no-shortcut-reference-image":"^4.0.0","remark-lint-unordered-list-marker-style":"^4.0.0","babel-plugin-explicit-exports-references":"^1.0.2","remark-lint-no-blockquote-without-marker":"^6.0.0","remark-lint-no-multiple-toplevel-headings":"^4.0.0","@babel/plugin-proposal-export-default-from":"^7.25.9","@xunnamius/conventional-changelog-projector":"^1.2.2","babel-plugin-transform-default-named-imports":"^1.2.3","remark-lint-no-duplicate-headings-in-section":"^4.0.0","@babel/plugin-proposal-nullish-coalescing-operator":"^7.18.6"},"peerDependencies":{"@babel/core":">=7.11.6"},"_npmOperationalInternal":{"tmp":"tmp/babel-plugin-transform-rewrite-imports_1.5.3_1730288732174_0.4528044789200112","host":"s3://npm-registry-packages"}},"1.5.4":{"name":"babel-plugin-transform-rewrite-imports","version":"1.5.4","description":"Add an extension to import specifiers that do not already have one, replace the extensions of those that do, or even rewrite specifiers entirely","keywords":["babel","plugin","map","export","typescript","extension","commonjs","extensions","import","transform","esm","add","replace","append","mjs","cjs","require","es","module","dynamic","rewrite"],"homepage":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports#readme","bugs":{"url":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/issues"},"repository":{"type":"git","url":"git+https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports.git"},"license":"MIT","author":{"name":"Xunnamius"},"sideEffects":false,"type":"commonjs","exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/src/index.js"},"./package":"./package.json","./package.json":"./package.json"},"typesVersions":{"*":{"index":["dist/src/index.d.ts"],"package":["package.json"]}},"scripts":{"build":"npm run build:dist --","build:changelog":"symbiote build changelog --env NODE_NO_WARNINGS=1","build:dist":"symbiote build distributables --env NODE_NO_WARNINGS=1 --not-multiversal","build:docs":"symbiote build docs --env NODE_NO_WARNINGS=1","clean":"symbiote clean --env NODE_NO_WARNINGS=1","format":"symbiote format --env NODE_NO_WARNINGS=1 --hush","info":"symbiote project info --env NODE_NO_WARNINGS=1","lint":"npm run lint:package --","lint:package":"symbiote lint --env NODE_NO_WARNINGS=1 --hush","lint:packages":"symbiote lint --env NODE_NO_WARNINGS=1 --hush --scope unlimited","lint:project":"symbiote project lint --env NODE_NO_WARNINGS=1","list-tasks":"symbiote list-tasks --env NODE_NO_WARNINGS=1 --scope this-package","prepare":"symbiote project prepare --env NODE_NO_WARNINGS=1","release":"symbiote release --env NODE_NO_WARNINGS=1","renovate":"symbiote project renovate --env NODE_NO_WARNINGS=1 --github-reconfigure-repo --regenerate-assets --assets-preset lib","renovate:aliases":"symbiote project renovate --env NODE_NO_WARNINGS=1 --regenerate-assets --assets-preset lib --only-aliases","start":"symbiote start --env NODE_NO_WARNINGS=1 --","test":"npm run test:package:unit --","test:package:all":"symbiote test --env NODE_NO_WARNINGS=1 --tests all-local --coverage","test:package:e2e":"symbiote test --env NODE_NO_WARNINGS=1 --tests e2e-local","test:package:integration":"symbiote test --env NODE_NO_WARNINGS=1 --tests integration","test:package:unit":"symbiote test --env NODE_NO_WARNINGS=1 --tests unit type","test:packages:all":"symbiote test --env NODE_NO_WARNINGS=1 --tests all-local --scope unlimited --coverage","test:packages:all:unit":"symbiote test --env NODE_NO_WARNINGS=1 --tests unit type --scope unlimited --coverage"},"dependencies":{"@babel/template":"^7.27.2","@babel/types":"^7.28.2","core-js":"^3.45.1","rejoinder":"^2.0.3"},"devDependencies":{"@-xun/fs":"^2.0.0","@-xun/run":"^1.1.0","@-xun/symbiote":"4.13.4","@-xun/types":"^1.3.0","babel-plugin-tester":"^12.0.0","browserslist":"^4.25.3"},"peerDependencies":{"@babel/core":">=7.11.6"},"engines":{"node":"^20.18.0 || >=22.12.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_id":"babel-plugin-transform-rewrite-imports@1.5.4","gitHead":"ad8a1455dfef21aaec597d8848303cd63f3299d9","_nodeVersion":"24.5.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-efDpjRN2G3QEexylPAOX8NQv2JdMCllKaIwbjZyCC0GvvxZWkc44LJlCj5zm5TiqeklFJIp+YJiBZyJZMONpDg==","shasum":"18ebb9f0c246a661f2a7056ce2b077043dc6e73c","tarball":"https://registry.npmjs.org/babel-plugin-transform-rewrite-imports/-/babel-plugin-transform-rewrite-imports-1.5.4.tgz","fileCount":5,"unpackedSize":64244,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCoIItu0wqw9E035sQXbEPlN6W4TBD3YDV265K7S/DFRAIhAJcK3QGK4vsyRyLWljm9mVUlQTaXfrg+Unkz/cNKA+9N"}]},"_npmUser":{"name":"xunnamius","email":"git@bernarddickens.dev"},"directories":{},"maintainers":[{"name":"xunnamius","email":"git@bernarddickens.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/babel-plugin-transform-rewrite-imports_1.5.4_1756187112101_0.8495182248348143"},"_hasShrinkwrap":false}},"time":{"created":"2023-01-27T04:23:32.357Z","modified":"2025-08-26T05:45:12.433Z","1.0.0":"2023-01-27T04:23:32.613Z","1.0.1":"2023-01-28T10:07:15.962Z","1.1.0":"2023-01-29T06:34:08.968Z","1.2.0":"2023-02-02T12:06:46.746Z","1.3.0":"2024-10-27T07:59:49.002Z","1.3.1":"2024-10-27T18:31:19.533Z","1.4.0":"2024-10-28T09:34:55.485Z","1.5.0":"2024-10-28T09:58:42.213Z","1.5.1":"2024-10-29T09:07:06.386Z","1.5.2":"2024-10-30T03:47:38.692Z","1.5.3":"2024-10-30T11:45:32.356Z","1.5.4":"2025-08-26T05:45:12.278Z"},"bugs":{"url":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/issues"},"author":{"name":"Xunnamius"},"license":"MIT","homepage":"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports#readme","keywords":["babel","plugin","map","export","typescript","extension","commonjs","extensions","import","transform","esm","add","replace","append","mjs","cjs","require","es","module","dynamic","rewrite"],"repository":{"type":"git","url":"git+https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports.git"},"description":"Add an extension to import specifiers that do not already have one, replace the extensions of those that do, or even rewrite specifiers entirely","maintainers":[{"name":"xunnamius","email":"git@bernarddickens.dev"}],"readme":"<!-- symbiote-template-region-start 1 -->\n\n<p align=\"center\" width=\"100%\">\n  <img width=\"500\" src=\"https://raw.githubusercontent.com/Xunnamius/babel-plugin-transform-rewrite-imports/refs/heads/main/logo.png\">\n</p>\n\n<p align=\"center\" width=\"100%\">\n<!-- symbiote-template-region-end -->\nReliably add/replace extensions of select import specifiers or just rewrite them entirely!\n<!-- symbiote-template-region-start 2 -->\n</p>\n\n<hr />\n\n<div align=\"center\">\n\n[![Black Lives Matter!][x-badge-blm-image]][x-badge-blm-link]\n[![Last commit timestamp][x-badge-lastcommit-image]][x-badge-repo-link]\n[![Codecov][x-badge-codecov-image]][x-badge-codecov-link]\n[![Source license][x-badge-license-image]][x-badge-license-link]\n[![Uses Semantic Release!][x-badge-semanticrelease-image]][x-badge-semanticrelease-link]\n\n[![NPM version][x-badge-npm-image]][x-badge-npm-link]\n[![Monthly Downloads][x-badge-downloads-image]][x-badge-downloads-link]\n\n</div>\n\n<br />\n\n# babel-plugin-transform-rewrite-imports\n\n<!-- symbiote-template-region-end -->\n\nThis Babel plugin (1) reliably adds [_extensions_][1] to import and export\n[_specifiers_][2] that do not already have one, (2) selectively replaces\nextensions of specifiers that do, and (3) can rewrite whole specifiers in\nintricate ways using simple yet powerful [replacement maps][3].\n\nAll TypeScript and JavaScript flavors are supported depending on how Babel is\nconfigured in the project.\n\nFor example, something like this:\n\n```typescript\nimport { item1, type item2 } from '==> pretty specifier #1 <==';\n\nexport { here as there } from '==> pretty specifier #2 <==';\n\nconst elsewhere = `==> pretty specifier #${getRandomNumber()} <==`;\n\njest.mock('==> pretty specifier #3 <==');\n\nconst x = require('==> pretty specifier #4 <==');\n\nexport async function myFunction() {\n  return (await import(elsewhere, { with: { type: 'json' } })).name;\n}\n\nexport type MyType = {\n  typeOnlyImport: typeof import('==> pretty specifier #5 <==').Type;\n};\n```\n\nCan be easily transformed into something like this:\n\n```typescript\nimport { item1, type item2 } from '../../../specifier-1.js';\n\nexport { here as there } from '../specifier-2.js';\n\nconst elsewhere = `==> specifier #${getRandomNumber()} <==`;\n\njest.mock('../../../packages/a-different-monorepo-package/src/specifier-3.js');\n\nconst x = require('@specifier/four');\n\nconst __injected_dynamic_rewrite = function () {\n  /*...*/\n};\n\nexport async function myFunction() {\n  return (\n    await import(__injected_dynamic_rewrite(elsewhere), {\n      with: { type: 'json' }\n    })\n  ).name;\n}\n\nexport type MyType = {\n  typeOnlyImport: typeof import('../../../../node_modules/s-5/dist/src/lib.d.ts').Type;\n};\n```\n\nThe transform-rewrite-imports plugin comes in handy in situations like\ntranspiling TypeScript source with extensionless imports to ESM, or [changing\nalias paths][4] in TypeScript declaration (i.e. `.d.ts`) files into relative\npaths suitable for publishing. It does this more reliably and efficiently than\nprior art.\n\n<!-- symbiote-template-region-start 3 -->\n\n---\n\n<!-- remark-ignore-start -->\n<!-- symbiote-template-region-end -->\n<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n\n- [Install](#install)\n- [Comparison with Prior Art](#comparison-with-prior-art)\n- [Usage](#usage)\n  - [`appendExtension`](#appendextension)\n  - [`recognizedExtensions`](#recognizedextensions)\n  - [`replaceExtensions`](#replaceextensions)\n  - [`requireLikeFunctions`](#requirelikefunctions)\n  - [`injectDynamicRewriter`](#injectdynamicrewriter)\n- [Advanced Usage](#advanced-usage)\n  - [Rewriting Dynamic Imports and Requires with Non-Literal Arguments](#rewriting-dynamic-imports-and-requires-with-non-literal-arguments)\n- [Comprehensive Logging](#comprehensive-logging)\n- [Examples](#examples)\n  - [Real-World Examples](#real-world-examples)\n- [Appendix](#appendix)\n  - [Published Package Details](#published-package-details)\n  - [License](#license)\n- [Contributing and Support](#contributing-and-support)\n  - [Contributors](#contributors)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n<!-- symbiote-template-region-start 4 -->\n<!-- remark-ignore-end -->\n\n<br />\n\n## Install\n\n<!-- symbiote-template-region-end -->\n\n```shell\nnpm install --save-dev babel-plugin-transform-rewrite-imports\n```\n\nAnd integrate the following snippet into your Babel configuration:\n\n```typescript\nmodule.exports = {\n  plugins: [\n    [\n      'babel-plugin-transform-rewrite-imports',\n      {\n        // See below for configuration instructions and examples\n      }\n    ]\n  ]\n};\n```\n\nFinally, run Babel through your toolchain (Webpack, Jest, etc) or manually:\n\n```shell\nnpx babel src --out-dir dist\n```\n\n## Comparison with Prior Art\n\nThe transform-rewrite-imports plugin effectively combines the functionality of\nthe following:\n\n- [babel-plugin-module-resolver][5]\n\n  The module-resolver plugin inspired quite a bit of the functionality of\n  transform-rewrite-imports, such as [transforming `require`-like functions][6],\n  and offers some similar features like RegExp-based aliasing and support for\n  substitution functions. However, transform-rewrite-imports is capable of more\n  complex replacements (like handling intricate file extension changes) with\n  support for a wider variety of specifier types while surfacing a simpler\n  interface.\n\n- [babel-plugin-add-import-extension][7]\n\n  transform-rewrite-imports started off as a fork of add-import-extension;\n  transform-rewrite-imports functions [more consistently][8] and includes\n  support for transforming `require`, `require`-like, static `import()`, _and\n  arbitrary dynamic `import()`_ statements, replacing multiple extensions using\n  complex logic, and [reliably ignoring extensions that should not be\n  replaced][9].\n\n- [babel-plugin-replace-import-extension][10]\n\n  transform-rewrite-imports is similar in intent to replace-import-extension.\n  However, rewriting extensions is only a small fraction of what\n  transform-rewrite-imports can do. And while both extensions support\n  [transforming dynamic imports][11], transform-rewrite-imports results in more\n  efficient code in production environments due to (1) avoiding injecting\n  dynamic code into the AST except as the very last resort and (2) only\n  injecting dynamic code once and caching it globally (at the file level) rather\n  than filling the file with repeated functions.\n\n- [babel-plugin-transform-rename-import][12]\n\n  With its last update published over 6 years ago, transform-rename-import can\n  also replace import specifiers, though transform-rewrite-imports offers a\n  [powerful superset][13] of replacer functionality, including optionally\n  performing replacements of [arbitrary dynamic imports][11] at runtime and\n  appending extensions to specifiers that would otherwise not have one.\n\n- [tsconfig-replace-paths][14] / [tsconfig-paths][15] / [tscpaths][16]\n\n  tsconfig-replace-paths and its predecessors/alternatives tsconfig-paths and\n  tscpaths are extremely useful for transpiling TypeScript projects, as they\n  handle alias- and path- resolving use cases without additional configuration;\n  transform-rewrite-imports, on the other hand, must be fed path/alias\n  information from `tsconfig.json` manually.\n\n  Unfortunately, tsconfig-paths is not a Babel plugin and requires [patching\n  your runtime][17] while the others do not support all the latest\n  TypeScript/Babel AST features (like [`TsImportType`][18]) and therefore fail\n  to consistently and correctly transform certain files (especially certain\n  `.d.ts` files).\n\n  By mapping a project's `tsconfig.json` `paths` value to a replacement map\n  transform-rewrite-imports can understand, it becomes possible to ditch\n  tsconfig-replace-paths etc and reduce dependency count. [Here's an\n  example][19] using transform-rewrite-imports to replace these plugins (and\n  babel-plugin-module-resolver) for transforming both sources and type\n  definitions. Essentially, this Babel configuration file maps the project's\n  `tsconfig.json` `paths` into a [`replaceExtensions`][13] replacement map.\n\n## Usage\n\nBy default this plugin does not affect Babel's output. You must explicitly\nconfigure this extension before any specifier will be rewritten.\n\nMore information on the available options can be found in [the\ndocs][x-repo-docs]:\n\n```typescript\n{\n  appendExtension?: string | Callback<string | undefined>;\n  recognizedExtensions?: string[];\n  replaceExtensions?: Record<string, string | Callback<string>>;\n  requireLikeFunctions?: string[];\n  injectDynamicRewriter?: 'never' | 'only-if-necessary';\n  silent?: boolean;\n  verbose?: boolean;\n}\n```\n\n### `appendExtension`\n\nTo append an extension to all relative import specifiers that do not already\nhave a recognized extension, use `appendExtension`:\n\n```typescript\nmodule.exports = {\n  plugins: [\n    [\n      'babel-plugin-transform-rewrite-imports',\n      {\n        appendExtension: '.mjs'\n      }\n    ]\n  ]\n};\n```\n\n> [!TIP]\n>\n> Only relative import specifiers (that start with `./` or `../`) will be\n> considered for `appendExtension`. This means bare specifiers (e.g. built-in\n> packages and packages imported from `node_modules`) and absolute specifiers\n> will never be affected by `appendExtension`.\n\n### `recognizedExtensions`\n\nWhat is and is not considered a \"recognized extension\" is determined by\n`recognizedExtensions`:\n\n```typescript\nmodule.exports = {\n  plugins: [\n    [\n      'babel-plugin-transform-rewrite-imports',\n      {\n        appendExtension: '.mjs',\n        recognizedExtensions: ['.js']\n      }\n    ]\n  ]\n};\n```\n\nThat is: **import specifiers that end with an extension included in\n`recognizedExtensions` will never have [`appendExtension`][21] appended to\nthem**. All other imports, including those with a `.` in the file name (e.g.\n`component.module.style.ts`), may be rewritten.\n\n`recognizedExtensions` is set to `['.js', '.jsx', '.mjs', '.cjs', '.json']` by\ndefault.\n\nIf the value of [`appendExtension`][21] is not included in\n`recognizedExtensions`, then imports that already end in [`appendExtension`][21]\nwill have [`appendExtension`][21] appended to them (e.g. `index.ts` is rewritten\nas `index.ts.ts` when `appendExtension: '.ts'` and `recognizedExtensions` is its\ndefault value). If this behavior is undesired, ensure [`appendExtension`][21] is\nincluded in `recognizedExtensions`.\n\n> [!WARNING]\n>\n> Note that specifying a custom value for `recognizedExtensions` overwrites the\n> default value entirely. To extend rather than overwrite, you can import the\n> default value from the package itself:\n>\n> ```typescript\n> const {\n>   defaultRecognizedExtensions\n> } = require('babel-plugin-transform-rewrite-imports');\n>\n> module.exports = {\n>   plugins: [\n>     [\n>       'babel-plugin-transform-rewrite-imports',\n>       {\n>         appendExtension: '.mjs',\n>         recognizedExtensions: [...defaultRecognizedExtensions, '.ts']\n>       }\n>     ]\n>   ]\n> };\n> ```\n\n### `replaceExtensions`\n\nYou can also replace one or more existing extensions in specifiers using a\nreplacement map:\n\n```typescript\nmodule.exports = {\n  plugins: [\n    [\n      'babel-plugin-transform-rewrite-imports',\n      {\n        replaceExtensions: {\n          // Replacements are evaluated **in order**, stopping on the first match.\n          // That means if the following two keys were listed in reverse order,\n          // .node.js would become .node.mjs instead of .cjs\n          '.node.js': '.cjs',\n          '.js': '.mjs'\n        }\n      }\n    ]\n  ]\n};\n```\n\nThese configurations can be combined to rewrite many imports at once. For\ninstance, if you wanted to replace certain extensions and append only when no\nrecognized or listed extension is specified:\n\n```typescript\nmodule.exports = {\n  plugins: [\n    [\n      'babel-plugin-transform-rewrite-imports',\n      {\n        appendExtension: '.mjs',\n        replaceExtensions: {\n          '.node.js': '.cjs',\n          // Since .js is in recognizedExtensions by default, file.js would normally\n          // be ignored. However, since .js is mapped to .mjs in the\n          // replaceExtensions map, file.js becomes file.mjs\n          '.js': '.mjs'\n        }\n      }\n    ]\n  ]\n};\n```\n\nSince specifier comparisons are made using [`String.endsWith`][39] without\nsplitting on directory separators or any other characters,\n[`appendExtension`][21] and `replaceExtensions` accept any suffix, not just\nthose that begin with `.`; additionally, `replaceExtensions` accepts _regular\nexpressions_. This allows you to partially or entirely rewrite a specifier\nrather than just its extension:\n\n```typescript\nconst {\n  defaultRecognizedExtensions\n} = require('babel-plugin-transform-rewrite-imports');\n\nmodule.exports = {\n  plugins: [\n    [\n      'babel-plugin-transform-rewrite-imports',\n      {\n        appendExtension: '.mjs',\n        // Add .css to recognizedExtensions so .mjs isn't automatically appended\n        recognizedExtensions: [...defaultRecognizedExtensions, '.css'],\n        replaceExtensions: {\n          '.node.js': '.cjs',\n          '.js': '.mjs',\n\n          // The following key replaces the entire specifier when matched\n          '^package$': `${__dirname}/package.json`,\n          // If .css wasn't in recognizedExtensions, my-utils/src/file.less would\n          // become my-utils/src/file.css.mjs instead of my-utils/src/file.css\n          '(.+?)\\\\.less$': '$1.css'\n        }\n      }\n    ]\n  ]\n};\n```\n\n> [!TIP]\n>\n> If a key of `replaceExtensions` begins with `^` _or_ ends with `$`, it is\n> considered a regular expression instead of an extension. Regular expression\n> replacements support substitutions of capturing groups as well (e.g. `$1`,\n> `$2`, etc).\n\n`replaceExtensions` is evaluated and replacements made _before_\n[`appendExtension`][21] is appended to specifiers with unrecognized or missing\nextensions. This means an extensionless import specifier could be rewritten by\n`replaceExtensions` to have a recognized extension, which would then be ignored\ninstead of having [`appendExtension`][21] appended to it.\n\n### `requireLikeFunctions`\n\nWhen it comes to deciding what is and is not a specifier,\ntransform-rewrite-imports will always scan [`ImportDeclaration`][22],\n[`ExportAllDeclaration`][23], [`ExportNamedDeclaration`][24],\n[`TSImportType`][18], and dynamic import [`CallExpression`][25]s for specifiers.\n\nFor call expressions specifically, `requireLikeFunctions` is used to determine\nwhich additional function calls will have their first arguments scanned for\nspecifiers. By default, `requireLikeFunctions` is set to:\n\n```typescript\n[\n  'require',\n  'require.resolve',\n  'System.import',\n  'jest.genMockFromModule',\n  'jest.mock',\n  'jest.unmock',\n  'jest.doMock',\n  'jest.dontMock',\n  'jest.requireActual'\n];\n```\n\n> [!TIP]\n>\n> Similar to `defaultRequireLikeFunctions`, these defaults are exported under\n> the name `defaultRequireLikeFunctions`.\n\nThis means call expressions like `require(...)`, `jest.mock(...)`, etc will be\ntreated the same way as `import(...)`, where the first parameter is considered a\nspecifier. You are free to tweak this functionality to suit your environment.\n\n### `injectDynamicRewriter`\n\nBy default, a dynamic rewriter is injected only if necessary. Set this to\n`\"never\"` to ensure a dynamic rewriter is _never_ injected into the the output\nregardless of any perceived necessity.\n\nRefer to [the Advanced Usage section][11] for more details.\n\n## Advanced Usage\n\n[`replaceExtensions`][13] and [`appendExtension`][21] both accept function\ncallbacks as values everywhere strings are accepted. This can be used to provide\nadvanced replacement logic.\n\nThese callback functions have the following signatures:\n\n```typescript\ntype AppendExtensionCallback = (context: {\n  specifier: string;\n  capturingGroups: never[];\n  filepath: string;\n}) => string | undefined;\n\ntype ReplaceExtensionsCallback = (context: {\n  specifier: string;\n  capturingGroups: string[];\n  filepath: string;\n}) => string;\n```\n\nWhere `specifier` is the [import/export specifier][2] being rewritten,\n`capturingGroups` is a simple string array of capturing groups returned by\n[`String.prototype.match()`][26], and `filepath` is the absolute path to the\noriginal input file being transformed by Babel. `capturingGroups` will always be\nan empty array except when it appears within a function value of a\n[`replaceExtensions`][13] entry that has a regular expression key.\n\nWhen provided as the value of [`appendExtension`][21], a string containing an\nextension should be returned (including leading dot). When provided as the value\nof a [`replaceExtensions`][13] entry, a string containing the full specifier\nshould be returned. When returning a full specifier, capturing group\nsubstitutions (e.g. $1, $2, etc) within the returned string will be honored.\n\nFurther, in the case of [`appendExtension`][21], note that `specifier`, if its\nbasename is `.` or `..` or if it ends in a directory separator (e.g. `/`), will\nhave \"/index\" appended to the end before the callback is invoked. However, if\nthe callback returns `undefined` (and the specifier was not matched in\n[`replaceExtensions`][13]), the specifier will not be modified in any way.\n\nBy way of example (see the output of this example [here][27]):\n\n```typescript\nmodule.exports = {\n  plugins: [\n    [\n      'babel-plugin-transform-rewrite-imports',\n      {\n        // If the specifier ends with \"/no-ext\", do not append any extension\n        appendExtension: ({ specifier }) => {\n          return specifier.endsWith('/no-ext') ||\n            specifier.endsWith('..') ||\n            specifier === './another-thing'\n            ? undefined\n            : '.mjs';\n        },\n        replaceExtensions: {\n          // Rewrite imports of packages in a monorepo to use their actual names\n          //         v capturing group #1: capturingGroups[1]\n          '^packages/([^/]+)(/.+)?': ({ specifier, capturingGroups }) => {\n            //              ^ capturing group #2: capturingGroups[2]\n            if (\n              specifier === 'packages/root' ||\n              specifier.startsWith('packages/root/')\n            ) {\n              return `./monorepo-js${capturingGroups[2] ?? '/'}`;\n            } else if (\n              !capturingGroups[2] ||\n              capturingGroups[2].startsWith('/src/index')\n            ) {\n              return `@monorepo/$1`;\n            } else if (capturingGroups[2].startsWith('/package.json')) {\n              return `@monorepo/$1$2`;\n            } else {\n              return `@monorepo/$1/dist$2`;\n            }\n          }\n        }\n      }\n    ]\n  ]\n};\n```\n\n### Rewriting Dynamic Imports and Requires with Non-Literal Arguments\n\nWhen transforming dynamic imports and require statements [that do not have a\nstring literal as the first argument][28], and [`injectDynamicRewriter`][20] is\nnot set to `'never'`, the options passed to this plugin are [transpiled and\ninjected][30] into the resulting AST.\n\n> [!CAUTION]\n>\n> This means you take a slight performance hit when you do arbitrary dynamic\n> imports that cannot be statically analyzed (e.g.\n> `require(getMd5Hash() + '.txt')`). These types of dynamic imports are usually\n> code smell, but this library is built to accommodate them regardless.\n>\n> However, **if you are NOT doing _arbitrary_ dynamic imports**, which are\n> dynamic imports where the first argument is not a string literal, then this\n> section is of no relevance to you since nothing extra will be injected into\n> the AST.\n\nTherefore, to be safe, **callback functions must not reference variables outside\nof their immediate [scope][31]**.\n\nGood:\n\n```typescript\nmodule.exports = {\n  plugins: [\n    [\n      'babel-plugin-transform-rewrite-imports',\n      {\n        replaceExtensions: {\n          '^packages/([^/]+)(/.+)?': ({ specifier, capturingGroups }) => {\n            const myPkg = require('my-pkg');\n            myPkg.doStuff(specifier, capturingGroups);\n          }\n        }\n      }\n    ]\n  ]\n};\n```\n\nBad:\n\n```typescript\nconst myPkg = require('my-pkg');\n\nmodule.exports = {\n  plugins: [\n    [\n      'babel-plugin-transform-rewrite-imports',\n      {\n        replaceExtensions: {\n          '^packages/([^/]+)(/.+)?': ({ specifier, capturingGroups }) => {\n            myPkg.doStuff(specifier, capturingGroups);\n          }\n        }\n      }\n    ]\n  ]\n};\n```\n\nTechnically, you can get away with violating this rule if you're _sure_ you'll\nonly ever use [dynamic imports/require statements with string literal\narguments][32].\n\n## Comprehensive Logging\n\nLike Babel itself, this plugin leverages [debug (via rejoinder)][33] under the\nhood for log management. You can take advantage of this to peer into\ntransform-rewrite-imports's innermost workings and deepest decision-making\nprocesses by [activating][34] the appropriate log level. For example, the\nfollowing will enable all logging related to this plugin:\n\n```bash\nDEBUG='babel-plugin-transform-rewrite-imports:*' npx babel src --out-dir dist\n```\n\n## Examples\n\nWith the following snippet integrated into your Babel configuration:\n\n```typescript\nconst {\n  defaultRecognizedExtensions\n} = require('babel-plugin-transform-rewrite-imports');\n\nmodule.exports = {\n  plugins: [\n    [\n      'babel-plugin-transform-rewrite-imports',\n      {\n        appendExtension: '.mjs',\n        recognizedExtensions: [...defaultRecognizedExtensions, '.css'],\n        replaceExtensions: {\n          '.ts': '.mjs',\n          '^package$': `${__dirname}/package.json`,\n          '(.+?)\\\\.less$': '$1.css'\n        }\n      }\n    ]\n  ]\n};\n```\n\nThe following source:\n\n```typescript\n/* file: src/index.ts */\nimport { name as pkgName } from 'package';\nimport { primary } from '.';\nimport { secondary } from '..';\nimport { tertiary } from '../..';\nimport dirImport from './some-dir/';\nimport jsConfig from './jsconfig.json';\nimport projectConfig from './project.config.cjs';\nimport { add, double } from './src/numbers';\nimport { curry } from './src/typed/curry.ts';\nimport styles from './src/less/styles.less';\n\n// Note that, unless otherwise configured, @babel/preset-typescript deletes\n// type-only imports. If you want to operate on type imports and/or .d.ts files,\n// use @babel/syntax-typescript instead. See ./test/supports-type-only for\n// an example.\nimport type * as AllTypes from './lib/something.mjs';\n\nexport { triple, quadruple } from './lib/num-utils';\n\n// Note that, unless otherwise configured, @babel/preset-typescript deletes\n// type-only exports. If you want to operate on type imports and/or .d.ts files,\n// use @babel/syntax-typescript instead. See ./test/supports-type-only for\n// an example.\nexport type { NamedType } from './lib/something';\n\nconst thing = await import('./thing');\nconst anotherThing = require('./another-thing');\n\nconst thing2 = await import(someFn(`./${someVariable}`) + '.json');\nconst anotherThing2 = require(someOtherVariable);\n```\n\nIs, depending on your other plugins/settings, transformed into something like:\n\n```typescript\n/* file: dist/index.js */\nconst _rewrite = (importPath, options) => {\n    ...\n  },\n  _rewrite_options = {\n    appendExtension: '.mjs',\n    recognizedExtensions: ['.js', '.jsx', '.mjs', '.cjs', '.json', '.css'],\n    replaceExtensions: {\n      '.ts': '.mjs',\n      '^package$': '/absolute/path/to/project/package.json',\n      '(.+?)\\\\.less$': '$1.css'\n    }\n  };\n\nimport { name as pkgName } from '/absolute/path/to/project/package.json';\nimport { primary } from './index.mjs';\nimport { secondary } from '../index.mjs';\nimport { tertiary } from '../../index.mjs';\nimport dirImport from './some-dir/index.mjs';\nimport jsConfig from './jsconfig.json';\nimport projectConfig from './project.config.cjs';\nimport { add, double } from './src/numbers.mjs';\nimport { curry } from './src/typed/curry.mjs';\nimport styles from './src/less/styles.css';\n\nexport { triple, quadruple } from './lib/num-utils.mjs';\n\nconst thing = await import('./thing.mjs');\nconst anotherThing = require('./another-thing.mjs');\n\n// Require calls and dynamic imports with a non-string-literal first argument\n// are transformed into function calls that dynamically return the rewritten\n// string:\n\nconst thing2 = await import(\n  _rewrite(someFn(`./${someVariable}`) + '.json', _rewrite_options)\n);\n\nconst anotherThing2 = require(_rewrite(someOtherVariable, _rewrite_options));\n\n```\n\n> [!NOTE]\n>\n> See the full output of this example [here][35].\n\n### Real-World Examples\n\nFor some real-world examples of this Babel plugin in action, check out\n[symbiote's `babel.config.js` file][19] (which uses transform-rewrite-imports to\nreplace both babel-plugin-module-resolver and tsconfig-replace-paths),\n[unified-utils][36], [this very repository][37], or just take a peek at the\n[test cases][38].\n\n<!-- symbiote-template-region-start 5 -->\n\n## Appendix\n\n<!-- symbiote-template-region-end -->\n\nFurther documentation can be found under [`docs/`][x-repo-docs].\n\n<!-- symbiote-template-region-start 6 -->\n\n### Published Package Details\n\nThis is a [CJS2 package][x-pkg-cjs-mojito] with statically-analyzable exports\nbuilt by Babel for use in Node.js versions that are not end-of-life. For\nTypeScript users, this package supports both `\"Node10\"` and `\"Node16\"` module\nresolution strategies.\n\n<!-- symbiote-template-region-end -->\n<!-- symbiote-template-region-start 7 -->\n\n<details><summary>Expand details</summary>\n\nThat means both CJS2 (via `require(...)`) and ESM (via `import { ... } from ...`\nor `await import(...)`) source will load this package from the same entry points\nwhen using Node. This has several benefits, the foremost being: less code\nshipped/smaller package size, avoiding [dual package\nhazard][x-pkg-dual-package-hazard] entirely, distributables are not\npacked/bundled/uglified, a drastically less complex build process, and CJS\nconsumers aren't shafted.\n\nEach entry point (i.e. `ENTRY`) in [`package.json`'s\n`exports[ENTRY]`][x-repo-package-json] object includes one or more [export\nconditions][x-pkg-exports-conditions]. These entries may or may not include: an\n[`exports[ENTRY].types`][x-pkg-exports-types-key] condition pointing to a type\ndeclaration file for TypeScript and IDEs, a\n[`exports[ENTRY].module`][x-pkg-exports-module-key] condition pointing to\n(usually ESM) source for Webpack/Rollup, a `exports[ENTRY].node` and/or\n`exports[ENTRY].default` condition pointing to (usually CJS2) source for Node.js\n`require`/`import` and for browsers and other environments, and [other\nconditions][x-pkg-exports-conditions] not enumerated here. Check the\n[package.json][x-repo-package-json] file to see which export conditions are\nsupported.\n\nNote that, regardless of the [`{ \"type\": \"...\" }`][x-pkg-type] specified in\n[`package.json`][x-repo-package-json], any JavaScript files written in ESM\nsyntax (including distributables) will always have the `.mjs` extension. Note\nalso that [`package.json`][x-repo-package-json] may include the\n[`sideEffects`][x-pkg-side-effects-key] key, which is almost always `false` for\noptimal [tree shaking][x-pkg-tree-shaking] where appropriate.\n\n<!-- symbiote-template-region-end -->\n<!-- symbiote-template-region-start 8 -->\n\n</details>\n\n### License\n\n<!-- symbiote-template-region-end -->\n\nSee [LICENSE][x-repo-license].\n\n<!-- symbiote-template-region-start 9 -->\n\n## Contributing and Support\n\n**[New issues][x-repo-choose-new-issue] and [pull requests][x-repo-pr-compare]\nare always welcome and greatly appreciated! 🤩** Just as well, you can [star 🌟\nthis project][x-badge-repo-link] to let me know you found it useful! ✊🏿 Or [buy\nme a beer][x-repo-sponsor], I'd appreciate it. Thank you!\n\nSee [CONTRIBUTING.md][x-repo-contributing] and [SUPPORT.md][x-repo-support] for\nmore information.\n\n<!-- symbiote-template-region-end -->\n<!-- symbiote-template-region-start 10 -->\n\n### Contributors\n\n<!-- symbiote-template-region-end -->\n<!-- symbiote-template-region-start root-package-only -->\n<!-- remark-ignore-start -->\n<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->\n\n[![All Contributors](https://img.shields.io/badge/all_contributors-1-orange.svg?style=flat-square)](#contributors-)\n\n<!-- ALL-CONTRIBUTORS-BADGE:END -->\n<!-- remark-ignore-end -->\n\nThanks goes to these wonderful people ([emoji\nkey][x-repo-all-contributors-emojis]):\n\n<!-- remark-ignore-start -->\n<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->\n<!-- prettier-ignore-start -->\n<!-- markdownlint-disable -->\n\n<table>\n  <tbody>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"14.28%\"><a href=\"https://xunn.io/\"><img src=\"https://avatars.githubusercontent.com/u/656017?v=4?s=100\" width=\"100px;\" alt=\"Bernard\"/><br /><sub><b>Bernard</b></sub></a><br /><a href=\"#infra-Xunnamius\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/commits?author=Xunnamius\" title=\"Code\">💻</a> <a href=\"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/commits?author=Xunnamius\" title=\"Documentation\">📖</a> <a href=\"#maintenance-Xunnamius\" title=\"Maintenance\">🚧</a> <a href=\"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/commits?author=Xunnamius\" title=\"Tests\">⚠️</a> <a href=\"https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/pulls?q=is%3Apr+reviewed-by%3AXunnamius\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n  </tbody>\n  <tfoot>\n    <tr>\n      <td align=\"center\" size=\"13px\" colspan=\"7\">\n        <img src=\"https://raw.githubusercontent.com/all-contributors/all-contributors-cli/1b8533af435da9854653492b1327a23a4dbd0a10/assets/logo-small.svg\">\n          <a href=\"https://all-contributors.js.org/docs/en/bot/usage\">Add your contributions</a>\n        </img>\n      </td>\n    </tr>\n  </tfoot>\n</table>\n\n<!-- markdownlint-restore -->\n<!-- prettier-ignore-end -->\n<!-- ALL-CONTRIBUTORS-LIST:END -->\n<!-- remark-ignore-end -->\n\nThis project follows the [all-contributors][x-repo-all-contributors]\nspecification. Contributions of any kind welcome!\n\n<!-- symbiote-template-region-end -->\n<!-- symbiote-template-region-start workspace-package-only -->\n<!-- (section elided by symbiote) -->\n<!-- symbiote-template-region-end -->\n\n[x-badge-blm-image]: https://xunn.at/badge-blm 'Join the movement!'\n[x-badge-blm-link]: https://xunn.at/donate-blm\n[x-badge-codecov-image]:\n  https://img.shields.io/codecov/c/github/Xunnamius/babel-plugin-transform-rewrite-imports/main?style=flat-square&token=HWRIOBAAPW&flag=package.main_root\n  'Is this package well-tested?'\n[x-badge-codecov-link]:\n  https://codecov.io/gh/Xunnamius/babel-plugin-transform-rewrite-imports\n[x-badge-downloads-image]:\n  https://img.shields.io/npm/dm/babel-plugin-transform-rewrite-imports?style=flat-square\n  'Number of times this package has been downloaded per month'\n[x-badge-downloads-link]:\n  https://npmtrends.com/babel-plugin-transform-rewrite-imports\n[x-badge-lastcommit-image]:\n  https://img.shields.io/github/last-commit/Xunnamius/babel-plugin-transform-rewrite-imports?style=flat-square\n  'Latest commit timestamp'\n[x-badge-license-image]:\n  https://img.shields.io/npm/l/babel-plugin-transform-rewrite-imports?style=flat-square\n  \"This package's source license\"\n[x-badge-license-link]:\n  https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/blob/main/LICENSE\n[x-badge-npm-image]:\n  https://xunn.at/npm-pkg-version/babel-plugin-transform-rewrite-imports\n  'Install this package using npm or yarn!'\n[x-badge-npm-link]: https://npm.im/babel-plugin-transform-rewrite-imports\n[x-badge-repo-link]:\n  https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports\n[x-badge-semanticrelease-image]:\n  https://xunn.at/badge-semantic-release\n  'This repo practices continuous integration and deployment!'\n[x-badge-semanticrelease-link]:\n  https://github.com/semantic-release/semantic-release\n[x-pkg-cjs-mojito]:\n  https://dev.to/jakobjingleheimer/configuring-commonjs-es-modules-for-nodejs-12ed#publish-only-a-cjs-distribution-with-property-exports\n[x-pkg-dual-package-hazard]:\n  https://nodejs.org/api/packages.html#dual-package-hazard\n[x-pkg-exports-conditions]:\n  https://webpack.js.org/guides/package-exports#reference-syntax\n[x-pkg-exports-module-key]:\n  https://webpack.js.org/guides/package-exports#providing-commonjs-and-esm-version-stateless\n[x-pkg-exports-types-key]:\n  https://devblogs.microsoft.com/typescript/announcing-typescript-4-5-beta#packagejson-exports-imports-and-self-referencing\n[x-pkg-side-effects-key]:\n  https://webpack.js.org/guides/tree-shaking#mark-the-file-as-side-effect-free\n[x-pkg-tree-shaking]: https://webpack.js.org/guides/tree-shaking\n[x-pkg-type]:\n  https://github.com/nodejs/node/blob/8d8e06a345043bec787e904edc9a2f5c5e9c275f/doc/api/packages.md#type\n[x-repo-all-contributors]: https://github.com/all-contributors/all-contributors\n[x-repo-all-contributors-emojis]: https://allcontributors.org/docs/en/emoji-key\n[x-repo-choose-new-issue]:\n  https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/issues/new/choose\n[x-repo-contributing]: /CONTRIBUTING.md\n[x-repo-docs]: docs\n[x-repo-license]: ./LICENSE\n[x-repo-package-json]: package.json\n[x-repo-pr-compare]:\n  https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/compare\n[x-repo-sponsor]: https://github.com/sponsors/Xunnamius\n[x-repo-support]: /.github/SUPPORT.md\n[1]: https://en.wikipedia.org/wiki/Filename_extension\n[2]: https://nodejs.org/api/esm.html#terminology\n[3]: #usage\n[4]:\n  https://www.reddit.com/r/typescript/comments/9mdfio/change_back_your_alias_paths_to_relative_paths_in\n[5]:\n  https://github.com/tleunen/babel-plugin-module-resolver/blob/HEAD/DOCS.md#extensions\n[6]: #requirelikefunctions\n[7]: https://github.com/karlprieb/babel-plugin-add-import-extension\n[8]: https://codeberg.org/karl/babel-plugin-add-import-extension/issues/3\n[9]: https://codeberg.org/karl/babel-plugin-add-import-extension/issues/10\n[10]: https://www.npmjs.com/package/babel-plugin-replace-import-extension\n[11]: #rewriting-dynamic-imports-and-requires-with-non-literal-arguments\n[12]: https://www.npmjs.com/package/babel-plugin-transform-rename-import\n[13]: #replaceextensions\n[14]: https://www.npmjs.com/package/tsconfig-replace-paths\n[15]: https://github.com/dividab/tsconfig-paths\n[16]: https://github.com/joonhocho/tscpaths\n[17]: https://github.com/dividab/tsconfig-paths?tab=readme-ov-file#how-to-use\n[18]: https://babeljs.io/docs/babel-types#tsimporttype\n[19]:\n  https://github.com/Xunnamius/symbiote/blob/main/src/assets/transformers/_babel.config.cjs.ts\n[20]: ./docs/src/type-aliases/Options.md#injectdynamicrewriter\n[21]: #appendextension\n[22]: https://babeljs.io/docs/babel-types#importdeclaration\n[23]: https://babeljs.io/docs/babel-types#exportalldeclaration\n[24]: https://babeljs.io/docs/babel-types#exportnameddeclaration\n[25]: https://babeljs.io/docs/babel-types#callexpression\n[26]:\n  https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/match\n[27]: ./test/fixtures/supports-callback-values/output.js\n[28]:\n  https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/blob/50186e4dafbe022390727985edd14c2af9c85cb2/test/fixtures/supports-callback-values/code.ts#L38-L39\n[30]:\n  https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/blob/50186e4dafbe022390727985edd14c2af9c85cb2/test/fixtures/supports-callback-values/output.js#L75-L97\n[31]: https://developer.mozilla.org/en-US/docs/Glossary/Scope\n[32]:\n  https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/blob/50186e4dafbe022390727985edd14c2af9c85cb2/test/fixtures/supports-callback-values/output.js#L130-L131\n[33]: https://npm.im/rejoinder\n[34]: https://www.npmjs.com/package/debug#usage\n[35]:\n  https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/tree/main/test/fixtures/readme-examples-work/output.js\n[36]: https://github.com/Xunnamius/unified-utils/blob/main/babel.config.js\n[37]:\n  https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/blob/main/babel.config.cjs\n[38]:\n  https://github.com/Xunnamius/babel-plugin-transform-rewrite-imports/tree/main/test/fixtures\n[39]:\n  https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\n","readmeFilename":"README.md"}