This fixes our recovery key encoding to work with base-x 3.0.5, which requires the
encoding input to be in a `Buffer`. (base-x is a dependency of bs58.)
Unfortunately, base-x hasn't marked this as breaking change through a major
version increment, so semantic versioning can't help us here to ensure we get
particular version.
I have verified that the change to `Buffer` works with both old and new base-x,
so we should be okay no matter what version is actually selected.
For extra fun, base-x 3.0.5 also uses newer JS features, which `uglify-js`
doesn't support. I have migrated to `terser` instead, which is what we're using
for Riot these days (via Webpack).
Fixes https://github.com/vector-im/riot-web/issues/9901
3.0.5 exports ES6 which breaks the build.
Also specifically depending on version 3.0.4 in the package.json
doesn't look like it has the desired effect now (yarn just installs
two separate versions) so remove that.
Most `npm` operations are replaced with `yarn`, which generally has better
behavior. However, steps like publish that write to the NPM registry are left to
`npm`, which currently handles these tasks best.
* Put back babel-eslint for class-properties
* Allow arrow functions without params
This makes the style more consistent with react-sdk.
NB. The line lengths are still inconsistent but it's not clear which
way to go on that yet.
* 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
This avoids API changes in 3.0.5 (requiring `Buffer` instances), but more
importantly also avoids dealing with ES6 in dependencies for another day.
Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>