-
Notifications
You must be signed in to change notification settings - Fork 18
/
lefthook.yml
50 lines (50 loc) · 1.43 KB
/
lefthook.yml
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
pre-commit:
piped: true
commands:
lint-js:
# Run linter for JS/TS files if any of them are staged
files: git diff --name-only --cached
glob: "*.{js,ts,jsx,tsx}"
run: |
yarn lint:js
yarn dprint check
typescript:
# Run type-checking for TS files if any of them are staged
files: git diff --name-only --cached
glob: "*.{js,ts,jsx,tsx}"
run: yarn typescript
lint-android:
# if any Kotlin/Java file changed, run Android linter
files: git diff --name-only --cached
glob: "*.{kt,java}"
run: yarn lint:android
lint-swift:
# if any Swift file changed, run Swift linter
files: git diff --name-only --cached
glob: "*.swift"
run: |
#!/bin/bash
if command -v swiftlint &> /dev/null
then
yarn lint:ios:swift --strict
yarn lint:fabric:ios:swift --strict
else
echo "SwiftLint is not installed. Skipping"
fi
lint-objc:
# if any ObjC/ObjC++ file changed, run ObjC linter
files: git diff --name-only --cached
glob: "*.{h,m,mm,cpp}"
run: |
#!/bin/bash
if command -v clang-format &> /dev/null
then
yarn lint:ios:objc --Werror
yarn lint:fabric:ios:objc --Werror
else
echo "ClangFormat is not installed. Skipping"
fi
commit-msg:
commands:
commitlint:
run: yarn commitlint --edit