dec0dOS/zero-ui

chore: upgrade to React 18

davidlag0 opened this issue · 0 comments

@dec0dOS
This is an issue to help track the progress of the upgrade to React 18.

I first upgrade all packages directly related to React: react, react-data-table-component, react-dom, react-is, react-router-dom and react-scripts. I then had to update some other code in relation to useHistory() and Redirect. ReactDOM.render also had to be changed with the new way of React 18. After having done this, I found out there was an issue with CodeMirror and I'm currently working to resolve the issues with it. It isn't obvious at all to find the color equivalent for the theme because it doesn't exist in CodeMirror 6 so I had to build a custom theme and try to replicate it. If there is a theme part of the ones that exist in CodeMirror 6, it could help simplify the code a bit to take an existing theme, as you did before with 3024-day that existed with CodeMirror 5.

I'm thinking it would be easier to catch issues if we would first have automated unit tests so I'm working on this in parallel too but I end up going through the upgrade to React 18 with less issues than with enabling unit testing with Jest. I'm still thinking having unit tests first would provide more confidence to upgrade to React 18 and avoid breaking anything.