@d-fischer/documen.ts 0.16.9 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.html +36 -35
- package/lib/common/CustomError.js +1 -4
- package/lib/common/CustomError.js.map +1 -1
- package/lib/common/Paths.js +1 -2
- package/lib/common/components/Badge.js +7 -10
- package/lib/common/components/Badge.js.map +1 -1
- package/lib/common/components/BetaNotice.js +5 -10
- package/lib/common/components/BetaNotice.js.map +1 -1
- package/lib/common/components/Button.js +8 -12
- package/lib/common/components/Button.js.map +1 -1
- package/lib/common/components/CodeBlock.js +45 -61
- package/lib/common/components/CodeBlock.js.map +1 -1
- package/lib/common/components/CodeLink.js +12 -15
- package/lib/common/components/CodeLink.js.map +1 -1
- package/lib/common/components/DeprecationNotice.js +5 -10
- package/lib/common/components/DeprecationNotice.js.map +1 -1
- package/lib/common/components/FunctionParamDesc.js +7 -19
- package/lib/common/components/FunctionParamDesc.js.map +1 -1
- package/lib/common/components/FunctionParamDescEntry.js +26 -38
- package/lib/common/components/FunctionParamDescEntry.js.map +1 -1
- package/lib/common/components/FunctionReturnType.js +8 -17
- package/lib/common/components/FunctionReturnType.js.map +1 -1
- package/lib/common/components/FunctionSignature.js +7 -22
- package/lib/common/components/FunctionSignature.js.map +1 -1
- package/lib/common/components/InterfaceDetail.js +11 -18
- package/lib/common/components/InterfaceDetail.js.map +1 -1
- package/lib/common/components/InterfaceRepresentation.js +21 -40
- package/lib/common/components/InterfaceRepresentation.js.map +1 -1
- package/lib/common/components/MainMenu.js +20 -36
- package/lib/common/components/MainMenu.js.map +1 -1
- package/lib/common/components/NavMenu.js +6 -9
- package/lib/common/components/NavMenu.js.map +1 -1
- package/lib/common/components/NavMenuGroup.js +5 -10
- package/lib/common/components/NavMenuGroup.js.map +1 -1
- package/lib/common/components/NavMenuItem.js +8 -11
- package/lib/common/components/NavMenuItem.js.map +1 -1
- package/lib/common/components/PageArticle.js +7 -10
- package/lib/common/components/PageArticle.js.map +1 -1
- package/lib/common/components/SymbolHeader.js +6 -20
- package/lib/common/components/SymbolHeader.js.map +1 -1
- package/lib/common/components/TypeAliasHint.js +7 -22
- package/lib/common/components/TypeAliasHint.js.map +1 -1
- package/lib/common/components/TypeLink.js +12 -16
- package/lib/common/components/TypeLink.js.map +1 -1
- package/lib/common/components/VersionMenu.js +21 -28
- package/lib/common/components/VersionMenu.js.map +1 -1
- package/lib/common/components/cards/CardToolbar.js +11 -17
- package/lib/common/components/cards/CardToolbar.js.map +1 -1
- package/lib/common/components/cards/EventCard.js +21 -46
- package/lib/common/components/cards/EventCard.js.map +1 -1
- package/lib/common/components/cards/FunctionCardHeader.js +13 -25
- package/lib/common/components/cards/FunctionCardHeader.js.map +1 -1
- package/lib/common/components/cards/MethodCard.js +13 -23
- package/lib/common/components/cards/MethodCard.js.map +1 -1
- package/lib/common/components/cards/PropertyCard.js +15 -31
- package/lib/common/components/cards/PropertyCard.js.map +1 -1
- package/lib/common/components/codeBuilders/ReferenceTypeView.js +12 -25
- package/lib/common/components/codeBuilders/ReferenceTypeView.js.map +1 -1
- package/lib/common/components/codeBuilders/Type.js +30 -75
- package/lib/common/components/codeBuilders/Type.js.map +1 -1
- package/lib/common/components/overviewTable/OverviewTable.js +6 -21
- package/lib/common/components/overviewTable/OverviewTable.js.map +1 -1
- package/lib/common/components/overviewTable/OverviewTableEntry.js +13 -22
- package/lib/common/components/overviewTable/OverviewTableEntry.js.map +1 -1
- package/lib/common/config/Config.js +1 -2
- package/lib/common/config/Util.js +4 -8
- package/lib/common/config/Util.js.map +1 -1
- package/lib/common/config/index.js +5 -9
- package/lib/common/config/index.js.map +1 -1
- package/lib/common/containers/App.js +10 -18
- package/lib/common/containers/App.js.map +1 -1
- package/lib/common/containers/AppLayout.js +5 -10
- package/lib/common/containers/AppLayout.js.map +1 -1
- package/lib/common/containers/Card.js +6 -9
- package/lib/common/containers/Card.js.map +1 -1
- package/lib/common/containers/PageContent.js +5 -8
- package/lib/common/containers/PageContent.js.map +1 -1
- package/lib/common/containers/PageHeader.js +5 -8
- package/lib/common/containers/PageHeader.js.map +1 -1
- package/lib/common/containers/PageSwitch.js +10 -19
- package/lib/common/containers/PageSwitch.js.map +1 -1
- package/lib/common/containers/ReferencePackageContainer.js +37 -54
- package/lib/common/containers/ReferencePackageContainer.js.map +1 -1
- package/lib/common/htmlRenderer/HtmlRenderer.js +23 -37
- package/lib/common/htmlRenderer/HtmlRenderer.js.map +1 -1
- package/lib/common/htmlRenderer/RouterMode.js +1 -2
- package/lib/common/htmlRenderer/StaticRouterWithSuffix.js +20 -24
- package/lib/common/htmlRenderer/StaticRouterWithSuffix.js.map +1 -1
- package/lib/common/pages/ClassPage.js +39 -67
- package/lib/common/pages/ClassPage.js.map +1 -1
- package/lib/common/pages/DocPage.js +27 -39
- package/lib/common/pages/DocPage.js.map +1 -1
- package/lib/common/pages/EnumPage.js +20 -40
- package/lib/common/pages/EnumPage.js.map +1 -1
- package/lib/common/pages/FunctionPage.js +20 -39
- package/lib/common/pages/FunctionPage.js.map +1 -1
- package/lib/common/pages/InterfacePage.js +20 -32
- package/lib/common/pages/InterfacePage.js.map +1 -1
- package/lib/common/pages/TypeAliasPage.js +19 -34
- package/lib/common/pages/TypeAliasPage.js.map +1 -1
- package/lib/common/reference/index.js +1 -3
- package/lib/common/reference/index.js.map +1 -1
- package/lib/common/theme.js +1 -3
- package/lib/common/theme.js.map +1 -1
- package/lib/common/tools/ArrayTools.js +7 -18
- package/lib/common/tools/ArrayTools.js.map +1 -1
- package/lib/common/tools/CodeTools.js +12 -23
- package/lib/common/tools/CodeTools.js.map +1 -1
- package/lib/common/tools/ConfigTools.js +15 -20
- package/lib/common/tools/ConfigTools.js.map +1 -1
- package/lib/common/tools/FileTools.js +9 -16
- package/lib/common/tools/FileTools.js.map +1 -1
- package/lib/common/tools/FunctionTools.js +3 -7
- package/lib/common/tools/FunctionTools.js.map +1 -1
- package/lib/common/tools/NodeTools.js +22 -33
- package/lib/common/tools/NodeTools.js.map +1 -1
- package/lib/common/tools/Point.js +1 -2
- package/lib/common/tools/ReferenceTools.js +30 -43
- package/lib/common/tools/ReferenceTools.js.map +1 -1
- package/lib/common/tools/StringTools.js +3 -9
- package/lib/common/tools/StringTools.js.map +1 -1
- package/lib/common/tools/TypeTools.js +1 -2
- package/lib/common/tools/markdown/MarkdownParser.js +21 -28
- package/lib/common/tools/markdown/MarkdownParser.js.map +1 -1
- package/lib/common/tools/markdown/plugins/customDirectives.js +15 -17
- package/lib/common/tools/markdown/plugins/customDirectives.js.map +1 -1
- package/lib/common/tools/markdown/plugins/gfmTables.js +7 -12
- package/lib/common/tools/markdown/plugins/gfmTables.js.map +1 -1
- package/lib/common/tools/markdown/plugins/symbolLinks.js +9 -13
- package/lib/common/tools/markdown/plugins/symbolLinks.js.map +1 -1
- package/lib/generator/analyzer/AnalyzeContext.js +5 -6
- package/lib/generator/analyzer/AnalyzeContext.js.map +1 -1
- package/lib/generator/analyzer/DocComment.js +17 -23
- package/lib/generator/analyzer/DocComment.js.map +1 -1
- package/lib/generator/analyzer/DocCommentTag.js +4 -5
- package/lib/generator/analyzer/DocCommentTag.js.map +1 -1
- package/lib/generator/analyzer/Project.js +71 -84
- package/lib/generator/analyzer/Project.js.map +1 -1
- package/lib/generator/analyzer/createReflection.js +87 -101
- package/lib/generator/analyzer/createReflection.js.map +1 -1
- package/lib/generator/analyzer/createType.js +51 -62
- package/lib/generator/analyzer/createType.js.map +1 -1
- package/lib/generator/analyzer/reflections/AccessorReflection.js +36 -39
- package/lib/generator/analyzer/reflections/AccessorReflection.js.map +1 -1
- package/lib/generator/analyzer/reflections/ClassReflection.js +58 -51
- package/lib/generator/analyzer/reflections/ClassReflection.js.map +1 -1
- package/lib/generator/analyzer/reflections/ConstructorReflection.js +28 -36
- package/lib/generator/analyzer/reflections/ConstructorReflection.js.map +1 -1
- package/lib/generator/analyzer/reflections/EnumMemberReflection.js +15 -18
- package/lib/generator/analyzer/reflections/EnumMemberReflection.js.map +1 -1
- package/lib/generator/analyzer/reflections/EnumReflection.js +21 -23
- package/lib/generator/analyzer/reflections/EnumReflection.js.map +1 -1
- package/lib/generator/analyzer/reflections/FunctionReflection.js +14 -16
- package/lib/generator/analyzer/reflections/FunctionReflection.js.map +1 -1
- package/lib/generator/analyzer/reflections/Heritage.js +6 -11
- package/lib/generator/analyzer/reflections/Heritage.js.map +1 -1
- package/lib/generator/analyzer/reflections/InterfaceReflection.js +41 -41
- package/lib/generator/analyzer/reflections/InterfaceReflection.js.map +1 -1
- package/lib/generator/analyzer/reflections/MethodReflection.js +40 -45
- package/lib/generator/analyzer/reflections/MethodReflection.js.map +1 -1
- package/lib/generator/analyzer/reflections/ParameterReflection.js +68 -69
- package/lib/generator/analyzer/reflections/ParameterReflection.js.map +1 -1
- package/lib/generator/analyzer/reflections/PropertyReflection.js +43 -40
- package/lib/generator/analyzer/reflections/PropertyReflection.js.map +1 -1
- package/lib/generator/analyzer/reflections/ReferenceReflection.js +8 -7
- package/lib/generator/analyzer/reflections/ReferenceReflection.js.map +1 -1
- package/lib/generator/analyzer/reflections/Reflection.js +35 -38
- package/lib/generator/analyzer/reflections/Reflection.js.map +1 -1
- package/lib/generator/analyzer/reflections/SignatureReflection.js +42 -46
- package/lib/generator/analyzer/reflections/SignatureReflection.js.map +1 -1
- package/lib/generator/analyzer/reflections/SymbolBasedReflection.js +6 -13
- package/lib/generator/analyzer/reflections/SymbolBasedReflection.js.map +1 -1
- package/lib/generator/analyzer/reflections/TypeAliasReflection.js +24 -26
- package/lib/generator/analyzer/reflections/TypeAliasReflection.js.map +1 -1
- package/lib/generator/analyzer/reflections/TypeLiteralReflection.js +22 -21
- package/lib/generator/analyzer/reflections/TypeLiteralReflection.js.map +1 -1
- package/lib/generator/analyzer/reflections/TypeParameterReflection.js +38 -39
- package/lib/generator/analyzer/reflections/TypeParameterReflection.js.map +1 -1
- package/lib/generator/analyzer/types/ArrayType.js +15 -23
- package/lib/generator/analyzer/types/ArrayType.js.map +1 -1
- package/lib/generator/analyzer/types/FunctionType.js +31 -38
- package/lib/generator/analyzer/types/FunctionType.js.map +1 -1
- package/lib/generator/analyzer/types/IntersectionType.js +12 -20
- package/lib/generator/analyzer/types/IntersectionType.js.map +1 -1
- package/lib/generator/analyzer/types/IntrinsicType.js +33 -41
- package/lib/generator/analyzer/types/IntrinsicType.js.map +1 -1
- package/lib/generator/analyzer/types/LiteralType.js +60 -68
- package/lib/generator/analyzer/types/LiteralType.js.map +1 -1
- package/lib/generator/analyzer/types/NamedTupleElementType.js +11 -15
- package/lib/generator/analyzer/types/NamedTupleElementType.js.map +1 -1
- package/lib/generator/analyzer/types/ObjectLiteralType.js +21 -30
- package/lib/generator/analyzer/types/ObjectLiteralType.js.map +1 -1
- package/lib/generator/analyzer/types/OptionalType.js +11 -17
- package/lib/generator/analyzer/types/OptionalType.js.map +1 -1
- package/lib/generator/analyzer/types/ReferenceType.js +118 -133
- package/lib/generator/analyzer/types/ReferenceType.js.map +1 -1
- package/lib/generator/analyzer/types/ReflectionType.js +4 -7
- package/lib/generator/analyzer/types/ReflectionType.js.map +1 -1
- package/lib/generator/analyzer/types/TupleType.js +27 -31
- package/lib/generator/analyzer/types/TupleType.js.map +1 -1
- package/lib/generator/analyzer/types/Type.js +1 -5
- package/lib/generator/analyzer/types/Type.js.map +1 -1
- package/lib/generator/analyzer/types/TypeOperatorType.js +38 -40
- package/lib/generator/analyzer/types/TypeOperatorType.js.map +1 -1
- package/lib/generator/analyzer/types/UnionType.js +22 -30
- package/lib/generator/analyzer/types/UnionType.js.map +1 -1
- package/lib/generator/analyzer/types/UnknownType.js +5 -6
- package/lib/generator/analyzer/types/UnknownType.js.map +1 -1
- package/lib/generator/analyzer/util/expressions.js +8 -13
- package/lib/generator/analyzer/util/expressions.js.map +1 -1
- package/lib/generator/analyzer/util/functions.js +15 -19
- package/lib/generator/analyzer/util/functions.js.map +1 -1
- package/lib/generator/analyzer/util/inheritance.js +26 -32
- package/lib/generator/analyzer/util/inheritance.js.map +1 -1
- package/lib/generator/analyzer/util/promises.js +2 -9
- package/lib/generator/analyzer/util/promises.js.map +1 -1
- package/lib/generator/analyzer/util/sourceMaps.js +12 -20
- package/lib/generator/analyzer/util/sourceMaps.js.map +1 -1
- package/lib/generator/analyzer/util/symbols.js +3 -9
- package/lib/generator/analyzer/util/symbols.js.map +1 -1
- package/lib/generator/analyzer/util/types.js +6 -10
- package/lib/generator/analyzer/util/types.js.map +1 -1
- package/lib/generator/cli.js +5 -8
- package/lib/generator/cli.js.map +1 -1
- package/lib/generator/commands/default.js +260 -259
- package/lib/generator/commands/default.js.map +1 -1
- package/lib/generator/index.js +1 -1
- package/lib/generator/modes/Generator.js +20 -31
- package/lib/generator/modes/Generator.js.map +1 -1
- package/lib/generator/modes/HtmlGenerator.js +214 -228
- package/lib/generator/modes/HtmlGenerator.js.map +1 -1
- package/lib/generator/modes/MonorepoGenerator.js +143 -159
- package/lib/generator/modes/MonorepoGenerator.js.map +1 -1
- package/lib/generator/modes/OutputGenerator.js +2 -7
- package/lib/generator/modes/OutputGenerator.js.map +1 -1
- package/lib/progressiveEnhancement/fsMap.js +2 -5
- package/lib/progressiveEnhancement/fsMap.js.map +1 -1
- package/package.json +16 -16
- package/src/common/components/CodeBlock.tsx +2 -2
- package/src/common/components/CodeLink.tsx +2 -2
- package/src/common/components/DeprecationNotice.tsx +2 -2
- package/src/common/components/FunctionParamDesc.tsx +3 -3
- package/src/common/components/FunctionParamDescEntry.tsx +6 -6
- package/src/common/components/FunctionReturnType.tsx +3 -3
- package/src/common/components/FunctionSignature.tsx +2 -2
- package/src/common/components/InterfaceDetail.tsx +15 -7
- package/src/common/components/InterfaceRepresentation.tsx +9 -9
- package/src/common/components/MainMenu.tsx +4 -4
- package/src/common/components/NavMenuItem.tsx +1 -1
- package/src/common/components/PageArticle.tsx +2 -2
- package/src/common/components/SymbolHeader.tsx +7 -9
- package/src/common/components/TypeAliasHint.tsx +3 -5
- package/src/common/components/TypeLink.tsx +6 -7
- package/src/common/components/VersionMenu.tsx +3 -3
- package/src/common/components/cards/CardToolbar.tsx +10 -6
- package/src/common/components/cards/EventCard.tsx +19 -23
- package/src/common/components/cards/FunctionCardHeader.tsx +8 -8
- package/src/common/components/cards/MethodCard.tsx +8 -8
- package/src/common/components/cards/PropertyCard.tsx +11 -11
- package/src/common/components/codeBuilders/ReferenceTypeView.tsx +4 -4
- package/src/common/components/codeBuilders/Type.tsx +4 -4
- package/src/common/components/overviewTable/OverviewTable.tsx +2 -2
- package/src/common/components/overviewTable/OverviewTableEntry.tsx +7 -7
- package/src/common/config/Config.ts +1 -1
- package/src/common/config/Util.ts +11 -3
- package/src/common/config/index.tsx +2 -2
- package/src/common/containers/App.tsx +12 -9
- package/src/common/containers/AppLayout.tsx +2 -2
- package/src/common/containers/PageHeader.tsx +2 -2
- package/src/common/containers/PageSwitch.tsx +7 -7
- package/src/common/containers/ReferencePackageContainer.tsx +13 -13
- package/src/common/htmlRenderer/HtmlRenderer.tsx +8 -9
- package/src/common/htmlRenderer/StaticRouterWithSuffix.tsx +18 -21
- package/src/common/pages/ClassPage.tsx +17 -17
- package/src/common/pages/DocPage.tsx +10 -10
- package/src/common/pages/EnumPage.tsx +14 -14
- package/src/common/pages/FunctionPage.tsx +15 -15
- package/src/common/pages/InterfacePage.tsx +13 -13
- package/src/common/pages/TypeAliasPage.tsx +12 -12
- package/src/common/reference/index.ts +0 -1
- package/src/common/tools/ArrayTools.ts +27 -11
- package/src/common/tools/CodeTools.tsx +1 -1
- package/src/common/tools/ConfigTools.ts +1 -1
- package/src/common/tools/FunctionTools.ts +2 -3
- package/src/common/tools/NodeTools.ts +3 -2
- package/src/common/tools/ReferenceTools.ts +10 -11
- package/src/common/tools/StringTools.ts +1 -1
- package/src/common/tools/markdown/MarkdownParser.tsx +13 -15
- package/src/common/tools/markdown/plugins/customDirectives.ts +1 -1
- package/src/common/tools/markdown/plugins/symbolLinks.ts +3 -3
- package/src/dev/index.tsx +9 -9
- package/src/dev/registerServiceWorker.ts +8 -16
- package/src/progressiveEnhancement/fsMap.ts +0 -1
- package/src/progressiveEnhancement/index.tsx +9 -11
- package/tsconfig-dev.json +1 -6
- package/tsconfig-enhance.json +1 -5
- package/tsconfig-html.json +1 -5
- package/tsconfig.json +7 -21
- package/types/globals.d.ts +0 -1
- package/types/react-router-hash-link.d.ts +0 -8
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const types_1 = require("../util/types");
|
|
8
|
-
const Type_1 = require("./Type");
|
|
9
|
-
class OptionalType extends Type_1.Type {
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
import { createTypeFromNode } from '../createType.js';
|
|
3
|
+
import { removeUndefined } from '../util/types.js';
|
|
4
|
+
import { Type } from './Type.js';
|
|
5
|
+
export class OptionalType extends Type {
|
|
6
|
+
_element;
|
|
10
7
|
constructor(_element) {
|
|
11
8
|
super();
|
|
12
9
|
this._element = _element;
|
|
@@ -18,13 +15,10 @@ class OptionalType extends Type_1.Type {
|
|
|
18
15
|
};
|
|
19
16
|
}
|
|
20
17
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
return new OptionalType((0, types_1.removeUndefined)(yield (0, createType_1.createTypeFromNode)(ctx, node.type)));
|
|
27
|
-
});
|
|
28
|
-
},
|
|
18
|
+
export const optionalTypeReflector = {
|
|
19
|
+
kinds: [ts.SyntaxKind.OptionalType],
|
|
20
|
+
async fromNode(ctx, node) {
|
|
21
|
+
return new OptionalType(removeUndefined(await createTypeFromNode(ctx, node.type)));
|
|
22
|
+
}
|
|
29
23
|
};
|
|
30
24
|
//# sourceMappingURL=OptionalType.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OptionalType.js","sourceRoot":"","sources":["../../../../src/generator/analyzer/types/OptionalType.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"OptionalType.js","sourceRoot":"","sources":["../../../../src/generator/analyzer/types/OptionalType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,kBAAkB,EAAsB,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,OAAO,YAAa,SAAQ,IAAI;IACR;IAA7B,YAA6B,QAAc;QAC1C,KAAK,EAAE,CAAC;QADoB,aAAQ,GAAR,QAAQ,CAAM;IAE3C,CAAC;IAED,SAAS;QACR,OAAO;YACN,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE;SACtC,CAAC;IACH,CAAC;CACD;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAuC;IACxE,KAAK,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;IACnC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI;QACvB,OAAO,IAAI,YAAY,CAAC,eAAe,CAAC,MAAM,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpF,CAAC;CACD,CAAC"}
|
|
@@ -1,16 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
1
|
+
import assert from 'assert';
|
|
2
|
+
import ts, { SyntaxKind } from 'typescript';
|
|
3
|
+
import { findSourceMappedId } from '../createReflection.js';
|
|
4
|
+
import { createTypeFromNode, createTypeFromTsType } from '../createType.js';
|
|
5
|
+
import { resolvePromiseArray } from '../util/promises.js';
|
|
6
|
+
import { resolveAliasesForSymbol } from '../util/symbols.js';
|
|
7
|
+
import { ArrayType } from './ArrayType.js';
|
|
8
|
+
import { Type } from './Type.js';
|
|
9
|
+
export class ReferenceType extends Type {
|
|
10
|
+
_name;
|
|
11
|
+
_typeArguments;
|
|
12
|
+
_id;
|
|
13
|
+
_package;
|
|
14
|
+
_externalReference;
|
|
15
|
+
_isTypeParameter;
|
|
14
16
|
constructor(_name, _typeArguments, _id, _package, _externalReference, _isTypeParameter) {
|
|
15
17
|
super();
|
|
16
18
|
this._name = _name;
|
|
@@ -28,142 +30,125 @@ class ReferenceType extends Type_1.Type {
|
|
|
28
30
|
this._package = pkg;
|
|
29
31
|
}
|
|
30
32
|
serialize() {
|
|
31
|
-
var _a;
|
|
32
33
|
return {
|
|
33
34
|
type: 'reference',
|
|
34
35
|
name: this._name,
|
|
35
36
|
id: this._id,
|
|
36
37
|
package: this._package,
|
|
37
|
-
typeArguments:
|
|
38
|
+
typeArguments: this._typeArguments?.map(arg => arg.serialize()),
|
|
38
39
|
externalReference: this._externalReference,
|
|
39
40
|
isTypeParameter: this._isTypeParameter
|
|
40
41
|
};
|
|
41
42
|
}
|
|
42
43
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
ctx.project.registerBrokenReference(origSymbol, result);
|
|
70
|
-
}
|
|
71
|
-
return result;
|
|
72
|
-
});
|
|
44
|
+
export const referenceTypeReflector = {
|
|
45
|
+
kinds: [ts.SyntaxKind.TypeReference],
|
|
46
|
+
async fromNode(ctx, node) {
|
|
47
|
+
const isArray = ctx.checker.typeToTypeNode(ctx.checker.getTypeAtLocation(node.typeName), void 0, ts.NodeBuilderFlags.IgnoreErrors)?.kind === ts.SyntaxKind.ArrayType;
|
|
48
|
+
if (isArray) {
|
|
49
|
+
return new ArrayType(await createTypeFromNode(ctx, node.typeArguments?.[0]));
|
|
50
|
+
}
|
|
51
|
+
const name = node.typeName.getText();
|
|
52
|
+
const symbol = ctx.checker.getSymbolAtLocation(node.typeName);
|
|
53
|
+
const origSymbol = resolveAliasesForSymbol(ctx, symbol);
|
|
54
|
+
const declaration = origSymbol.declarations?.[0];
|
|
55
|
+
assert(declaration);
|
|
56
|
+
const reflectionIdForSymbol = (await findSourceMappedId(ctx, declaration)) ?? ctx.project.getReflectionIdForSymbol(origSymbol);
|
|
57
|
+
const packageForSymbol = ctx.project.getPackageNameForReflectionId(reflectionIdForSymbol);
|
|
58
|
+
// if no internal link found, try to interlink external packages
|
|
59
|
+
const externalReference = reflectionIdForSymbol
|
|
60
|
+
? undefined
|
|
61
|
+
: ctx.project.findExternalPackageReference(declaration, origSymbol.name);
|
|
62
|
+
const result = new ReferenceType(name, await resolvePromiseArray(node.typeArguments?.map(async (typeNode) => await createTypeFromNode(ctx, typeNode))), reflectionIdForSymbol, packageForSymbol, externalReference,
|
|
63
|
+
// eslint-disable-next-line no-bitwise
|
|
64
|
+
origSymbol.flags & ts.SymbolFlags.TypeParameter ? true : undefined);
|
|
65
|
+
if ((reflectionIdForSymbol === undefined || packageForSymbol === undefined) &&
|
|
66
|
+
externalReference === undefined) {
|
|
67
|
+
ctx.project.registerBrokenReference(origSymbol, result);
|
|
68
|
+
}
|
|
69
|
+
return result;
|
|
73
70
|
},
|
|
74
|
-
fromType(ctx, type) {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
}
|
|
94
|
-
return result;
|
|
95
|
-
});
|
|
71
|
+
async fromType(ctx, type) {
|
|
72
|
+
const symbol = type.aliasSymbol ?? type.getSymbol();
|
|
73
|
+
assert(symbol);
|
|
74
|
+
const typeArgs = type.aliasSymbol ? type.aliasTypeArguments : type.typeArguments;
|
|
75
|
+
const origSymbol = resolveAliasesForSymbol(ctx, symbol);
|
|
76
|
+
const declaration = origSymbol.declarations?.[0];
|
|
77
|
+
assert(declaration);
|
|
78
|
+
const reflectionIdForSymbol = (await findSourceMappedId(ctx, declaration)) ?? ctx.project.getReflectionIdForSymbol(origSymbol);
|
|
79
|
+
const packageForSymbol = ctx.project.getPackageNameForReflectionId(reflectionIdForSymbol);
|
|
80
|
+
// if no internal link found, try to interlink external packages
|
|
81
|
+
const externalReference = reflectionIdForSymbol
|
|
82
|
+
? undefined
|
|
83
|
+
: ctx.project.findExternalPackageReference(declaration, origSymbol.name);
|
|
84
|
+
const result = new ReferenceType(symbol.name, await resolvePromiseArray(typeArgs?.map(async (arg) => await createTypeFromTsType(ctx, arg))), reflectionIdForSymbol, packageForSymbol, externalReference);
|
|
85
|
+
if ((reflectionIdForSymbol === undefined || packageForSymbol === undefined) &&
|
|
86
|
+
externalReference !== undefined) {
|
|
87
|
+
ctx.project.registerBrokenReference(origSymbol, result);
|
|
88
|
+
}
|
|
89
|
+
return result;
|
|
96
90
|
}
|
|
97
91
|
};
|
|
98
|
-
|
|
99
|
-
kinds: [
|
|
100
|
-
fromNode(ctx, node) {
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
}
|
|
114
|
-
return result;
|
|
115
|
-
});
|
|
92
|
+
export const exprWithTypeArgsReflector = {
|
|
93
|
+
kinds: [SyntaxKind.ExpressionWithTypeArguments],
|
|
94
|
+
async fromNode(ctx, node) {
|
|
95
|
+
const symbol = ctx.checker.getSymbolAtLocation(node.expression);
|
|
96
|
+
assert(symbol);
|
|
97
|
+
const origSymbol = resolveAliasesForSymbol(ctx, symbol);
|
|
98
|
+
const declaration = origSymbol.declarations?.[0];
|
|
99
|
+
assert(declaration);
|
|
100
|
+
const reflectionIdForSymbol = (await findSourceMappedId(ctx, declaration)) ?? ctx.project.getReflectionIdForSymbol(origSymbol);
|
|
101
|
+
const packageForSymbol = ctx.project.getPackageNameForReflectionId(reflectionIdForSymbol);
|
|
102
|
+
const result = new ReferenceType(origSymbol.name, await resolvePromiseArray(node.typeArguments?.map(async (type) => await createTypeFromNode(ctx, type))), reflectionIdForSymbol, packageForSymbol);
|
|
103
|
+
if (reflectionIdForSymbol === undefined || packageForSymbol === undefined) {
|
|
104
|
+
ctx.project.registerBrokenReference(origSymbol, result);
|
|
105
|
+
}
|
|
106
|
+
return result;
|
|
116
107
|
}
|
|
117
108
|
};
|
|
118
|
-
|
|
119
|
-
kinds: [
|
|
120
|
-
fromNode(ctx, node) {
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
}
|
|
142
|
-
return result;
|
|
143
|
-
});
|
|
109
|
+
export const importTypeReflector = {
|
|
110
|
+
kinds: [SyntaxKind.ImportType],
|
|
111
|
+
async fromNode(ctx, node) {
|
|
112
|
+
const name = node.qualifier?.getText() ?? '[module]';
|
|
113
|
+
const symbol = ctx.checker.getSymbolAtLocation(node);
|
|
114
|
+
assert(symbol);
|
|
115
|
+
const origSymbol = resolveAliasesForSymbol(ctx, symbol);
|
|
116
|
+
const declaration = origSymbol.declarations?.[0];
|
|
117
|
+
assert(declaration);
|
|
118
|
+
const reflectionIdForSymbol = (await findSourceMappedId(ctx, declaration)) ?? ctx.project.getReflectionIdForSymbol(origSymbol);
|
|
119
|
+
const packageForSymbol = ctx.project.getPackageNameForReflectionId(reflectionIdForSymbol);
|
|
120
|
+
// if no internal link found, try to interlink external packages
|
|
121
|
+
const externalReference = reflectionIdForSymbol
|
|
122
|
+
? undefined
|
|
123
|
+
: ctx.project.findExternalPackageReference(declaration, origSymbol.name);
|
|
124
|
+
const result = new ReferenceType(name, await resolvePromiseArray(node.typeArguments?.map(async (typeNode) => await createTypeFromNode(ctx, typeNode))), reflectionIdForSymbol, packageForSymbol, externalReference,
|
|
125
|
+
// eslint-disable-next-line no-bitwise
|
|
126
|
+
origSymbol.flags & ts.SymbolFlags.TypeParameter ? true : undefined);
|
|
127
|
+
if ((reflectionIdForSymbol === undefined || packageForSymbol === undefined) &&
|
|
128
|
+
externalReference === undefined) {
|
|
129
|
+
ctx.project.registerBrokenReference(origSymbol, result);
|
|
130
|
+
}
|
|
131
|
+
return result;
|
|
144
132
|
},
|
|
145
|
-
fromType(ctx, type) {
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
}
|
|
165
|
-
return result;
|
|
166
|
-
});
|
|
133
|
+
async fromType(ctx, type) {
|
|
134
|
+
const symbol = type.getSymbol();
|
|
135
|
+
assert(symbol);
|
|
136
|
+
const typeArgs = type.aliasSymbol && type.aliasTypeArguments;
|
|
137
|
+
const origSymbol = resolveAliasesForSymbol(ctx, symbol);
|
|
138
|
+
const declaration = origSymbol.declarations?.[0];
|
|
139
|
+
assert(declaration);
|
|
140
|
+
const reflectionIdForSymbol = (await findSourceMappedId(ctx, declaration)) ?? ctx.project.getReflectionIdForSymbol(origSymbol);
|
|
141
|
+
const packageForSymbol = ctx.project.getPackageNameForReflectionId(reflectionIdForSymbol);
|
|
142
|
+
// if no internal link found, try to interlink external packages
|
|
143
|
+
const externalReference = reflectionIdForSymbol
|
|
144
|
+
? undefined
|
|
145
|
+
: ctx.project.findExternalPackageReference(declaration, origSymbol.name);
|
|
146
|
+
const result = new ReferenceType(symbol.name, await resolvePromiseArray(typeArgs?.map(async (arg) => await createTypeFromTsType(ctx, arg))), reflectionIdForSymbol, packageForSymbol, externalReference);
|
|
147
|
+
if ((reflectionIdForSymbol === undefined || packageForSymbol === undefined) &&
|
|
148
|
+
externalReference !== undefined) {
|
|
149
|
+
ctx.project.registerBrokenReference(origSymbol, result);
|
|
150
|
+
}
|
|
151
|
+
return result;
|
|
167
152
|
}
|
|
168
153
|
};
|
|
169
154
|
//# sourceMappingURL=ReferenceType.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReferenceType.js","sourceRoot":"","sources":["../../../../src/generator/analyzer/types/ReferenceType.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ReferenceType.js","sourceRoot":"","sources":["../../../../src/generator/analyzer/types/ReferenceType.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const Type_1 = require("./Type");
|
|
5
|
-
class ReflectionType extends Type_1.Type {
|
|
1
|
+
import { Type } from './Type.js';
|
|
2
|
+
export class ReflectionType extends Type {
|
|
3
|
+
_reflection;
|
|
6
4
|
constructor(_reflection) {
|
|
7
5
|
super();
|
|
8
6
|
this._reflection = _reflection;
|
|
@@ -10,9 +8,8 @@ class ReflectionType extends Type_1.Type {
|
|
|
10
8
|
serialize() {
|
|
11
9
|
return {
|
|
12
10
|
type: 'reflection',
|
|
13
|
-
declaration: this._reflection.serialize()
|
|
11
|
+
declaration: this._reflection.serialize()
|
|
14
12
|
};
|
|
15
13
|
}
|
|
16
14
|
}
|
|
17
|
-
exports.ReflectionType = ReflectionType;
|
|
18
15
|
//# sourceMappingURL=ReflectionType.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReflectionType.js","sourceRoot":"","sources":["../../../../src/generator/analyzer/types/ReflectionType.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ReflectionType.js","sourceRoot":"","sources":["../../../../src/generator/analyzer/types/ReflectionType.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,OAAO,cAAe,SAAQ,IAAI;IACV;IAA7B,YAA6B,WAAkC;QAC9D,KAAK,EAAE,CAAC;QADoB,gBAAW,GAAX,WAAW,CAAuB;IAE/D,CAAC;IAED,SAAS;QACR,OAAO;YACN,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE;SACzC,CAAC;IACH,CAAC;CACD"}
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const NamedTupleElementType_1 = require("./NamedTupleElementType");
|
|
10
|
-
const Type_1 = require("./Type");
|
|
11
|
-
class TupleType extends Type_1.Type {
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
import { createTypeFromNode, createTypeFromTsType } from '../createType.js';
|
|
3
|
+
import { resolvePromiseArray } from '../util/promises.js';
|
|
4
|
+
import { removeUndefined } from '../util/types.js';
|
|
5
|
+
import { NamedTupleElementType } from './NamedTupleElementType.js';
|
|
6
|
+
import { Type } from './Type.js';
|
|
7
|
+
export class TupleType extends Type {
|
|
8
|
+
_elements;
|
|
12
9
|
constructor(_elements) {
|
|
13
10
|
super();
|
|
14
11
|
this._elements = _elements;
|
|
@@ -20,26 +17,25 @@ class TupleType extends Type_1.Type {
|
|
|
20
17
|
};
|
|
21
18
|
}
|
|
22
19
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
28
|
-
return new TupleType(yield (0, promises_1.resolvePromiseArray)(node.elements.map((subTypeNode) => tslib_1.__awaiter(this, void 0, void 0, function* () { return yield (0, createType_1.createTypeFromNode)(ctx, subTypeNode); }))));
|
|
29
|
-
});
|
|
30
|
-
},
|
|
31
|
-
fromType(ctx, type, node) {
|
|
32
|
-
var _a;
|
|
33
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
34
|
-
const elements = node.elements;
|
|
35
|
-
const types = (_a = type.typeArguments) === null || _a === void 0 ? void 0 : _a.slice(0, elements.length);
|
|
36
|
-
let result = yield (0, promises_1.resolvePromiseArray)(types === null || types === void 0 ? void 0 : types.map((t) => tslib_1.__awaiter(this, void 0, void 0, function* () { return yield (0, createType_1.createTypeFromTsType)(ctx, t); })));
|
|
37
|
-
if (type.target.labeledElementDeclarations) {
|
|
38
|
-
const labels = type.target.labeledElementDeclarations;
|
|
39
|
-
result = result === null || result === void 0 ? void 0 : result.map((t, i) => new NamedTupleElementType_1.NamedTupleElementType(labels[i].name.getText(), !!labels[i].questionToken, (0, types_1.removeUndefined)(t)));
|
|
40
|
-
}
|
|
41
|
-
return new TupleType(result !== null && result !== void 0 ? result : []);
|
|
42
|
-
});
|
|
20
|
+
export const tupleTypeReflector = {
|
|
21
|
+
kinds: [ts.SyntaxKind.TupleType],
|
|
22
|
+
async fromNode(ctx, node) {
|
|
23
|
+
return new TupleType(await resolvePromiseArray(node.elements.map(async (subTypeNode) => await createTypeFromNode(ctx, subTypeNode))));
|
|
43
24
|
},
|
|
25
|
+
async fromType(ctx, type, node) {
|
|
26
|
+
const { elements } = node;
|
|
27
|
+
const types = type.typeArguments?.slice(0, elements.length);
|
|
28
|
+
let result = await resolvePromiseArray(types?.map(async (t) => await createTypeFromTsType(ctx, t)));
|
|
29
|
+
if (type.target.labeledElementDeclarations) {
|
|
30
|
+
const labels = type.target.labeledElementDeclarations;
|
|
31
|
+
result = result?.map((t, i) => {
|
|
32
|
+
const label = labels[i];
|
|
33
|
+
return label
|
|
34
|
+
? new NamedTupleElementType(label.name.getText(), !!label.questionToken, removeUndefined(t))
|
|
35
|
+
: t;
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
return new TupleType(result ?? []);
|
|
39
|
+
}
|
|
44
40
|
};
|
|
45
41
|
//# sourceMappingURL=TupleType.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TupleType.js","sourceRoot":"","sources":["../../../../src/generator/analyzer/types/TupleType.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TupleType.js","sourceRoot":"","sources":["../../../../src/generator/analyzer/types/TupleType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5B,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAsB,MAAM,kBAAkB,CAAC;AAChG,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,OAAO,SAAU,SAAQ,IAAI;IACL;IAA7B,YAA6B,SAA8C;QAC1E,KAAK,EAAE,CAAC;QADoB,cAAS,GAAT,SAAS,CAAqC;IAE3E,CAAC;IAED,SAAS;QACR,OAAO;YACN,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC;SAClD,CAAC;IACH,CAAC;CACD;AAED,MAAM,CAAC,MAAM,kBAAkB,GAA2D;IACzF,KAAK,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;IAChC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI;QACvB,OAAO,IAAI,SAAS,CACnB,MAAM,mBAAmB,CACxB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAC,WAAW,EAAC,EAAE,CAAC,MAAM,kBAAkB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAClF,CACD,CAAC;IACH,CAAC;IACD,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI;QAC7B,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAE5D,IAAI,MAAM,GAAoD,MAAM,mBAAmB,CACtF,KAAK,EAAE,GAAG,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE,CAAC,MAAM,oBAAoB,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CACzD,CAAC;QAEF,IAAI,IAAI,CAAC,MAAM,CAAC,0BAA0B,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,0BAA0B,CAAC;YACtD,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBACxB,OAAO,KAAK;oBACX,CAAC,CAAC,IAAI,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,aAAa,EAAE,eAAe,CAAC,CAAS,CAAC,CAAC;oBACpG,CAAC,CAAC,CAAC,CAAC;YACN,CAAC,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IACpC,CAAC;CACD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Type.js","sourceRoot":"","sources":["../../../../src/generator/analyzer/types/Type.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Type.js","sourceRoot":"","sources":["../../../../src/generator/analyzer/types/Type.ts"],"names":[],"mappings":"AAEA,MAAM,OAAgB,IAAI;CAEzB"}
|