{"_id":"@blackglory/jest-node-exports-resolver","_rev":"1-aa93c4518a99019be5b1539ec484faa9","name":"@blackglory/jest-node-exports-resolver","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@blackglory/jest-node-exports-resolver","version":"0.1.0","description":"Jest resolver to handle node's 'exports' package entry points.","keywords":["jest","resolver","node","exports","multiple-entries"],"main":"index.js","repository":{"type":"git","url":"git+https://github.com/k-g-a/jest-node-exports-resolver.git"},"author":{"name":"Gleb Kochergin","email":"k-g-a@users.noreply.github.com"},"contributors":[{"name":"Jesús Leganés-Combarro 'piranna'","email":"jesus.leganes.combarro@gmail.com"}],"license":"MIT","private":false,"devDependencies":{"prettier":"^2.4.1"},"gitHead":"c78189e6034cdbf65dc2ed066747f363d217be38","bugs":{"url":"https://github.com/k-g-a/jest-node-exports-resolver/issues"},"homepage":"https://github.com/k-g-a/jest-node-exports-resolver#readme","_id":"@blackglory/jest-node-exports-resolver@0.1.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-rPT8Rw+FV4VAJBDedrEzZOq0/lpy+Tp+4oFTlhbkA6hIN/Uj//YL4gEsY5CNqZ9li+mOLLX0BcTeHI8tGmrV2g==","shasum":"feda8a73e0ea6ee4aec2a22a34afecf697d56f09","tarball":"https://registry.npmjs.org/@blackglory/jest-node-exports-resolver/-/jest-node-exports-resolver-0.1.0.tgz","fileCount":4,"unpackedSize":10681,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiBmMRCRA9TVsSAnZWagAA5cMQAKNzHXexYQZ12+n9ibD6\nS+p9VOD9nKxg6IDQT8bPDtmElm+tzORwK3STfCxPpQc42e2SPiJppQhwr5ED\nhD3I6UmAYLSb1oyypjJOQvy7osBAlIvu8h1XaxatvKn7axHZiWi0pXACw4AG\nj6jPzjjQwhN02m3eB+UK2T1pVcy2Mep8CG4JB124dG7H4OG5Fy/mfempzq+C\njJ2OrdurpInslSTF27rVuOQytzDOJReP/YHKZyyl0BSs/kjDXcm+D9KU+LLF\njbS3HyiNVNziUOvAgjoveD/Er+AHICc0xw7jREqYrzH0OiKWRq5bFeGdwqKd\nFWJ4UUCy7GQrk9fhshaF2xQcyRlmHiBMkIHZ/5d5YCky0TJEV48O9J2E9WMm\nXpsA/xRQtcDUIaU2W6fQGQckBfOq2pINIhYKovI8wVOnUq3HIksetODNHr9X\nrWsaWKGx8w328U6hYgIjX1PerJp77JwUfvP5QCPBE2uIKbAsRkNvCKTulpOe\ne8mCHYMoC2qB2cgUES5ShXxjgJjwwP5pdk/inCrlmWTmlN8/5n8+6Ppgz0on\njEq0pGSLMxMeOEeeZD21IUE8NOt1YMowFF3XUVegeoYVeJKEhqDewSu1nmre\n3jlIkvfJAHlnYXGUNvThKqsmChLEXOHTRHjKfSTqkTGqSdaYXNT/JoPI8vlb\nyvd6\r\n=vaP+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCR6CPq3EFPZQgU3CHUvhePG6cmViSXweTbyDJgdM1G2gIgGB42juE020Ycf0ofjo+vbmCxtIYuBmGtJVjhVUbRd7A="}]},"_npmUser":{"name":"black_glory","email":"woshenmedoubuzhidao@blackglory.me"},"directories":{},"maintainers":[{"name":"black_glory","email":"woshenmedoubuzhidao@blackglory.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jest-node-exports-resolver_0.1.0_1644585745506_0.44683588748856007"},"_hasShrinkwrap":false}},"time":{"created":"2022-02-11T13:22:25.455Z","0.1.0":"2022-02-11T13:22:25.640Z","modified":"2022-04-04T19:20:25.179Z"},"maintainers":[{"name":"black_glory","email":"woshenmedoubuzhidao@blackglory.me"}],"description":"Jest resolver to handle node's 'exports' package entry points.","homepage":"https://github.com/k-g-a/jest-node-exports-resolver#readme","keywords":["jest","resolver","node","exports","multiple-entries"],"repository":{"type":"git","url":"git+https://github.com/k-g-a/jest-node-exports-resolver.git"},"contributors":[{"name":"Jesús Leganés-Combarro 'piranna'","email":"jesus.leganes.combarro@gmail.com"}],"author":{"name":"Gleb Kochergin","email":"k-g-a@users.noreply.github.com"},"bugs":{"url":"https://github.com/k-g-a/jest-node-exports-resolver/issues"},"license":"MIT","readme":"# Custom Jest resolver with node exports package entry points support\n\nThis package aims to bring [node exports package entry points](https://nodejs.org/api/packages.html#packages_package_entry_points) support to [Jest](https://github.com/facebook/jest), i.e.:\n```javascript\n// some.test.js\nimport { Foo } from 'my-package/submodule';\nimport { Bar } from '@my-scope/package/submodule';\n// ...\n```\n\nThis is heavily discussed in the following [issue #9771](https://github.com/facebook/jest/issues/9771).\nSeveral alternatives proposed, such as\n[using enhanced-resolve](https://github.com/facebook/jest/issues/9771#issuecomment-841624042),\n[writing own resolver based on firebase-jest-testing resolver](https://github.com/facebook/jest/issues/9771#issuecomment-677759334),\n[using custom resolver written for esfx](https://github.com/facebook/jest/issues/9771#issuecomment-838867473).\n\nThis package is a slightly generalized version of the [firebase-jest-testing self-resolver](https://github.com/akauppi/firebase-jest-testing/blob/0.0.3-beta.4/sample/hack-jest/self-resolver.cjs):\n- test import path for referencing submodule (including `@scoped/` packages);\n- try to load that package's `package.json`;\n- check for `exports` field, try to find 'node', 'require' or 'default' (in case of `type !== 'module'`) condition;\n- reuse `defaultResolver` with updated target.\n\n### Usage\n\nInstall:\n```shell\nyarn add jest-node-exports-resolver -D\n```\n\nAdd custom resolver [jest config option](https://jestjs.io/docs/configuration#resolver-string):\n```javascript\n// jest.config.js\nmodule.exports = {\n    // ...\n    resolver: 'jest-node-exports-resolver',\n}\n\n```\n\n### Known limitations\n\nNode.js supports two flavours of 'exports':\n- conditions list: when all the entries contain keywords ('import', 'require', 'node' etc.);\n- entry points list: when all the entries contain submodule paths ('.', './submodule-a', './submodule-b/*' etc.).\n\nOnly the latter one is supported. Feel free to send a PR with conditions list support.\n","readmeFilename":"README.md"}