Steps to reproduce
- Login and visit https://en.m.wikipedia.org/wiki/Barack_Obama on the MinervaNeue mobile site on a small width device. You cannot set the width after visiting.
- Ensure all sections are closed.
- Tap a section to open it.
- View localStorage.expandedSections in DevTools. E.g., "{"Spain":{},"Barack Obama":{"Bibliography":1551912223488},"Al-Mu'tasim":{},"Theophilos (emperor)":{}}".
- Tap a section to close it.
- View localStorage.expandedSections in DevTools.
Expected results
- No entry should exist for the default presentation
Actual results
- Empty entries are persisted. For example: "{"Spain":{},"Barack Obama":{},"Al-Mu'tasim":{},"Theophilos (emperor)":{}}".
Environments observed
- Browser version:
- OS version: Chromium v71.0.3578.98
- Device model: Ubuntu v18.10
- Device language: English
Check any additional observations
- Observed on the beta cluster wiki
- Observed on a production wiki
- Observed on Vector desktop skin
- Observed on MinervaNeue responsive skin
- Observed while logged in
- Observed while not logged in (anonymous)
Acceptance criteria
- It should be impossible for a value {} to be stored inside
JSON.parse(localStorage.expandedSections)
Developer notes
Object.keys() can be used here when removing an entry from the expandSections object. When it's 0 make sure you use delete and remove it from the object.