1
1
import { builtinModules , createRequire } from 'node:module'
2
2
import path from 'node:path'
3
3
4
- import commonjs from '@rollup/plugin-commonjs'
5
- import json from '@rollup/plugin-json'
4
+ import commonjsPlugin from '@rollup/plugin-commonjs'
5
+ import jsonPlugin from '@rollup/plugin-json'
6
6
import { nodeResolve } from '@rollup/plugin-node-resolve'
7
- import replace from '@rollup/plugin-replace'
7
+ import replacePlugin from '@rollup/plugin-replace'
8
8
import { readPackageUpSync } from 'read-package-up'
9
9
import rangesIntersect from 'semver/ranges/intersects.js'
10
10
import { purgePolyfills } from 'unplugin-purge-polyfills'
@@ -43,7 +43,7 @@ const {
43
43
44
44
const require = createRequire ( import . meta. url )
45
45
46
- const ts = require ( 'rollup-plugin-ts' )
46
+ const tsPlugin = require ( 'rollup-plugin-ts' )
47
47
48
48
const rootPackageJson = require ( rootPackageJsonPath )
49
49
const {
@@ -78,9 +78,10 @@ const checkSocketInteropUseRegExp = new RegExp(`\\b${SOCKET_INTEROP}\\b`)
78
78
const danglingRequiresRegExp = / ^ \s * r e q u i r e \( [ " ' ] .+ ?[ " ' ] \) ; ? \r ? \n / gm
79
79
const firstUseStrictRegExp = / ' u s e s t r i c t ' ; ? /
80
80
const oraSpinnersAssignmentsRegExp = / (?< = o r a [ ^ . ] + \. s p i n n e r s \s * = \s * ) [ $ \w ] + / g
81
+ const requireTinyColorsRegExp = / r e q u i r e \( [ " ' ] t i n y - c o l o r s [ " ' ] \) / g
81
82
const requireUrlAssignmentRegExp =
82
83
/ (?< = v a r + ) [ $ \w ] + (? = * = * r e q u i r e \( ' n o d e : u r l ' \) ) /
83
- const splitUrlRequiresRegExp = / r e q u i r e \( ' u ' \+ ' r l ' \) / g
84
+ const splitUrlRequiresRegExp = / r e q u i r e \( [ " ' ] u [ " ' ] \s * \+ \s * [ " ' ] r l [ " ' ] \) / g
84
85
85
86
function isAncestorsExternal ( id , depStats ) {
86
87
let currNmIndex = id . indexOf ( SLASH_NODE_MODULES_SLASH )
@@ -207,8 +208,8 @@ export default function baseConfig(extendConfig = {}) {
207
208
...extendConfig ,
208
209
plugins : [
209
210
customResolver ,
210
- json ( ) ,
211
- ts ( {
211
+ jsonPlugin ( ) ,
212
+ tsPlugin ( {
212
213
transpiler : 'babel' ,
213
214
browserslist : false ,
214
215
transpileOnly : true ,
@@ -219,12 +220,22 @@ export default function baseConfig(extendConfig = {}) {
219
220
purgePolyfills . rollup ( {
220
221
replacements : { }
221
222
} ) ,
223
+ replacePlugin ( {
224
+ delimiters : [ '(?<=(?:require\\(|from\\s*)["\'])' , '(?=["\'])' ] ,
225
+ preventAssignment : false ,
226
+ values : builtinAliases
227
+ } ) ,
222
228
// Convert un-prefixed built-in imports into "node:"" prefixed forms.
223
- replace ( {
229
+ replacePlugin ( {
224
230
delimiters : [ '(?<=(?:require\\(|from\\s*)["\'])' , '(?=["\'])' ] ,
225
231
preventAssignment : false ,
226
232
values : builtinAliases
227
233
} ) ,
234
+ // Replace ESM package require('tiny-colors') with CJS package require('yoctocolors-cjs').
235
+ socketModifyPlugin ( {
236
+ find : requireTinyColorsRegExp ,
237
+ replace : "require('yoctocolors-cjs')"
238
+ } ) ,
228
239
// Try to convert `require('u' + 'rl')` into something like `require$$2$3`.
229
240
socketModifyPlugin ( {
230
241
find : splitUrlRequiresRegExp ,
@@ -253,7 +264,7 @@ export default function baseConfig(extendConfig = {}) {
253
264
)
254
265
}
255
266
} ) ,
256
- commonjs ( {
267
+ commonjsPlugin ( {
257
268
defaultIsModuleExports : true ,
258
269
extensions : [ '.cjs' , '.js' , '.ts' , `.ts${ ROLLUP_ENTRY_SUFFIX } ` ] ,
259
270
ignoreDynamicRequires : true ,
@@ -311,7 +322,7 @@ function ${SOCKET_INTEROP}(e) {
311
322
312
323
// Replace hard-coded absolute paths in source with hard-coded relative paths.
313
324
const replaceAbsPathsOutputPlugin = ( ( ) => {
314
- const { name, renderChunk } = replace ( {
325
+ const { name, renderChunk } = replacePlugin ( {
315
326
delimiters : [ '(?<=["\'])' , '/' ] ,
316
327
preventAssignment : false ,
317
328
values : {
0 commit comments