Skip to content

Commit f3f0da3

Browse files
committed
Combine extract-meta and TypeScript generator.
1 parent 90a11d5 commit f3f0da3

File tree

11 files changed

+11105
-7859
lines changed

11 files changed

+11105
-7859
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
const presets = [
2+
'@babel/preset-env',
3+
'@babel/preset-react'
4+
];
5+
6+
const plugins = [];
7+
8+
module.exports = { presets, plugins };

@plotly/dash-generator-test-component-typescript/generator.test.ts

+14-3
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ function getMetadata() {
77
const cp = child_process.spawn(
88
process.execPath,
99
[
10-
path.resolve(__dirname, '..', '..', 'dash', 'meta-ts.js'),
10+
path.resolve(__dirname, '..', '..', 'dash', 'extract-meta.js'),
1111
'""', // ignore pattern
1212
'""', // reserved keywords
1313
path.join(__dirname, 'src', 'components')
@@ -30,7 +30,13 @@ function getMetadata() {
3030
});
3131
cp.on('close', code => {
3232
if (code === 0) {
33-
resolve(JSON.parse(meta.join('')));
33+
resolve(
34+
R.values(JSON.parse(meta.join(''))).reduce((acc, c) => {
35+
// Map them back to component name for easier access.
36+
acc[c.displayName] = c;
37+
return acc;
38+
}, {})
39+
);
3440
} else {
3541
reject(err.join(''));
3642
}
@@ -98,7 +104,7 @@ describe('Test Typescript component metadata generation', () => {
98104
test(
99105
`${componentName} setProps func`,
100106
testTypeFactory('setProps', 'func')
101-
)
107+
);
102108
});
103109

104110
describe('Test prop attributes', () => {
@@ -234,4 +240,9 @@ describe('Test Typescript component metadata generation', () => {
234240
}
235241
);
236242
});
243+
describe('Test mixed generation', () => {
244+
test('Standard js component is parsed', () => {
245+
expect(R.path(['StandardComponent'], metadata)).toBeDefined();
246+
});
247+
});
237248
});

0 commit comments

Comments
 (0)