Which tool produces the report? https://jshint.com/ only complains about 16 undefined variables once New JavaScript features (ES6) is enabled and running a local jshint install what I assumed was the repo .jshintrc did not produce said error.
In testing, the code works as expected. Yes that would be needed, moving the case to the bottom may remove the need for it, assuming there was a viable reason to do so.
I'm using ESlint, as are I believe a few of the other developers. Hopefully someone else with it enabled can verify that it's not just something on my end.
I'd assumed as much (in that removing it would break the code), but I can't for the life of me figure out why ESlint thinks it's unreachable. Let me try to reload my editor and see if that fixes it.
Looking at the code, I can confirm that the break; is never reached. Whenever you enter that specific case, you always return before you reach the break. However, I don't see a good reason to remove it. It's dangerously easy to change the code so that the break is required while forgetting that it was removed.