Files
hfb_sys/scripts/check-vue-size.sh

19 lines
538 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
MAX_LINES="${VUE_MAX_LINES:-1800}"
failed=0
while IFS= read -r -d '' file; do
lines="$(wc -l < "${file}")"
if (( lines > MAX_LINES )); then
printf '[vue-size] %s %s 行,超过上限 %s\n' "${file#${ROOT_DIR}/}" "${lines}" "${MAX_LINES}" >&2
failed=1
fi
done < <(find "${ROOT_DIR}/frontend/src" -name '*.vue' -print0)
if (( failed != 0 )); then
exit 1
fi
printf '[vue-size] 所有 Vue 页面均不超过 %s 行\n' "${MAX_LINES}"