@iviva/react-tsdoc 0.2.1 → 0.2.3
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/core/analyzer.js +60 -23
- package/dist/core/analyzer.js.map +1 -1
- package/package.json +1 -1
package/dist/core/analyzer.js
CHANGED
|
@@ -27,9 +27,17 @@ exports.getSources = exports.validateProgram = exports.walkTree = exports.parseT
|
|
|
27
27
|
const ts = __importStar(require("typescript"));
|
|
28
28
|
const logger_1 = require("../utils/logger");
|
|
29
29
|
function extractComment(node) {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
30
|
+
try {
|
|
31
|
+
if (!node || !node.getSourceFile)
|
|
32
|
+
return '';
|
|
33
|
+
const fullText = node.getSourceFile().getFullText();
|
|
34
|
+
const comments = ts.getLeadingCommentRanges(fullText, node.pos);
|
|
35
|
+
return comments ? comments.map(c => fullText.slice(c.pos, c.end)).join('\n') : '';
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
console.warn('Error extracting comment:', error);
|
|
39
|
+
return '';
|
|
40
|
+
}
|
|
33
41
|
}
|
|
34
42
|
exports.extractComment = extractComment;
|
|
35
43
|
function getCode(node) {
|
|
@@ -69,7 +77,7 @@ function analyzeComponentPattern(init, name, comment, checker, docInfo, declared
|
|
|
69
77
|
if (innerParsed) {
|
|
70
78
|
return Object.assign(Object.assign({}, innerParsed), { innerWrappers: [...(innerParsed.innerWrappers || []), 'memo'] });
|
|
71
79
|
}
|
|
72
|
-
const propMatch = innerType.match(/React\.FunctionComponent<([^>]+)>/) || innerType.match(/React\.FC<([^>]+)>/);
|
|
80
|
+
const propMatch = innerType.match(/React\.FunctionComponent<({[^}]*}|[^>]+)>/) || innerType.match(/React\.FC<({[^}]*}|[^>]+)>/);
|
|
73
81
|
return {
|
|
74
82
|
type: 'functional',
|
|
75
83
|
propType: propMatch ? propMatch[1].trim() : 'any',
|
|
@@ -77,7 +85,7 @@ function analyzeComponentPattern(init, name, comment, checker, docInfo, declared
|
|
|
77
85
|
};
|
|
78
86
|
}
|
|
79
87
|
if (/\b(React\.)?ForwardRefExoticComponent\b/.test(typeText)) {
|
|
80
|
-
const frMatch = typeText.match(/<React\.RefAttributes<([^>]+)>\s*&\s*([^>]+)>/);
|
|
88
|
+
const frMatch = typeText.match(/<React\.RefAttributes<([^>]+)>\s*&\s*({[^}]*}|[^>]+)>/);
|
|
81
89
|
if (frMatch) {
|
|
82
90
|
return {
|
|
83
91
|
type: 'forwardRef',
|
|
@@ -88,14 +96,14 @@ function analyzeComponentPattern(init, name, comment, checker, docInfo, declared
|
|
|
88
96
|
return { type: 'forwardRef', refType: 'any', propType: 'any' };
|
|
89
97
|
}
|
|
90
98
|
if (/\b(React\.)?(FunctionComponent|FC)\b/.test(typeText)) {
|
|
91
|
-
const propMatch = typeText.match(/<\s*([
|
|
99
|
+
const propMatch = typeText.match(/<\s*({[^}]*}|[^>]+)>/);
|
|
92
100
|
return {
|
|
93
101
|
type: 'functional',
|
|
94
102
|
propType: propMatch ? propMatch[1].trim() : 'any'
|
|
95
103
|
};
|
|
96
104
|
}
|
|
97
105
|
if (/\b(React\.)?Component\b/.test(typeText)) {
|
|
98
|
-
const compMatch = typeText.match(/<([^,]+)(?:,\s*([^>]+))
|
|
106
|
+
const compMatch = typeText.match(/<({[^}]*}|[^,]+)(?:,\s*({[^}]*}|[^>]+))?>/);
|
|
99
107
|
return {
|
|
100
108
|
type: 'class',
|
|
101
109
|
propType: compMatch ? compMatch[1].trim() : 'any',
|
|
@@ -144,7 +152,7 @@ function analyzeComponentPattern(init, name, comment, checker, docInfo, declared
|
|
|
144
152
|
const decl = symbol.declarations[0];
|
|
145
153
|
if (ts.isVariableDeclaration(decl) && decl.type) {
|
|
146
154
|
const typeText = decl.type.getText();
|
|
147
|
-
const propMatch = typeText.match(/React\.FunctionComponent<([^>]+)>/) || typeText.match(/React\.FC<([^>]+)>/);
|
|
155
|
+
const propMatch = typeText.match(/React\.FunctionComponent<({[^}]*}|[^>]+)>/) || typeText.match(/React\.FC<({[^}]*}|[^>]+)>/);
|
|
148
156
|
propType = propMatch ? propMatch[1].trim() : 'any';
|
|
149
157
|
}
|
|
150
158
|
}
|
|
@@ -206,6 +214,7 @@ function analyzeComponentPattern(init, name, comment, checker, docInfo, declared
|
|
|
206
214
|
}
|
|
207
215
|
exports.analyzeComponentPattern = analyzeComponentPattern;
|
|
208
216
|
function parseInterfaceDeclaration(node, docInfo) {
|
|
217
|
+
var _a, _b, _c, _d;
|
|
209
218
|
if (!ts.isInterfaceDeclaration(node))
|
|
210
219
|
return;
|
|
211
220
|
const name = node.name.getText();
|
|
@@ -213,8 +222,10 @@ function parseInterfaceDeclaration(node, docInfo) {
|
|
|
213
222
|
const docs = extractComment(node);
|
|
214
223
|
const inf = { comment: docs, members: [], name, code: getCode(node) };
|
|
215
224
|
for (const member of members) {
|
|
216
|
-
const memberName = member.name.getText();
|
|
217
|
-
|
|
225
|
+
const memberName = (_b = (_a = member === null || member === void 0 ? void 0 : member.name) === null || _a === void 0 ? void 0 : _a.getText) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
226
|
+
if (!memberName)
|
|
227
|
+
continue;
|
|
228
|
+
const memberType = ((_d = (_c = member === null || member === void 0 ? void 0 : member.type) === null || _c === void 0 ? void 0 : _c.getText) === null || _d === void 0 ? void 0 : _d.call(_c)) || 'undefined';
|
|
218
229
|
const mdoc = extractComment(member);
|
|
219
230
|
const isOptional = member.questionToken !== undefined;
|
|
220
231
|
let defaultValue;
|
|
@@ -225,7 +236,7 @@ function parseInterfaceDeclaration(node, docInfo) {
|
|
|
225
236
|
defaultValue = defaultMatch ? defaultMatch[1].trim() : undefined;
|
|
226
237
|
exampleValue = exampleMatch ? exampleMatch[1].trim() : undefined;
|
|
227
238
|
}
|
|
228
|
-
catch (
|
|
239
|
+
catch (_e) { }
|
|
229
240
|
inf.members.push({
|
|
230
241
|
comment: mdoc,
|
|
231
242
|
name: memberName,
|
|
@@ -239,13 +250,13 @@ function parseInterfaceDeclaration(node, docInfo) {
|
|
|
239
250
|
}
|
|
240
251
|
exports.parseInterfaceDeclaration = parseInterfaceDeclaration;
|
|
241
252
|
function parseVariableDeclaration(node, docInfo, checker) {
|
|
242
|
-
var _a, _b, _c, _d, _e;
|
|
253
|
+
var _a, _b, _c, _d, _e, _f;
|
|
243
254
|
if (!ts.isVariableDeclaration(node))
|
|
244
255
|
return;
|
|
245
256
|
const decl = node;
|
|
246
|
-
const name = (_a = decl.name) === null || _a === void 0 ? void 0 : _a.getText();
|
|
257
|
+
const name = (_b = (_a = decl.name) === null || _a === void 0 ? void 0 : _a.getText) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
247
258
|
if (!name)
|
|
248
|
-
return;
|
|
259
|
+
return; // Add safety check
|
|
249
260
|
const parentForComments = (decl.parent && decl.parent.parent) ? decl.parent.parent : node.parent;
|
|
250
261
|
const comment = extractComment(parentForComments || node) || '';
|
|
251
262
|
const init = decl.initializer;
|
|
@@ -256,13 +267,13 @@ function parseVariableDeclaration(node, docInfo, checker) {
|
|
|
256
267
|
if (init && (ts.isArrowFunction(init) || ts.isFunctionExpression(init))) {
|
|
257
268
|
if (init.parameters) {
|
|
258
269
|
for (const param of init.parameters) {
|
|
259
|
-
const pname = ((
|
|
270
|
+
const pname = ((_c = param.name) === null || _c === void 0 ? void 0 : _c.getText()) || 'arg';
|
|
260
271
|
const ptype = param.type ? param.type.getText() : 'any';
|
|
261
272
|
parameters.push({ name: pname, type: ptype });
|
|
262
273
|
}
|
|
263
274
|
}
|
|
264
275
|
// Handle async functions
|
|
265
|
-
if ((
|
|
276
|
+
if ((_d = init.modifiers) === null || _d === void 0 ? void 0 : _d.some(m => m.kind === ts.SyntaxKind.AsyncKeyword)) {
|
|
266
277
|
(0, logger_1.logDebug)(`Found async hook: ${name}`);
|
|
267
278
|
// Adjust return type inference for async functions
|
|
268
279
|
hookReturnType = 'Promise<any>';
|
|
@@ -309,7 +320,7 @@ function parseVariableDeclaration(node, docInfo, checker) {
|
|
|
309
320
|
const params = [];
|
|
310
321
|
if (init.parameters) {
|
|
311
322
|
for (const param of init.parameters) {
|
|
312
|
-
const pname = ((
|
|
323
|
+
const pname = ((_e = param.name) === null || _e === void 0 ? void 0 : _e.getText()) || 'arg';
|
|
313
324
|
const ptype = param.type ? param.type.getText() : 'any';
|
|
314
325
|
params.push({ name: pname, type: ptype });
|
|
315
326
|
}
|
|
@@ -317,7 +328,7 @@ function parseVariableDeclaration(node, docInfo, checker) {
|
|
|
317
328
|
let returnType = 'void';
|
|
318
329
|
if (declaredType) {
|
|
319
330
|
const typeText = declaredType.getText();
|
|
320
|
-
if (docInfo.functions[typeText] || ((
|
|
331
|
+
if (docInfo.functions[typeText] || ((_f = docInfo.typeAliases) === null || _f === void 0 ? void 0 : _f[typeText])) {
|
|
321
332
|
returnType = typeText;
|
|
322
333
|
}
|
|
323
334
|
else {
|
|
@@ -513,7 +524,7 @@ exports.parseTypeAlias = parseTypeAlias;
|
|
|
513
524
|
function walkTree(node, docInfo, checker) {
|
|
514
525
|
var _a;
|
|
515
526
|
if (!node || !node.getSourceFile())
|
|
516
|
-
return;
|
|
527
|
+
return;
|
|
517
528
|
switch (node.kind) {
|
|
518
529
|
case ts.SyntaxKind.TypeAliasDeclaration:
|
|
519
530
|
parseTypeAlias(node, docInfo);
|
|
@@ -533,17 +544,43 @@ function walkTree(node, docInfo, checker) {
|
|
|
533
544
|
case ts.SyntaxKind.FunctionDeclaration:
|
|
534
545
|
parseFunctionDeclaration(node, docInfo, checker);
|
|
535
546
|
break;
|
|
547
|
+
// Add handling for common nodes that don't need processing
|
|
548
|
+
case ts.SyntaxKind.SourceFile:
|
|
549
|
+
case ts.SyntaxKind.ImportDeclaration:
|
|
550
|
+
case ts.SyntaxKind.ImportClause:
|
|
551
|
+
case ts.SyntaxKind.NamedImports:
|
|
552
|
+
case ts.SyntaxKind.ImportSpecifier:
|
|
553
|
+
case ts.SyntaxKind.Identifier:
|
|
554
|
+
case ts.SyntaxKind.StringLiteral:
|
|
555
|
+
case ts.SyntaxKind.NumericLiteral:
|
|
556
|
+
case ts.SyntaxKind.ExportKeyword:
|
|
557
|
+
case ts.SyntaxKind.ExportDeclaration:
|
|
558
|
+
case ts.SyntaxKind.DefaultKeyword:
|
|
559
|
+
case ts.SyntaxKind.AsExpression:
|
|
536
560
|
case ts.SyntaxKind.AwaitExpression:
|
|
537
561
|
case ts.SyntaxKind.CallExpression:
|
|
538
562
|
case ts.SyntaxKind.ElementAccessExpression:
|
|
539
563
|
case ts.SyntaxKind.PropertyAccessExpression:
|
|
540
|
-
//
|
|
564
|
+
// These are common nodes that don't need special processing
|
|
565
|
+
// Just continue traversing their children
|
|
541
566
|
break;
|
|
542
567
|
default:
|
|
543
|
-
//
|
|
544
|
-
|
|
568
|
+
// Only log truly unknown/unexpected nodes
|
|
569
|
+
if (node.kind > ts.SyntaxKind.LastToken && process.env.VERBOSE_DEBUG) {
|
|
570
|
+
(0, logger_1.logDebug)(`Unhandled node kind: ${ts.SyntaxKind[node.kind]} at ${(_a = node.getSourceFile()) === null || _a === void 0 ? void 0 : _a.fileName}:${node.pos}`);
|
|
571
|
+
}
|
|
572
|
+
}
|
|
573
|
+
// Add error handling for child traversal
|
|
574
|
+
try {
|
|
575
|
+
node.forEachChild(child => {
|
|
576
|
+
if (child) {
|
|
577
|
+
walkTree(child, docInfo, checker);
|
|
578
|
+
}
|
|
579
|
+
});
|
|
580
|
+
}
|
|
581
|
+
catch (error) {
|
|
582
|
+
(0, logger_1.logWarning)(`Error traversing children of ${ts.SyntaxKind[node.kind]}:`, error);
|
|
545
583
|
}
|
|
546
|
-
node.forEachChild(child => walkTree(child, docInfo, checker));
|
|
547
584
|
}
|
|
548
585
|
exports.walkTree = walkTree;
|
|
549
586
|
function validateProgram(program) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyzer.js","sourceRoot":"","sources":["../../src/core/analyzer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analyzer.js","sourceRoot":"","sources":["../../src/core/analyzer.ts"],"names":[],"mappings":"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"}
|