impack 1.0.0-alpha.7
Install from the command line:
Learn more about npm packages
$ npm install @virtualstate/impack@1.0.0-alpha.7
Install via package.json:
"@virtualstate/impack": "1.0.0-alpha.7"
About this version
ESM Tree Importer
The below command will re-write all import & export urls so that they are fully resolved.
npx @virtualstate/impack esnext
This command will take
import { run } from "./path/to";
If ./path/to
exists, the import is kept as is
If ./path/to.js
exists, the import will be re-written as:
import { run } from "./path/to.js";
If ./path/to/index.js
exists, the import will be re-written as:
import { run } from "./path/to/index.js";
The below command will output an import map with all files in the folder & dependencies
#
npx @virtualstate/impack import-map.json esnext
For example giving the import map of:
{
"imports": {
"@virtualstate/promise": "./node_modules/@virtualstate/promise/esnext/index.js"
}
}
Along with re-writing all import urls, you will get the output:
{
"imports": {
"@virtualstate/promise": "./esnext/@virtualstate/promise/esnext/index.js",
"esnext/path/to/inner.js": "esnext/path/to/inner.js",
"esnext/path/to/index.js": "esnext/path/to/index.js"
}
}
The below command will output an import map with only the dependent files of this entrypoint file
#
npx @virtualstate/impack import-map.json esnext/tests/index.js
Any dependency urls that are not provided in the initial import map, are not replaced.
The below command will output modules ready to use in a capnp file
npx @virtualstate/impack import-map.json esnext --capnp
For Example:
modules = [
(name = "esnext/@virtualstate/promise/esnext/index.js", esModule = embed "esnext/@virtualstate/promise/esnext/index.js"),
(name = "esnext/path/to/inner.js", esModule = embed "esnext/path/to/inner.js"),
(name = "esnext/path/to/index.js", esModule = embed "esnext/path/to/index.js")
]
# Will replace the modules of workers in a capnp template file
npx @virtualstate/impack import-map.json esnext --capnp=workerd-template.capnp
For example the below template:
const test :Workerd.Worker = (
modules = [],
compatibilityDate = "2022-09-16",
);
Will output as:
const test :Workerd.Worker = (
modules = [
(name = "esnext/@virtualstate/promise/esnext/index.js", esModule = embed "esnext/@virtualstate/promise/esnext/index.js"),
(name = "esnext/path/to/inner.js", esModule = embed "esnext/path/to/inner.js"),
(name = "esnext/path/to/index.js", esModule = embed "esnext/path/to/index.js")
],
compatibilityDate = "2022-09-16",
);
Details
- impack
- virtualstate
- about 2 years ago
- MIT
- 6 dependencies
Assets
- impack-1.0.0-alpha.7.tgz
Download activity
- Total downloads 0
- Last 30 days 0
- Last week 0
- Today 0