mirror of
https://git.mirrors.martin98.com/https://github.com/SigNoz/signoz
synced 2025-07-29 20:42:04 +08:00
feat: add typecheck on pre-commit hook (#4472)
* feat: add typecheck on pre-commit hook
This commit is contained in:
parent
0f44246795
commit
2cf0bb4fa5
@ -210,7 +210,8 @@
|
|||||||
},
|
},
|
||||||
"lint-staged": {
|
"lint-staged": {
|
||||||
"*.(js|jsx|ts|tsx)": [
|
"*.(js|jsx|ts|tsx)": [
|
||||||
"eslint --fix"
|
"eslint --fix",
|
||||||
|
"sh scripts/typecheck-staged.sh"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"resolutions": {
|
"resolutions": {
|
||||||
|
25
frontend/scripts/typecheck-staged.sh
Normal file
25
frontend/scripts/typecheck-staged.sh
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
files="";
|
||||||
|
|
||||||
|
# lint-staged will pass all files in $1 $2 $3 etc. iterate and concat.
|
||||||
|
for var in "$@"
|
||||||
|
do
|
||||||
|
files="$files \"$var\","
|
||||||
|
done
|
||||||
|
|
||||||
|
# create temporary tsconfig which includes only passed files
|
||||||
|
str="{
|
||||||
|
\"extends\": \"./tsconfig.json\",
|
||||||
|
\"include\": [\"src/types/global.d.ts\",\"src/typings/window.ts\", $files]
|
||||||
|
}"
|
||||||
|
echo $str > tsconfig.tmp
|
||||||
|
|
||||||
|
# run typecheck using temp config
|
||||||
|
tsc -p ./tsconfig.tmp
|
||||||
|
|
||||||
|
# capture exit code of tsc
|
||||||
|
code=$?
|
||||||
|
|
||||||
|
# delete temp config
|
||||||
|
rm ./tsconfig.tmp
|
||||||
|
|
||||||
|
exit $code
|
Loading…
x
Reference in New Issue
Block a user