From d6366baa08e362f73c05fbff40f4a3ba76dbd0cc Mon Sep 17 00:00:00 2001 From: Sam Benemerito Date: Wed, 21 Jun 2023 18:15:30 +0800 Subject: [PATCH 1/2] fix: do not include component name in required prop types --- src/DocCoverage/DocCoverageUtils/propTypesCoverageReact.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/DocCoverage/DocCoverageUtils/propTypesCoverageReact.js b/src/DocCoverage/DocCoverageUtils/propTypesCoverageReact.js index 0756ff3..3b5b1c7 100644 --- a/src/DocCoverage/DocCoverageUtils/propTypesCoverageReact.js +++ b/src/DocCoverage/DocCoverageUtils/propTypesCoverageReact.js @@ -47,7 +47,7 @@ class PropTypesCoverageReact { ]; if (parentKey === astConstants.INIT) { if (grandParentValue.id.name) { - uniquePush(propsArr, grandParentValue.id.name); + // uniquePush(propsArr, grandParentValue.id.name); } else { grandParentValue.id.properties.forEach((p) => uniquePush(propsArr, p.key?.name || p.value?.name) From 058c75370c5ffc3e0d4cf1f8c128c4f139d92228 Mon Sep 17 00:00:00 2001 From: Sam Benemerito Date: Wed, 21 Jun 2023 18:18:01 +0800 Subject: [PATCH 2/2] consider no required props as fully covered --- src/DocCoverage/index.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/DocCoverage/index.js b/src/DocCoverage/index.js index 30bcaeb..13fb929 100644 --- a/src/DocCoverage/index.js +++ b/src/DocCoverage/index.js @@ -104,21 +104,23 @@ class DocumentationCoverage { numOfPropTypesDefined += totalPropsLength - missingPropTypesLength; return { hasStory: false, + totalPropCount: totalPropsLength, hasAllPropTypes: totalPropsLength ? missingPropTypesLength === 0 - : false, + : true, + missingPropCount: missingPropTypesLength, componentType: isClassComponent ? 'Class Based' : 'Functional', missingPropTypes: totalPropsLength && totalPropsLength !== missingPropTypesLength ? missingPropTypes - : 'No PropTypes Found', + : [], coverage: `${ totalPropsLength ? getCoveragePercentage( totalPropsLength - missingPropTypesLength, totalPropsLength ) - : 0 + : 100 }%`, }; }