diff --git a/.gitignore b/.gitignore index da41541f..04c4e0e1 100644 --- a/.gitignore +++ b/.gitignore @@ -20,7 +20,8 @@ generated/ /.cache/ # IDE Artifacts -.vscode +.vscode/* +!.vscode/extensions.json .devcontainer # Misc diff --git a/.prettierignore b/.prettierignore index c3f732fa..90dbef6a 100644 --- a/.prettierignore +++ b/.prettierignore @@ -21,7 +21,8 @@ generated/ /.cache/ # IDE Artifacts -.vscode +.vscode/* +!.vscode/extensions.json .devcontainer # Misc diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 00000000..9c681f06 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,3 @@ +{ + "recommendations": ["google.wireit"] +} diff --git a/packages/ng-schematics/package.json b/packages/ng-schematics/package.json index 2a6c3b89..81c47a4e 100644 --- a/packages/ng-schematics/package.json +++ b/packages/ng-schematics/package.json @@ -3,13 +3,53 @@ "version": "0.1.0", "description": "Puppeteer Angular schematics", "scripts": { - "copy": "node copySchemaFiles.js", - "clean": "tsc -b --clean && rimraf lib", - "dev": "run-s clean copy && tsc -p tsconfig.json --watch", - "build": "run-s build:*", - "build:schematics": "npm run copy && tsc -p tsconfig.json", - "build:test": "tsc -p tsconfig.spec.json", - "test": "run-s clean build && mocha" + "dev": "npm run build --watch", + "dev:test": "npm run test --watch", + "copy": "wireit", + "build": "wireit", + "clean": "tsc --build --clean && rimraf lib", + "clean:test": "rimraf test/build", + "test": "wireit" + }, + "wireit": { + "copy": { + "clean": "if-file-deleted", + "command": "node copySchemaFiles.js", + "files": [ + "src/**/files/**", + "src/**/*.json" + ], + "output": [ + "lib/**/files/**", + "lib/**/*.json" + ], + "dependencies": [ + "clean" + ] + }, + "build": { + "command": "tsc -b", + "files": [ + "src/**/*.ts", + "!src/**/files", + "!src/**/*.json" + ], + "output": [ + "lib/**", + "!lib/**/files", + "!lib/**/*.json" + ], + "dependencies": [ + "copy" + ] + }, + "test": { + "command": "mocha", + "dependencies": [ + "clean:test", + "build" + ] + } }, "keywords": [ "angular", diff --git a/packages/ng-schematics/tsconfig.json b/packages/ng-schematics/tsconfig.json index 87c0e289..115c8331 100644 --- a/packages/ng-schematics/tsconfig.json +++ b/packages/ng-schematics/tsconfig.json @@ -14,5 +14,6 @@ "target": "ES6" }, "include": ["src/**/*"], - "exclude": ["src/**/files/**/*"] + "exclude": ["src/**/files/**/*"], + "references": [{"path": "./tsconfig.spec.json"}] } diff --git a/packages/ng-schematics/tsconfig.spec.json b/packages/ng-schematics/tsconfig.spec.json index 954ef7bf..8afa532c 100644 --- a/packages/ng-schematics/tsconfig.spec.json +++ b/packages/ng-schematics/tsconfig.spec.json @@ -5,6 +5,6 @@ "outDir": "test/build/", "types": ["node", "mocha"] }, - "include": ["test/**/*"], + "include": ["test/src/**/*"], "exclude": ["test/build/**/*"] }