diff --git a/package-lock.json b/package-lock.json index b9191d4eb..119729e6b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3476,9 +3476,9 @@ "integrity": "sha1-bcJDPnjti+qOiHo6zeLzF4W9Yic=" }, "typescript": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.1.1.tgz", - "integrity": "sha512-Veu0w4dTc/9wlWNf2jeRInNodKlcdLgemvPsrNpfu5Pq39sgfFjvIIgTsvUHCoLBnMhPoUA+tFxsXjU6VexVRQ==" + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.2.2.tgz", + "integrity": "sha512-VCj5UiSyHBjwfYacmDuc/NOk4QQixbE+Wn7MFJuS0nRuPQbof132Pw4u53dm264O8LPc2MVsc7RJNml5szurkg==" }, "uglify-js": { "version": "2.8.29", diff --git a/package.json b/package.json index 5194fc74f..e14b0efb5 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "progress": "^2.0.0", "shelljs": "^0.8.2", "typedoc-default-themes": "^0.5.0", - "typescript": "3.1.x" + "typescript": "3.2.x" }, "devDependencies": { "@types/mocha": "^5.2.4", diff --git a/src/lib/converter/plugins/SourcePlugin.ts b/src/lib/converter/plugins/SourcePlugin.ts index 2f1270acb..4217c2312 100644 --- a/src/lib/converter/plugins/SourcePlugin.ts +++ b/src/lib/converter/plugins/SourcePlugin.ts @@ -108,7 +108,7 @@ export class SourcePlugin extends ConverterComponent { file.reflections.push(reflection); } - reflection.sources!.push({ + reflection.sources.push({ file: file, fileName: fileName, line: position.line + 1, diff --git a/src/lib/converter/types/tuple.ts b/src/lib/converter/types/tuple.ts index dd343f882..54a2447d3 100644 --- a/src/lib/converter/types/tuple.ts +++ b/src/lib/converter/types/tuple.ts @@ -17,7 +17,19 @@ export class TupleConverter extends ConverterTypeComponent implements TypeConver * Test whether this converter can handle the given TypeScript type. */ supportsType(context: Context, type: ts.TypeReference): boolean { - return !!(type.objectFlags & ts.ObjectFlags.Tuple); + // If this type is a tuple + if (type.objectFlags & ts.ObjectFlags.Tuple) { + return true; + } + + // If this type points to a tuple + if (type.objectFlags & ts.ObjectFlags.Reference) { + if (type.target.objectFlags & ts.ObjectFlags.Tuple) { + return true; + } + } + + return false; } /** diff --git a/src/test/converter/destructuring/specs.json b/src/test/converter/destructuring/specs.json index 06bb4503c..06f3f45db 100644 --- a/src/test/converter/destructuring/specs.json +++ b/src/test/converter/destructuring/specs.json @@ -109,11 +109,17 @@ } ], "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "number" - } + "type": "tuple", + "elements": [ + { + "type": "intrinsic", + "name": "number" + }, + { + "type": "intrinsic", + "name": "number" + } + ] } }, { @@ -130,11 +136,17 @@ } ], "type": { - "type": "array", - "elementType": { - "type": "intrinsic", - "name": "number" - } + "type": "tuple", + "elements": [ + { + "type": "intrinsic", + "name": "number" + }, + { + "type": "intrinsic", + "name": "number" + } + ] } }, { diff --git a/src/test/renderer/specs/modules/_typescript_1_5_.html b/src/test/renderer/specs/modules/_typescript_1_5_.html index 5591f39ab..ac8ded936 100644 --- a/src/test/renderer/specs/modules/_typescript_1_5_.html +++ b/src/test/renderer/specs/modules/_typescript_1_5_.html @@ -140,7 +140,7 @@

destructArrayWithIgnoresA

destructArrayWithIgnoresRest

-
destructArrayWithIgnoresRest: number[]
+
destructArrayWithIgnoresRest: [number, number]