Files
project-manager/project_manager/preset/default/nodejs.toml
T
2026-09-15 17:21:23 +03:00

40 lines
1.2 KiB
TOML

[presets.nodejs]
conditions = ["{{ 'package.json' | file }}"]
variables.use_nvm = "{{ (((('home' | env) + '/.nvm/nvm.sh') | file) and ('.nvmrc' | file)) | bool }}"
variables.nvm = "{{ '. ~/.nvm/nvm.sh && nvm use && ' if use_nvm | bool else '' }}"
# install
[presets.nodejs.tasks.setup.npm]
conditions = ["{{ 'package-lock.json' | file }}"]
commands = ["{{ nvm }}npm install-clean"]
# install legacy
[presets.nodejs.tasks.setup.npm-legacy]
conditions = ["{{ not ('package-lock.json' | file) }}"]
commands = ["{{ nvm }}npm install"]
# test
[presets.nodejs.tasks.test.jest]
conditions = ["{{ 'node_modules/jest' | file }}"]
commands = ["{{ nvm }}npx jest"]
# build
[presets.nodejs.tasks.build.npm]
conditions = ["{{ 'package.json' | read | get('scripts.build') }}"]
commands = ["{{ nvm }}npm run build"]
# publish
[presets.nodejs.tasks.publish.npm]
conditions = ["{{ 'package.json' | read | get('scripts.publish') }}"]
commands = ["{{ nvm }}npm run publish"]
# clean
[presets.nodejs.tasks.clean.node_modules]
conditions = ["{{ 'node_modules' | file }}"]
commands = ["rm -rf node_modules"]
# version
[presets.nodejs.tasks.version.npm]
conditions = ["{{ version }}"]
commands = ["{{ nvm }}npm version {{ version }} --allow-same-version"]