Step 1 - Refactor table of contents into Vue
Description
This MR refactors the Table of Contents handling into Vue. As a result it also:
- Fixes malformed HTML which had
<hr>
and<h4>
inside a<ul>
- Fixes bug when collapsing on mobile it collapsed in full view with no way to uncollapse
Screenshots
- Table of Contents links are highlighted when scrolled into view
- Table of Contents is kept in view when scrolled to the bottom (see
stick_to_footer
directive) - On small screens, the Table of Contents is collapsed by default (previously there was a bug where this depended on the starting width of the window)
- When the Table of Contents is collapsed in mobile it is still displayed on larger displays (previously there was a bug where collapsing on mobile caused it to hide for larger displays as well)
- The collapsing is consistent (previously there was a bug where the use sometimes had to double tap to collapse)
References
- Part of #666 (closed)
- Original approach !819 (closed)
Edited by Paul Slaughter