30 lines
654 B
Bash
Executable File
30 lines
654 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# Upgrade npm package (dev)dependencies to the latest versions and update package.json
|
|
#
|
|
# Require:
|
|
# - jq - brew install jq
|
|
|
|
# Common stuff
|
|
RED="$(tput setaf 1)"
|
|
CYAN="$(tput setaf 6)"
|
|
UNDERLINE="$(tput sgr 0 1)"
|
|
NOCOLOR="$(tput sgr0)"
|
|
function header() { echo -e "$UNDERLINE$CYAN$1$NOCOLOR\n"; }
|
|
function error() { echo -e "$UNDERLINE$RED$1$NOCOLOR"; }
|
|
|
|
if [ ! -f package.json ]; then
|
|
error "package.json not found"
|
|
exit 1
|
|
fi
|
|
|
|
update() {
|
|
header "Upgrading $1..."
|
|
for package in $(cat package.json | jq -r ".$1 | keys | .[]" 2>/dev/null); do
|
|
npm install --$2 $package
|
|
done
|
|
}
|
|
|
|
|
|
update dependencies save
|
|
update devDependencies save-dev |