File tree Expand file tree Collapse file tree 5 files changed +68
-13
lines changed
federated-css-react-ssr/shell-apps
jss-styled-components-css-module/src Expand file tree Collapse file tree 5 files changed +68
-13
lines changed Original file line number Diff line number Diff line change 1
- import LoaderContext1 from 'expose_css/LoaderContext' ;
1
+ // Avoid requiring remote LoaderContext during SSR startup.
2
+ // On the server, provide a passthrough provider; on the client, use remote providers.
3
+ let providers ;
4
+ if ( typeof window !== 'undefined' ) {
5
+ // eslint-disable-next-line global-require
6
+ const LoaderContext1 = require ( 'expose_css/LoaderContext' ) ;
7
+ providers = [ LoaderContext1 . StyleContext . Provider ] ;
8
+ } else {
9
+ // eslint-disable-next-line global-require
10
+ const React = require ( 'react' ) ;
11
+ const Passthrough = ( { children } ) => React . createElement ( React . Fragment , null , children ) ;
12
+ providers = [ Passthrough ] ;
13
+ }
2
14
3
- export default [ LoaderContext1 . StyleContext . Provider ] ;
15
+ export default providers ;
Original file line number Diff line number Diff line change 1
- import LoaderContext1 from 'expose_css/LoaderContext' ;
2
- import LoaderContext2 from 'expose_scss/LoaderContext' ;
1
+ let providers ;
2
+ if ( typeof window !== 'undefined' ) {
3
+ // eslint-disable-next-line global-require
4
+ const LoaderContext1 = require ( 'expose_css/LoaderContext' ) ;
5
+ // eslint-disable-next-line global-require
6
+ const LoaderContext2 = require ( 'expose_scss/LoaderContext' ) ;
7
+ providers = [ LoaderContext1 . StyleContext . Provider , LoaderContext2 . StyleContext . Provider ] ;
8
+ } else {
9
+ // eslint-disable-next-line global-require
10
+ const React = require ( 'react' ) ;
11
+ const Passthrough = ( { children } ) => React . createElement ( React . Fragment , null , children ) ;
12
+ providers = [ Passthrough ] ;
13
+ }
3
14
4
- export default [ LoaderContext1 . StyleContext . Provider , LoaderContext2 . StyleContext . Provider ] ;
15
+ export default providers ;
Original file line number Diff line number Diff line change 1
- import LoaderContext1 from 'expose_css_module/LoaderContext' ;
1
+ let providers ;
2
+ if ( typeof window !== 'undefined' ) {
3
+ // eslint-disable-next-line global-require
4
+ const LoaderContext1 = require ( 'expose_css_module/LoaderContext' ) ;
5
+ providers = [ LoaderContext1 . StyleContext . Provider ] ;
6
+ } else {
7
+ // eslint-disable-next-line global-require
8
+ const React = require ( 'react' ) ;
9
+ const Passthrough = ( { children } ) => React . createElement ( React . Fragment , null , children ) ;
10
+ providers = [ Passthrough ] ;
11
+ }
2
12
3
- export default [ LoaderContext1 . StyleContext . Provider ] ;
13
+ export default providers ;
Original file line number Diff line number Diff line change 1
- import LoaderContext1 from 'expose_less/LoaderContext' ;
2
- import LoaderContext2 from 'expose_scss/LoaderContext' ;
1
+ let providers ;
2
+ if ( typeof window !== 'undefined' ) {
3
+ // eslint-disable-next-line global-require
4
+ const LoaderContext1 = require ( 'expose_less/LoaderContext' ) ;
5
+ // eslint-disable-next-line global-require
6
+ const LoaderContext2 = require ( 'expose_scss/LoaderContext' ) ;
7
+ providers = [ LoaderContext1 . StyleContext . Provider , LoaderContext2 . StyleContext . Provider ] ;
8
+ } else {
9
+ // eslint-disable-next-line global-require
10
+ const React = require ( 'react' ) ;
11
+ const Passthrough = ( { children } ) => React . createElement ( React . Fragment , null , children ) ;
12
+ providers = [ Passthrough ] ;
13
+ }
3
14
4
- export default [ LoaderContext1 . StyleContext . Provider , LoaderContext2 . StyleContext . Provider ] ;
15
+ export default providers ;
Original file line number Diff line number Diff line change 1
- import LoaderContext1 from 'expose_tailwind_css/LoaderContext' ;
2
- import LoaderContext2 from 'expose_scss/LoaderContext' ;
1
+ let providers ;
2
+ if ( typeof window !== 'undefined' ) {
3
+ // eslint-disable-next-line global-require
4
+ const LoaderContext1 = require ( 'expose_tailwind_css/LoaderContext' ) ;
5
+ // eslint-disable-next-line global-require
6
+ const LoaderContext2 = require ( 'expose_scss/LoaderContext' ) ;
7
+ providers = [ LoaderContext1 . StyleContext . Provider , LoaderContext2 . StyleContext . Provider ] ;
8
+ } else {
9
+ // eslint-disable-next-line global-require
10
+ const React = require ( 'react' ) ;
11
+ const Passthrough = ( { children } ) => React . createElement ( React . Fragment , null , children ) ;
12
+ providers = [ Passthrough ] ;
13
+ }
3
14
4
- export default [ LoaderContext1 . StyleContext . Provider , LoaderContext2 . StyleContext . Provider ] ;
15
+ export default providers ;
You can’t perform that action at this time.
0 commit comments