https://linear.app/comm/issue/ENG-10190/qr-code-flashes-when-opening-qr-sign-in-screen-on-web
The flickering is caused by qrCodeURL being undefined at first and when undefined is passed to <QRCodeSVG component it shows a qr code for the string "undefined". Soon after this qrCodeURL is a correct url and qr code is correct.
We can't easily avoid qrCodeURL being undefined before it's calculated so I've added a loading indicator instead.
Before:
After:
Loading indicator itself: