From 509c0c176e2b5e48a4fa8296807a752a72c2e200 Mon Sep 17 00:00:00 2001 From: Mykhailo Kravchenko Date: Mon, 7 Aug 2023 16:46:31 +0200 Subject: [PATCH] add husky --- .husky/pre-commit | 6 ++++++ package-lock.json | 22 ++++++++++++++++++++++ package.json | 4 +++- 3 files changed, 31 insertions(+), 1 deletion(-) create mode 100755 .husky/pre-commit diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100755 index 0000000..e0ee12e --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1,6 @@ +#!/usr/bin/env sh +. "$(dirname -- "$0")/_/husky.sh" + +npm run lint +npm run ts +npm run test diff --git a/package-lock.json b/package-lock.json index 0a9d183..67e0669 100644 --- a/package-lock.json +++ b/package-lock.json @@ -29,6 +29,7 @@ "eslint-plugin-react": "^7.33.1", "eslint-plugin-react-hooks": "^4.6.0", "html-webpack-plugin": "^5.5.3", + "husky": "^8.0.3", "onchange": "^7.1.0", "prettier": "^3.0.0", "style-loader": "^3.3.3", @@ -5626,6 +5627,21 @@ "node": ">=10.17.0" } }, + "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/iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -13381,6 +13397,12 @@ "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", "dev": true }, + "husky": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", + "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", + "dev": true + }, "iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", diff --git a/package.json b/package.json index 9ce0662..fc22825 100644 --- a/package.json +++ b/package.json @@ -8,13 +8,14 @@ "src" ], "scripts": { + "postinstall": "husky install", "start": "webpack-dev-server --mode=development --open --hot", "build": "webpack --mode=production", "lint": "eslint src --fix", "ts": "npx tsc --noEmit", "prettier": "prettier --write .", "prettier-watch": "onchange \"**/*.js\" -- prettier --write --ignore-unknown {{changed}}", - "test": "echo \"Error: no test specified\" && exit 1" + "test": "echo \"Error: no test specified\"" }, "repository": { "type": "git", @@ -54,6 +55,7 @@ "eslint-plugin-react": "^7.33.1", "eslint-plugin-react-hooks": "^4.6.0", "html-webpack-plugin": "^5.5.3", + "husky": "^8.0.3", "onchange": "^7.1.0", "prettier": "^3.0.0", "style-loader": "^3.3.3",