From 32b16de8ea8c73b3ad9e91eb0936794a5a90a1e1 Mon Sep 17 00:00:00 2001 From: George Kalpakas Date: Wed, 2 Oct 2019 19:26:14 +0300 Subject: [PATCH] build(docs-infra): align config with what cli generates for new apps (#32923) This is mainly to avoid some warning when building the app, such as: ``` WARNING in .../angular/aio/src/environments/environment.archive.ts is part of the TypeScript compilation but it's unused. Add only entry points to the 'files' or 'include' properties in your tsconfig. ``` (Not turning on `fullTemplateTypeCheck` due to lots of errors.) PR Close #32923 --- aio/scripts/switch-to-viewengine.js | 14 +++++--------- aio/tsconfig.app.json | 17 ++++++----------- aio/tsconfig.json | 7 ++++++- 3 files changed, 17 insertions(+), 21 deletions(-) diff --git a/aio/scripts/switch-to-viewengine.js b/aio/scripts/switch-to-viewengine.js index c79ea4587d..c8e194c8a2 100644 --- a/aio/scripts/switch-to-viewengine.js +++ b/aio/scripts/switch-to-viewengine.js @@ -7,7 +7,7 @@ const {join, resolve} = require('path'); // Constants const ROOT_DIR = resolve(__dirname, '..'); -const NG_JSON = join(ROOT_DIR, 'angular.json'); +const TS_CONFIG_PATH = join(ROOT_DIR, 'tsconfig.json'); const NG_COMPILER_OPTS = { angularCompilerOptions: { enableIvy: false, @@ -19,21 +19,17 @@ _main(process.argv.slice(2)); // Functions - Definitions function _main() { - // Detect path to `tsconfig.app.json`. - const ngConfig = parse(readFileSync(NG_JSON, 'utf8')); - const tsConfigPath = join(ROOT_DIR, ngConfig.projects.site.architect.build.options.tsConfig); - // Enable ViewIngine/Disable Ivy in TS config. - console.log(`\nModifying \`${tsConfigPath}\`...`); - const oldTsConfigStr = readFileSync(tsConfigPath, 'utf8'); + console.log(`\nModifying \`${TS_CONFIG_PATH}\`...`); + const oldTsConfigStr = readFileSync(TS_CONFIG_PATH, 'utf8'); const oldTsConfigObj = parse(oldTsConfigStr); const newTsConfigObj = extend(true, oldTsConfigObj, NG_COMPILER_OPTS); const newTsConfigStr = `${JSON.stringify(newTsConfigObj, null, 2)}\n`; console.log(`\nNew config: ${newTsConfigStr}`); - writeFileSync(tsConfigPath, newTsConfigStr); + writeFileSync(TS_CONFIG_PATH, newTsConfigStr); // Done. console.log('\nReady to build with ViewEngine!'); console.log('(To switch back to Ivy (with packages from npm), undo the changes in ' + - `\`${tsConfigPath}\` and run \`yarn aio-use-npm && yarn example-use-npm\`.)`); + `\`${TS_CONFIG_PATH}\` and run \`yarn aio-use-npm && yarn example-use-npm\`.)`); } diff --git a/aio/tsconfig.app.json b/aio/tsconfig.app.json index 7b09a49eba..f758d9820d 100644 --- a/aio/tsconfig.app.json +++ b/aio/tsconfig.app.json @@ -4,16 +4,11 @@ "outDir": "./out-tsc/app", "types": [] }, + "files": [ + "src/main.ts", + "src/polyfills.ts" + ], "include": [ - "src/**/*.ts" - ], - "exclude": [ - "src/test.ts", - "src/testing/**/*", - "src/**/*.spec.ts", - "src/**/*.worker.ts" - ], - "angularCompilerOptions": { - "disableTypeScriptVersionCheck": true - } + "src/**/*.d.ts" + ] } diff --git a/aio/tsconfig.json b/aio/tsconfig.json index a27d504e54..01bb149599 100644 --- a/aio/tsconfig.json +++ b/aio/tsconfig.json @@ -7,7 +7,6 @@ "declaration": false, "module": "esnext", "moduleResolution": "node", - "emitDecoratorMetadata": true, "experimentalDecorators": true, "importHelpers": true, "target": "es2015", @@ -33,4 +32,10 @@ "scripts", "tools" ], + "angularCompilerOptions": { + "disableTypeScriptVersionCheck": true, + // TODO: Fix template type errors and enable. + // "fullTemplateTypeCheck": true, + "strictInjectionParameters": true + } }