Skip to content

Commit

Permalink
Merge pull request #122 from newrelic/tglaser/hide-live-examples-for-…
Browse files Browse the repository at this point in the history
…portal-components

chore: temporarily hide live rendering for Modal, Tooltip, Dropdown
  • Loading branch information
timglaser authored Jun 11, 2020
2 parents 57a4d7b + 40eac2d commit d6d2238
Showing 1 changed file with 19 additions and 6 deletions.
25 changes: 19 additions & 6 deletions src/hooks/useComponentDoc.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ import { useMemo } from 'react';
import { getPropTypeDefinition } from '../utils/propTypeInfo';
import { pullTypeDefNames } from '../utils/typeDefs';

const IGNORED_LIVE_EXAMPLES = ['Dropdown', 'Modal', 'Tooltip'];

const IGNORED_METHODS = [
'prototype',
'length',
Expand All @@ -11,7 +13,20 @@ const IGNORED_METHODS = [
'defaultProps',
];

const extractPropTypes = (component) => {
const getExamples = (component) => {
const examples = component?.__docs__?.tags.examples ?? [];
const hideLive = IGNORED_LIVE_EXAMPLES.includes(component.name);

if (!hideLive) {
return examples;
}

return examples.map((example) => {
return { ...example, options: { ...example.options, live: false } };
});
};

const getPropTypes = (component) => {
return Object.entries(component.propTypes || {}).map(([name, propType]) =>
getPropTypeDefinition(component, name, propType)
);
Expand Down Expand Up @@ -59,13 +74,11 @@ const useComponentDoc = (componentName) => {
return null;
}

const componentDocs = component?.__docs__;

return {
description: componentDocs?.text,
examples: componentDocs?.tags.examples ?? [],
description: component?.__docs__?.text,
examples: getExamples(component),
usage: `import { ${componentName} } from 'nr1'`,
propTypes: extractPropTypes(component),
propTypes: getPropTypes(component),
methods: Object.getOwnPropertyNames(component)
.filter(
(member) =>
Expand Down

0 comments on commit d6d2238

Please sign in to comment.