Skip to content

deprecate SourcegraphWebApp class component in favor of adjacent function component

Warren Gifford requested to merge sqs/webapp-component-hooks into main

Created by: sqs

DRAFT

Class components are being deprecated in React in favor of function components using hooks. Using hooks allows for greater composition and less complexity, and it will also make server-side rendering possible.

Reviewers: I didn't make an attempt to factor out all of the behaviors in the SourcegraphWebApp class component to a separate hook (as in #24227 for theming). I also didn't add any tests yet. I'd love your advice on the best way to go about this refactor before investing more effort here (and if you feel that the general integration tests have good enough coverage so that this otherwise good refactor shouldn't block on a bunch more unit test coverage).

(I'm doing this because it will help with server-side rendering, which is my current fun hack project. :)

Merge request reports

Loading