@@ -20,10 +20,18 @@ const options = {
20
20
savePropValueAsString : true ,
21
21
}
22
22
23
- async function createMdx ( filename , name , props ) {
23
+ async function createMdx ( file , filename , name , props ) {
24
24
if ( typeof props === 'undefined' ) return
25
25
26
- let content = `| Property | Description | Type | Default |\n`
26
+ let content = `
27
+ \`\`\`jsx
28
+ import { ${ name } } from '@coreui/react'
29
+ // or
30
+ import ${ name } from '@coreui/react/${ file . replace ( '.tsx' , '' ) } '
31
+ \`\`\`\n
32
+ `
33
+
34
+ content += `| Property | Description | Type | Default |\n`
27
35
content += `| --- | --- | --- | --- |\n`
28
36
29
37
for ( const [ key , value ] of Object . entries ( props ) . sort ( ) ) {
@@ -34,13 +42,22 @@ async function createMdx(filename, name, props) {
34
42
const name = value . name || ''
35
43
const description =
36
44
value . description . replaceAll ( '\n' , '<br/>' ) . replaceAll ( ' [docs]' , '' ) || '-'
37
- const type =
38
- value . type ? value . type . name . includes ( 'ReactElement' )
45
+ const type = value . type
46
+ ? value . type . name . includes ( 'ReactElement' )
39
47
? 'ReactElement'
40
- : value . type . name : ''
41
- const defaultValue = value . defaultValue ? value . defaultValue . value : '-'
48
+ : value . type . name
49
+ : ''
50
+ const defaultValue = value . defaultValue
51
+ ? value . defaultValue . value . replace ( 'undefined' , '-' )
52
+ : '-'
53
+ const types = [ ]
54
+ type . split ( ' | ' ) . map ( ( element ) => {
55
+ types . push ( `\`${ element . replace ( / " / g, "'" ) } \`` )
56
+ } )
42
57
43
- content += `| **${ name } ** | ${ description } | \`${ type } \` | ${ defaultValue } |\n`
58
+ // content += `| **${name}** | ${description} | \`${type
59
+ // .replace(/"/g, "'")\` | ${defaultValue} |\n`
60
+ content += `| **${ name } ** | ${ description } | ${ types . join ( ' \\| ' ) } | ${ defaultValue } |\n`
44
61
console . log ( `${ filename } - ${ key } ` )
45
62
}
46
63
}
@@ -63,7 +80,7 @@ async function main() {
63
80
const props = docgen . parse ( file , options )
64
81
if ( props && typeof props [ 0 ] !== 'undefined' ) {
65
82
const filename = path . basename ( file , '.tsx' )
66
- createMdx ( filename , props [ 0 ] . displayName , props [ 0 ] . props )
83
+ createMdx ( file , filename , props [ 0 ] . displayName , props [ 0 ] . props )
67
84
}
68
85
} ) ,
69
86
)
0 commit comments