From f0c17e756b649060bc65a130e6bd0c332dc50557 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maciej=20P=C4=99dzich?= Date: Tue, 23 May 2023 10:15:07 +0200 Subject: [PATCH] Add pre-commit hook for formatting and linting --- .husky/pre-commit | 4 ++++ package-lock.json | 18 +++++++++++++++++- package.json | 5 ++++- 3 files changed, 25 insertions(+), 2 deletions(-) create mode 100755 .husky/pre-commit diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100755 index 0000000..9e5a7b4 --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1,4 @@ +#!/usr/bin/env sh +. "$(dirname -- "$0")/_/husky.sh" + +npm run prettier-format && npm run lint diff --git a/package-lock.json b/package-lock.json index 0b07416..a92806a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,6 +25,8 @@ "eslint-config-prettier": "^8.8.0", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-vue": "^9.0.0", + "husky": "^8.0.3", + "prettier": "^2.8.8", "typescript": "^5.0.0", "vite": "^4.2.0", "vite-plugin-eslint": "^1.8.1", @@ -1815,6 +1817,21 @@ "he": "bin/he" } }, + "node_modules/husky": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", + "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", + "dev": true, + "bin": { + "husky": "lib/bin.js" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/typicode" + } + }, "node_modules/ignore": { "version": "5.2.4", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", @@ -2356,7 +2373,6 @@ "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", "dev": true, - "peer": true, "bin": { "prettier": "bin-prettier.js" }, diff --git a/package.json b/package.json index 51d292e..dd60cb9 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,8 @@ "build": "vue-tsc --noEmit && vite build", "preview": "vite preview", "lint": "eslint . --fix --ignore-path .gitignore", - "prettier-format": "prettier --config .prettierrc --ignore-path .gitignore --write \"./**/*.{vue,js,ts}\"" + "prettier-format": "prettier --config .prettierrc --ignore-path .gitignore --write \"./**/*.{vue,js,ts}\"", + "prepare": "husky install" }, "dependencies": { "@mdi/font": "7.0.96", @@ -26,6 +27,8 @@ "eslint-config-prettier": "^8.8.0", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-vue": "^9.0.0", + "husky": "^8.0.3", + "prettier": "^2.8.8", "typescript": "^5.0.0", "vite": "^4.2.0", "vite-plugin-eslint": "^1.8.1",