30 lines
654 B
Plaintext
30 lines
654 B
Plaintext
|
#!/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
|