The CSS needs to be redone and made more modular. Measurements should not be done in px, and switched to em/rem.
Redux needs to be setup for state management.
Rewrote mojang.ts to use axios. This included creating a more robust error handling
system and response payload structure. Also included unit tests.
Added axios (HTTP Library to replace request)
Added winston (Logging Framework)
Added mocha (Testing Framework)
Added chai (assertion library)
Added nock (mock server)
The launcher was never intended for use with 1.7.10, however since people
do use it for this version I generated a 1.7.10 distribution with Nebula
and tested it out. Several bugs were identified and fixed.
* Don't prefix modList paths with absolute on 1.7.10.
* Allow library overrides.
Forge 1.7.10 updates mojang's guava version. As such the library
resolver now supports overriding mojang libraries through the
distribution.json.
Fixes#45.
Mojang has changed its manifest format for 1.13.
Forge is no longer a universal jar, it requires more hosted files, all of which are generated by the installer.
We can no longer extract the version manifest from forge's jar and have to include it in the distribution.
This commit adds support for launching forge only, mods are currently not supported from the distribution.
Handling of 1.13 launches are subject to change as we move forward.
If anything happens to the forked process, the main should now pick up on it and alert the user.
Should no longer get 'stuck at 100%' issues when the forked process fails, for whatever reason.
Removed commonDirectory.
Removed instanceDirectory.
Added dataDirectory. The common and instance directories are now resolved from this.
The config.json and distribution.json are now stored in Electron's data folder (app.getPath('userData')).
Users can edit the dataDirectory under launcher settings.