From fd57421a820e82f3c2e9633c93207b77cc646408 Mon Sep 17 00:00:00 2001 From: Soc Sieng Date: Sat, 11 Jan 2020 21:22:19 -0800 Subject: [PATCH] Resolve TypeOperatorType to allow it to be hyperlinkable --- package-lock.json | 5 ++--- package.json | 2 +- src/lib/converter/plugins/TypePlugin.ts | 4 +++- src/test/.editorconfig | 2 ++ src/test/converter/type-operator/specs.json | 4 +++- src/test/renderer/specs/classes/_classes_.baseclass.html | 2 +- src/test/renderer/specs/classes/_classes_.internalclass.html | 2 +- 7 files changed, 13 insertions(+), 8 deletions(-) create mode 100644 src/test/.editorconfig diff --git a/package-lock.json b/package-lock.json index 8d0e85290..a6861ecfb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2060,9 +2060,8 @@ } }, "typedoc-default-themes": { - "version": "0.7.0-2", - "resolved": "https://registry.npmjs.org/typedoc-default-themes/-/typedoc-default-themes-0.7.0-2.tgz", - "integrity": "sha512-L/f3mKgOImj2A4i9fb9kzU+Hb0cYXkN9Qn9QpM0BZ/704kEwRSijntRWhRaBt+pcXIwidxTYEVdUYNzGGsa67g==", + "version": "file:../typedoc-default-themes/typedoc-default-themes-0.6.4.tgz", + "integrity": "sha512-dNCR5LD7ixuNm0C4sYT9Yf084DiQRZmZ4lr12zxuXLGSeLkRuBvcpBzzgm9H3mIilG6+atPqpzdRp0/fnQdrlg==", "requires": { "backbone": "^1.4.0", "jquery": "^3.4.1", diff --git a/package.json b/package.json index 9a5d1868d..2b97d333e 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,7 @@ "minimatch": "^3.0.0", "progress": "^2.0.3", "shelljs": "^0.8.3", - "typedoc-default-themes": "0.7.0-2", + "typedoc-default-themes": "file:../typedoc-default-themes/typedoc-default-themes-0.6.4.tgz", "typescript": "3.7.x" }, "devDependencies": { diff --git a/src/lib/converter/plugins/TypePlugin.ts b/src/lib/converter/plugins/TypePlugin.ts index 2c90c07e1..19e4d773b 100644 --- a/src/lib/converter/plugins/TypePlugin.ts +++ b/src/lib/converter/plugins/TypePlugin.ts @@ -1,5 +1,5 @@ import { Reflection, ReflectionKind, Decorator, DeclarationReflection, DeclarationHierarchy } from '../../models/reflections/index'; -import { Type, ReferenceType, TupleType, UnionType, IntersectionType, ArrayType } from '../../models/types/index'; +import { Type, ReferenceType, TupleType, UnionType, IntersectionType, ArrayType, TypeOperatorType } from '../../models/types/index'; import { Component, ConverterComponent } from '../components'; import { Converter } from '../converter'; import { Context } from '../context'; @@ -106,6 +106,8 @@ export class TypePlugin extends ConverterComponent { resolveTypes(reflection, type.types); } else if (type instanceof ArrayType) { resolveType(reflection, type.elementType); + } else if (type instanceof TypeOperatorType) { + resolveType(reflection, type.target); } } } diff --git a/src/test/.editorconfig b/src/test/.editorconfig new file mode 100644 index 000000000..fa117062d --- /dev/null +++ b/src/test/.editorconfig @@ -0,0 +1,2 @@ +[*.html] +insert_final_newline = false diff --git a/src/test/converter/type-operator/specs.json b/src/test/converter/type-operator/specs.json index 5f1f8e50a..355a21f49 100644 --- a/src/test/converter/type-operator/specs.json +++ b/src/test/converter/type-operator/specs.json @@ -35,6 +35,7 @@ "type": "typeOperator", "operator": "keyof", "target": { + "id": 2, "type": "reference", "name": "TestClass" } @@ -64,6 +65,7 @@ "type": "typeOperator", "operator": "keyof", "target": { + "id": 2, "type": "reference", "name": "TestClass" } @@ -195,4 +197,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/src/test/renderer/specs/classes/_classes_.baseclass.html b/src/test/renderer/specs/classes/_classes_.baseclass.html index e04968c59..e6da0e9ae 100644 --- a/src/test/renderer/specs/classes/_classes_.baseclass.html +++ b/src/test/renderer/specs/classes/_classes_.baseclass.html @@ -181,7 +181,7 @@

Properties

Private internalClass

-
internalClass: InternalClass<keyof BaseClass>
+
internalClass: InternalClass<keyof BaseClass>