refactor: replace shell scripts with JS for cross-platform support (#875)

Convert bin/ shell scripts to Node.js and npm scripts using shx and npm-run-all2. Remove unused build-icons.sh. Inlined simple scripts (build-docs-liquid, build-apidoc) as npm scripts.

Made-with: Cursor
This commit is contained in:
Yang Jun
2026-04-08 01:16:49 +08:00
committed by GitHub
parent 66011d14b0
commit 05c47da46d
12 changed files with 503 additions and 132 deletions
+9 -2
View File
@@ -21,7 +21,7 @@
"test:coverage": "jest --coverage src test/integration",
"test:e2e": "jest test/e2e",
"test:demo": "./test/demo/test.sh",
"perf:diff": "bin/perf-diff.sh",
"perf:diff": "node bin/perf-diff.js",
"perf:engines": "cd benchmark && npm run engines",
"version": "npm run build && npm test",
"build": "rollup -c rollup.config.mjs",
@@ -29,7 +29,12 @@
"build:min": "BUNDLES=min rollup -c rollup.config.mjs",
"build:umd": "BUNDLES=umd rollup -c rollup.config.mjs",
"build:charmap": "./bin/character-gen.js > src/util/character.ts",
"build:docs": "bin/build-docs.sh"
"build:docs": "run-s build:docs-liquid build:contributors build:apidoc build:changelog build:docs-hexo",
"build:docs-liquid": "cross-env BUNDLES=min rollup -c rollup.config.mjs && shx mkdir -p docs/public/js && shx cp dist/liquid.browser.min.js docs/public/js/",
"build:contributors": "node bin/build-contributors.js",
"build:apidoc": "shx rm -rf docs/source/api && typedoc --plugin typedoc-plugin-missing-exports ./src --gitRevision master --out docs/source/api",
"build:changelog": "node bin/build-changelog.js",
"build:docs-hexo": "cd docs && npm ci && npm run build && shx cp CNAME public/"
},
"bin": {
"liquidjs": "./bin/liquid.js",
@@ -95,12 +100,14 @@
"husky": "^4.2.5",
"jest": "^29.5.0",
"jsdom": "^16.5.0",
"npm-run-all2": "^8.0.4",
"rollup": "^1.26.3",
"rollup-plugin-replace": "^2.1.0",
"rollup-plugin-typescript2": "^0.31.1",
"rollup-plugin-uglify": "^6.0.4",
"rollup-plugin-version-injector": "^1.3.3",
"semantic-release": "^25.0.3",
"shx": "^0.4.0",
"sinon": "^15.0.2",
"supertest": "^3.4.2",
"ts-jest": "^29.0.5",