|
Some checks failed
CI / go (push) Waiting to run
CI / docker (push) Waiting to run
CI / lint-go (push) Waiting to run
CI / lint-docs (push) Waiting to run
CI / check-paperclip (push) Waiting to run
Deploy static site / Deploy to GitHub Pages (push) Has been cancelled
Deploy static site / Deploy via Docker to hatch.surf (push) Has been cancelled
Resolved conflicts by taking GitHub versions for: - .dockerignore, .gitignore, Dockerfile, README.md, docker-compose.yml Kept deploy.sh updated to: - Pull from GitHub (primary source) - Push to Gitea (push-mirror) - Build from site/ directory (GitHub structure) Co-Authored-By: Paperclip <noreply@paperclip.ing> |
||
|---|---|---|
| .. | ||
| .github | ||
| test | ||
| .nycrc | ||
| CHANGELOG.md | ||
| eslint.config.mjs | ||
| getCategoriesForRange.d.ts | ||
| getCategoriesForRange.js | ||
| getCategory.d.ts | ||
| getCategory.js | ||
| getCategoryFlags.d.ts | ||
| getCategoryFlags.js | ||
| getCategoryInfo.d.ts | ||
| getCategoryInfo.js | ||
| getConditionsForCategory.d.ts | ||
| getConditionsForCategory.js | ||
| getRange.d.ts | ||
| getRange.js | ||
| getRangePairs.d.ts | ||
| getRangePairs.js | ||
| isCategory.d.ts | ||
| isCategory.js | ||
| LICENSE | ||
| package.json | ||
| ranges.d.ts | ||
| ranges.js | ||
| README.md | ||
| tsconfig.json | ||
| types.d.ts | ||
node-exports-info 
Info about node exports field support: version ranges, categories, etc.
Categories
pre-exports: versions before node supportedexportsin any way (< 12.17)broken: versions that have a brokenexportsimplementation. These only support the string form, and array fallbacks. (13.0 - 13.2)experimental: versions whereexportssupport was experimental. These only support the “default” condition in the object form. (13.3 - 13.6)conditions: the first versions whereexportssupport was unflagged. (13.7 - 13.12)broken-dir-slash-conditions:conditions, but directory exports (ending in./) are broken in these versions (12.17 - 12.19 || ^13.13 || 14.0 - 14.12)patterns: support for “patterns” was added in these versions, and directory exports (ending in./) are broken (^12.20 || 14.13 - 14.18 || 15.x || 16.0 - 16.8)pattern-trailers-no-node-addons: support for “pattern trailers” was added here, but thenode-addonscondition arrived one minor later (16.9)pattern-trailers:pattern-trailers-no-node-addons, plus thenode-addonscondition (^14.19 || 16.10 - 16.13)pattern-trailers+json-imports:pattern-trailers, and JSON can beimported (^16.14)pattern-trailers-no-dir-slash: support for directory exports (ending in./) was removed for these versions (17.0)pattern-trailers-no-dir-slash+json-imports:pattern-trailers-no-dir-slash, and JSON can beimported (17.1 - 19 || 20 - 20.18 || ^21 || 22 - 22.11)require-esm: ESM files can berequired (23 - 23.5 || 22.12 - 22.17 || ^20.19)strips-types: these versions also automatically strip types from typescript files, for bothrequireandimport(23.6 - 24.13 || 25 - 25.3 || ^22.18)subpath-imports-slash: these versions support#/subpath imports patterns in theimportsfield, e.g."#/*": "./src/*.js"(^24.14 || >= 25.4)
Entry points
node-exports-info/getCategoriesForRange: takes a node semver version range; returns an array of categories that overlap itnode-exports-info/getCategory: takes an optional node semver version (defaults to the current node version); returns the latest category that matches itnode-exports-info/getCategoryFlags: takes a category; returns an object with boolean flags{ patterns, patternTrailers, dirSlash }indicating whichexportsfeatures are supportednode-exports-info/getCategoryInfo: takes a category and an optionalmoduleSystem('require'or'import'); returns an object withconditions(array or null) andflags(fromgetCategoryFlags)node-exports-info/getConditionsForCategory: takes a category and an optionalmoduleSystem('require'or'import'); returns an array ofexports"conditions" that is supported, ornullifexportsitself is not supportednode-exports-info/getRange: takes a category; returns the node semver version range that matches itnode-exports-info/getRangePairs: returns an array of entries - each a tuple of “semver range” and “category”node-exports-info/isCategory: takes a category; returns true if it’s a known category
Related packages
node-imports-info: the same, for theimportsfieldhas-package-exports: feature-detect your node version’sexportssupport
Tests
Simply clone the repo, npm install, and run npm test
