-
Notifications
You must be signed in to change notification settings - Fork 33
/
Copy pathinstall-dependencies
executable file
·31 lines (25 loc) · 1.07 KB
/
install-dependencies
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/usr/bin/env bash
# Install dependencies for a given version of Svelte
set -euxo pipefail
svelte_version=${1}
node_version=$(node --version)
rm -rf node_modules
npm install --no-package-lock
if [[ "${svelte_version}" == "3" ]]; then
npm uninstall --no-save vite vitest @vitest/coverage-v8 @sveltejs/vite-plugin-svelte svelte-check svelte
npm install --no-save vite@4 [email protected] @vitest/[email protected] @sveltejs/vite-plugin-svelte@2 svelte-check@3 svelte@3
elif [[ "${svelte_version}" == "4" ]]; then
npm uninstall --no-save @sveltejs/vite-plugin-svelte svelte
npm install --no-save @sveltejs/vite-plugin-svelte@3 svelte@4
fi
if [[ "${node_version}" =~ "v16" ]]; then
npm uninstall --no-save vite vitest @vitest/coverage-v8 @sveltejs/vite-plugin-svelte
npm install --no-save vite@4 [email protected] @vitest/[email protected] @sveltejs/vite-plugin-svelte@2
fi
npm dedupe
installed_version=$(npm ls --depth=0 --parseable svelte@${svelte_version})
if [[ -z "${installed_version}" ]]; then
echo "Error: expected svelte@${svelte_version}"
npm ls --depth=0 svelte
exit 1
fi