@teambit/typescript 0.0.758 → 0.0.761
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/dist/transformers/utils/jsdoc-to-doc-schema.js +37 -28
- package/dist/transformers/utils/jsdoc-to-doc-schema.js.map +1 -1
- package/package-tar/teambit-typescript-0.0.761.tgz +0 -0
- package/package.json +16 -16
- package/{preview-1654918011878.js → preview-1655263660719.js} +2 -2
- package/transformers/utils/jsdoc-to-doc-schema.ts +55 -27
- package/package-tar/teambit-typescript-0.0.758.tgz +0 -0
|
@@ -77,75 +77,77 @@ async function jsDocToDocSchema(node, context) {
|
|
|
77
77
|
const location = context.getLocation(jsDoc);
|
|
78
78
|
const comment = (0, _typescript().getTextOfJSDocComment)(jsDoc.comment);
|
|
79
79
|
const tags = jsDoc.tags ? await (0, _pMapSeries().default)(jsDoc.tags, tag => tagParser(tag, context)) : undefined;
|
|
80
|
-
return new (_semanticsEntities().DocSchema)(location, comment, tags);
|
|
80
|
+
return new (_semanticsEntities().DocSchema)(location, jsDoc.getText(), comment, tags);
|
|
81
81
|
}
|
|
82
82
|
|
|
83
83
|
async function tagParser(tag, context) {
|
|
84
|
-
|
|
85
|
-
|
|
84
|
+
// for some reason, in some cases, if `tag.getSourceFile()` is not provided to the `getText()`, it throws "Cannot read property 'text' of undefined"
|
|
86
85
|
switch (tag.kind) {
|
|
87
86
|
case _typescript().SyntaxKind.JSDocReturnTag:
|
|
88
87
|
return returnTag(tag, context);
|
|
89
88
|
|
|
89
|
+
case _typescript().SyntaxKind.JSDocPropertyTag:
|
|
90
|
+
return propertyLikeTag(tag, context);
|
|
91
|
+
|
|
92
|
+
case _typescript().SyntaxKind.JSDocParameterTag:
|
|
93
|
+
return propertyLikeTag(tag, context);
|
|
94
|
+
|
|
90
95
|
case _typescript().SyntaxKind.JSDocAugmentsTag:
|
|
91
|
-
|
|
96
|
+
return simpleTag(tag, _semanticsEntities().TagName.augments, context);
|
|
92
97
|
|
|
93
98
|
case _typescript().SyntaxKind.JSDocAuthorTag:
|
|
94
|
-
|
|
99
|
+
return simpleTag(tag, _semanticsEntities().TagName.author, context);
|
|
95
100
|
|
|
96
101
|
case _typescript().SyntaxKind.JSDocClassTag:
|
|
97
|
-
|
|
102
|
+
return simpleTag(tag, _semanticsEntities().TagName.class, context);
|
|
98
103
|
|
|
99
104
|
case _typescript().SyntaxKind.JSDocCallbackTag:
|
|
100
|
-
|
|
105
|
+
return simpleTag(tag, _semanticsEntities().TagName.callback, context);
|
|
101
106
|
|
|
102
107
|
case _typescript().SyntaxKind.JSDocPublicTag:
|
|
103
|
-
|
|
108
|
+
return simpleTag(tag, _semanticsEntities().TagName.public, context);
|
|
104
109
|
|
|
105
110
|
case _typescript().SyntaxKind.JSDocPrivateTag:
|
|
106
|
-
|
|
111
|
+
return simpleTag(tag, _semanticsEntities().TagName.private, context);
|
|
107
112
|
|
|
108
113
|
case _typescript().SyntaxKind.JSDocProtectedTag:
|
|
109
|
-
|
|
114
|
+
return simpleTag(tag, _semanticsEntities().TagName.protected, context);
|
|
110
115
|
|
|
111
116
|
case _typescript().SyntaxKind.JSDocReadonlyTag:
|
|
112
|
-
|
|
117
|
+
return simpleTag(tag, _semanticsEntities().TagName.readonly, context);
|
|
113
118
|
|
|
114
119
|
case _typescript().SyntaxKind.JSDocOverrideTag:
|
|
115
|
-
|
|
120
|
+
return simpleTag(tag, _semanticsEntities().TagName.override, context);
|
|
116
121
|
|
|
117
122
|
case _typescript().SyntaxKind.JSDocDeprecatedTag:
|
|
118
|
-
|
|
123
|
+
return simpleTag(tag, _semanticsEntities().TagName.deprecated, context);
|
|
119
124
|
|
|
120
125
|
case _typescript().SyntaxKind.JSDocSeeTag:
|
|
121
|
-
|
|
126
|
+
return simpleTag(tag, _semanticsEntities().TagName.see, context);
|
|
122
127
|
|
|
123
128
|
case _typescript().SyntaxKind.JSDocEnumTag:
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
case _typescript().SyntaxKind.JSDocParameterTag:
|
|
127
|
-
tagName = _semanticsEntities().TagName.parameter;
|
|
129
|
+
return simpleTag(tag, _semanticsEntities().TagName.enum, context);
|
|
128
130
|
|
|
129
131
|
case _typescript().SyntaxKind.JSDocThisTag:
|
|
130
|
-
|
|
132
|
+
return simpleTag(tag, _semanticsEntities().TagName.this, context);
|
|
131
133
|
|
|
132
134
|
case _typescript().SyntaxKind.JSDocTypeTag:
|
|
133
|
-
|
|
135
|
+
return simpleTag(tag, _semanticsEntities().TagName.type, context);
|
|
134
136
|
|
|
135
137
|
case _typescript().SyntaxKind.JSDocTemplateTag:
|
|
136
|
-
|
|
138
|
+
return simpleTag(tag, _semanticsEntities().TagName.template, context);
|
|
137
139
|
|
|
138
140
|
case _typescript().SyntaxKind.JSDocTypedefTag:
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
case _typescript().SyntaxKind.JSDocPropertyTag:
|
|
142
|
-
tagName = _semanticsEntities().TagName.property;
|
|
141
|
+
return simpleTag(tag, _semanticsEntities().TagName.typedef, context);
|
|
143
142
|
|
|
144
143
|
case _typescript().SyntaxKind.JSDocImplementsTag:
|
|
145
|
-
|
|
144
|
+
return simpleTag(tag, _semanticsEntities().TagName.implements, context);
|
|
146
145
|
|
|
147
146
|
default:
|
|
148
|
-
|
|
147
|
+
{
|
|
148
|
+
const tagName = tag.tagName.getText(tag.getSourceFile());
|
|
149
|
+
return simpleTag(tag, tagName, context);
|
|
150
|
+
}
|
|
149
151
|
}
|
|
150
152
|
}
|
|
151
153
|
|
|
@@ -157,7 +159,14 @@ async function returnTag(tag, context) {
|
|
|
157
159
|
var _tag$typeExpression, _tag$typeExpression2;
|
|
158
160
|
|
|
159
161
|
const type = (_tag$typeExpression = tag.typeExpression) !== null && _tag$typeExpression !== void 0 && _tag$typeExpression.type ? await (0, _typeNodeToSchema().typeNodeToSchema)((_tag$typeExpression2 = tag.typeExpression) === null || _tag$typeExpression2 === void 0 ? void 0 : _tag$typeExpression2.type, context) : undefined;
|
|
160
|
-
return new (_semanticsEntities().ReturnTagSchema)(context.getLocation(tag),
|
|
162
|
+
return new (_semanticsEntities().ReturnTagSchema)(context.getLocation(tag), (0, _typescript().getTextOfJSDocComment)(tag.comment), type);
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
async function propertyLikeTag(tag, context) {
|
|
166
|
+
var _tag$typeExpression3, _tag$typeExpression4;
|
|
167
|
+
|
|
168
|
+
const type = (_tag$typeExpression3 = tag.typeExpression) !== null && _tag$typeExpression3 !== void 0 && _tag$typeExpression3.type ? await (0, _typeNodeToSchema().typeNodeToSchema)((_tag$typeExpression4 = tag.typeExpression) === null || _tag$typeExpression4 === void 0 ? void 0 : _tag$typeExpression4.type, context) : undefined;
|
|
169
|
+
return new (_semanticsEntities().PropertyLikeTagSchema)(context.getLocation(tag), tag.name.getText(), (0, _typescript().getTextOfJSDocComment)(tag.comment), type);
|
|
161
170
|
}
|
|
162
171
|
|
|
163
172
|
//# sourceMappingURL=jsdoc-to-doc-schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsDocToDocSchema","node","context","canHaveJsDoc","undefined","jsDocs","getJsDoc","length","jsDoc","location","getLocation","comment","getTextOfJSDocComment","tags","pMapSeries","tag","tagParser","DocSchema","
|
|
1
|
+
{"version":3,"names":["jsDocToDocSchema","node","context","canHaveJsDoc","undefined","jsDocs","getJsDoc","length","jsDoc","location","getLocation","comment","getTextOfJSDocComment","tags","pMapSeries","tag","tagParser","DocSchema","getText","kind","SyntaxKind","JSDocReturnTag","returnTag","JSDocPropertyTag","propertyLikeTag","JSDocParameterTag","JSDocAugmentsTag","simpleTag","TagName","augments","JSDocAuthorTag","author","JSDocClassTag","class","JSDocCallbackTag","callback","JSDocPublicTag","public","JSDocPrivateTag","private","JSDocProtectedTag","protected","JSDocReadonlyTag","readonly","JSDocOverrideTag","override","JSDocDeprecatedTag","deprecated","JSDocSeeTag","see","JSDocEnumTag","enum","JSDocThisTag","this","JSDocTypeTag","type","JSDocTemplateTag","template","JSDocTypedefTag","typedef","JSDocImplementsTag","implements","tagName","getSourceFile","TagSchema","typeExpression","typeNodeToSchema","ReturnTagSchema","PropertyLikeTagSchema","name"],"sources":["jsdoc-to-doc-schema.ts"],"sourcesContent":["/* eslint-disable no-fallthrough */\nimport {\n getTextOfJSDocComment,\n JSDocParameterTag,\n JSDocPropertyLikeTag,\n JSDocPropertyTag,\n JSDocReturnTag,\n JSDocTag,\n Node,\n SyntaxKind,\n} from 'typescript';\nimport { getJsDoc, canHaveJsDoc } from 'tsutils';\nimport pMapSeries from 'p-map-series';\nimport {\n DocSchema,\n PropertyLikeTagSchema,\n ReturnTagSchema,\n TagName,\n TagSchema,\n} from '@teambit/semantics.entities.semantic-schema';\nimport { SchemaExtractorContext } from '../../schema-extractor-context';\nimport { typeNodeToSchema } from './type-node-to-schema';\n\nexport async function jsDocToDocSchema(node: Node, context: SchemaExtractorContext): Promise<DocSchema | undefined> {\n if (!canHaveJsDoc(node)) {\n return undefined;\n }\n const jsDocs = getJsDoc(node);\n if (!jsDocs.length) {\n return undefined;\n }\n // not sure how common it is to have multiple JSDocs. never seen it before.\n // regardless, in typescript implementation of methods like `getJSDocDeprecatedTag()`, they use the first one. (`getFirstJSDocTag()`)\n const jsDoc = jsDocs[0];\n const location = context.getLocation(jsDoc);\n const comment = getTextOfJSDocComment(jsDoc.comment);\n const tags = jsDoc.tags ? await pMapSeries(jsDoc.tags, (tag) => tagParser(tag, context)) : undefined;\n return new DocSchema(location, jsDoc.getText(), comment, tags);\n}\n\nasync function tagParser(tag: JSDocTag, context: SchemaExtractorContext): Promise<TagSchema> {\n // for some reason, in some cases, if `tag.getSourceFile()` is not provided to the `getText()`, it throws \"Cannot read property 'text' of undefined\"\n\n switch (tag.kind) {\n case SyntaxKind.JSDocReturnTag:\n return returnTag(tag as JSDocReturnTag, context);\n case SyntaxKind.JSDocPropertyTag:\n return propertyLikeTag(tag as JSDocPropertyTag, context);\n case SyntaxKind.JSDocParameterTag:\n return propertyLikeTag(tag as JSDocParameterTag, context);\n case SyntaxKind.JSDocAugmentsTag:\n return simpleTag(tag, TagName.augments, context);\n case SyntaxKind.JSDocAuthorTag:\n return simpleTag(tag, TagName.author, context);\n case SyntaxKind.JSDocClassTag:\n return simpleTag(tag, TagName.class, context);\n case SyntaxKind.JSDocCallbackTag:\n return simpleTag(tag, TagName.callback, context);\n case SyntaxKind.JSDocPublicTag:\n return simpleTag(tag, TagName.public, context);\n case SyntaxKind.JSDocPrivateTag:\n return simpleTag(tag, TagName.private, context);\n case SyntaxKind.JSDocProtectedTag:\n return simpleTag(tag, TagName.protected, context);\n case SyntaxKind.JSDocReadonlyTag:\n return simpleTag(tag, TagName.readonly, context);\n case SyntaxKind.JSDocOverrideTag:\n return simpleTag(tag, TagName.override, context);\n case SyntaxKind.JSDocDeprecatedTag:\n return simpleTag(tag, TagName.deprecated, context);\n case SyntaxKind.JSDocSeeTag:\n return simpleTag(tag, TagName.see, context);\n case SyntaxKind.JSDocEnumTag:\n return simpleTag(tag, TagName.enum, context);\n case SyntaxKind.JSDocThisTag:\n return simpleTag(tag, TagName.this, context);\n case SyntaxKind.JSDocTypeTag:\n return simpleTag(tag, TagName.type, context);\n case SyntaxKind.JSDocTemplateTag:\n return simpleTag(tag, TagName.template, context);\n case SyntaxKind.JSDocTypedefTag:\n return simpleTag(tag, TagName.typedef, context);\n case SyntaxKind.JSDocImplementsTag:\n return simpleTag(tag, TagName.implements, context);\n default: {\n const tagName: TagName | string = tag.tagName.getText(tag.getSourceFile());\n return simpleTag(tag, tagName, context);\n }\n }\n}\n\nfunction simpleTag(tag: JSDocTag, tagName: TagName | string, context: SchemaExtractorContext): TagSchema {\n return new TagSchema(context.getLocation(tag), tagName, getTextOfJSDocComment(tag.comment));\n}\n\nasync function returnTag(tag: JSDocReturnTag, context: SchemaExtractorContext) {\n const type = tag.typeExpression?.type ? await typeNodeToSchema(tag.typeExpression?.type, context) : undefined;\n return new ReturnTagSchema(context.getLocation(tag), getTextOfJSDocComment(tag.comment), type);\n}\n\nasync function propertyLikeTag(tag: JSDocPropertyLikeTag, context: SchemaExtractorContext) {\n const type = tag.typeExpression?.type ? await typeNodeToSchema(tag.typeExpression?.type, context) : undefined;\n return new PropertyLikeTagSchema(\n context.getLocation(tag),\n tag.name.getText(),\n getTextOfJSDocComment(tag.comment),\n type\n );\n}\n"],"mappings":"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"}
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/typescript",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.761",
|
|
4
4
|
"homepage": "https://bit.dev/teambit/typescript/typescript",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.typescript",
|
|
8
8
|
"name": "typescript",
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.761"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"lodash": "4.17.21",
|
|
@@ -18,21 +18,21 @@
|
|
|
18
18
|
"@babel/runtime": "7.12.18",
|
|
19
19
|
"core-js": "^3.0.0",
|
|
20
20
|
"@teambit/harmony": "0.3.3",
|
|
21
|
-
"@teambit/compiler": "0.0.
|
|
21
|
+
"@teambit/compiler": "0.0.761",
|
|
22
22
|
"@teambit/typescript.modules.ts-config-mutator": "0.0.68",
|
|
23
|
-
"@teambit/component": "0.0.
|
|
24
|
-
"@teambit/dependency-resolver": "0.0.
|
|
25
|
-
"@teambit/semantics.entities.semantic-schema": "0.0.
|
|
23
|
+
"@teambit/component": "0.0.761",
|
|
24
|
+
"@teambit/dependency-resolver": "0.0.761",
|
|
25
|
+
"@teambit/semantics.entities.semantic-schema": "0.0.21",
|
|
26
26
|
"@teambit/ts-server": "0.0.32",
|
|
27
|
-
"@teambit/aspect-loader": "0.0.
|
|
27
|
+
"@teambit/aspect-loader": "0.0.761",
|
|
28
28
|
"@teambit/bit-error": "0.0.394",
|
|
29
|
-
"@teambit/builder": "0.0.
|
|
30
|
-
"@teambit/isolator": "0.0.
|
|
31
|
-
"@teambit/logger": "0.0.
|
|
32
|
-
"@teambit/schema": "0.0.
|
|
33
|
-
"@teambit/workspace": "0.0.
|
|
34
|
-
"@teambit/cli": "0.0.
|
|
35
|
-
"@teambit/pkg": "0.0.
|
|
29
|
+
"@teambit/builder": "0.0.761",
|
|
30
|
+
"@teambit/isolator": "0.0.761",
|
|
31
|
+
"@teambit/logger": "0.0.596",
|
|
32
|
+
"@teambit/schema": "0.0.761",
|
|
33
|
+
"@teambit/workspace": "0.0.761",
|
|
34
|
+
"@teambit/cli": "0.0.503",
|
|
35
|
+
"@teambit/pkg": "0.0.761"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
38
|
"@types/lodash": "4.14.165",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"@teambit/typescript.aspect-docs.typescript": "0.0.138"
|
|
49
49
|
},
|
|
50
50
|
"peerDependencies": {
|
|
51
|
-
"@teambit/legacy": "1.0.
|
|
51
|
+
"@teambit/legacy": "1.0.283",
|
|
52
52
|
"react-dom": "^16.8.0 || ^17.0.0",
|
|
53
53
|
"react": "^16.8.0 || ^17.0.0"
|
|
54
54
|
},
|
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
"react": "-"
|
|
77
77
|
},
|
|
78
78
|
"peerDependencies": {
|
|
79
|
-
"@teambit/legacy": "1.0.
|
|
79
|
+
"@teambit/legacy": "1.0.283",
|
|
80
80
|
"react-dom": "^16.8.0 || ^17.0.0",
|
|
81
81
|
"react": "^16.8.0 || ^17.0.0"
|
|
82
82
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const compositions = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.typescript_typescript@0.0.
|
|
2
|
-
export const overview = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.typescript_typescript@0.0.
|
|
1
|
+
export const compositions = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.typescript_typescript@0.0.761/dist/typescript.composition.js')]
|
|
2
|
+
export const overview = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.typescript_typescript@0.0.761/dist/typescript.docs.mdx')]
|
|
@@ -1,8 +1,23 @@
|
|
|
1
1
|
/* eslint-disable no-fallthrough */
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
getTextOfJSDocComment,
|
|
4
|
+
JSDocParameterTag,
|
|
5
|
+
JSDocPropertyLikeTag,
|
|
6
|
+
JSDocPropertyTag,
|
|
7
|
+
JSDocReturnTag,
|
|
8
|
+
JSDocTag,
|
|
9
|
+
Node,
|
|
10
|
+
SyntaxKind,
|
|
11
|
+
} from 'typescript';
|
|
3
12
|
import { getJsDoc, canHaveJsDoc } from 'tsutils';
|
|
4
13
|
import pMapSeries from 'p-map-series';
|
|
5
|
-
import {
|
|
14
|
+
import {
|
|
15
|
+
DocSchema,
|
|
16
|
+
PropertyLikeTagSchema,
|
|
17
|
+
ReturnTagSchema,
|
|
18
|
+
TagName,
|
|
19
|
+
TagSchema,
|
|
20
|
+
} from '@teambit/semantics.entities.semantic-schema';
|
|
6
21
|
import { SchemaExtractorContext } from '../../schema-extractor-context';
|
|
7
22
|
import { typeNodeToSchema } from './type-node-to-schema';
|
|
8
23
|
|
|
@@ -20,54 +35,57 @@ export async function jsDocToDocSchema(node: Node, context: SchemaExtractorConte
|
|
|
20
35
|
const location = context.getLocation(jsDoc);
|
|
21
36
|
const comment = getTextOfJSDocComment(jsDoc.comment);
|
|
22
37
|
const tags = jsDoc.tags ? await pMapSeries(jsDoc.tags, (tag) => tagParser(tag, context)) : undefined;
|
|
23
|
-
return new DocSchema(location, comment, tags);
|
|
38
|
+
return new DocSchema(location, jsDoc.getText(), comment, tags);
|
|
24
39
|
}
|
|
25
40
|
|
|
26
41
|
async function tagParser(tag: JSDocTag, context: SchemaExtractorContext): Promise<TagSchema> {
|
|
27
|
-
|
|
42
|
+
// for some reason, in some cases, if `tag.getSourceFile()` is not provided to the `getText()`, it throws "Cannot read property 'text' of undefined"
|
|
43
|
+
|
|
28
44
|
switch (tag.kind) {
|
|
29
45
|
case SyntaxKind.JSDocReturnTag:
|
|
30
46
|
return returnTag(tag as JSDocReturnTag, context);
|
|
47
|
+
case SyntaxKind.JSDocPropertyTag:
|
|
48
|
+
return propertyLikeTag(tag as JSDocPropertyTag, context);
|
|
49
|
+
case SyntaxKind.JSDocParameterTag:
|
|
50
|
+
return propertyLikeTag(tag as JSDocParameterTag, context);
|
|
31
51
|
case SyntaxKind.JSDocAugmentsTag:
|
|
32
|
-
|
|
52
|
+
return simpleTag(tag, TagName.augments, context);
|
|
33
53
|
case SyntaxKind.JSDocAuthorTag:
|
|
34
|
-
|
|
54
|
+
return simpleTag(tag, TagName.author, context);
|
|
35
55
|
case SyntaxKind.JSDocClassTag:
|
|
36
|
-
|
|
56
|
+
return simpleTag(tag, TagName.class, context);
|
|
37
57
|
case SyntaxKind.JSDocCallbackTag:
|
|
38
|
-
|
|
58
|
+
return simpleTag(tag, TagName.callback, context);
|
|
39
59
|
case SyntaxKind.JSDocPublicTag:
|
|
40
|
-
|
|
60
|
+
return simpleTag(tag, TagName.public, context);
|
|
41
61
|
case SyntaxKind.JSDocPrivateTag:
|
|
42
|
-
|
|
62
|
+
return simpleTag(tag, TagName.private, context);
|
|
43
63
|
case SyntaxKind.JSDocProtectedTag:
|
|
44
|
-
|
|
64
|
+
return simpleTag(tag, TagName.protected, context);
|
|
45
65
|
case SyntaxKind.JSDocReadonlyTag:
|
|
46
|
-
|
|
66
|
+
return simpleTag(tag, TagName.readonly, context);
|
|
47
67
|
case SyntaxKind.JSDocOverrideTag:
|
|
48
|
-
|
|
68
|
+
return simpleTag(tag, TagName.override, context);
|
|
49
69
|
case SyntaxKind.JSDocDeprecatedTag:
|
|
50
|
-
|
|
70
|
+
return simpleTag(tag, TagName.deprecated, context);
|
|
51
71
|
case SyntaxKind.JSDocSeeTag:
|
|
52
|
-
|
|
72
|
+
return simpleTag(tag, TagName.see, context);
|
|
53
73
|
case SyntaxKind.JSDocEnumTag:
|
|
54
|
-
|
|
55
|
-
case SyntaxKind.JSDocParameterTag:
|
|
56
|
-
tagName = TagName.parameter;
|
|
74
|
+
return simpleTag(tag, TagName.enum, context);
|
|
57
75
|
case SyntaxKind.JSDocThisTag:
|
|
58
|
-
|
|
76
|
+
return simpleTag(tag, TagName.this, context);
|
|
59
77
|
case SyntaxKind.JSDocTypeTag:
|
|
60
|
-
|
|
78
|
+
return simpleTag(tag, TagName.type, context);
|
|
61
79
|
case SyntaxKind.JSDocTemplateTag:
|
|
62
|
-
|
|
80
|
+
return simpleTag(tag, TagName.template, context);
|
|
63
81
|
case SyntaxKind.JSDocTypedefTag:
|
|
64
|
-
|
|
65
|
-
case SyntaxKind.JSDocPropertyTag:
|
|
66
|
-
tagName = TagName.property;
|
|
82
|
+
return simpleTag(tag, TagName.typedef, context);
|
|
67
83
|
case SyntaxKind.JSDocImplementsTag:
|
|
68
|
-
|
|
69
|
-
default:
|
|
84
|
+
return simpleTag(tag, TagName.implements, context);
|
|
85
|
+
default: {
|
|
86
|
+
const tagName: TagName | string = tag.tagName.getText(tag.getSourceFile());
|
|
70
87
|
return simpleTag(tag, tagName, context);
|
|
88
|
+
}
|
|
71
89
|
}
|
|
72
90
|
}
|
|
73
91
|
|
|
@@ -77,5 +95,15 @@ function simpleTag(tag: JSDocTag, tagName: TagName | string, context: SchemaExtr
|
|
|
77
95
|
|
|
78
96
|
async function returnTag(tag: JSDocReturnTag, context: SchemaExtractorContext) {
|
|
79
97
|
const type = tag.typeExpression?.type ? await typeNodeToSchema(tag.typeExpression?.type, context) : undefined;
|
|
80
|
-
return new ReturnTagSchema(context.getLocation(tag),
|
|
98
|
+
return new ReturnTagSchema(context.getLocation(tag), getTextOfJSDocComment(tag.comment), type);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
async function propertyLikeTag(tag: JSDocPropertyLikeTag, context: SchemaExtractorContext) {
|
|
102
|
+
const type = tag.typeExpression?.type ? await typeNodeToSchema(tag.typeExpression?.type, context) : undefined;
|
|
103
|
+
return new PropertyLikeTagSchema(
|
|
104
|
+
context.getLocation(tag),
|
|
105
|
+
tag.name.getText(),
|
|
106
|
+
getTextOfJSDocComment(tag.comment),
|
|
107
|
+
type
|
|
108
|
+
);
|
|
81
109
|
}
|
|
Binary file
|