@@ -4,23 +4,28 @@ export default function vitePluginRscCore(): Plugin[] {
44 return [
55 {
66 name : 'rsc:patch-react-server-dom-webpack' ,
7- transform ( originalCode , _id , _options ) {
8- let code = originalCode
9- if ( code . includes ( '__webpack_require__.u' ) ) {
10- // avoid accessing `__webpack_require__` on import side effect
11- // https://github.com/facebook/react/blob/a9bbe34622885ef5667d33236d580fe7321c0d8b/packages/react-server-dom-webpack/src/client/ReactFlightClientConfigBundlerWebpackBrowser.js#L16-L17
12- code = code . replaceAll ( '__webpack_require__.u' , '({}).u' )
13- }
7+ transform : {
8+ handler ( originalCode , _id , _options ) {
9+ let code = originalCode
10+ if ( code . includes ( '__webpack_require__.u' ) ) {
11+ // avoid accessing `__webpack_require__` on import side effect
12+ // https://github.com/facebook/react/blob/a9bbe34622885ef5667d33236d580fe7321c0d8b/packages/react-server-dom-webpack/src/client/ReactFlightClientConfigBundlerWebpackBrowser.js#L16-L17
13+ code = code . replaceAll ( '__webpack_require__.u' , '({}).u' )
14+ }
1415
15- // the existance of `__webpack_require__` global can break some packages
16- // https://github.com/TooTallNate/node-bindings/blob/c8033dcfc04c34397384e23f7399a30e6c13830d/bindings.js#L90-L94
17- if ( code . includes ( '__webpack_require__' ) ) {
18- code = code . replaceAll ( '__webpack_require__' , '__vite_rsc_require__' )
19- }
16+ // the existance of `__webpack_require__` global can break some packages
17+ // https://github.com/TooTallNate/node-bindings/blob/c8033dcfc04c34397384e23f7399a30e6c13830d/bindings.js#L90-L94
18+ if ( code . includes ( '__webpack_require__' ) ) {
19+ code = code . replaceAll (
20+ '__webpack_require__' ,
21+ '__vite_rsc_require__' ,
22+ )
23+ }
2024
21- if ( code !== originalCode ) {
22- return { code, map : null }
23- }
25+ if ( code !== originalCode ) {
26+ return { code, map : null }
27+ }
28+ } ,
2429 } ,
2530 } ,
2631 {
0 commit comments