@@ -49,7 +49,6 @@ const createSuirCJSTransform = (env = 'commonjs') => [
49
49
} else {
50
50
throw new Error ( `File with importName ${ importName } does not exist` ) ;
51
51
}
52
-
53
52
res = res . replace ( path . resolve ( __dirname , '../../node_modules/' ) , '' ) ;
54
53
res = res . replace ( / ^ \/ / , '' ) ;
55
54
return res ;
@@ -61,204 +60,105 @@ const createSuirCJSTransform = (env = 'commonjs') => [
61
60
`semantic-ui-react-${ env } `
62
61
] ;
63
62
64
- const createMuiLabTransform = ( env ) => [
63
+ const createMuiTransform = ( env ) => [
65
64
'transform-imports' ,
66
65
{
67
66
'@material-ui/lab' : {
68
67
transform : ( importName ) => ( env ? `@material-ui/lab/${ env } /${ importName } ` : `@material-ui/lab/${ importName } ` ) ,
69
68
preventFullImport : false ,
70
69
skipDefaultConversion : false
70
+ } ,
71
+ '@material-ui/core' : {
72
+ transform : ( importName ) => env ? `@material-ui/core/${ env } /${ importName } ` : `@material-ui/core/${ importName } ` ,
73
+ preventFullImport : false ,
74
+ skipDefaultConversion : false
71
75
}
72
76
} ,
73
- `MUI-LAB- ${ env || 'CJS ' } `
77
+ `MUI-${ env || 'commonjs ' } `
74
78
] ;
75
79
80
+ const createPfReactTransform = ( env ) => [
81
+ 'transform-imports' ,
82
+ {
83
+ '@patternfly/react-core' : {
84
+ transform : ( importName ) => {
85
+ let res ;
86
+ const files = glob . sync (
87
+ path . resolve ( __dirname , `../../node_modules/@patternfly/react-core/dist/${ env } /**/${ mapper [ importName ] || importName } .js` )
88
+ ) ;
89
+ if ( files . length > 0 ) {
90
+ res = files [ 0 ] ;
91
+ } else {
92
+ throw new Error ( `File with importName ${ importName } does not exist` ) ;
93
+ }
94
+
95
+ res = res . replace ( path . resolve ( __dirname , '../../node_modules/' ) , '' ) ;
96
+ res = res . replace ( / ^ \/ / , '' ) ;
97
+ return res ;
98
+ } ,
99
+ preventFullImport : false ,
100
+ skipDefaultConversion : true
101
+ } ,
102
+ '@patternfly/react-icons' : {
103
+ transform : ( importName ) =>
104
+ `@patternfly/react-icons/dist/${ env } /icons/${ importName
105
+ . split ( / (? = [ A - Z ] ) / )
106
+ . join ( '-' )
107
+ . toLowerCase ( ) } `,
108
+ preventFullImport : true
109
+ } ,
110
+ 'patternfly-react' : {
111
+ transform : ( importName ) => {
112
+ let res ;
113
+ const files = glob . sync ( path . resolve ( __dirname , `../../node_modules/patternfly-react/dist/${ env } /**/${ importName } .js` ) ) ;
114
+ if ( files . length > 0 ) {
115
+ res = files [ 0 ] ;
116
+ } else {
117
+ throw new Error ( `File with importName ${ importName } does not exist` ) ;
118
+ }
119
+
120
+ res = res . replace ( path . resolve ( __dirname , '../../node_modules/' ) , '' ) ;
121
+ res = res . replace ( / ^ \/ / , '' ) ;
122
+ return res ;
123
+ } ,
124
+ preventFullImport : false ,
125
+ skipDefaultConversion : false
126
+ }
127
+ } ,
128
+ `pf-react-${ env } `
129
+ ]
130
+
131
+ const createBluePrintTransform = ( env ) => [
132
+ 'transform-imports' ,
133
+ {
134
+ '@blueprintjs/core' : {
135
+ transform : ( importName ) =>
136
+ `@blueprintjs/core/lib/${ env } /${ blueprintMapper [ importName ] ||
137
+ `components/${ pascalToKebabCase ( importName ) } /${ pascaltoCamelCase ( importName ) } ` } .js`,
138
+ preventFullImport : false ,
139
+ skipDefaultConversion : true
140
+ }
141
+ } ,
142
+ `BLUEPRINT-${ env } `
143
+ ]
144
+
76
145
module . exports = {
77
146
extends : '../../babel.config.js' ,
78
147
env : {
79
148
cjs : {
80
149
plugins : [
81
150
createSuirCJSTransform ( 'commonjs' ) ,
82
- createMuiLabTransform ( ) ,
83
- [
84
- 'transform-imports' ,
85
- {
86
- '@patternfly/react-core' : {
87
- transform : ( importName ) => {
88
- let res ;
89
- const files = glob . sync (
90
- path . resolve ( __dirname , `../../node_modules/@patternfly/react-core/dist/js/**/${ mapper [ importName ] || importName } .js` )
91
- ) ;
92
- if ( files . length > 0 ) {
93
- res = files [ 0 ] ;
94
- } else {
95
- throw new Error ( `File with importName ${ importName } does not exist` ) ;
96
- }
97
-
98
- res = res . replace ( path . resolve ( __dirname , '../../node_modules/' ) , '' ) ;
99
- res = res . replace ( / ^ \/ / , '' ) ;
100
- return res ;
101
- } ,
102
- preventFullImport : false ,
103
- skipDefaultConversion : true
104
- }
105
- } ,
106
- 'react-core-CJS'
107
- ] ,
108
- [
109
- 'transform-imports' ,
110
- {
111
- '@patternfly/react-icons' : {
112
- transform : ( importName ) =>
113
- `@patternfly/react-icons/dist/js/icons/${ importName
114
- . split ( / (? = [ A - Z ] ) / )
115
- . join ( '-' )
116
- . toLowerCase ( ) } `,
117
- preventFullImport : true
118
- }
119
- } ,
120
- 'react-icons-CJS'
121
- ] ,
122
- [
123
- 'transform-imports' ,
124
- {
125
- 'patternfly-react' : {
126
- transform : ( importName ) => {
127
- let res ;
128
- const files = glob . sync ( path . resolve ( __dirname , `../../node_modules/patternfly-react/dist/js/**/${ importName } .js` ) ) ;
129
- if ( files . length > 0 ) {
130
- res = files [ 0 ] ;
131
- } else {
132
- throw new Error ( `File with importName ${ importName } does not exist` ) ;
133
- }
134
-
135
- res = res . replace ( path . resolve ( __dirname , '../../node_modules/' ) , '' ) ;
136
- res = res . replace ( / ^ \/ / , '' ) ;
137
- return res ;
138
- } ,
139
- preventFullImport : false ,
140
- skipDefaultConversion : false
141
- }
142
- } ,
143
- 'pf3-react-CJS'
144
- ] ,
145
- [
146
- 'transform-imports' ,
147
- {
148
- '@material-ui/core' : {
149
- transform : ( importName ) => `@material-ui/core/${ importName } ` ,
150
- preventFullImport : false ,
151
- skipDefaultConversion : false
152
- }
153
- } ,
154
- 'MUI-CJS'
155
- ] ,
156
- [
157
- 'transform-imports' ,
158
- {
159
- '@blueprintjs/core' : {
160
- transform : ( importName ) =>
161
- `@blueprintjs/core/lib/cjs/${ blueprintMapper [ importName ] ||
162
- `components/${ pascalToKebabCase ( importName ) } /${ pascaltoCamelCase ( importName ) } ` } .js`,
163
- preventFullImport : false ,
164
- skipDefaultConversion : true
165
- }
166
- } ,
167
- 'BLUEPRINT-CJS'
168
- ]
151
+ createMuiTransform ( ) ,
152
+ createPfReactTransform ( 'js' ) ,
153
+ createBluePrintTransform ( 'cjs' )
169
154
]
170
155
} ,
171
156
esm : {
172
157
plugins : [
173
158
createSuirCJSTransform ( 'es' ) ,
174
- createMuiLabTransform ( 'esm' ) ,
175
- [
176
- 'transform-imports' ,
177
- {
178
- '@patternfly/react-core' : {
179
- transform : ( importName ) => {
180
- let res ;
181
- const files = glob . sync (
182
- path . resolve ( __dirname , `../../node_modules/@patternfly/react-core/dist/esm/**/${ mapper [ importName ] || importName } .js` )
183
- ) ;
184
- if ( files . length > 0 ) {
185
- res = files [ 0 ] ;
186
- } else {
187
- throw new Error ( `File with importName ${ importName } does not exist` ) ;
188
- }
189
-
190
- res = res . replace ( path . resolve ( __dirname , '../../node_modules/' ) , '' ) ;
191
- res = res . replace ( / ^ \/ / , '' ) ;
192
- return res ;
193
- } ,
194
- preventFullImport : false ,
195
- skipDefaultConversion : true
196
- }
197
- } ,
198
- 'react-core-ESM'
199
- ] ,
200
-
201
- [
202
- 'transform-imports' ,
203
- {
204
- '@patternfly/react-icons' : {
205
- transform : ( importName ) =>
206
- `@patternfly/react-icons/dist/esm/icons/${ importName
207
- . split ( / (? = [ A - Z ] ) / )
208
- . join ( '-' )
209
- . toLowerCase ( ) } `,
210
- preventFullImport : true
211
- }
212
- } ,
213
- 'react-icons-ESM'
214
- ] ,
215
- [
216
- 'transform-imports' ,
217
- {
218
- 'patternfly-react' : {
219
- transform : ( importName ) => {
220
- let res ;
221
- const files = glob . sync ( path . resolve ( __dirname , `../../node_modules/patternfly-react/dist/esm/**/${ importName } .js` ) ) ;
222
- if ( files . length > 0 ) {
223
- res = files [ 0 ] ;
224
- } else {
225
- throw new Error ( `File with importName ${ importName } does not exist` ) ;
226
- }
227
-
228
- res = res . replace ( path . resolve ( __dirname , '../../node_modules/' ) , '' ) ;
229
- res = res . replace ( / ^ \/ / , '' ) ;
230
- return res ;
231
- } ,
232
- preventFullImport : false ,
233
- skipDefaultConversion : false
234
- }
235
- } ,
236
- 'pf3-react-ESM'
237
- ] ,
238
- [
239
- 'transform-imports' ,
240
- {
241
- '@material-ui/core' : {
242
- transform : ( importName ) => `@material-ui/core/esm/${ importName } ` ,
243
- preventFullImport : false ,
244
- skipDefaultConversion : false
245
- }
246
- } ,
247
- 'MUI-ESM'
248
- ] ,
249
- [
250
- 'transform-imports' ,
251
- {
252
- '@blueprintjs/core' : {
253
- transform : ( importName ) =>
254
- `@blueprintjs/core/lib/esm/${ blueprintMapper [ importName ] ||
255
- `components/${ pascalToKebabCase ( importName ) } /${ pascaltoCamelCase ( importName ) } ` } .js`,
256
- preventFullImport : false ,
257
- skipDefaultConversion : true
258
- }
259
- } ,
260
- 'BLUEPRINT-CJS'
261
- ]
159
+ createMuiTransform ( 'esm' ) ,
160
+ createPfReactTransform ( 'esm' ) ,
161
+ createBluePrintTransform ( 'esm' )
262
162
]
263
163
}
264
164
}
0 commit comments