The bulk of this is just export/import changes, though there's a couple pieces to highlight:
* We no longer use default exports. This is because it's discouraged by the JS community, though not in any official capacity.
* We now use `polyfillSuper` for some prototype inheritance because the tests, and sometimes webpack, break on "cannot call EncryptionAlgorithm without 'new'". It's very much a workaround, and definitely not needed when we use real classes.
There is some import shuffling to help keep the imports clean - this was done by my IDE.
Fixes https://github.com/vector-im/riot-web/issues/11460
Empty strings are falsey, and the state key match for a tombstone event is an empty string. Ergo, nothing happens because all the conditions fail.
* Bump version
* Add a couple of rules to match our existing precedent
* Fix a few genuine lint errors
* Ignore a guard-for-in (not sure why eslint doesn't like this?)
* Update max warnings
* fix displayname=undefined being disambiguated and strip Zero Width chars
* also strip diaritics and whitespace
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* check whether notif level is undefined, because `0` is falsey and it failed
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* improve number check for all m.room.power_levels related stuffs
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Remove some we don't care about. Set some other ones we do care
about but don't currently adhere to to warn. Set the max warnings
threshold to the current number of warnings, so we don't introduce
more of them. Fix a bunch of legit lint errors and add exceptions
to various places in the test code that does funny things with
'this'.