From 50822f52546abcc0810d6e1b0adb8eea68293790 Mon Sep 17 00:00:00 2001 From: iCrawl Date: Thu, 9 Jun 2022 11:37:22 +0200 Subject: [PATCH] fix(docgen): parsing constructor --- packages/docgen/src/documentation.ts | 26 +++++++++++++++++++------- packages/docgen/src/types/class.ts | 4 +++- 2 files changed, 22 insertions(+), 8 deletions(-) diff --git a/packages/docgen/src/documentation.ts b/packages/docgen/src/documentation.ts index 732cd66e8..3b8a6f84f 100644 --- a/packages/docgen/src/documentation.ts +++ b/packages/docgen/src/documentation.ts @@ -66,7 +66,7 @@ export class Documentation { switch (item.kind) { case 'class': { this.classes.set(item.name, new DocumentedClass(item, config)); - items = items.filter((i) => i.longname !== item.longname); + items = items.filter((i) => i.longname !== item.longname || i.kind !== item.kind); break; } case 'function': { @@ -153,11 +153,17 @@ export class Documentation { path: dirname(member.sources?.[0]?.fileName ?? ''), }; - if (memberOf) info.push(`member of "${memberOf}"`); - if (meta) info.push(`${join(meta.path, meta.file ?? '')}${meta.line ? `:${meta.line}` : ''}`); + if (memberOf) { + info.push(`member of "${memberOf}"`); + } + if (meta) { + info.push(`${join(meta.path, meta.file ?? '')}${meta.line ? `:${meta.line}` : ''}`); + } console.warn(`- "${name}"${info.length ? ` (${info.join(', ')})` : ''} has no accessible parent.`); - if (!name && !info.length) console.warn('Raw object:', member); + if (!name && !info.length) { + console.warn('Raw object:', member); + } } } else { const it = items as ChildTypes[]; @@ -211,11 +217,17 @@ export class Documentation { ? null : { file: member.meta.filename, line: member.meta.lineno, path: member.meta.path }; - if (memberof) info.push(`member of "${memberof as string}"`); - if (meta) info.push(`${join(meta.path, meta.file)}${meta.line ? `:${meta.line}` : ''}`); + if (memberof) { + info.push(`member of "${memberof as string}"`); + } + if (meta) { + info.push(`${join(meta.path, meta.file)}${meta.line ? `:${meta.line}` : ''}`); + } console.warn(`- "${name}"${info.length ? ` (${info.join(', ')})` : ''} has no accessible parent.`); - if (!name && !info.length) console.warn('Raw object:', member); + if (!name && !info.length) { + console.warn('Raw object:', member); + } } } } diff --git a/packages/docgen/src/types/class.ts b/packages/docgen/src/types/class.ts index a7a50797b..4f8be4a47 100644 --- a/packages/docgen/src/types/class.ts +++ b/packages/docgen/src/types/class.ts @@ -52,7 +52,9 @@ export class DocumentedClass extends DocumentedItem