From 09d5f1c806365e3cb037600ea87f96e8b72295d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20H=C3=BCttemann?= Date: Sat, 20 May 2023 10:44:58 +0200 Subject: [PATCH] Add husky for pre-commit checks --- .husky/pre-commit | 8 ++++++++ package-lock.json | 22 ++++++++++++++++++++++ package.json | 11 +++++++---- 3 files changed, 37 insertions(+), 4 deletions(-) create mode 100755 .husky/pre-commit diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100755 index 0000000..e64a065 --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1,8 @@ +#!/usr/bin/env sh +. "$(dirname -- "$0")/_/husky.sh" + +npm run format +npm run lint + +npm test +npm run compile diff --git a/package-lock.json b/package-lock.json index 99fe7e1..20c2a7e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,6 +21,7 @@ "eslint-plugin-n": "^15.7.0", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-promise": "^6.1.1", + "husky": "^8.0.3", "prettier": "2.8.8", "typescript": "^5.0.4" } @@ -1688,6 +1689,21 @@ "url": "https://github.com/sponsors/ljharb" } }, + "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", @@ -4064,6 +4080,12 @@ "has-symbols": "^1.0.2" } }, + "husky": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", + "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", + "dev": true + }, "ignore": { "version": "5.2.4", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", diff --git a/package.json b/package.json index 4acb36b..1ce9890 100644 --- a/package.json +++ b/package.json @@ -9,14 +9,16 @@ "url": "https://git.verdigado.com/NB-Public/rocketchat2matrix" }, "scripts": { - "format": "prettier 'src/**/*.ts' --write", + "format": "prettier 'src/**/*.ts' --check", + "format-fix": "prettier 'src/**/*.ts' --write", "lint": "eslint src/ --ext .ts", "lint-fix": "eslint src/ --fix --ext .ts", - "prefix": "npm run format", + "prefix": "npm run format-fix", "fix": "npm run lint-fix", - "test": "echo \"Error: no test specified\" && exit 1", + "test": "echo \"Warning: no test specified\"", "compile": "rm -rf dist/ && tsc", - "start": "npm run compile && node dist/app.js" + "start": "npm run compile && node dist/app.js", + "prepare": "husky install" }, "version": "0.1.0", "devDependencies": { @@ -29,6 +31,7 @@ "eslint-plugin-n": "^15.7.0", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-promise": "^6.1.1", + "husky": "^8.0.3", "prettier": "2.8.8", "typescript": "^5.0.4" },