From 99b382b7a03ca3028f287ee6f277d9dbb7c91737 Mon Sep 17 00:00:00 2001 From: Ashwin Sureshkumar Date: Thu, 19 Oct 2017 10:42:36 -0400 Subject: [PATCH] chore(tooling): Add prettier, lint-staged and precommit hook for tooling - Added basic tooling configuration for linting using prettier, tslint. - Added precommit to run lint on staged files Close #45 --- package.json | 14 +++++++++++++- tslint.json | 5 ++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 71df0160..d94a2861 100644 --- a/package.json +++ b/package.json @@ -7,6 +7,13 @@ "path": "cz-conventional-changelog" } }, + "lint-staged": { + "*.@(ts)": [ + "prettier --parser typescript --write", + "tslint --fix", + "git add" + ] + }, "scripts": { "ng": "ng", "start": "ng serve", @@ -15,7 +22,8 @@ "test": "ng test", "lint": "ng lint", "e2e": "ng e2e", - "commit": "git-cz" + "commit": "git-cz", + "precommit": "lint-staged" }, "private": true, "dependencies": { @@ -53,6 +61,7 @@ "danger": "1.2.0", "doctoc": "^1.3.0", "electron": "1.6.11", + "husky": "0.14.3", "jasmine-core": "2.6.2", "jasmine-spec-reporter": "4.1.0", "karma": "1.7.0", @@ -61,10 +70,13 @@ "karma-coverage-istanbul-reporter": "1.2.1", "karma-jasmine": "1.1.0", "karma-jasmine-html-reporter": "0.2.2", + "lint-staged": "4.3.0", "lodash": "4.17.4", + "prettier": "1.7.4", "protractor": "5.1.2", "ts-node": "3.2.0", "tslint": "5.3.2", + "tslint-config-prettier": "1.6.0", "typescript": "2.3.3", "validate-commit-msg": "2.14.0", "wallaby-webpack": "*" diff --git a/tslint.json b/tslint.json index 7b6d8c0b..f7e005d3 100644 --- a/tslint.json +++ b/tslint.json @@ -136,5 +136,8 @@ "component-class-suffix": true, "directive-class-suffix": true, "invoke-injectable": true - } + }, + "extends": [ + "tslint-config-prettier" + ] }