fix(core): update
This commit is contained in:
parent
d5753019cf
commit
63d35e2ce8
503
package-lock.json
generated
503
package-lock.json
generated
@ -30,6 +30,7 @@
|
|||||||
"@rollup/plugin-typescript": "^8.3.1",
|
"@rollup/plugin-typescript": "^8.3.1",
|
||||||
"@types/html-minifier": "^4.0.2",
|
"@types/html-minifier": "^4.0.2",
|
||||||
"@types/node": "^17.0.21",
|
"@types/node": "^17.0.21",
|
||||||
|
"esbuild": "^0.14.27",
|
||||||
"html-minifier": "^4.0.0",
|
"html-minifier": "^4.0.0",
|
||||||
"rollup": "^2.70.1",
|
"rollup": "^2.70.1",
|
||||||
"rollup-plugin-babel": "^4.4.0",
|
"rollup-plugin-babel": "^4.4.0",
|
||||||
@ -6059,6 +6060,361 @@
|
|||||||
"is-arrayish": "^0.2.1"
|
"is-arrayish": "^0.2.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/esbuild": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild/-/esbuild-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-MZQt5SywZS3hA9fXnMhR22dv0oPGh6QtjJRIYbgL1AeqAoQZE+Qn5ppGYQAoHv/vq827flj4tIJ79Mrdiwk46Q==",
|
||||||
|
"hasInstallScript": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"bin": {
|
||||||
|
"esbuild": "bin/esbuild"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"esbuild-android-64": "0.14.27",
|
||||||
|
"esbuild-android-arm64": "0.14.27",
|
||||||
|
"esbuild-darwin-64": "0.14.27",
|
||||||
|
"esbuild-darwin-arm64": "0.14.27",
|
||||||
|
"esbuild-freebsd-64": "0.14.27",
|
||||||
|
"esbuild-freebsd-arm64": "0.14.27",
|
||||||
|
"esbuild-linux-32": "0.14.27",
|
||||||
|
"esbuild-linux-64": "0.14.27",
|
||||||
|
"esbuild-linux-arm": "0.14.27",
|
||||||
|
"esbuild-linux-arm64": "0.14.27",
|
||||||
|
"esbuild-linux-mips64le": "0.14.27",
|
||||||
|
"esbuild-linux-ppc64le": "0.14.27",
|
||||||
|
"esbuild-linux-riscv64": "0.14.27",
|
||||||
|
"esbuild-linux-s390x": "0.14.27",
|
||||||
|
"esbuild-netbsd-64": "0.14.27",
|
||||||
|
"esbuild-openbsd-64": "0.14.27",
|
||||||
|
"esbuild-sunos-64": "0.14.27",
|
||||||
|
"esbuild-windows-32": "0.14.27",
|
||||||
|
"esbuild-windows-64": "0.14.27",
|
||||||
|
"esbuild-windows-arm64": "0.14.27"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-android-64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-android-64/-/esbuild-android-64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-LuEd4uPuj/16Y8j6kqy3Z2E9vNY9logfq8Tq+oTE2PZVuNs3M1kj5Qd4O95ee66yDGb3isaOCV7sOLDwtMfGaQ==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"android"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-android-arm64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-android-arm64/-/esbuild-android-arm64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-E8Ktwwa6vX8q7QeJmg8yepBYXaee50OdQS3BFtEHKrzbV45H4foMOeEE7uqdjGQZFBap5VAqo7pvjlyA92wznQ==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"android"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-darwin-64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-darwin-64/-/esbuild-darwin-64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-czw/kXl/1ZdenPWfw9jDc5iuIYxqUxgQ/Q+hRd4/3udyGGVI31r29LCViN2bAJgGvQkqyLGVcG03PJPEXQ5i2g==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"darwin"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-darwin-arm64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-BEsv2U2U4o672oV8+xpXNxN9bgqRCtddQC6WBh4YhXKDcSZcdNh7+6nS+DM2vu7qWIWNA4JbRG24LUUYXysimQ==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"darwin"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-freebsd-64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-7FeiFPGBo+ga+kOkDxtPmdPZdayrSzsV9pmfHxcyLKxu+3oTcajeZlOO1y9HW+t5aFZPiv7czOHM4KNd0tNwCA==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"freebsd"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-freebsd-arm64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-8CK3++foRZJluOWXpllG5zwAVlxtv36NpHfsbWS7TYlD8S+QruXltKlXToc/5ZNzBK++l6rvRKELu/puCLc7jA==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"freebsd"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-linux-32": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-linux-32/-/esbuild-linux-32-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-qhNYIcT+EsYSBClZ5QhLzFzV5iVsP1YsITqblSaztr3+ZJUI+GoK8aXHyzKd7/CKKuK93cxEMJPpfi1dfsOfdw==",
|
||||||
|
"cpu": [
|
||||||
|
"ia32"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-linux-64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-linux-64/-/esbuild-linux-64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-ESjck9+EsHoTaKWlFKJpPZRN26uiav5gkI16RuI8WBxUdLrrAlYuYSndxxKgEn1csd968BX/8yQZATYf/9+/qg==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-linux-arm": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-linux-arm/-/esbuild-linux-arm-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-JnnmgUBdqLQO9hoNZQqNHFWlNpSX82vzB3rYuCJMhtkuaWQEmQz6Lec1UIxJdC38ifEghNTBsF9bbe8dFilnCw==",
|
||||||
|
"cpu": [
|
||||||
|
"arm"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-linux-arm64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-no6Mi17eV2tHlJnqBHRLekpZ2/VYx+NfGxKcBE/2xOMYwctsanCaXxw4zapvNrGE9X38vefVXLz6YCF8b1EHiQ==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-linux-mips64le": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-NolWP2uOvIJpbwpsDbwfeExZOY1bZNlWE/kVfkzLMsSgqeVcl5YMen/cedRe9mKnpfLli+i0uSp7N+fkKNU27A==",
|
||||||
|
"cpu": [
|
||||||
|
"mips64el"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-linux-ppc64le": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-/7dTjDvXMdRKmsSxKXeWyonuGgblnYDn0MI1xDC7J1VQXny8k1qgNp6VmrlsawwnsymSUUiThhkJsI+rx0taNA==",
|
||||||
|
"cpu": [
|
||||||
|
"ppc64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-linux-riscv64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-D+aFiUzOJG13RhrSmZgrcFaF4UUHpqj7XSKrIiCXIj1dkIkFqdrmqMSOtSs78dOtObWiOrFCDDzB24UyeEiNGg==",
|
||||||
|
"cpu": [
|
||||||
|
"riscv64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-linux-s390x": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-CD/D4tj0U4UQjELkdNlZhQ8nDHU5rBn6NGp47Hiz0Y7/akAY5i0oGadhEIg0WCY/HYVXFb3CsSPPwaKcTOW3bg==",
|
||||||
|
"cpu": [
|
||||||
|
"s390x"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-netbsd-64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-h3mAld69SrO1VoaMpYl3a5FNdGRE/Nqc+E8VtHOag4tyBwhCQXxtvDDOAKOUQexBGca0IuR6UayQ4ntSX5ij1Q==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"netbsd"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-openbsd-64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-xwSje6qIZaDHXWoPpIgvL+7fC6WeubHHv18tusLYMwL+Z6bEa4Pbfs5IWDtQdHkArtfxEkIZz77944z8MgDxGw==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"openbsd"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-sunos-64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-sunos-64/-/esbuild-sunos-64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-/nBVpWIDjYiyMhuqIqbXXsxBc58cBVH9uztAOIfWShStxq9BNBik92oPQPJ57nzWXRNKQUEFWr4Q98utDWz7jg==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"sunos"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-windows-32": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-windows-32/-/esbuild-windows-32-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-Q9/zEjhZJ4trtWhFWIZvS/7RUzzi8rvkoaS9oiizkHTTKd8UxFwn/Mm2OywsAfYymgUYm8+y2b+BKTNEFxUekw==",
|
||||||
|
"cpu": [
|
||||||
|
"ia32"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"win32"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-windows-64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-windows-64/-/esbuild-windows-64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-b3y3vTSl5aEhWHK66ngtiS/c6byLf6y/ZBvODH1YkBM+MGtVL6jN38FdHUsZasCz9gFwYs/lJMVY9u7GL6wfYg==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"win32"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/esbuild-windows-arm64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-I/reTxr6TFMcR5qbIkwRGvldMIaiBu2+MP0LlD7sOlNXrfqIl9uNjsuxFPGEG4IRomjfQ5q8WT+xlF/ySVkqKg==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"win32"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/escalade": {
|
"node_modules/escalade": {
|
||||||
"version": "3.1.1",
|
"version": "3.1.1",
|
||||||
"resolved": "https://verdaccio.lossless.one/escalade/-/escalade-3.1.1.tgz",
|
"resolved": "https://verdaccio.lossless.one/escalade/-/escalade-3.1.1.tgz",
|
||||||
@ -14658,6 +15014,153 @@
|
|||||||
"is-arrayish": "^0.2.1"
|
"is-arrayish": "^0.2.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"esbuild": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild/-/esbuild-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-MZQt5SywZS3hA9fXnMhR22dv0oPGh6QtjJRIYbgL1AeqAoQZE+Qn5ppGYQAoHv/vq827flj4tIJ79Mrdiwk46Q==",
|
||||||
|
"requires": {
|
||||||
|
"esbuild-android-64": "0.14.27",
|
||||||
|
"esbuild-android-arm64": "0.14.27",
|
||||||
|
"esbuild-darwin-64": "0.14.27",
|
||||||
|
"esbuild-darwin-arm64": "0.14.27",
|
||||||
|
"esbuild-freebsd-64": "0.14.27",
|
||||||
|
"esbuild-freebsd-arm64": "0.14.27",
|
||||||
|
"esbuild-linux-32": "0.14.27",
|
||||||
|
"esbuild-linux-64": "0.14.27",
|
||||||
|
"esbuild-linux-arm": "0.14.27",
|
||||||
|
"esbuild-linux-arm64": "0.14.27",
|
||||||
|
"esbuild-linux-mips64le": "0.14.27",
|
||||||
|
"esbuild-linux-ppc64le": "0.14.27",
|
||||||
|
"esbuild-linux-riscv64": "0.14.27",
|
||||||
|
"esbuild-linux-s390x": "0.14.27",
|
||||||
|
"esbuild-netbsd-64": "0.14.27",
|
||||||
|
"esbuild-openbsd-64": "0.14.27",
|
||||||
|
"esbuild-sunos-64": "0.14.27",
|
||||||
|
"esbuild-windows-32": "0.14.27",
|
||||||
|
"esbuild-windows-64": "0.14.27",
|
||||||
|
"esbuild-windows-arm64": "0.14.27"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"esbuild-android-64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-android-64/-/esbuild-android-64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-LuEd4uPuj/16Y8j6kqy3Z2E9vNY9logfq8Tq+oTE2PZVuNs3M1kj5Qd4O95ee66yDGb3isaOCV7sOLDwtMfGaQ==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-android-arm64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-android-arm64/-/esbuild-android-arm64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-E8Ktwwa6vX8q7QeJmg8yepBYXaee50OdQS3BFtEHKrzbV45H4foMOeEE7uqdjGQZFBap5VAqo7pvjlyA92wznQ==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-darwin-64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-darwin-64/-/esbuild-darwin-64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-czw/kXl/1ZdenPWfw9jDc5iuIYxqUxgQ/Q+hRd4/3udyGGVI31r29LCViN2bAJgGvQkqyLGVcG03PJPEXQ5i2g==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-darwin-arm64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-BEsv2U2U4o672oV8+xpXNxN9bgqRCtddQC6WBh4YhXKDcSZcdNh7+6nS+DM2vu7qWIWNA4JbRG24LUUYXysimQ==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-freebsd-64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-7FeiFPGBo+ga+kOkDxtPmdPZdayrSzsV9pmfHxcyLKxu+3oTcajeZlOO1y9HW+t5aFZPiv7czOHM4KNd0tNwCA==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-freebsd-arm64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-8CK3++foRZJluOWXpllG5zwAVlxtv36NpHfsbWS7TYlD8S+QruXltKlXToc/5ZNzBK++l6rvRKELu/puCLc7jA==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-linux-32": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-linux-32/-/esbuild-linux-32-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-qhNYIcT+EsYSBClZ5QhLzFzV5iVsP1YsITqblSaztr3+ZJUI+GoK8aXHyzKd7/CKKuK93cxEMJPpfi1dfsOfdw==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-linux-64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-linux-64/-/esbuild-linux-64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-ESjck9+EsHoTaKWlFKJpPZRN26uiav5gkI16RuI8WBxUdLrrAlYuYSndxxKgEn1csd968BX/8yQZATYf/9+/qg==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-linux-arm": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-linux-arm/-/esbuild-linux-arm-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-JnnmgUBdqLQO9hoNZQqNHFWlNpSX82vzB3rYuCJMhtkuaWQEmQz6Lec1UIxJdC38ifEghNTBsF9bbe8dFilnCw==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-linux-arm64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-no6Mi17eV2tHlJnqBHRLekpZ2/VYx+NfGxKcBE/2xOMYwctsanCaXxw4zapvNrGE9X38vefVXLz6YCF8b1EHiQ==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-linux-mips64le": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-NolWP2uOvIJpbwpsDbwfeExZOY1bZNlWE/kVfkzLMsSgqeVcl5YMen/cedRe9mKnpfLli+i0uSp7N+fkKNU27A==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-linux-ppc64le": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-/7dTjDvXMdRKmsSxKXeWyonuGgblnYDn0MI1xDC7J1VQXny8k1qgNp6VmrlsawwnsymSUUiThhkJsI+rx0taNA==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-linux-riscv64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-D+aFiUzOJG13RhrSmZgrcFaF4UUHpqj7XSKrIiCXIj1dkIkFqdrmqMSOtSs78dOtObWiOrFCDDzB24UyeEiNGg==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-linux-s390x": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-CD/D4tj0U4UQjELkdNlZhQ8nDHU5rBn6NGp47Hiz0Y7/akAY5i0oGadhEIg0WCY/HYVXFb3CsSPPwaKcTOW3bg==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-netbsd-64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-h3mAld69SrO1VoaMpYl3a5FNdGRE/Nqc+E8VtHOag4tyBwhCQXxtvDDOAKOUQexBGca0IuR6UayQ4ntSX5ij1Q==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-openbsd-64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-xwSje6qIZaDHXWoPpIgvL+7fC6WeubHHv18tusLYMwL+Z6bEa4Pbfs5IWDtQdHkArtfxEkIZz77944z8MgDxGw==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-sunos-64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-sunos-64/-/esbuild-sunos-64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-/nBVpWIDjYiyMhuqIqbXXsxBc58cBVH9uztAOIfWShStxq9BNBik92oPQPJ57nzWXRNKQUEFWr4Q98utDWz7jg==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-windows-32": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-windows-32/-/esbuild-windows-32-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-Q9/zEjhZJ4trtWhFWIZvS/7RUzzi8rvkoaS9oiizkHTTKd8UxFwn/Mm2OywsAfYymgUYm8+y2b+BKTNEFxUekw==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-windows-64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-windows-64/-/esbuild-windows-64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-b3y3vTSl5aEhWHK66ngtiS/c6byLf6y/ZBvODH1YkBM+MGtVL6jN38FdHUsZasCz9gFwYs/lJMVY9u7GL6wfYg==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"esbuild-windows-arm64": {
|
||||||
|
"version": "0.14.27",
|
||||||
|
"resolved": "https://verdaccio.lossless.one/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.27.tgz",
|
||||||
|
"integrity": "sha512-I/reTxr6TFMcR5qbIkwRGvldMIaiBu2+MP0LlD7sOlNXrfqIl9uNjsuxFPGEG4IRomjfQ5q8WT+xlF/ySVkqKg==",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
"escalade": {
|
"escalade": {
|
||||||
"version": "3.1.1",
|
"version": "3.1.1",
|
||||||
"resolved": "https://verdaccio.lossless.one/escalade/-/escalade-3.1.1.tgz",
|
"resolved": "https://verdaccio.lossless.one/escalade/-/escalade-3.1.1.tgz",
|
||||||
|
@ -45,6 +45,7 @@
|
|||||||
"@rollup/plugin-typescript": "^8.3.1",
|
"@rollup/plugin-typescript": "^8.3.1",
|
||||||
"@types/html-minifier": "^4.0.2",
|
"@types/html-minifier": "^4.0.2",
|
||||||
"@types/node": "^17.0.21",
|
"@types/node": "^17.0.21",
|
||||||
|
"esbuild": "^0.14.27",
|
||||||
"html-minifier": "^4.0.0",
|
"html-minifier": "^4.0.0",
|
||||||
"rollup": "^2.70.1",
|
"rollup": "^2.70.1",
|
||||||
"rollup-plugin-babel": "^4.4.0",
|
"rollup-plugin-babel": "^4.4.0",
|
||||||
|
@ -1,57 +0,0 @@
|
|||||||
import resolve from 'rollup-plugin-node-resolve';
|
|
||||||
import commonjs from 'rollup-plugin-commonjs';
|
|
||||||
import sourceMaps from 'rollup-plugin-sourcemaps';
|
|
||||||
import typescript from 'rollup-plugin-typescript2';
|
|
||||||
import json from 'rollup-plugin-json';
|
|
||||||
import babel from 'rollup-plugin-babel';
|
|
||||||
|
|
||||||
const pkg = require('./package.json');
|
|
||||||
|
|
||||||
export default {
|
|
||||||
input: `ts_web/index.ts`,
|
|
||||||
output: {
|
|
||||||
name: 'tsbundle',
|
|
||||||
// file: 'dist_web/bundle.js',
|
|
||||||
file: 'dist_web/bundle.js',
|
|
||||||
format: 'iife',
|
|
||||||
sourcemap: true
|
|
||||||
},
|
|
||||||
// Indicate here external modules you don't wanna include in your bundle (i.e.: 'lodash')
|
|
||||||
external: [],
|
|
||||||
watch: {
|
|
||||||
include: 'src/**'
|
|
||||||
},
|
|
||||||
plugins: [
|
|
||||||
// Allow json resolution
|
|
||||||
json(),
|
|
||||||
// Compile TypeScript files
|
|
||||||
typescript({ useTsconfigDeclarationDir: true, tsconfigOverride: {
|
|
||||||
compilerOptions: {
|
|
||||||
declaration: true,
|
|
||||||
emitDecoratorMetadata: true,
|
|
||||||
experimentalDecorators: true,
|
|
||||||
inlineSourceMap: true,
|
|
||||||
noEmitOnError: true,
|
|
||||||
lib: ['es2016', 'es2017', 'dom'],
|
|
||||||
noImplicitAny: false
|
|
||||||
}
|
|
||||||
} }),
|
|
||||||
// Allow node_modules resolution, so you can use 'external' to control
|
|
||||||
// which external modules to include in the bundle
|
|
||||||
// https://github.com/rollup/rollup-plugin-node-resolve#usage
|
|
||||||
resolve(),
|
|
||||||
commonjs({
|
|
||||||
namedExports: {
|
|
||||||
'node_modules/@pushrocks/smartstate/dist/index.js': ['Smartstate']
|
|
||||||
}
|
|
||||||
}),
|
|
||||||
|
|
||||||
// Resolve source maps to the original source
|
|
||||||
sourceMaps(),
|
|
||||||
babel({
|
|
||||||
extensions: ['.js', '.jsx', '.ts', '.tsx'],
|
|
||||||
babelrc: false,
|
|
||||||
presets: [["@babel/preset-env", { modules: false }]]
|
|
||||||
})
|
|
||||||
]
|
|
||||||
};
|
|
30
test/test.ts
30
test/test.ts
@ -1,27 +1,39 @@
|
|||||||
import { expect, tap } from '@pushrocks/tapbundle';
|
import { expect, tap } from '@pushrocks/tapbundle';
|
||||||
import * as tsbundle from '../dist_ts/index.js';
|
import * as tsbundle from '../ts/index.js';
|
||||||
|
|
||||||
import * as path from 'path';
|
import * as path from 'path';
|
||||||
|
|
||||||
tap.test('should bundle test', async () => {
|
tap.test('should bundle with esbuild', async () => {
|
||||||
const tsbundleInstance = new tsbundle.TsBundle();
|
const tsbundleInstance = new tsbundle.TsBundle();
|
||||||
await tsbundleInstance.buildTest(
|
await tsbundleInstance.build(
|
||||||
process.cwd() + '/test',
|
process.cwd() + '/test',
|
||||||
'./ts_web/index.ts',
|
'./ts_web/index.ts',
|
||||||
'./dist_manual/test.js',
|
'./dist_manual/test.js',
|
||||||
'rollup',
|
{
|
||||||
{}
|
bundler: 'esbuild'
|
||||||
|
}
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
tap.test('should bundle production', async () => {
|
tap.test('should bundle with parcel', async () => {
|
||||||
const tsbundleInstance = new tsbundle.TsBundle();
|
const tsbundleInstance = new tsbundle.TsBundle();
|
||||||
await tsbundleInstance.buildProduction(
|
await tsbundleInstance.build(
|
||||||
|
process.cwd() + '/test',
|
||||||
|
'./ts_web/index.ts',
|
||||||
|
'./dist_manual/test.js',
|
||||||
|
{
|
||||||
|
bundler: 'parcel'
|
||||||
|
}
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
||||||
|
tap.test('should bundle with rollup', async () => {
|
||||||
|
const tsbundleInstance = new tsbundle.TsBundle();
|
||||||
|
await tsbundleInstance.build(
|
||||||
process.cwd(),
|
process.cwd(),
|
||||||
'./test/ts_web/index.ts',
|
'./test/ts_web/index.ts',
|
||||||
'./test/dist_manual/production.js',
|
'./test/dist_manual/production.js',
|
||||||
'rollup',
|
{bundler: 'rollup'}
|
||||||
{}
|
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import * as early from '@pushrocks/early';
|
import * as early from '@pushrocks/early';
|
||||||
early.start('tsbundle');
|
early.start('tsbundle');
|
||||||
// lets import all plugins beforehand
|
// lets import all plugins beforehand
|
||||||
import './tsbundle.plugins.js';
|
import './plugins.js';
|
||||||
|
|
||||||
import { logger } from './tsbundle.logging.js';
|
import { logger } from './tsbundle.logging.js';
|
||||||
import { runCli } from './tsbundle.cli.js';
|
import { runCli } from './tsbundle.cli.js';
|
||||||
@ -9,5 +9,5 @@ early.stop();
|
|||||||
|
|
||||||
// lets make this usable programmatically
|
// lets make this usable programmatically
|
||||||
export * from './tsbundle.class.tsbundle.js';
|
export * from './tsbundle.class.tsbundle.js';
|
||||||
export * from './tsbundle.htmlhandler.js';
|
export * from './mod_rollup/htmlhandler.js';
|
||||||
export { runCli };
|
export { runCli };
|
||||||
|
14
ts/interfaces/index.ts
Normal file
14
ts/interfaces/index.ts
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
export interface ICliOptions {
|
||||||
|
commonjs?: boolean;
|
||||||
|
skiplibcheck?: boolean;
|
||||||
|
production?: boolean;
|
||||||
|
bundler: 'parcel' | 'esbuild' | 'rollup'
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface IEnvTransportOptions {
|
||||||
|
cwd: string;
|
||||||
|
from: string;
|
||||||
|
to: string;
|
||||||
|
mode: 'test' | 'production',
|
||||||
|
argv: ICliOptions
|
||||||
|
}
|
69
ts/mod_esbuild/index.child.ts
Normal file
69
ts/mod_esbuild/index.child.ts
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
import * as plugins from './plugins.js';
|
||||||
|
import * as interfaces from '../interfaces/index.js';
|
||||||
|
import { logger } from '../tsbundle.logging.js';
|
||||||
|
|
||||||
|
export class TsBundleProcess {
|
||||||
|
|
||||||
|
constructor() {
|
||||||
|
// Nothing here
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* creates a bundle for the test enviroment
|
||||||
|
*/
|
||||||
|
public async buildTest(
|
||||||
|
fromArg: string,
|
||||||
|
toArg: string,
|
||||||
|
argvArg: any
|
||||||
|
) {
|
||||||
|
// create a bundle
|
||||||
|
const esbuild = await plugins.esbuild.build({
|
||||||
|
entryPoints: [fromArg],
|
||||||
|
bundle: true,
|
||||||
|
outfile: toArg
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* creates a bundle for the production environment
|
||||||
|
*/
|
||||||
|
public async buildProduction(
|
||||||
|
fromArg: string,
|
||||||
|
toArg: string,
|
||||||
|
argvArg: any
|
||||||
|
) {
|
||||||
|
// create a bundle
|
||||||
|
const esbuild = await plugins.esbuild.build({
|
||||||
|
entryPoints: [fromArg],
|
||||||
|
bundle: true,
|
||||||
|
outfile: toArg
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const run = async () => {
|
||||||
|
console.log('running spawned compilation process');
|
||||||
|
const transportOptions: interfaces.IEnvTransportOptions = JSON.parse(process.env.transportOptions);
|
||||||
|
console.log('bundling with esbuild:');
|
||||||
|
console.log(transportOptions);
|
||||||
|
process.chdir(transportOptions.cwd);
|
||||||
|
console.log(`switched to ${process.cwd()}`);
|
||||||
|
const tsbundleProcessInstance = new TsBundleProcess();
|
||||||
|
if (transportOptions.mode === 'test') {
|
||||||
|
console.log('building for test:')
|
||||||
|
tsbundleProcessInstance.buildTest(
|
||||||
|
plugins.path.join(process.cwd(), transportOptions.from),
|
||||||
|
plugins.path.join(process.cwd(), transportOptions.to),
|
||||||
|
transportOptions.argv
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
console.log('building for production:')
|
||||||
|
tsbundleProcessInstance.buildProduction(
|
||||||
|
transportOptions.from,
|
||||||
|
transportOptions.to,
|
||||||
|
transportOptions.argv
|
||||||
|
);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
run();
|
7
ts/mod_esbuild/plugins.ts
Normal file
7
ts/mod_esbuild/plugins.ts
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
export * from '../plugins.js';
|
||||||
|
|
||||||
|
import esbuild from 'esbuild';
|
||||||
|
|
||||||
|
export {
|
||||||
|
esbuild
|
||||||
|
}
|
70
ts/mod_parcel/index.child.ts
Normal file
70
ts/mod_parcel/index.child.ts
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
import * as plugins from './plugins.js';
|
||||||
|
import * as interfaces from '../interfaces/index.js';
|
||||||
|
import { logger } from '../tsbundle.logging.js';
|
||||||
|
|
||||||
|
export class TsBundleProcess {
|
||||||
|
|
||||||
|
constructor() {
|
||||||
|
// Nothing here
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* creates a bundle for the test enviroment
|
||||||
|
*/
|
||||||
|
public async buildTest (
|
||||||
|
fromArg: string,
|
||||||
|
toArg: string,
|
||||||
|
argvArg: any
|
||||||
|
) {
|
||||||
|
const parsedPath = plugins.path.parse(toArg);
|
||||||
|
const parcelInstance = new plugins.smartparcel.Parcel(
|
||||||
|
fromArg,
|
||||||
|
parsedPath.dir,
|
||||||
|
parsedPath.base
|
||||||
|
);
|
||||||
|
await parcelInstance.build();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* creates a bundle for the production environment
|
||||||
|
*/
|
||||||
|
public async buildProduction (
|
||||||
|
fromArg: string,
|
||||||
|
toArg: string,
|
||||||
|
argvArg: any
|
||||||
|
) {
|
||||||
|
// create a bundle
|
||||||
|
const parsedPath = plugins.path.parse(toArg);
|
||||||
|
const parcelInstance = new plugins.smartparcel.Parcel(
|
||||||
|
fromArg,
|
||||||
|
parsedPath.dir,
|
||||||
|
parsedPath.base
|
||||||
|
);
|
||||||
|
await parcelInstance.build();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const run = async () => {
|
||||||
|
console.log('running spawned compilation process');
|
||||||
|
const transportOptions: interfaces.IEnvTransportOptions = JSON.parse(process.env.transportOptions);
|
||||||
|
console.log('bundling with parcel:');
|
||||||
|
console.log(transportOptions);
|
||||||
|
process.chdir(transportOptions.cwd);
|
||||||
|
console.log(`switched to ${process.cwd()}`);
|
||||||
|
const tsbundleProcessInstance = new TsBundleProcess();
|
||||||
|
if (transportOptions.mode === 'test') {
|
||||||
|
tsbundleProcessInstance.buildTest(
|
||||||
|
transportOptions.from,
|
||||||
|
transportOptions.to,
|
||||||
|
transportOptions.argv
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
tsbundleProcessInstance.buildProduction(
|
||||||
|
transportOptions.from,
|
||||||
|
transportOptions.to,
|
||||||
|
transportOptions.argv
|
||||||
|
);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
run();
|
7
ts/mod_parcel/plugins.ts
Normal file
7
ts/mod_parcel/plugins.ts
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
export * from '../plugins.js'
|
||||||
|
|
||||||
|
import * as smartparcel from '@pushrocks/smartparcel';
|
||||||
|
|
||||||
|
export {
|
||||||
|
smartparcel
|
||||||
|
}
|
@ -1,5 +1,5 @@
|
|||||||
import * as plugins from './tsbundle.plugins.js';
|
import * as plugins from './plugins.js';
|
||||||
import * as paths from './tsbundle.paths.js';
|
import * as paths from '../paths.js';
|
||||||
|
|
||||||
export class HtmlHandler {
|
export class HtmlHandler {
|
||||||
public sourceFilePath: string = plugins.path.join(paths.htmlDir, 'index.html');
|
public sourceFilePath: string = plugins.path.join(paths.htmlDir, 'index.html');
|
@ -1,5 +1,6 @@
|
|||||||
import * as plugins from './tsbundle.plugins.js';
|
import * as plugins from './plugins.js';
|
||||||
import { logger } from './tsbundle.logging.js';
|
import * as interfaces from '../interfaces/index.js';
|
||||||
|
import { logger } from '../tsbundle.logging.js';
|
||||||
|
|
||||||
export class TsBundleProcess {
|
export class TsBundleProcess {
|
||||||
/**
|
/**
|
||||||
@ -108,28 +109,16 @@ export class TsBundleProcess {
|
|||||||
public async buildTest(
|
public async buildTest(
|
||||||
fromArg: string,
|
fromArg: string,
|
||||||
toArg: string,
|
toArg: string,
|
||||||
bundlerArg: 'rollup' | 'parcel' = 'rollup',
|
|
||||||
argvArg: any
|
argvArg: any
|
||||||
) {
|
) {
|
||||||
// create a bundle
|
// create a bundle
|
||||||
switch (bundlerArg) {
|
logger.log('info', `bundling for TEST!`);
|
||||||
case 'rollup':
|
const buildOptions = this.getOptionsTest(fromArg, toArg, argvArg);
|
||||||
logger.log('info', `bundling for TEST!`);
|
const bundle = await plugins.rollup.rollup(buildOptions);
|
||||||
const buildOptions = this.getOptionsTest(fromArg, toArg, argvArg);
|
bundle.generate(buildOptions.output as plugins.rollup.OutputOptions);
|
||||||
const bundle = await plugins.rollup.rollup(buildOptions);
|
await bundle.write(buildOptions.output as plugins.rollup.OutputOptions);
|
||||||
bundle.generate(buildOptions.output as plugins.rollup.OutputOptions);
|
logger.log('ok', `Successfully bundled files!`);
|
||||||
await bundle.write(buildOptions.output as plugins.rollup.OutputOptions);
|
process.exit(0);
|
||||||
logger.log('ok', `Successfully bundled files!`);
|
|
||||||
process.exit(0);
|
|
||||||
case 'parcel':
|
|
||||||
const parsedPath = plugins.path.parse(toArg);
|
|
||||||
const parcelInstance = new plugins.smartparcel.Parcel(
|
|
||||||
fromArg,
|
|
||||||
parsedPath.dir,
|
|
||||||
parsedPath.base
|
|
||||||
);
|
|
||||||
await parcelInstance.build();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -149,25 +138,23 @@ export class TsBundleProcess {
|
|||||||
|
|
||||||
const run = async () => {
|
const run = async () => {
|
||||||
console.log('running spawned compilation process');
|
console.log('running spawned compilation process');
|
||||||
console.log(`cwd: ${process.env.tsbundleCwd}`);
|
const transportOptions: interfaces.IEnvTransportOptions = JSON.parse(process.env.transportOptions);
|
||||||
console.log(`from: ${process.env.tsbundleFrom}`);
|
console.log('bundling with rollup:');
|
||||||
console.log(`to: ${process.env.tsbundleTo}`);
|
console.log(transportOptions);
|
||||||
console.log(`mode: ${process.env.tsbundleMode}`);
|
process.chdir(transportOptions.cwd);
|
||||||
process.chdir(process.env.tsbundleCwd);
|
|
||||||
console.log(`switched to ${process.cwd()}`);
|
console.log(`switched to ${process.cwd()}`);
|
||||||
const tsbundleProcessInstance = new TsBundleProcess();
|
const tsbundleProcessInstance = new TsBundleProcess();
|
||||||
if (process.env.tsbundleMode === 'test') {
|
if (transportOptions.mode === 'test') {
|
||||||
tsbundleProcessInstance.buildTest(
|
tsbundleProcessInstance.buildTest(
|
||||||
process.env.tsbundleFrom,
|
transportOptions.from,
|
||||||
process.env.tsbundleTo,
|
transportOptions.to,
|
||||||
process.env.tsbundleBundler as 'rollup' | 'parcel',
|
transportOptions.argv
|
||||||
JSON.parse(process.env.tsbundleArgv)
|
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
tsbundleProcessInstance.buildProduction(
|
tsbundleProcessInstance.buildProduction(
|
||||||
process.env.tsbundleFrom,
|
transportOptions.from,
|
||||||
process.env.tsbundleTo,
|
transportOptions.to,
|
||||||
JSON.parse(process.env.tsbundleArgv)
|
transportOptions.argv
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
};
|
};
|
25
ts/mod_rollup/plugins.ts
Normal file
25
ts/mod_rollup/plugins.ts
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
export * from '../plugins.js';
|
||||||
|
|
||||||
|
// third party scope
|
||||||
|
import * as rollup from 'rollup';
|
||||||
|
import rollupBabel from 'rollup-plugin-babel';
|
||||||
|
import rollupCommonjs from '@rollup/plugin-commonjs';
|
||||||
|
import rollupJson from '@rollup/plugin-json';
|
||||||
|
import rollupResolve from '@rollup/plugin-node-resolve';
|
||||||
|
import rollupSourceMaps from 'rollup-plugin-sourcemaps';
|
||||||
|
import { terser as rollupTerser } from 'rollup-plugin-terser';
|
||||||
|
import rollupTypescript from '@rollup/plugin-typescript';
|
||||||
|
|
||||||
|
import * as htmlMinifier from 'html-minifier';
|
||||||
|
|
||||||
|
export {
|
||||||
|
rollup,
|
||||||
|
rollupBabel,
|
||||||
|
rollupCommonjs,
|
||||||
|
rollupJson,
|
||||||
|
rollupResolve,
|
||||||
|
rollupSourceMaps,
|
||||||
|
rollupTerser,
|
||||||
|
rollupTypescript,
|
||||||
|
htmlMinifier,
|
||||||
|
};
|
@ -1,4 +1,4 @@
|
|||||||
import * as plugins from './tsbundle.plugins.js';
|
import * as plugins from './plugins.js';
|
||||||
|
|
||||||
export const cwd = process.cwd();
|
export const cwd = process.cwd();
|
||||||
export const packageDir = plugins.path.join(
|
export const packageDir = plugins.path.join(
|
23
ts/plugins.ts
Normal file
23
ts/plugins.ts
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
// node native
|
||||||
|
import * as path from 'path';
|
||||||
|
|
||||||
|
export { path };
|
||||||
|
|
||||||
|
// pushrocks scope
|
||||||
|
import * as smartcli from '@pushrocks/smartcli';
|
||||||
|
import * as smartfile from '@pushrocks/smartfile';
|
||||||
|
import * as smartlog from '@pushrocks/smartlog';
|
||||||
|
import * as smartlogDestinationLocal from '@pushrocks/smartlog-destination-local';
|
||||||
|
import * as smartpath from '@pushrocks/smartpath';
|
||||||
|
import * as smartpromise from '@pushrocks/smartpromise';
|
||||||
|
import * as smartspawn from '@pushrocks/smartspawn';
|
||||||
|
|
||||||
|
export {
|
||||||
|
smartcli,
|
||||||
|
smartfile,
|
||||||
|
smartlog,
|
||||||
|
smartlogDestinationLocal,
|
||||||
|
smartpath,
|
||||||
|
smartpromise,
|
||||||
|
smartspawn,
|
||||||
|
};
|
@ -1,63 +1,47 @@
|
|||||||
import * as plugins from './tsbundle.plugins.js';
|
import * as plugins from './plugins.js';
|
||||||
|
import * as interfaces from './interfaces/index.js';
|
||||||
import { logger } from './tsbundle.logging.js';
|
import { logger } from './tsbundle.logging.js';
|
||||||
|
|
||||||
export class TsBundle {
|
export class TsBundle {
|
||||||
public async buildTest(
|
|
||||||
cwdArg: string,
|
|
||||||
fromArg: string,
|
|
||||||
toArg: string,
|
|
||||||
bundlerArg: 'rollup' | 'parcel',
|
|
||||||
argvArg: any
|
|
||||||
) {
|
|
||||||
const done = plugins.smartpromise.defer();
|
|
||||||
const threadsimple = new plugins.smartspawn.ThreadSimple(
|
|
||||||
plugins.path.join(
|
|
||||||
plugins.smartpath.get.dirnameFromImportMetaUrl(import.meta.url),
|
|
||||||
'./tsbundle.class.tsbundleprocess.js'
|
|
||||||
),
|
|
||||||
[],
|
|
||||||
{
|
|
||||||
env: {
|
|
||||||
...process.env,
|
|
||||||
tsbundleMode: 'test',
|
|
||||||
tsbundleCwd: cwdArg,
|
|
||||||
tsbundleFrom: fromArg,
|
|
||||||
tsbundleTo: toArg,
|
|
||||||
tsbundleBundler: bundlerArg,
|
|
||||||
tsbundleArgv: argvArg ? JSON.stringify(argvArg) : '{}',
|
|
||||||
},
|
|
||||||
}
|
|
||||||
);
|
|
||||||
const childProcess = await threadsimple.start();
|
|
||||||
childProcess.on('exit', (status) => {
|
|
||||||
done.resolve();
|
|
||||||
});
|
|
||||||
await done.promise;
|
|
||||||
}
|
|
||||||
|
|
||||||
public async buildProduction(
|
public async build(
|
||||||
cwdArg: string,
|
cwdArg: string,
|
||||||
fromArg: string,
|
fromArg: string = './ts_web/index.ts',
|
||||||
toArg: string,
|
toArg: string = './dist_bundle/bundle.js',
|
||||||
bundlerArg: 'rollup' | 'parcel',
|
argvArg: interfaces.ICliOptions
|
||||||
argvArg: any
|
|
||||||
) {
|
) {
|
||||||
const done = plugins.smartpromise.defer();
|
const done = plugins.smartpromise.defer();
|
||||||
|
const getBundlerPath = () => {
|
||||||
|
if (argvArg.bundler === 'esbuild') {
|
||||||
|
return './mod_esbuild/index.child.js'
|
||||||
|
}
|
||||||
|
if (argvArg.bundler === 'parcel') {
|
||||||
|
return './mod_parcel/index.child.js'
|
||||||
|
}
|
||||||
|
if (argvArg.bundler === 'rollup') {
|
||||||
|
return './mod_rollup/index.child.js'
|
||||||
|
}
|
||||||
|
return './mod_esbuild/index.child.js'
|
||||||
|
}
|
||||||
|
const transportOptions: interfaces.IEnvTransportOptions = {
|
||||||
|
cwd: cwdArg,
|
||||||
|
from: fromArg,
|
||||||
|
to: toArg,
|
||||||
|
mode: argvArg && argvArg.production ? 'production' : 'test',
|
||||||
|
argv: argvArg ? argvArg : {
|
||||||
|
bundler: 'esbuild'
|
||||||
|
}
|
||||||
|
}
|
||||||
const threadsimple = new plugins.smartspawn.ThreadSimple(
|
const threadsimple = new plugins.smartspawn.ThreadSimple(
|
||||||
plugins.path.join(
|
plugins.path.join(
|
||||||
plugins.smartpath.get.dirnameFromImportMetaUrl(import.meta.url),
|
plugins.smartpath.get.dirnameFromImportMetaUrl(import.meta.url),
|
||||||
'./tsbundle.class.tsbundleprocess.js'
|
getBundlerPath()
|
||||||
),
|
),
|
||||||
[],
|
[],
|
||||||
{
|
{
|
||||||
env: {
|
env: {
|
||||||
...process.env,
|
...process.env,
|
||||||
tsbundleMode: 'production',
|
transportOptions: JSON.stringify(transportOptions),
|
||||||
tsbundleCwd: cwdArg,
|
|
||||||
tsbundleFrom: fromArg,
|
|
||||||
tsbundleTo: toArg,
|
|
||||||
tsbundleBundler: bundlerArg,
|
|
||||||
tsbundleArgv: argvArg ? JSON.stringify(argvArg) : '{}',
|
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
@ -1,108 +1,44 @@
|
|||||||
import * as plugins from './tsbundle.plugins.js';
|
import * as plugins from './plugins.js';
|
||||||
import { TsBundle } from './tsbundle.class.tsbundle.js';
|
import { TsBundle } from './tsbundle.class.tsbundle.js';
|
||||||
import { HtmlHandler } from './tsbundle.htmlhandler.js';
|
|
||||||
import { logger } from './tsbundle.logging.js';
|
import { logger } from './tsbundle.logging.js';
|
||||||
|
|
||||||
export const runCli = async () => {
|
export const runCli = async () => {
|
||||||
const tsBundleCli = new plugins.smartcli.Smartcli();
|
const tsBundleCli = new plugins.smartcli.Smartcli();
|
||||||
tsBundleCli.standardTask().subscribe(async (argvArg) => {
|
tsBundleCli.standardTask().subscribe(async (argvArg) => {
|
||||||
const tsbundle = new TsBundle();
|
const tsbundle = new TsBundle();
|
||||||
// const htmlHandler = new HtmlHandler();
|
await tsbundle.build(process.cwd(), argvArg.from, argvArg.to, argvArg);
|
||||||
switch (true) {
|
return;
|
||||||
case argvArg.production || process.env.CI:
|
|
||||||
await tsbundle.buildProduction(process.cwd(), argvArg.from, argvArg.to, 'rollup', argvArg);
|
|
||||||
// await htmlHandler.minifyHtml();
|
|
||||||
break;
|
|
||||||
case argvArg.test:
|
|
||||||
default:
|
|
||||||
await tsbundle.buildTest(process.cwd(), argvArg.from, argvArg.to, 'rollup', argvArg);
|
|
||||||
// await htmlHandler.copyHtml();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
tsBundleCli.addCommand('element').subscribe(async (argvArg) => {
|
tsBundleCli.addCommand('element').subscribe(async (argvArg) => {
|
||||||
const tsbundle = new TsBundle();
|
const tsbundle = new TsBundle();
|
||||||
// const htmlHandler = new HtmlHandler();
|
// const htmlHandler = new HtmlHandler();
|
||||||
switch (true) {
|
await tsbundle.build(
|
||||||
case argvArg.production || process.env.CI:
|
process.cwd(),
|
||||||
await tsbundle.buildProduction(
|
'./ts_web/index.ts',
|
||||||
process.cwd(),
|
'./dist_bundle/bundle.js',
|
||||||
'./ts_web/index.ts',
|
argvArg
|
||||||
'./dist_bundle/bundle.js',
|
);
|
||||||
'rollup',
|
|
||||||
argvArg
|
|
||||||
);
|
|
||||||
// await htmlHandler.minifyHtml();
|
|
||||||
break;
|
|
||||||
case argvArg.test:
|
|
||||||
default:
|
|
||||||
await tsbundle.buildTest(
|
|
||||||
process.cwd(),
|
|
||||||
'./ts_web/index.ts',
|
|
||||||
'./dist_bundle/bundle.js',
|
|
||||||
'rollup',
|
|
||||||
argvArg
|
|
||||||
);
|
|
||||||
// await htmlHandler.copyHtml();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
tsBundleCli.addCommand('npm').subscribe(async (argvArg) => {
|
tsBundleCli.addCommand('npm').subscribe(async (argvArg) => {
|
||||||
const tsbundle = new TsBundle();
|
const tsbundle = new TsBundle();
|
||||||
// const htmlHandler = new HtmlHandler();
|
await tsbundle.build(
|
||||||
switch (true) {
|
process.cwd(),
|
||||||
case argvArg.production || process.env.CI:
|
'./ts/index.ts',
|
||||||
await tsbundle.buildProduction(
|
'./dist_bundle/bundle.js',
|
||||||
process.cwd(),
|
argvArg
|
||||||
'./ts/index.ts',
|
);
|
||||||
'./dist_bundle/bundle.js',
|
|
||||||
'rollup',
|
|
||||||
argvArg
|
|
||||||
);
|
|
||||||
// await htmlHandler.minifyHtml();
|
|
||||||
break;
|
|
||||||
case argvArg.test:
|
|
||||||
default:
|
|
||||||
await tsbundle.buildTest(
|
|
||||||
process.cwd(),
|
|
||||||
'./ts/index.ts',
|
|
||||||
'./dist_bundle/bundle.js',
|
|
||||||
'rollup',
|
|
||||||
argvArg
|
|
||||||
);
|
|
||||||
// await htmlHandler.copyHtml();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
tsBundleCli.addCommand('website').subscribe(async (argvArg) => {
|
tsBundleCli.addCommand('website').subscribe(async (argvArg) => {
|
||||||
const tsbundle = new TsBundle();
|
const tsbundle = new TsBundle();
|
||||||
const htmlHandler = new HtmlHandler();
|
await tsbundle.build(
|
||||||
switch (true) {
|
process.cwd(),
|
||||||
case argvArg.production || process.env.CI:
|
'./ts_web/index.ts',
|
||||||
await tsbundle.buildProduction(
|
'./dist_serve/bundle.js',
|
||||||
process.cwd(),
|
argvArg
|
||||||
'./ts_web/index.ts',
|
);
|
||||||
'./dist_serve/bundle.js',
|
|
||||||
'rollup',
|
|
||||||
argvArg
|
|
||||||
);
|
|
||||||
await htmlHandler.minifyHtml();
|
|
||||||
break;
|
|
||||||
case argvArg.test:
|
|
||||||
default:
|
|
||||||
await tsbundle.buildTest(
|
|
||||||
process.cwd(),
|
|
||||||
'./ts_web/index.ts',
|
|
||||||
'./dist_serve/bundle.js',
|
|
||||||
'rollup',
|
|
||||||
argvArg
|
|
||||||
);
|
|
||||||
await htmlHandler.copyHtml();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
tsBundleCli.startParse();
|
tsBundleCli.startParse();
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import * as plugins from './tsbundle.plugins.js';
|
import * as plugins from './plugins.js';
|
||||||
|
|
||||||
export const logger = new plugins.smartlog.Smartlog({
|
export const logger = new plugins.smartlog.Smartlog({
|
||||||
logContext: {
|
logContext: {
|
||||||
|
@ -1,49 +0,0 @@
|
|||||||
// node native
|
|
||||||
import * as path from 'path';
|
|
||||||
|
|
||||||
export { path };
|
|
||||||
|
|
||||||
// pushrocks scope
|
|
||||||
import * as smartcli from '@pushrocks/smartcli';
|
|
||||||
import * as smartfile from '@pushrocks/smartfile';
|
|
||||||
import * as smartlog from '@pushrocks/smartlog';
|
|
||||||
import * as smartlogDestinationLocal from '@pushrocks/smartlog-destination-local';
|
|
||||||
import * as smartpath from '@pushrocks/smartpath';
|
|
||||||
import * as smartparcel from '@pushrocks/smartparcel';
|
|
||||||
import * as smartpromise from '@pushrocks/smartpromise';
|
|
||||||
import * as smartspawn from '@pushrocks/smartspawn';
|
|
||||||
|
|
||||||
export {
|
|
||||||
smartcli,
|
|
||||||
smartfile,
|
|
||||||
smartlog,
|
|
||||||
smartlogDestinationLocal,
|
|
||||||
smartpath,
|
|
||||||
smartparcel,
|
|
||||||
smartpromise,
|
|
||||||
smartspawn,
|
|
||||||
};
|
|
||||||
|
|
||||||
// third party scope
|
|
||||||
import * as rollup from 'rollup';
|
|
||||||
import rollupBabel from 'rollup-plugin-babel';
|
|
||||||
import rollupCommonjs from '@rollup/plugin-commonjs';
|
|
||||||
import rollupJson from '@rollup/plugin-json';
|
|
||||||
import rollupResolve from '@rollup/plugin-node-resolve';
|
|
||||||
import rollupSourceMaps from 'rollup-plugin-sourcemaps';
|
|
||||||
import { terser as rollupTerser } from 'rollup-plugin-terser';
|
|
||||||
import rollupTypescript from '@rollup/plugin-typescript';
|
|
||||||
|
|
||||||
import * as htmlMinifier from 'html-minifier';
|
|
||||||
|
|
||||||
export {
|
|
||||||
rollup,
|
|
||||||
rollupBabel,
|
|
||||||
rollupCommonjs,
|
|
||||||
rollupJson,
|
|
||||||
rollupResolve,
|
|
||||||
rollupSourceMaps,
|
|
||||||
rollupTerser,
|
|
||||||
rollupTypescript,
|
|
||||||
htmlMinifier,
|
|
||||||
};
|
|
Loading…
Reference in New Issue
Block a user