Files
bridget/vercel.sh
Ryan 36721f8bf6 Bump deps (#515)
* chore: add nix flake for reproducible dev environment

Signed-off-by: Sped0n <hi@sped0n.com>

* refactor: migrate SCSS to modern Sass (@use/@forward)

Update mixins to use Sass module functions (map.has-key/get).
Configure Vite for modern Sass API.
Introduce _foundation.scss for forwarding core modules.

Signed-off-by: Sped0n <hi@sped0n.com>

* fix: replace deprecated _build with build in frontmatter

Signed-off-by: Sped0n <hi@sped0n.com>

* chore: add vcache.sh script for vercel build cache management

Signed-off-by: Sped0n <hi@sped0n.com>

* refactor: migrate to ESLint v9 flat config

Remove legacy .eslintrc.json, .eslintignore, and .prettierrc.json.

Add eslint.config.mjs with love, prettier, solid, and import rules.

Update devDependencies (eslint@9, @typescript-eslint@8, etc.) and scripts.

Minor TS fixes: remove eslint-disable, add error logging, simplify conditional.

Signed-off-by: Sped0n <hi@sped0n.com>

* chore: replace vcache.sh with vercel.sh for Vercel build process

Delete vcache.sh script.

Add vercel.sh: install Dart Sass v1.93.3, copy generated assets between
node_modules and project dirs, run vite:build + hugo build, then copy back.

Signed-off-by: Sped0n <hi@sped0n.com>

* chore: setup dart-sass and split build steps in GitHub workflow

Signed-off-by: Sped0n <hi@sped0n.com>

---------

Signed-off-by: Sped0n <hi@sped0n.com>
2025-11-11 20:20:29 +08:00

51 lines
1.8 KiB
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
node_modules_generated_dir="./node_modules/exampleSite/resources/_gen"
project_generated_dir="./exampleSite/resources/_gen"
dart_sass_version="1.93.3"
dart_sass_install_dir="${HOME}/.local/dart-sass"
dart_sass_tarball="dart-sass-${dart_sass_version}-linux-x64.tar.gz"
dart_sass_download_url="https://github.com/sass/dart-sass/releases/download/${dart_sass_version}/${dart_sass_tarball}"
install_dart_sass() {
echo "Installing Dart Sass ${dart_sass_version}..."
mkdir -p "${HOME}/.local"
curl -sSLO "${dart_sass_download_url}"
rm -rf "${dart_sass_install_dir}"
tar -C "${HOME}/.local" -xf "${dart_sass_tarball}"
rm -f "${dart_sass_tarball}"
export PATH="${dart_sass_install_dir}:${PATH}"
}
copy_generated_assets_to_project() {
if [ -d "${node_modules_generated_dir}" ]; then
rm -rf "${project_generated_dir}"
mkdir -p "${project_generated_dir}"
cp -a "${node_modules_generated_dir}/." "${project_generated_dir}"
echo "Copied '${node_modules_generated_dir}' to '${project_generated_dir}'."
else
echo "Source '${node_modules_generated_dir}' not found, skipping copy to project."
fi
}
run_site_build() {
pnpm run vite:build && hugo --logLevel info --source=exampleSite --gc --minify
}
copy_generated_assets_to_node_modules() {
rm -rf "${node_modules_generated_dir}"
if [ -d "${project_generated_dir}" ]; then
mkdir -p "${node_modules_generated_dir}"
cp -a "${project_generated_dir}/." "${node_modules_generated_dir}"
echo "Copied '${project_generated_dir}' back to '${node_modules_generated_dir}'."
else
echo "Source '${project_generated_dir}' not found, skipping copy to node_modules."
fi
}
install_dart_sass
copy_generated_assets_to_project
run_site_build
copy_generated_assets_to_node_modules