@@ -10,14 +10,14 @@ import gulp from 'gulp';
1010import glob from 'glob' ;
1111import fs from 'fs-extra' ;
1212import rimraf from 'rimraf' ;
13-
1413import { getProjectPath , getConfig } from './utils/projectHelper' ;
1514import getBabelCommonConfig from './getBabelCommonConfig' ;
1615import getTSCommonConfig from './getTSCommonConfig' ;
1716import replaceLib from './replaceLib' ;
1817import checkDiff from './lint/checkDiff' ;
1918import apiCollection from './apiCollection' ;
2019import sortApiTable from './sortApiTable' ;
20+ import type { ICompileStream } from 'gulp-typescript/release/project' ;
2121
2222const argv = minimist ( process . argv . slice ( 2 ) ) ;
2323
@@ -27,10 +27,12 @@ const packageJson = fs.readJsonSync(getProjectPath('package.json'));
2727
2828const tsDefaultReporter = ts . reporter . defaultReporter ( ) ;
2929const cwd = process . cwd ( ) ;
30- const libDir = getProjectPath ( 'lib' ) ;
30+ const cjsDir = getProjectPath ( 'lib' ) ;
3131const esDir = getProjectPath ( 'es' ) ;
3232const localeDir = getProjectPath ( 'locale' ) ;
3333
34+ const libDir = process . env . LIB_DIR || 'components' ;
35+
3436// FIXME: hard code, not find typescript can modify the path resolution
3537const localeDts = `import type { Locale } from '../lib/locale';
3638declare const localeValues: Locale;
@@ -143,14 +145,14 @@ gulp.task(
143145 } )
144146) ;
145147
146- function babelify ( js , modules ) {
147- const babelConfig = getBabelCommonConfig ( modules ) ;
148+ function babelify ( js : ICompileStream [ 'js' ] , modules : boolean ) {
149+ const babelConfig = getBabelCommonConfig ( modules , { enabledReactCompiler : libDir === 'dist' } ) ;
148150 delete babelConfig . cacheDirectory ;
149151 if ( modules === false ) {
150152 babelConfig . plugins . push ( replaceLib ) ;
151153 }
152154 const stream = js . pipe ( babel ( babelConfig as Parameters < typeof babel > [ 0 ] ) ) ;
153- return stream . pipe ( gulp . dest ( modules === false ? esDir : libDir ) ) ;
155+ return stream . pipe ( gulp . dest ( modules === false ? esDir : cjsDir ) ) ;
154156}
155157
156158function insertUseClient ( ) {
@@ -173,15 +175,15 @@ function insertUseClient() {
173175
174176async function compile ( modules ?: boolean ) {
175177 const { compile : { transformTSFile, transformFile } = { } } = await getConfig ( ) ;
176- rimraf . sync ( modules !== false ? libDir : esDir ) ;
178+ rimraf . sync ( modules !== false ? cjsDir : esDir ) ;
177179
178180 const assets = gulp
179181 . src ( [ 'components/**/*.@(png|svg|json)' ] )
180- . pipe ( gulp . dest ( modules === false ? esDir : libDir ) ) ;
182+ . pipe ( gulp . dest ( modules === false ? esDir : cjsDir ) ) ;
181183 let error = 0 ;
182184
183185 // =============================== FILE ===============================
184- let transformFileStream ;
186+ let transformFileStream : NodeJS . ReadWriteStream ;
185187
186188 if ( transformFile ) {
187189 transformFileStream = gulp
@@ -194,7 +196,7 @@ async function compile(modules?: boolean) {
194196 next ( ) ;
195197 } )
196198 )
197- . pipe ( gulp . dest ( modules === false ? esDir : libDir ) ) ;
199+ . pipe ( gulp . dest ( modules === false ? esDir : cjsDir ) ) ;
198200 }
199201
200202 // ================================ TS ================================
@@ -247,7 +249,7 @@ async function compile(modules?: boolean) {
247249 tsResult . on ( 'finish' , check ) ;
248250 tsResult . on ( 'end' , check ) ;
249251 const tsFilesStream = babelify ( tsResult . js , modules ) ;
250- const tsd = tsResult . dts . pipe ( gulp . dest ( modules === false ? esDir : libDir ) ) ;
252+ const tsd = tsResult . dts . pipe ( gulp . dest ( modules === false ? esDir : cjsDir ) ) ;
251253 return merge2 ( [ tsFilesStream , tsd , assets , transformFileStream ] . filter ( s => s ) ) ;
252254}
253255
0 commit comments