message: Reactor: Change `messages` format to per-module output
diff: import { MessagesExportType } from './flowtypes';
  -export const warnings: Object = {
  - providers: {
  +export const providers = {
  + warnings: {
  etherscan: {
  token:
  "You are using the Etherscan provider without an API key. This may limit the number of requests you're allowed to make. You can generate a new API key here: https://etherscan.io/myapikey",
  @@ -18,26 +18,7 @@ export const warnings: Object = {
  'The Metamask in-page provider is not available. Make sure that the Metamask extension is installed and enabled in your browser: https://chrome.google.com/webstore/detail/metamask/nkbihfbeogaeaoehlefnkodbefgpgknn',
  },
  },
  - utils: {
  - getRandomValues: {
  - nodeCryptoFallback:
  - "Your browser doesn't have the `webcrypto` API implemented, falling back to the `cryto` library provided by `node`",
  - },
  - },
  - softwareWallet: {
  - Class: {
  - noProvider:
  - "You did not set a provider. While this is not required for wallet creation, it's highly recommended as it will easier to use later. If you do not need a custom provider, just remove the argument and it will auto-select the first one available.",
  - noEntrophy:
  - "You did not provide entrophy to help with randomness when generating the wallet. While this can be omitted, it's highly recommended. You could omiy this argument and it will provide it for you automatically",
  - noPassword:
  - 'You did not provide a password for encryption. This can be added at a later stage using the `keystore` property setter',
  - },
  - },
  -};
  -
  -export const errors: Object = {
  - providers: {
  + errors: {
  etherscan: {
  connect:
  'Etherscan provider failed to connect. Please verify the provided network name (%s) and api key (%s). %s',
  @@ -61,7 +42,16 @@ export const errors: Object = {
  'No provider could be selected. This most likely happens when all providers in the selection pool fail to connect. Check the error messages leading up to this.',
  },
  },
  - utils: {
  +};
  +
  +export const utils = {
  + warnings: {
  + getRandomValues: {
  + nodeCryptoFallback:
  + "Your browser doesn't have the `webcrypto` API implemented, falling back to the `cryto` library provided by `node`",
  + },
  + },
  + errors: {
  getRandomValues: {
  wrongArgumentType:
  'Expected the argument to be an instance of an Uint8Array typed array.',
  @@ -69,7 +59,20 @@ export const errors: Object = {
  'Could not find any `crypto` libraries. Cannot proceed further as we cannot generate randomness',
  },
  },
  - softwareWallet: {
  +};
  +
  +export const softwareWallet = {
  + warnings: {
  + Class: {
  + noProvider:
  + "You did not set a provider. While this is not required for wallet creation, it's highly recommended as it will easier to use later. If you do not need a custom provider, just remove the argument and it will auto-select the first one available.",
  + noEntrophy:
  + "You did not provide entrophy to help with randomness when generating the wallet. While this can be omitted, it's highly recommended. You could omiy this argument and it will provide it for you automatically",
  + noPassword:
  + 'You did not provide a password for encryption. This can be added at a later stage using the `keystore` property setter',
  + },
  + },
  + errors: {
  Class: {
  create:
  'There was an error in creating the wallet, check the provider (%s) and entropy (%s) arguments. We reverted back and generated a wallet with the only defaults. Be careful when using it. %s',
  @@ -88,8 +91,9 @@ export const errors: Object = {
  };
  const messages: MessagesExportType = {
  - warnings,
  - errors,
  + providers,
  + utils,
  + softwareWallet,
  };
  export default messages;
  