88 - v14.13.0
99 pr-url: https://github.com/nodejs/node/pull/34718
1010 description: Add support for `"exports"` patterns.
11- - version: v14.6.0
11+ - version:
12+ - v14.6.0
13+ - v12.19.0
1214 pr-url: https://github.com/nodejs/node/pull/34117
1315 description: Add package `"imports"` field.
1416 - version:
@@ -135,6 +137,9 @@ package:
135137 ` "commonjs" ` package).
136138
137139### ` --input-type ` flag
140+ <!-- YAML
141+ added: v12.0.0
142+ -->
138143
139144Strings passed in as an argument to ` --eval ` (or ` -e ` ), or piped to ` node ` via
140145` STDIN ` , are treated as [ ES modules] [ ] when the ` --input-type=module ` flag
@@ -252,6 +257,9 @@ absolute subpath of the package such as
252257` require('/path/to/node_modules/pkg/subpath.js') ` will still load ` subpath.js ` .
253258
254259### Subpath exports
260+ <!-- YAML
261+ added: v12.7.0
262+ -->
255263
256264When using the [ ` "exports" ` ] [ ] field, custom subpaths can be defined along
257265with the main entry point by treating the main entry point as the
@@ -282,6 +290,11 @@ import submodule from 'es-module-package/private-module.js';
282290```
283291
284292### Subpath imports
293+ <!-- YAML
294+ added:
295+ - v14.6.0
296+ - v12.19.0
297+ -->
285298
286299In addition to the [ ` "exports" ` ] [ ] field, it is possible to define internal
287300package import maps that only apply to import specifiers from within the package
@@ -319,6 +332,11 @@ The resolution rules for the imports field are otherwise
319332analogous to the exports field.
320333
321334### Subpath patterns
335+ <!-- YAML
336+ added:
337+ - v14.13.0
338+ - v12.19.0
339+ -->
322340
323341For packages with a small number of exports or imports, we recommend
324342explicitly listing each exports subpath entry. But for packages that have
@@ -365,6 +383,9 @@ files within the package. Because `node_modules` paths are forbidden in exports
365383targets, this expansion is dependent on only the files of the package itself.
366384
367385### Exports sugar
386+ <!-- YAML
387+ added: v12.11.0
388+ -->
368389
369390If the ` "." ` export is the only export, the [ ` "exports" ` ] [ ] field provides sugar
370391for this case being the direct [ ` "exports" ` ] [ ] field value.
@@ -389,6 +410,17 @@ can be written:
389410```
390411
391412### Conditional exports
413+ <!-- YAML
414+ added:
415+ - v13.2.0
416+ - v12.16.0
417+ changes:
418+ - version:
419+ - v13.7.0
420+ - v12.16.0
421+ pr-url: https://github.com/nodejs/node/pull/31001
422+ description: Unflag conditional exports.
423+ -->
392424
393425Conditional exports provide a way to map to different paths depending on
394426certain conditions. They are supported for both CommonJS and ES module imports.
@@ -487,6 +519,11 @@ the remaining conditions of the parent condition. In this way nested
487519conditions behave analogously to nested JavaScript ` if ` statements.
488520
489521### Resolving user conditions
522+ <!-- YAML
523+ added:
524+ - v14.9.0
525+ - v12.19.0
526+ -->
490527
491528When running Node.js, custom user conditions can be added with the
492529` --conditions ` flag:
@@ -548,6 +585,17 @@ The above definitions may be moved to a dedicated conditions registry in due
548585course.
549586
550587### Self-referencing a package using its name
588+ <!-- YAML
589+ added:
590+ - v13.1.0
591+ - v12.16.0
592+ changes:
593+ - version:
594+ - v13.6.0
595+ - v12.16.0
596+ pr-url: https://github.com/nodejs/node/pull/31002
597+ description: Unflag self-referencing a package using its name.
598+ -->
551599
552600Within a package, the values defined in the package’s
553601` package.json ` [ ` "exports" ` ] [ ] field can be referenced via the package’s name.
0 commit comments