Skip to content

Commit 0a809e4

Browse files
committed
Merge pull request #725 from mjohnsonengr/master
Support new tsconfig options for reachability checks
2 parents fe1947f + 9e1ebce commit 0a809e4

File tree

2 files changed

+22
-10
lines changed

2 files changed

+22
-10
lines changed

dist/main/tsconfig/tsconfig.js

+12-8
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,10 @@ var fsu = require("../utils/fsUtil");
22
var simpleValidator = require('./simpleValidator');
33
var types = simpleValidator.types;
44
var compilerOptionsValidation = {
5-
allowNonTsExtensions: { type: simpleValidator.types.boolean },
6-
charset: { type: simpleValidator.types.string },
5+
allowNonTsExtensions: { type: types.boolean },
6+
allowUnreachableCode: { type: types.boolean },
7+
allowUnusedLabels: { type: types.boolean },
8+
charset: { type: types.string },
79
codepage: { type: types.number },
810
declaration: { type: types.boolean },
911
diagnostics: { type: types.boolean },
@@ -26,7 +28,9 @@ var compilerOptionsValidation = {
2628
noEmitHelpers: { type: types.boolean },
2729
noEmitOnError: { type: types.boolean },
2830
noErrorTruncation: { type: types.boolean },
31+
noFallthroughCasesInSwitch: { type: types.boolean },
2932
noImplicitAny: { type: types.boolean },
33+
noImplicitReturns: { type: types.boolean },
3034
noLib: { type: types.boolean },
3135
noLibCheck: { type: types.boolean },
3236
noResolve: { type: types.boolean },
@@ -301,8 +305,8 @@ function increaseProjectForReferenceAndImports(files) {
301305
var preProcessedFileInfo = ts.preProcessFile(content, true), dir = path.dirname(file);
302306
var extensions = ['.ts', '.d.ts', '.tsx'];
303307
function getIfExists(filePathNoExt) {
304-
for (var _i = 0, extensions_1 = extensions; _i < extensions_1.length; _i++) {
305-
var ext = extensions_1[_i];
308+
for (var _i = 0; _i < extensions.length; _i++) {
309+
var ext = extensions[_i];
306310
if (fs.existsSync(filePathNoExt + ext)) {
307311
return filePathNoExt + ext;
308312
}
@@ -374,8 +378,8 @@ function getDefinitionsForNodeModules(projectDir, files) {
374378
try {
375379
var node_modules = travelUpTheDirectoryTreeTillYouFind(projectDir, 'node_modules', true);
376380
var moduleDirs = getDirs(node_modules);
377-
for (var _i = 0, moduleDirs_1 = moduleDirs; _i < moduleDirs_1.length; _i++) {
378-
var moduleDir = moduleDirs_1[_i];
381+
for (var _i = 0; _i < moduleDirs.length; _i++) {
382+
var moduleDir = moduleDirs[_i];
379383
try {
380384
var package_json = JSON.parse(fs.readFileSync(moduleDir + "/package.json").toString());
381385
packagejson.push(moduleDir + "/package.json");
@@ -500,8 +504,8 @@ exports.getPotentiallyRelativeFile = getPotentiallyRelativeFile;
500504
function getDirs(rootDir) {
501505
var files = fs.readdirSync(rootDir);
502506
var dirs = [];
503-
for (var _i = 0, files_1 = files; _i < files_1.length; _i++) {
504-
var file = files_1[_i];
507+
for (var _i = 0; _i < files.length; _i++) {
508+
var file = files[_i];
505509
if (file[0] != '.') {
506510
var filePath = rootDir + "/" + file;
507511
var stat = fs.statSync(filePath);

lib/main/tsconfig/tsconfig.ts

+10-2
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ var types = simpleValidator.types;
1717
*/
1818
interface CompilerOptions {
1919
allowNonTsExtensions?: boolean;
20+
allowUnreachableCode?: boolean;
21+
allowUnusedLabels?: boolean;
2022
charset?: string;
2123
codepage?: number;
2224
declaration?: boolean;
@@ -40,7 +42,9 @@ interface CompilerOptions {
4042
noEmitHelpers?: boolean;
4143
noEmitOnError?: boolean;
4244
noErrorTruncation?: boolean;
45+
noFallthroughCasesInSwitch?: boolean;
4346
noImplicitAny?: boolean; // Error on inferred `any` type
47+
noImplicitReturns?: boolean;
4448
noLib?: boolean;
4549
noLibCheck?: boolean;
4650
noResolve?: boolean;
@@ -61,8 +65,10 @@ interface CompilerOptions {
6165
}
6266

6367
var compilerOptionsValidation: simpleValidator.ValidationInfo = {
64-
allowNonTsExtensions: { type: simpleValidator.types.boolean },
65-
charset: { type: simpleValidator.types.string },
68+
allowNonTsExtensions: { type: types.boolean },
69+
allowUnreachableCode: { type: types.boolean },
70+
allowUnusedLabels: { type: types.boolean },
71+
charset: { type: types.string },
6672
codepage: { type: types.number },
6773
declaration: { type: types.boolean },
6874
diagnostics: { type: types.boolean },
@@ -85,7 +91,9 @@ var compilerOptionsValidation: simpleValidator.ValidationInfo = {
8591
noEmitHelpers: { type: types.boolean },
8692
noEmitOnError: { type: types.boolean },
8793
noErrorTruncation: { type: types.boolean },
94+
noFallthroughCasesInSwitch: { type: types.boolean },
8895
noImplicitAny: { type: types.boolean },
96+
noImplicitReturns: { type: types.boolean },
8997
noLib: { type: types.boolean },
9098
noLibCheck: { type: types.boolean },
9199
noResolve: { type: types.boolean },

0 commit comments

Comments
 (0)