Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Addresses #1832
Dynamically loads React QR Scanner, React Datepicker with a loading placeholder.
It uses Next.js handling of dynamic loading instead of a state-based solution like we saw with syntax highlighting and MathJax
Screenshots
QR Scanner + loading:

React Datepicker + loading:
datepicker.mov
Also React Syntax Highlighter + loading:
rsh.loading.mov
Additional Context
MathJax is not being considered for a loading placeholder for the fact that it's a plugin and not a component
Checklist
Are your changes backwards compatible? Please answer below:
Yes
On a scale of 1-10 how well and how have you QA'd this change and any features it might affect? Please answer below:
7, modules gets lazy loaded correctly, code blocks have a slight padding shift
For frontend changes: Tested on mobile, light and dark mode? Please answer below:
n/a
Did you introduce any new environment variables? If so, call them out explicitly here:
No
Bundle Analyzing
Before #1909 and #1910

After

After this PR

7.31 MB to 6.53 MB _app stat size
3.12 to 2.77 _app parsed size
Throughout these PRs we can observe a total reduction from 1.71 MB to 990 kB, accumulating a 43% total reduction of the bundle that gets shipped to stackers.
^The latest changes have a 114 kB reduction