Skip to content

Commit 012d15f

Browse files
committed
Fixed missing component name in code examples.
1 parent eb6122f commit 012d15f

File tree

2 files changed

+40
-31
lines changed

2 files changed

+40
-31
lines changed

packages/react-renderer-demo/src/app/next.config.js

Lines changed: 27 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -10,34 +10,33 @@ const withBundleAnalyzer = require('@next/bundle-analyzer')({
1010

1111
module.exports = withBundleAnalyzer(
1212
withMDX({
13-
pageExtensions: ['js', 'jsx', 'md', 'mdx'],
14-
distDir: '../../dist/functions/next',
15-
webpack: (config, options) => {
16-
config.resolve.alias = {
17-
...config.resolve.alias,
18-
react: path.resolve(__dirname, '../../../../node_modules/react'),
19-
'react-dom': path.resolve(__dirname, '../../../../node_modules/react-dom'),
20-
'@docs/doc-components': path.resolve(__dirname, './src/doc-components'),
21-
'@docs/components': path.resolve(__dirname, './src/components'),
22-
'@docs/pages': path.resolve(__dirname, './pages'),
23-
'@docs/examples': path.resolve(__dirname, './examples'),
24-
'@docs/list-of-contents': path.resolve(__dirname, './src/helpers/list-of-contents'),
25-
'@docs/code-example': path.resolve(__dirname, './src/components/code-example'),
26-
'@docs/hooks': path.resolve(__dirname, './src/hooks')
27-
};
13+
pageExtensions: ['js', 'jsx', 'md', 'mdx'],
14+
distDir: '../../dist/functions/next',
15+
webpack: (config, options) => {
16+
config.resolve.alias = {
17+
...config.resolve.alias,
18+
react: path.resolve(__dirname, '../../../../node_modules/react'),
19+
'react-dom': path.resolve(__dirname, '../../../../node_modules/react-dom'),
20+
'@docs/doc-components': path.resolve(__dirname, './src/doc-components'),
21+
'@docs/components': path.resolve(__dirname, './src/components'),
22+
'@docs/pages': path.resolve(__dirname, './pages'),
23+
'@docs/examples': path.resolve(__dirname, './examples'),
24+
'@docs/list-of-contents': path.resolve(__dirname, './src/helpers/list-of-contents'),
25+
'@docs/code-example': path.resolve(__dirname, './src/components/code-example'),
26+
'@docs/hooks': path.resolve(__dirname, './src/hooks')
27+
};
2828

29-
config.optimization.minimizer = [
30-
new TerserPlugin({
31-
cache: true,
32-
parallel: false,
33-
terserOptions: {
34-
keep_classnames: true, // eslint-disable-line
35-
keep_fnames: true, // eslint-disable-line
36-
}
37-
})
38-
];
39-
return config;
40-
}
29+
config.optimization.minimizer = [
30+
new TerserPlugin({
31+
cache: true,
32+
parallel: false,
33+
terserOptions: {
34+
keep_classnames: true, // eslint-disable-line camelcase
35+
keep_fnames: true // eslint-disable-line camelcase
36+
}
37+
})
38+
];
39+
return config;
4140
}
42-
)
41+
})
4342
);

packages/react-renderer-demo/src/app/src/components/code-example.js

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -133,9 +133,19 @@ const getPayload = (type, code, sourceFiles = {}) =>
133133
}
134134
});
135135

136-
const CodeExample = ({ source, mode, mapper, additionalSources }) => {
137-
const { current: Component } = useRef(mode === 'preview' ? dynamic(import(`@docs/examples/${source}`)) : Fragment);
136+
const CodeExample = ({ source, mode, mapper }) => {
137+
const [name, setName] = useState('');
138138
const [codeSource, setCodeSource] = useState('');
139+
const { current: Component } = useRef(
140+
mode === 'preview'
141+
? dynamic(
142+
import(`@docs/examples/${source}`).then((mod) => {
143+
setName(mod.default.name);
144+
return mod;
145+
})
146+
)
147+
: Fragment
148+
);
139149
const sourceFiles = [];
140150
useEffect(() => {
141151
import(`!raw-loader!@docs/examples/${source}`).then((file) => {
@@ -160,7 +170,7 @@ const CodeExample = ({ source, mode, mapper, additionalSources }) => {
160170
>
161171
{Component && (
162172
<Typography className={classes.heading} component="h4" variant="h3">
163-
{Component.name}
173+
{name}
164174
</Typography>
165175
)}
166176
<Box display="flex">

0 commit comments

Comments
 (0)