Skip to content

Commit

Permalink
refactor: Extract prop type definition into own function
Browse files Browse the repository at this point in the history
  • Loading branch information
jerelmiller committed Jun 7, 2020
1 parent d390f5d commit b458b4a
Showing 1 changed file with 19 additions and 18 deletions.
37 changes: 19 additions & 18 deletions src/hooks/useComponentDoc.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,26 +14,27 @@ const IGNORED_METHODS = [
'defaultProps',
];

const extractPropTypes = (component) => {
return Object.entries(component.propTypes || {}).map(([name, propType]) => {
const propDocs = propType.__docs__;
const propMeta = propType.__reflect__;
const getPropTypeDefinition = (name, propType) => {
const propDocs = propType.__docs__;
const propMeta = propType.__reflect__;

const type = processType(component, name, propMeta);
return {
name,
description: propDocs.text,
deprecation: propDocs.tags.deprecated?.[0] ?? null,
isRequired: propMeta.some((item) => item.name === 'isRequired'),
type: {
raw: getRawTypeName(propType),
name: getNormalizedTypeName(propType),
},
};
};

return {
name,
description: propDocs.text,
deprecation: propDocs.tags.deprecated?.[0] ?? null,
isRequired: propMeta.some((item) => item.name === 'isRequired'),
type: {
meta: type,
raw: getRawTypeName(propType),
name: getNormalizedTypeName(propType),
},
defaultValue: getDefaultValue(component, name),
};
});
const extractPropTypes = (component) => {
return Object.entries(component.propTypes || {}).map(([name, propType]) => ({
...getPropTypeDefinition(name, propType),
defaultValue: getDefaultValue(component, name),
}));
};

const toStaticName = (propName) =>
Expand Down

0 comments on commit b458b4a

Please sign in to comment.