typia 4.1.9 → 4.1.10
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.
|
@@ -35,12 +35,12 @@ var typescript_1 = __importDefault(require("typescript"));
|
|
|
35
35
|
var CommentFactory;
|
|
36
36
|
(function (CommentFactory) {
|
|
37
37
|
CommentFactory.description = function (symbol) {
|
|
38
|
-
var e_1, _a, e_2, _b;
|
|
39
|
-
var
|
|
40
|
-
var node = (
|
|
38
|
+
var e_1, _a, e_2, _b, e_3, _c;
|
|
39
|
+
var _d, _e, _f;
|
|
40
|
+
var node = (_d = symbol.declarations) === null || _d === void 0 ? void 0 : _d[0];
|
|
41
41
|
if (!node)
|
|
42
42
|
return undefined;
|
|
43
|
-
var
|
|
43
|
+
var _g = __read(typescript_1.default.versionMajorMinor.split(".").map(Number), 2), major = _g[0], minor = _g[1];
|
|
44
44
|
if (major < 5 || (major === 5 && minor < 1)) {
|
|
45
45
|
var content_1 = [];
|
|
46
46
|
var main_1 = typescript_1.default.displayPartsToString(symbol.getDocumentationComment(undefined));
|
|
@@ -50,8 +50,8 @@ var CommentFactory;
|
|
|
50
50
|
content_1.push("");
|
|
51
51
|
}
|
|
52
52
|
try {
|
|
53
|
-
for (var
|
|
54
|
-
var tag =
|
|
53
|
+
for (var _h = __values(symbol.getJsDocTags()), _j = _h.next(); !_j.done; _j = _h.next()) {
|
|
54
|
+
var tag = _j.value;
|
|
55
55
|
content_1.push(tag.text
|
|
56
56
|
? "@".concat(tag.name, " ").concat(typescript_1.default.displayPartsToString(tag.text))
|
|
57
57
|
: "@".concat(tag.name));
|
|
@@ -60,7 +60,7 @@ var CommentFactory;
|
|
|
60
60
|
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
61
61
|
finally {
|
|
62
62
|
try {
|
|
63
|
-
if (
|
|
63
|
+
if (_j && !_j.done && (_a = _h.return)) _a.call(_h);
|
|
64
64
|
}
|
|
65
65
|
finally { if (e_1) throw e_1.error; }
|
|
66
66
|
}
|
|
@@ -71,17 +71,35 @@ var CommentFactory;
|
|
|
71
71
|
: undefined;
|
|
72
72
|
}
|
|
73
73
|
var elements = typescript_1.default.getJSDocCommentsAndTags(node);
|
|
74
|
+
if (elements.length === 0)
|
|
75
|
+
return undefined;
|
|
74
76
|
var content = [];
|
|
75
77
|
try {
|
|
76
78
|
for (var elements_1 = __values(elements), elements_1_1 = elements_1.next(); !elements_1_1.done; elements_1_1 = elements_1.next()) {
|
|
77
79
|
var comment = elements_1_1.value;
|
|
78
|
-
if (typescript_1.default.isJSDoc(comment))
|
|
79
|
-
content.push(comment.getFullText());
|
|
80
|
-
else {
|
|
80
|
+
if (typescript_1.default.isJSDoc(comment)) {
|
|
81
81
|
var parsed = typescript_1.default.getTextOfJSDocComment(comment.comment);
|
|
82
|
-
if (parsed)
|
|
82
|
+
if (parsed === null || parsed === void 0 ? void 0 : parsed.length) {
|
|
83
83
|
content.push(parsed);
|
|
84
|
+
if ((_e = comment.tags) === null || _e === void 0 ? void 0 : _e.length)
|
|
85
|
+
content.push("");
|
|
86
|
+
}
|
|
87
|
+
try {
|
|
88
|
+
for (var _k = (e_3 = void 0, __values((_f = comment.tags) !== null && _f !== void 0 ? _f : [])), _l = _k.next(); !_l.done; _l = _k.next()) {
|
|
89
|
+
var tag = _l.value;
|
|
90
|
+
content.push(parseJSDocTag(tag));
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
catch (e_3_1) { e_3 = { error: e_3_1 }; }
|
|
94
|
+
finally {
|
|
95
|
+
try {
|
|
96
|
+
if (_l && !_l.done && (_c = _k.return)) _c.call(_k);
|
|
97
|
+
}
|
|
98
|
+
finally { if (e_3) throw e_3.error; }
|
|
99
|
+
}
|
|
84
100
|
}
|
|
101
|
+
else
|
|
102
|
+
content.push(parseJSDocTag(comment));
|
|
85
103
|
}
|
|
86
104
|
}
|
|
87
105
|
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
@@ -91,7 +109,9 @@ var CommentFactory;
|
|
|
91
109
|
}
|
|
92
110
|
finally { if (e_2) throw e_2.error; }
|
|
93
111
|
}
|
|
94
|
-
var output =
|
|
112
|
+
var output = content
|
|
113
|
+
.map(function (line) { return line.split("\r\n").join("\n"); })
|
|
114
|
+
.join("\n");
|
|
95
115
|
return output.length ? output : undefined;
|
|
96
116
|
};
|
|
97
117
|
CommentFactory.merge = function (comments) {
|
|
@@ -101,46 +121,10 @@ var CommentFactory;
|
|
|
101
121
|
.join("");
|
|
102
122
|
};
|
|
103
123
|
})(CommentFactory || (exports.CommentFactory = CommentFactory = {}));
|
|
104
|
-
var
|
|
105
|
-
var
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
return elem.trim().endsWith("*/");
|
|
110
|
-
});
|
|
111
|
-
var cut = elements.slice(first, last + 1);
|
|
112
|
-
return cut
|
|
113
|
-
.map(function (elem, i) {
|
|
114
|
-
if (i === 0)
|
|
115
|
-
elem = elem.substring(elem.lastIndexOf("/**") + 3);
|
|
116
|
-
if (i === cut.length - 1)
|
|
117
|
-
elem = elem.substring(0, elem.lastIndexOf("*/"));
|
|
118
|
-
return trim(elem);
|
|
119
|
-
})
|
|
120
|
-
.filter(function (str, i, array) {
|
|
121
|
-
return (i !== 0 && i !== array.length - 1) || !!str.length;
|
|
122
|
-
});
|
|
123
|
-
};
|
|
124
|
-
var lastIndexOf = function (array) {
|
|
125
|
-
return function (pred) {
|
|
126
|
-
for (var i = array.length - 1; i >= 0; i--)
|
|
127
|
-
if (pred(array[i]))
|
|
128
|
-
return i;
|
|
129
|
-
return -1;
|
|
130
|
-
};
|
|
131
|
-
};
|
|
132
|
-
var trim = function (str) {
|
|
133
|
-
var vulnerable = function (ch) {
|
|
134
|
-
return ch === " " || ch === "\n" || ch === "\t" || ch === "*";
|
|
135
|
-
};
|
|
136
|
-
var start;
|
|
137
|
-
var end;
|
|
138
|
-
for (start = 0; start < str.length; ++start)
|
|
139
|
-
if (!vulnerable(str.charAt(start)))
|
|
140
|
-
break;
|
|
141
|
-
for (end = str.length - 1; end >= 0; --end)
|
|
142
|
-
if (!vulnerable(str.charAt(end)))
|
|
143
|
-
break;
|
|
144
|
-
return start > end ? "" : str.substring(start, end + 1).trim();
|
|
124
|
+
var parseJSDocTag = function (tag) {
|
|
125
|
+
var parsed = typescript_1.default.getTextOfJSDocComment(tag.comment);
|
|
126
|
+
return (parsed === null || parsed === void 0 ? void 0 : parsed.length)
|
|
127
|
+
? "@".concat(tag.tagName.text, " ").concat(parsed)
|
|
128
|
+
: "@".concat(tag.tagName.text);
|
|
145
129
|
};
|
|
146
130
|
//# sourceMappingURL=CommentFactory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommentFactory.js","sourceRoot":"","sources":["../../src/factories/CommentFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,IAAiB,cAAc,
|
|
1
|
+
{"version":3,"file":"CommentFactory.js","sourceRoot":"","sources":["../../src/factories/CommentFactory.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -36,18 +36,25 @@ export namespace CommentFactory {
|
|
|
36
36
|
// NEW FEATURE OF TS 5.2
|
|
37
37
|
const elements: readonly (ts.JSDoc | ts.JSDocTag)[] =
|
|
38
38
|
ts.getJSDocCommentsAndTags(node);
|
|
39
|
+
if (elements.length === 0) return undefined;
|
|
40
|
+
|
|
39
41
|
const content: string[] = [];
|
|
40
|
-
for (const comment of elements)
|
|
41
|
-
if (ts.isJSDoc(comment))
|
|
42
|
-
else {
|
|
42
|
+
for (const comment of elements) {
|
|
43
|
+
if (ts.isJSDoc(comment)) {
|
|
43
44
|
const parsed: string | undefined = ts.getTextOfJSDocComment(
|
|
44
45
|
comment.comment,
|
|
45
46
|
);
|
|
46
|
-
if (parsed)
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
47
|
+
if (parsed?.length) {
|
|
48
|
+
content.push(parsed);
|
|
49
|
+
if (comment.tags?.length) content.push("");
|
|
50
|
+
}
|
|
51
|
+
for (const tag of comment.tags ?? [])
|
|
52
|
+
content.push(parseJSDocTag(tag));
|
|
53
|
+
} else content.push(parseJSDocTag(comment));
|
|
54
|
+
}
|
|
55
|
+
const output: string = content
|
|
56
|
+
.map((line) => line.split("\r\n").join("\n"))
|
|
57
|
+
.join("\n");
|
|
51
58
|
return output.length ? output : undefined;
|
|
52
59
|
};
|
|
53
60
|
|
|
@@ -58,44 +65,9 @@ export namespace CommentFactory {
|
|
|
58
65
|
.join("");
|
|
59
66
|
}
|
|
60
67
|
|
|
61
|
-
const
|
|
62
|
-
const
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
elem.trim().endsWith("*/"),
|
|
67
|
-
);
|
|
68
|
-
|
|
69
|
-
const cut: string[] = elements.slice(first, last + 1);
|
|
70
|
-
return cut
|
|
71
|
-
.map((elem, i) => {
|
|
72
|
-
if (i === 0) elem = elem.substring(elem.lastIndexOf("/**") + 3);
|
|
73
|
-
if (i === cut.length - 1)
|
|
74
|
-
elem = elem.substring(0, elem.lastIndexOf("*/"));
|
|
75
|
-
return trim(elem);
|
|
76
|
-
})
|
|
77
|
-
.filter(
|
|
78
|
-
(str, i, array) =>
|
|
79
|
-
(i !== 0 && i !== array.length - 1) || !!str.length,
|
|
80
|
-
);
|
|
81
|
-
};
|
|
82
|
-
|
|
83
|
-
const lastIndexOf =
|
|
84
|
-
<T>(array: T[]) =>
|
|
85
|
-
(pred: (elem: T) => boolean) => {
|
|
86
|
-
for (let i = array.length - 1; i >= 0; i--)
|
|
87
|
-
if (pred(array[i]!)) return i;
|
|
88
|
-
return -1;
|
|
89
|
-
};
|
|
90
|
-
|
|
91
|
-
const trim = (str: string): string => {
|
|
92
|
-
const vulnerable = (ch: string) =>
|
|
93
|
-
ch === " " || ch === "\n" || ch === "\t" || ch === "*";
|
|
94
|
-
let start: number;
|
|
95
|
-
let end: number;
|
|
96
|
-
for (start = 0; start < str.length; ++start)
|
|
97
|
-
if (!vulnerable(str.charAt(start))) break;
|
|
98
|
-
for (end = str.length - 1; end >= 0; --end)
|
|
99
|
-
if (!vulnerable(str.charAt(end))) break;
|
|
100
|
-
return start > end ? "" : str.substring(start, end + 1).trim();
|
|
68
|
+
const parseJSDocTag = (tag: ts.JSDocTag): string => {
|
|
69
|
+
const parsed: string | undefined = ts.getTextOfJSDocComment(tag.comment);
|
|
70
|
+
return parsed?.length
|
|
71
|
+
? `@${tag.tagName.text} ${parsed}`
|
|
72
|
+
: `@${tag.tagName.text}`;
|
|
101
73
|
};
|