Problem
The npm package includes a legacy ESM build:
dist/latency-test.legacy.esm.js
However, it cannot be imported through a package subpath because package.json only exports ".".
For example:
import "@adasp/latency-test/legacy"
currently fails because ./legacy is not defined in exports.
Importing directly from node_modules is possible, but fragile:
import "../../../../node_modules/@adasp/latency-test/dist/latency-test.legacy.esm.js"
Proposed change
Add a legacy subpath to package.json:
{
"exports": {
".": {
"types": "./dist/index.d.ts",
"import": "./dist/latency-test.esm.js",
"default": "./dist/latency-test.esm.js"
},
"./legacy": {
"types": "./dist/index.d.ts",
"import": "./dist/latency-test.legacy.esm.js",
"default": "./dist/latency-test.legacy.esm.js"
}
}
}
This would allow consumers to use:
import "@adasp/latency-test/legacy"
Environment
@adasp/latency-test: 1.2.0
- Bundler: Parcel 2
Problem
The npm package includes a legacy ESM build:
dist/latency-test.legacy.esm.jsHowever, it cannot be imported through a package subpath because
package.jsononly exports".".For example:
currently fails because
./legacyis not defined inexports.Importing directly from
node_modulesis possible, but fragile:Proposed change
Add a legacy subpath to
package.json:{ "exports": { ".": { "types": "./dist/index.d.ts", "import": "./dist/latency-test.esm.js", "default": "./dist/latency-test.esm.js" }, "./legacy": { "types": "./dist/index.d.ts", "import": "./dist/latency-test.legacy.esm.js", "default": "./dist/latency-test.legacy.esm.js" } } }This would allow consumers to use:
Environment
@adasp/latency-test: 1.2.0