diff options
| author | AAGaming <aagaming@riseup.net> | 2025-10-15 00:14:50 -0400 |
|---|---|---|
| committer | AAGaming <aagaming@riseup.net> | 2025-10-15 00:14:50 -0400 |
| commit | 0c56f1b689428758a16b34a1844b60131282aa36 (patch) | |
| tree | 192a771128b7142d21275a1231e81fa72b1c220f /frontend/src/index.ts | |
| parent | 86b5567d4eac84399245c9a71270d6142ee54ded (diff) | |
| download | decky-loader-0c56f1b689428758a16b34a1844b60131282aa36.tar.gz decky-loader-0c56f1b689428758a16b34a1844b60131282aa36.zip | |
react 19 support
Diffstat (limited to 'frontend/src/index.ts')
| -rw-r--r-- | frontend/src/index.ts | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/frontend/src/index.ts b/frontend/src/index.ts index 2ee018e0..4d271e53 100644 --- a/frontend/src/index.ts +++ b/frontend/src/index.ts @@ -21,7 +21,19 @@ interface Window { // deliberate partial import const DFLWebpack = await import('@decky/ui/dist/webpack'); window.SP_REACT = DFLWebpack.findModule((m) => m.Component && m.PureComponent && m.useLayoutEffect); - window.SP_REACTDOM = DFLWebpack.findModule((m) => m.createPortal && m.createRoot); + window.SP_REACTDOM = + DFLWebpack.findModule((m) => m.createPortal && m.createRoot) || + DFLWebpack.findModule((m) => m.createPortal && m.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE); + + console.debug('[Decky:Boot] Setting up JSX internals...'); + const jsx = DFLWebpack.findModule((m) => m.jsx && Object.keys(m).length == 1)?.jsx; + if (jsx) { + window.SP_JSX = { + jsx, + jsxs: jsx, + Fragment: window.SP_REACT.Fragment, + }; + } } console.debug('[Decky:Boot] Setting up @decky/ui...'); window.DFL = await import('@decky/ui'); |
