diff --git a/.eslintrc.js b/.eslintrc.js
index b116b8d..dc9ffcb 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -30,6 +30,30 @@ module.exports = {
"react/destructuring-assignment": "off", // to allow `props.whateverProp`
"arrow-body-style": ["error", "as-needed"],
"no-console": "error",
+ "no-plusplus": "off",
+ "no-await-in-loop": "off",
+ camelcase: [
+ "error",
+ {
+ allow: [
+ "chain_stats",
+ "funded_txo_count",
+ "funded_txo_sum",
+ "spent_txo_count",
+ "spent_txo_sum",
+ "tx_count",
+ "mempool_stats",
+ "block_height",
+ "block_hash",
+ "block_time",
+ "scriptpubkey_asm",
+ "scriptpubkey_type",
+ "scriptpubkey_address",
+ "scriptsig_asm",
+ "is_coinbase",
+ ],
+ },
+ ],
"import/no-extraneous-dependencies": "off",
"react/display-name": "error",
"react-hooks/rules-of-hooks": "error",
diff --git a/.github/action/README.md b/.github/action/README.md
index 4949dd9..bbfe73b 100644
--- a/.github/action/README.md
+++ b/.github/action/README.md
@@ -77,20 +77,3 @@ To compile the bundle, run
```bash
NODE_ENV=production npm run build-action
```
-
-## Building an executable locally
-
-If you need to build an executable locally for your operating system, you can
-run the command
-
-```bash
-npm run create-executable
-```
-
-This command will run the script
-[`.github/action/createExecutable.ts`](../action/createExecutable.ts), which
-will generate an executable targeted to your operating system. You will find the
-executable at `artifacts/electronPackager`.
-
-`createExecutable.ts` can run on a local development environment in addition to
-running on a GitHub Action machine.
diff --git a/.github/action/action.ts b/.github/action/action.ts
index 567d38d..73e7925 100644
--- a/.github/action/action.ts
+++ b/.github/action/action.ts
@@ -1,6 +1,5 @@
import * as core from "@actions/core";
import bluebird from "bluebird";
-import { createExecutable } from "./createExecutable";
import { execWithErrorMessage } from "./utils";
import { draftRelease } from "./draftRelease";
@@ -13,10 +12,6 @@ const action = async () => {
const task = core.getInput("task");
- if (task === "create-executable") {
- return await createExecutable();
- }
-
if (task === "draft-release") {
return await draftRelease();
}
diff --git a/.github/action/createExecutable.ts b/.github/action/createExecutable.ts
deleted file mode 100644
index 0459b59..0000000
--- a/.github/action/createExecutable.ts
+++ /dev/null
@@ -1,111 +0,0 @@
-/**
- * This file must be runnable on both the local development environment and
- * on GitHub Actions
- */
-/* eslint-disable no-console */
-import * as core from "@actions/core";
-import * as artifact from "@actions/artifact";
-import fs from "fs-extra";
-import packager from "electron-packager";
-import archiver from "archiver";
-import { basename } from "path";
-import * as electronInstaller from "electron-winstaller";
-import bluebird from "bluebird";
-import { getAppVersion } from "./getAppVersion";
-import { execWithErrorMessage } from "./utils";
-import pkgJson from "../../package.json";
-import { isOnGithubActions } from "./isOnGithubActions";
-
-const artifactClient = artifact.create();
-const appVersion = getAppVersion();
-const electronPackagerArtifactDir = "artifacts/electronPackager";
-
-const { productName } = pkgJson;
-
-export const platformDefinitions = {
- darwin: {
- archiveName: `${productName}-v${appVersion}-macOS.zip`,
- },
- linux: {
- archiveName: `${productName}-v${appVersion}-Linux.zip`,
- },
- win32: {
- archiveName: `${productName}-v${appVersion}-Windows.exe`,
- },
-};
-
-export const createExecutable = async () => {
- console.log("Building source code...");
- await execWithErrorMessage("npm run build", "`npm run build` failed");
-
- const os = process.platform;
-
- if (os !== "win32" && os !== "linux" && os !== "darwin") {
- throw new Error("This platform is not supported");
- }
-
- const { archiveName } = platformDefinitions[os];
-
- console.log(`Creating Electron package on ${os}...`);
- await packager({
- arch: "x64",
- dir: "artifacts/webpack",
- out: electronPackagerArtifactDir,
- icon: "src/assets/orange",
- overwrite: true,
- platform: os,
- prune: false,
- appVersion: getAppVersion(),
- });
-
- if (os === "darwin") {
- console.log("Compressing Electron package...");
- await new Promise(resolve_ => {
- const archive = archiver("zip", { zlib: { level: 9 } });
- const output = fs.createWriteStream(
- `${electronPackagerArtifactDir}/${archiveName}`,
- );
- archive.pipe(output);
- archive.directory(
- `${electronPackagerArtifactDir}/${productName}-${os}-x64/`,
- false,
- );
- output.on("close", resolve_);
- archive.on("error", error => {
- console.error(error);
- core.setFailed(`Could not create a zip archive on ${os}`);
- });
- archive.finalize();
- });
- } else if (os === "win32") {
- console.log(`Creating ${archiveName}...`);
- await electronInstaller.createWindowsInstaller({
- appDirectory: `${electronPackagerArtifactDir}/${productName}-${os}-x64`,
- outputDirectory: electronPackagerArtifactDir,
- authors: "https://github.com/orange-org",
- exe: `${productName}.exe`,
- setupExe: archiveName,
- version: appVersion,
- name: productName,
- title: productName,
- iconUrl:
- "https://raw.githubusercontent.com/orange-org/orange/master/src/assets/orange.ico",
- setupIcon: "src/assets/orange.ico",
- });
- }
-
- if (isOnGithubActions) {
- console.log(`Uploading ${archiveName}...`);
- await artifactClient.uploadArtifact(
- basename(archiveName),
- [`${electronPackagerArtifactDir}/${archiveName}`],
- electronPackagerArtifactDir,
- );
- }
-
- console.log("Done.");
-};
-
-if (process.env.createExecutable === "true") {
- bluebird.try(createExecutable).catch(console.error);
-}
diff --git a/.gitignore b/.gitignore
index 273796c..6f04796 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
coverage
node_modules
artifacts
+*.css.d.ts
diff --git a/.nonce b/.nonce
deleted file mode 100644
index d3588f7..0000000
--- a/.nonce
+++ /dev/null
@@ -1 +0,0 @@
-wpaPuJBc3ZIPeUExhoEfrcyW
diff --git a/.prettierrc.json b/.prettierrc.json
index 85df619..a98822a 100644
--- a/.prettierrc.json
+++ b/.prettierrc.json
@@ -25,7 +25,7 @@
"files": "*.md",
"options": {
"proseWrap": "always",
- "printWidth": 80
+ "printWidth": 50
}
}
]
diff --git a/.vscode/launch.json b/.vscode/launch.json
index a707feb..0f387b9 100644
--- a/.vscode/launch.json
+++ b/.vscode/launch.json
@@ -1,25 +1,6 @@
{
"version": "0.2.0",
"configurations": [
- {
- "name": "Debug Main Process",
- "type": "node",
- "request": "launch",
- "cwd": "${workspaceFolder}",
- "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron",
- "windows": {
- "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron.cmd"
- },
- "outFiles": ["${workspaceRoot}/artifacts/webpack/main/main.js"],
- "sourceMaps": true,
- // "args": ["./artifacts/webpack"],
- "args": ["./artifacts/webpack", "--args", "--testnet"],
- "outputCapture": "std",
- "preLaunchTask": "_webpack-build-main",
- "env": {
- "NODE_ENV": "development"
- }
- },
{
"name": "Debug Jest Tests",
"type": "node",
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 866cf7c..74e2df5 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -10,17 +10,25 @@
"Mempool",
"SCROLLABLE",
"Satoshi",
+ "Utxo",
+ "Utxos",
"bitcoind",
"btcd",
"clsx",
"formik",
+ "sats",
"start",
- "testid"
+ "testid",
+ "txid",
+ "vout"
],
"editor.formatOnSave": true,
"editor.rulers": [80],
"rewrap.wrappingColumn": 80,
"editor.codeActionsOnSave": {
"source.fixAll.eslint": true
+ },
+ "[markdown]": {
+ "editor.rulers": [50]
}
}
diff --git a/SECURITY.md b/SECURITY.md
deleted file mode 100644
index df135a0..0000000
--- a/SECURITY.md
+++ /dev/null
@@ -1,83 +0,0 @@
-# Security and Architecture
-
-Orange uses multiple processes. Some processes include npm modules while others
-don't. Orange is architected so that processes with npm modules are sandboxed
-and have very low access privileges. Processes with npm modules cannot make
-outbound or receive inbound connections except in a very tightly controlled
-manner.
-
-Only processes that don't use any 3rd party modules are allowed to communicate
-with Bitcoin Core.
-
-## Details on the architecture
-
-All Electron applications have 3 separate processes. The nature of these 3
-processes is what enables the architecture described above.
-
-The 3 processes are called `main`, `renderer`, and `preload`. Each one of these
-processes is granted a different level of access privilege over the system, as
-described below.
-
-### The `main` process
-
-In Orange the `main` has full access over the system. It uses Node.js to talk to
-the file system and it can talk to the operating system. **Because `main` has
-this much privilege, we don't use npm modules in it.**
-
-`main` talks to Bitcoin Core.
-
-### The `renderer` process
-
-The `renderer` process is where the UI code is.
-
-The `renderer` process has no access to Node.js APIs, the filesystem, or any
-operating system features. The `renderer` process is also prohibited from:
-
-- making network requests
-- loading remote content (at run time)
-- opening webpages
-- navigating
-
-Some implementation details
-
-We implement the
-[security recommendations](https://electronjs.org/docs/tutorial/security?q=j#checklist-security-recommendations)
-provided by Electron. Many of these recommendations are particular to loading
-"remote content", that is content over the network. In Orange we disable
-networking completely, but we consider npm modules in the `renderer` process to
-be equivalent to "remote content" so we follow these recommendations as strictly
-as possible:
-
-- Node integration is disabled
-- Content isolation is enabled
-- Web security is enabled
-- A strict content security policy is provided
-- Running insecure content is disabled
-- No experimental Chromium or Blink features are used
-- WebView creation is disabled
-- Navigation is disabled
-- The remote module is disabled
-
-
-
-### How does `renderer` get the data to display if it's sandboxed?
-
-This is where the `preload` process comes in. `preload` is the middleman between
-`main` and `renderer`. It relays messages between the two, but only very
-specific kinds of messages.
-
-### How is the communication between `renderer` and `main` secured?
-
-`main` and `renderer` use a nonce (i.e. password) to communicate with each
-other. This nonce is agreed upon between `main` and `renderer` only after all
-the npm modules have been downloaded, so remote code has no way of knowing what
-it is.
-
-Implementation details
-
-After the npm modules have been downloaded but before the Orange distributable
-is created, the string `__NONCE__` in the code will be replaced with a base64
-encoded random bytes. Care has to be taken to make sure this nonce is only known
-to the local Orange code, not to the npm modules.
-
-
diff --git a/__mocks__/child_process.ts b/__mocks__/child_process.ts
deleted file mode 100644
index 59a32f0..0000000
--- a/__mocks__/child_process.ts
+++ /dev/null
@@ -1,3 +0,0 @@
-export const spawn = () => ({
- on: () => null,
-});
diff --git a/__mocks__/electron-devtools-installer.ts b/__mocks__/electron-devtools-installer.ts
deleted file mode 100644
index 2680a00..0000000
--- a/__mocks__/electron-devtools-installer.ts
+++ /dev/null
@@ -1 +0,0 @@
-export default () => Promise.resolve();
diff --git a/__mocks__/electron/BrowserWindow.ts b/__mocks__/electron/BrowserWindow.ts
deleted file mode 100644
index ceca081..0000000
--- a/__mocks__/electron/BrowserWindow.ts
+++ /dev/null
@@ -1,16 +0,0 @@
-import { BrowserWindowConstructorOptions } from "electron";
-import { WebContents } from "./WebContents";
-
-export class BrowserWindow {
- static instances: { name: string; value: BrowserWindow }[] = [];
-
- webContents = new WebContents();
-
- constructor(options: BrowserWindowConstructorOptions) {
- BrowserWindow.instances.push({ name: options.title!, value: this });
- }
-
- loadFile = () => null;
-
- isDestroyed = () => false;
-}
diff --git a/__mocks__/electron/WebContents.ts b/__mocks__/electron/WebContents.ts
deleted file mode 100644
index 68083a0..0000000
--- a/__mocks__/electron/WebContents.ts
+++ /dev/null
@@ -1,16 +0,0 @@
-/* eslint-disable max-classes-per-file */
-import { EventEmitter } from "events";
-import { ipcRenderer } from "./ipcRenderer";
-
-type Listener = (...args: any[]) => void;
-class WebRequest extends EventEmitter {
- onBeforeRequest = (listener: Listener) => this.on("before-request", listener);
-}
-
-export class WebContents extends EventEmitter {
- session = {
- webRequest: new WebRequest(),
- };
-
- send = (name: string, data: any) => ipcRenderer.emit(name, {}, data);
-}
diff --git a/__mocks__/electron/app.ts b/__mocks__/electron/app.ts
deleted file mode 100644
index 58b8ba3..0000000
--- a/__mocks__/electron/app.ts
+++ /dev/null
@@ -1,11 +0,0 @@
-import { EventEmitter } from "events";
-
-class App extends EventEmitter {
- getAppPath = () => "";
-
- enableSandbox = jest.fn();
-
- getPath = () => "/platform-specific/app-path";
-}
-
-export const app = new App();
diff --git a/__mocks__/electron/dialog.ts b/__mocks__/electron/dialog.ts
deleted file mode 100644
index 1d0b9c2..0000000
--- a/__mocks__/electron/dialog.ts
+++ /dev/null
@@ -1,7 +0,0 @@
-export const dialog = {
- showMessageBoxSync: jest.fn(),
-
- showMessageBox: jest.fn(),
-
- showOpenDialog: jest.fn(),
-};
diff --git a/__mocks__/electron/index.ts b/__mocks__/electron/index.ts
deleted file mode 100644
index 0d2c9e3..0000000
--- a/__mocks__/electron/index.ts
+++ /dev/null
@@ -1,20 +0,0 @@
-import { app } from "./app";
-import { BrowserWindow } from "./BrowserWindow";
-import { dialog } from "./dialog";
-import { ipcMain } from "./ipcMain";
-import { ipcRenderer } from "./ipcRenderer";
-import { WebContents } from "./WebContents";
-
-const globalShortcut = {
- register: () => null,
-};
-
-export {
- app,
- BrowserWindow,
- globalShortcut,
- WebContents,
- ipcMain,
- ipcRenderer,
- dialog,
-};
diff --git a/__mocks__/electron/ipcMain.ts b/__mocks__/electron/ipcMain.ts
deleted file mode 100644
index d74b193..0000000
--- a/__mocks__/electron/ipcMain.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-import { EventEmitter } from "events";
-
-class IpcMain extends EventEmitter {}
-
-export const ipcMain = new IpcMain();
diff --git a/__mocks__/electron/ipcRenderer.ts b/__mocks__/electron/ipcRenderer.ts
deleted file mode 100644
index 17806ad..0000000
--- a/__mocks__/electron/ipcRenderer.ts
+++ /dev/null
@@ -1,8 +0,0 @@
-import { EventEmitter } from "events";
-import { ipcMain } from "./ipcMain";
-
-class IpcRenderer extends EventEmitter {
- send = (name: string, data: any) => ipcMain.emit(name, {}, data);
-}
-
-export const ipcRenderer = new IpcRenderer();
diff --git a/__mocks__/fileMock.js b/__mocks__/fileMock.js
deleted file mode 100644
index 0a445d0..0000000
--- a/__mocks__/fileMock.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = "test-file-stub";
diff --git a/__mocks__/fs.ts b/__mocks__/fs.ts
deleted file mode 100644
index 1dde298..0000000
--- a/__mocks__/fs.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-import { fs } from "memfs";
-
-jest.genMockFromModule("fs");
-
-module.exports = fs;
diff --git a/bitcoindDocs.md b/bitcoindDocs.md
deleted file mode 100644
index f60cf17..0000000
--- a/bitcoindDocs.md
+++ /dev/null
@@ -1,513 +0,0 @@
-# Bitcoind Docs
-
-## Response for `help`
-
-```bash
-== Blockchain ==
-getbestblockhash
-getblock "blockhash" ( verbosity )
-getblockchaininfo
-getblockcount
-getblockfilter "blockhash" ( "filtertype" )
-getblockhash height
-getblockheader "blockhash" ( verbose )
-getblockstats hash_or_height ( stats )
-getchaintips
-getchaintxstats ( nblocks "blockhash" )
-getdifficulty
-getmempoolancestors "txid" ( verbose )
-getmempooldescendants "txid" ( verbose )
-getmempoolentry "txid"
-getmempoolinfo
-getrawmempool ( verbose )
-gettxout "txid" n ( include_mempool )
-gettxoutproof ["txid",...] ( "blockhash" )
-gettxoutsetinfo
-preciousblock "blockhash"
-pruneblockchain height
-savemempool
-scantxoutset "action" [scanobjects,...]
-verifychain ( checklevel nblocks )
-verifytxoutproof "proof"
-
-== Control ==
-getmemoryinfo ( "mode" )
-getrpcinfo
-help ( "command" )
-logging ( ["include_category",...] ["exclude_category",...] )
-stop
-uptime
-
-== Generating ==
-generatetoaddress nblocks "address" ( maxtries )
-generatetodescriptor num_blocks "descriptor" ( maxtries )
-
-== Mining ==
-getblocktemplate ( "template_request" )
-getmininginfo
-getnetworkhashps ( nblocks height )
-prioritisetransaction "txid" ( dummy ) fee_delta
-submitblock "hexdata" ( "dummy" )
-submitheader "hexdata"
-
-== Network ==
-addnode "node" "command"
-clearbanned
-disconnectnode ( "address" nodeid )
-getaddednodeinfo ( "node" )
-getconnectioncount
-getnettotals
-getnetworkinfo
-getnodeaddresses ( count )
-getpeerinfo
-listbanned
-ping
-setban "subnet" "command" ( bantime absolute )
-setnetworkactive state
-
-== Rawtransactions ==
-analyzepsbt "psbt"
-combinepsbt ["psbt",...]
-combinerawtransaction ["hexstring",...]
-converttopsbt "hexstring" ( permitsigdata iswitness )
-createpsbt [{"txid":"hex","vout":n,"sequence":n},...] [{"address":amount},{"data":"hex"},...] ( locktime replaceable )
-createrawtransaction [{"txid":"hex","vout":n,"sequence":n},...] [{"address":amount},{"data":"hex"},...] ( locktime replaceable )
-decodepsbt "psbt"
-decoderawtransaction "hexstring" ( iswitness )
-decodescript "hexstring"
-finalizepsbt "psbt" ( extract )
-getrawtransaction "txid" ( verbose "blockhash" )
-joinpsbts ["psbt",...]
-sendrawtransaction "hexstring" ( maxfeerate )
-signrawtransactionwithkey "hexstring" ["privatekey",...] ( [{"txid":"hex","vout":n,"scriptPubKey":"hex","redeemScript":"hex","witnessScript":"hex","amount":amount},...] "sighashtype" )
-testmempoolaccept ["rawtx",...] ( maxfeerate )
-utxoupdatepsbt "psbt" ( ["",{"desc":"str","range":n or [n,n]},...] )
-
-== Util ==
-createmultisig nrequired ["key",...] ( "address_type" )
-deriveaddresses "descriptor" ( range )
-estimatesmartfee conf_target ( "estimate_mode" )
-getdescriptorinfo "descriptor"
-signmessagewithprivkey "privkey" "message"
-validateaddress "address"
-verifymessage "address" "signature" "message"
-```
-
-### `getnetworkinfo` response
-
-```json
-{
- "version": 199900,
- "subversion": "/Satoshi:0.19.99/",
- "protocolversion": 70015,
- "localservices": "0000000000000408",
- "localservicesnames": ["WITNESS", "NETWORK_LIMITED"],
- "localrelay": true,
- "timeoffset": 0,
- "networkactive": true,
- "connections": 10,
- "networks": [
- {
- "name": "ipv4",
- "limited": false,
- "reachable": true,
- "proxy": "",
- "proxy_randomize_credentials": false
- },
- {
- "name": "ipv6",
- "limited": false,
- "reachable": true,
- "proxy": "",
- "proxy_randomize_credentials": false
- },
- {
- "name": "onion",
- "limited": true,
- "reachable": false,
- "proxy": "",
- "proxy_randomize_credentials": false
- }
- ],
- "relayfee": 0.00001,
- "incrementalfee": 0.00001,
- "localaddresses": [],
- "warnings": "This is a pre-release test build - use at your own risk - do not use for mining or merchant applications"
-}
-```
-
-## `getblockchaininfo` response
-
-```json
-{
- "chain": "main",
- "blocks": 131302,
- "headers": 610675,
- "bestblockhash": "0000000000000e7dd813dbc8770f5d6480730b16706bcb94931e1401f986f065",
- "difficulty": 876954.4935135372,
- "mediantime": 1308254452,
- "verificationprogress": 0.001548356203356627,
- "initialblockdownload": true,
- "chainwork": "00000000000000000000000000000000000000000000000105ff9d61c17c7093",
- "size_on_disk": 311407975,
- "pruned": true,
- "pruneheight": 0,
- "automatic_pruning": true,
- "prune_target_size": 999292928,
- "softforks": {
- "bip34": {
- "type": "buried",
- "active": false,
- "height": 227931
- },
- "bip66": {
- "type": "buried",
- "active": false,
- "height": 363725
- },
- "bip65": {
- "type": "buried",
- "active": false,
- "height": 388381
- },
- "csv": {
- "type": "buried",
- "active": false,
- "height": 419328
- },
- "segwit": {
- "type": "buried",
- "active": false,
- "height": 481824
- }
- },
- "warnings": "This is a pre-release test build - use at your own risk - do not use for mining or merchant applications"
-}
-```
-
-## `getmempoolinfo` response
-
-```json
-{
- "loaded": true,
- "size": 0,
- "bytes": 0,
- "usage": 0,
- "maxmempool": 300000000,
- "mempoolminfee": 0.00001,
- "minrelaytxfee": 0.00001
-}
-```
-
-## `getmemoryinfo` response
-
-```json
-{
- "locked": {
- "used": 288,
- "free": 261856,
- "total": 262144,
- "locked": 262144,
- "chunks_used": 1,
- "chunks_free": 1
- }
-}
-```
-
-## `getblock` response
-
-```json
-{
- "hash": "00000000000005260001a0c2575649686b2ab6efabdb83c838e9471fd303d39a",
- "confirmations": 4962,
- "strippedsize": 258006,
- "size": 258006,
- "weight": 1032024,
- "height": 193936,
- "version": 1,
- "versionHex": "00000001",
- "merkleroot": "b08ba2eb12e3329984abf67fc9a21f7802a1a715b7616a2da96cc583d3a1a6ef",
- "tx": [
- "f00eccc905315110b023ba59a87276c7e02eddec38e8a42474b63b8d23a81560",
- "c9c0f195e6b5a9330f0856e657ea641ec59f54ddd4eb793b84574c52acba2004",
- "cf87a872e24a2631086ea2237719f56a1d9c1496684db46b00d1b2cb0d96be7d",
- "1f4a2d02541d295302761d1aae1ed465b6fcb0d5ccee340898f86dbe245bfad8",
- "5a000ee4194798f5394755dd7ac290ac913acfee681cf064b6cb8a03fdd9bd58"
- // Etc............
- ],
- "time": 1344991373,
- "mediantime": 1344985864,
- "nonce": 2072129030,
- "bits": "1a07a85e",
- "difficulty": 2190865.970102859,
- "chainwork": "0000000000000000000000000000000000000000000000173d5a3c6c4a66124f",
- "nTx": 447,
- "previousblockhash": "00000000000004ca92f0a745595514f7d8b6554084312be2012f73c1f41048e4",
- "nextblockhash": "00000000000003e37e19c7450026758b585c27b50c0bbbd686eb35775183466a"
-}
-```
-
-## `getpeerinfo` response
-
-```json
-[
- {
- "id": 0,
- "addr": "163.172.94.64:18333",
- "addrlocal": "50.233.1.98:50233",
- "addrbind": "172.29.1.121:50233",
- "services": "0000000000000409",
- "servicesnames": ["NETWORK", "WITNESS", "NETWORK_LIMITED"],
- "relaytxes": true,
- "lastsend": 1578005067,
- "lastrecv": 1578005114,
- "bytessent": 425,
- "bytesrecv": 32772,
- "conntime": 1578004945,
- "timeoffset": -1,
- "pingtime": 0.151056,
- "minping": 0.147916,
- "version": 70015,
- "subver": "/Satoshi:0.19.0.1/",
- "inbound": false,
- "addnode": false,
- "startingheight": 1638159,
- "banscore": 0,
- "synced_headers": -1,
- "synced_blocks": -1,
- "inflight": [],
- "whitelisted": false,
- "permissions": [],
- "minfeefilter": 0.00000001,
- "bytessent_per_msg": {
- "feefilter": 32,
- "getaddr": 24,
- "ping": 64,
- "pong": 64,
- "sendcmpct": 66,
- "sendheaders": 24,
- "verack": 24,
- "version": 127
- },
- "bytesrecv_per_msg": {
- "addr": 30082,
- "feefilter": 32,
- "getheaders": 1085,
- "inv": 1203,
- "ping": 64,
- "pong": 64,
- "sendcmpct": 66,
- "sendheaders": 24,
- "verack": 24,
- "version": 128
- }
- },
- {
- "id": 1,
- "addr": "199.188.206.203:18333",
- "addrlocal": "50.233.1.98:50234",
- "addrbind": "172.29.1.121:50234",
- "services": "000000000000040d",
- "servicesnames": ["NETWORK", "BLOOM", "WITNESS", "NETWORK_LIMITED"],
- "relaytxes": true,
- "lastsend": 1578005093,
- "lastrecv": 1578005101,
- "bytessent": 480,
- "bytesrecv": 32734,
- "conntime": 1578004946,
- "timeoffset": 0,
- "pingtime": 0.027973,
- "minping": 0.026664,
- "version": 70015,
- "subver": "/Satoshi:0.18.0/",
- "inbound": false,
- "addnode": false,
- "startingheight": 1638159,
- "banscore": 0,
- "synced_headers": -1,
- "synced_blocks": -1,
- "inflight": [],
- "whitelisted": false,
- "permissions": [],
- "minfeefilter": 0.00001,
- "bytessent_per_msg": {
- "addr": 55,
- "feefilter": 32,
- "getaddr": 24,
- "ping": 64,
- "pong": 64,
- "sendcmpct": 66,
- "sendheaders": 24,
- "verack": 24,
- "version": 127
- },
- "bytesrecv_per_msg": {
- "addr": 30082,
- "feefilter": 32,
- "getheaders": 1085,
- "inv": 1167,
- "ping": 64,
- "pong": 64,
- "sendcmpct": 66,
- "sendheaders": 24,
- "verack": 24,
- "version": 126
- }
- },
- {
- "id": 2,
- "addr": "141.223.85.145:18333",
- "addrlocal": "50.233.1.98:50237",
- "addrbind": "172.29.1.121:50237",
- "services": "000000000000040d",
- "servicesnames": ["NETWORK", "BLOOM", "WITNESS", "NETWORK_LIMITED"],
- "relaytxes": true,
- "lastsend": 1578005073,
- "lastrecv": 1578005113,
- "bytessent": 425,
- "bytesrecv": 32684,
- "conntime": 1578004952,
- "timeoffset": -1,
- "pingtime": 0.178985,
- "minping": 0.174111,
- "version": 70015,
- "subver": "/Satoshi:0.18.1/",
- "inbound": false,
- "addnode": false,
- "startingheight": 1638159,
- "banscore": 0,
- "synced_headers": -1,
- "synced_blocks": -1,
- "inflight": [],
- "whitelisted": false,
- "permissions": [],
- "minfeefilter": 0.00001,
- "bytessent_per_msg": {
- "feefilter": 32,
- "getaddr": 24,
- "ping": 64,
- "pong": 64,
- "sendcmpct": 66,
- "sendheaders": 24,
- "verack": 24,
- "version": 127
- },
- "bytesrecv_per_msg": {
- "addr": 30082,
- "feefilter": 32,
- "getheaders": 1085,
- "inv": 1117,
- "ping": 64,
- "pong": 64,
- "sendcmpct": 66,
- "sendheaders": 24,
- "verack": 24,
- "version": 126
- }
- },
- {
- "id": 3,
- "addr": "31.220.15.89:18333",
- "addrlocal": "50.233.1.98:50238",
- "addrbind": "172.29.1.121:50238",
- "services": "000000000000040d",
- "servicesnames": ["NETWORK", "BLOOM", "WITNESS", "NETWORK_LIMITED"],
- "relaytxes": true,
- "lastsend": 1578005076,
- "lastrecv": 1578005102,
- "bytessent": 425,
- "bytesrecv": 32659,
- "conntime": 1578004953,
- "timeoffset": -3,
- "pingtime": 0.170596,
- "minping": 0.169834,
- "version": 70015,
- "subver": "/Satoshi:0.18.0/",
- "inbound": false,
- "addnode": false,
- "startingheight": 1638159,
- "banscore": 0,
- "synced_headers": -1,
- "synced_blocks": -1,
- "inflight": [],
- "whitelisted": false,
- "permissions": [],
- "minfeefilter": 0.00001,
- "bytessent_per_msg": {
- "feefilter": 32,
- "getaddr": 24,
- "ping": 64,
- "pong": 64,
- "sendcmpct": 66,
- "sendheaders": 24,
- "verack": 24,
- "version": 127
- },
- "bytesrecv_per_msg": {
- "addr": 30082,
- "feefilter": 32,
- "getheaders": 1085,
- "inv": 1092,
- "ping": 64,
- "pong": 64,
- "sendcmpct": 66,
- "sendheaders": 24,
- "verack": 24,
- "version": 126
- }
- }
-]
-```
-
-## `getrpcinfo` response
-
-```json
-{
- "active_commands": [
- {
- "method": "getrpcinfo",
- "duration": 58
- }
- ],
- "logpath": "/Users/mk/Library/Application Support/Bitcoin/testnet3/debug.log"
-}
-```
-
-### `getchaintips` response
-
-```json
-[
- {
- "height": 1249998,
- "hash": "000000000000294fd3111f63fd84633ef89f2d6d47c4eba499e4987e37f1f76c",
- "branchlen": 1249998,
- "status": "headers-only"
- },
- {
- "height": 0,
- "hash": "000000000933ea01ad0ee984209779baaec3ced90fa3f408719526f8d77f4943",
- "branchlen": 0,
- "status": "active"
- }
-]
-```
-
-### `getblockheader` response
-
-```json
-{
- "hash": "000000000933ea01ad0ee984209779baaec3ced90fa3f408719526f8d77f4943",
- "confirmations": 1,
- "height": 0,
- "version": 1,
- "versionHex": "00000001",
- "merkleroot": "4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b",
- "time": 1296688602,
- "mediantime": 1296688602,
- "nonce": 414098458,
- "bits": "1d00ffff",
- "difficulty": 1,
- "chainwork": "0000000000000000000000000000000000000000000000000000000100010001",
- "nTx": 1
-}
-```
diff --git a/package-lock.json b/package-lock.json
index 5c34298..60d2b46 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -4,12 +4,6 @@
"lockfileVersion": 1,
"requires": true,
"dependencies": {
- "7zip": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/7zip/-/7zip-0.0.6.tgz",
- "integrity": "sha1-nK+xca+CMpSQNTtIFvAzR6oVCjA=",
- "dev": true
- },
"@actions/artifact": {
"version": "0.3.2",
"resolved": "https://registry.npmjs.org/@actions/artifact/-/artifact-0.3.2.tgz",
@@ -1193,74 +1187,6 @@
"minimist": "^1.2.0"
}
},
- "@electron/get": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@electron/get/-/get-1.9.0.tgz",
- "integrity": "sha512-OBIKtF6ttIJotDXe4KJMUyTBO4xMii+mFjlA8R4CORuD4HvCUaCK3lPjhdTRCvuEv6gzWNbAvd9DNBv0v780lw==",
- "requires": {
- "debug": "^4.1.1",
- "env-paths": "^2.2.0",
- "fs-extra": "^8.1.0",
- "global-agent": "^2.0.2",
- "global-tunnel-ng": "^2.7.1",
- "got": "^9.6.0",
- "progress": "^2.0.3",
- "sanitize-filename": "^1.6.2",
- "sumchecker": "^3.0.1"
- },
- "dependencies": {
- "debug": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
- "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
- "requires": {
- "ms": "^2.1.1"
- }
- },
- "env-paths": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.0.tgz",
- "integrity": "sha512-6u0VYSCo/OW6IoD5WCLLy9JUGARbamfSavcNXry/eu8aHVFei6CD3Sw+VGX5alea1i9pgPHW0mbu6Xj0uBh7gA=="
- },
- "fs-extra": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
- "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
- "requires": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^4.0.0",
- "universalify": "^0.1.0"
- }
- },
- "jsonfile": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
- "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
- "requires": {
- "graceful-fs": "^4.1.6"
- }
- },
- "sumchecker": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/sumchecker/-/sumchecker-3.0.1.tgz",
- "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==",
- "requires": {
- "debug": "^4.1.0"
- }
- },
- "universalify": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
- "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg=="
- }
- }
- },
- "@emotion/hash": {
- "version": "0.8.0",
- "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz",
- "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==",
- "dev": true
- },
"@hh.ru/babel-plugin-react-displayname": {
"version": "0.5.3",
"resolved": "https://registry.npmjs.org/@hh.ru/babel-plugin-react-displayname/-/babel-plugin-react-displayname-0.5.3.tgz",
@@ -1819,36 +1745,6 @@
}
}
},
- "@material-ui/core": {
- "version": "4.9.11",
- "resolved": "https://registry.npmjs.org/@material-ui/core/-/core-4.9.11.tgz",
- "integrity": "sha512-S2Ha9GpTxzl29XMeMc8dQX2pj97yApNzuhe/23If53fMdg5Fmd3SgbE1bMbyXeKhxwtXZjOFxd0vU+W/sez8Ew==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.4.4",
- "@material-ui/react-transition-group": "^4.2.0",
- "@material-ui/styles": "^4.9.10",
- "@material-ui/system": "^4.9.10",
- "@material-ui/types": "^5.0.1",
- "@material-ui/utils": "^4.9.6",
- "@types/react-transition-group": "^4.2.0",
- "clsx": "^1.0.4",
- "hoist-non-react-statics": "^3.3.2",
- "popper.js": "^1.16.1-lts",
- "prop-types": "^15.7.2",
- "react-is": "^16.8.0",
- "react-transition-group": "^4.3.0"
- }
- },
- "@material-ui/icons": {
- "version": "4.9.1",
- "resolved": "https://registry.npmjs.org/@material-ui/icons/-/icons-4.9.1.tgz",
- "integrity": "sha512-GBitL3oBWO0hzBhvA9KxqcowRUsA0qzwKkURyC8nppnC3fw54KPKZ+d4V1Eeg/UnDRSzDaI9nGCdel/eh9AQMg==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.4.4"
- }
- },
"@material-ui/lab": {
"version": "4.0.0-alpha.50",
"resolved": "https://registry.npmjs.org/@material-ui/lab/-/lab-4.0.0-alpha.50.tgz",
@@ -1861,59 +1757,6 @@
"react-is": "^16.8.0"
}
},
- "@material-ui/react-transition-group": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/@material-ui/react-transition-group/-/react-transition-group-4.3.0.tgz",
- "integrity": "sha512-CwQ0aXrlUynUTY6sh3UvKuvye1o92en20VGAs6TORnSxUYeRmkX8YeTUN3lAkGiBX1z222FxLFO36WWh6q73rQ==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.5.5",
- "dom-helpers": "^5.0.1",
- "loose-envify": "^1.4.0",
- "prop-types": "^15.6.2"
- }
- },
- "@material-ui/styles": {
- "version": "4.9.10",
- "resolved": "https://registry.npmjs.org/@material-ui/styles/-/styles-4.9.10.tgz",
- "integrity": "sha512-EXIXlqVyFDnjXF6tj72y6ZxiSy+mHtrsCo3Srkm3XUeu3Z01aftDBy7ZSr3TQ02gXHTvDSBvegp3Le6p/tl7eA==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.4.4",
- "@emotion/hash": "^0.8.0",
- "@material-ui/types": "^5.0.1",
- "@material-ui/utils": "^4.9.6",
- "clsx": "^1.0.2",
- "csstype": "^2.5.2",
- "hoist-non-react-statics": "^3.3.2",
- "jss": "^10.0.3",
- "jss-plugin-camel-case": "^10.0.3",
- "jss-plugin-default-unit": "^10.0.3",
- "jss-plugin-global": "^10.0.3",
- "jss-plugin-nested": "^10.0.3",
- "jss-plugin-props-sort": "^10.0.3",
- "jss-plugin-rule-value-function": "^10.0.3",
- "jss-plugin-vendor-prefixer": "^10.0.3",
- "prop-types": "^15.7.2"
- }
- },
- "@material-ui/system": {
- "version": "4.9.10",
- "resolved": "https://registry.npmjs.org/@material-ui/system/-/system-4.9.10.tgz",
- "integrity": "sha512-E+t0baX2TBZk6ALm8twG6objpsxLdMM4MDm1++LMt2m7CetCAEc3aIAfDaprk4+tm5hFT1Cah5dRWk8EeIFQYw==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.4.4",
- "@material-ui/utils": "^4.9.6",
- "prop-types": "^15.7.2"
- }
- },
- "@material-ui/types": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/@material-ui/types/-/types-5.0.1.tgz",
- "integrity": "sha512-wURPSY7/3+MAtng3i26g+WKwwNE3HEeqa/trDBR5+zWKmcjO+u9t7Npu/J1r+3dmIa/OeziN9D/18IrBKvKffw==",
- "dev": true
- },
"@material-ui/utils": {
"version": "4.9.6",
"resolved": "https://registry.npmjs.org/@material-ui/utils/-/utils-4.9.6.tgz",
@@ -2186,11 +2029,6 @@
"integrity": "sha512-DetpxZw1fzPD5xUBrIAoplLChO2VB8DlL5Gg+I1IR9b2wPqYIca2WSUxL5g1vLeR4MsQq1NeWriXAVffV+U1Fw==",
"dev": true
},
- "@sindresorhus/is": {
- "version": "0.14.0",
- "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz",
- "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ=="
- },
"@sinonjs/commons": {
"version": "1.7.1",
"resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.7.1.tgz",
@@ -2200,12 +2038,44 @@
"type-detect": "4.0.8"
}
},
- "@szmarczak/http-timer": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz",
- "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==",
+ "@teamsupercell/typings-for-css-modules-loader": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@teamsupercell/typings-for-css-modules-loader/-/typings-for-css-modules-loader-2.2.0.tgz",
+ "integrity": "sha512-lDIHyUL//uqiSLgvN++wAGODFn1dEqi3lvBdpEUQXqOSgAr5NwEK2Ggi3n61KvjLgu5/Z82uTsuyBXbDpccLtg==",
+ "dev": true,
"requires": {
- "defer-to-connect": "^1.0.1"
+ "camelcase": "^5.3.1",
+ "loader-utils": "1.2.3",
+ "prettier": "*",
+ "schema-utils": "^2.0.1"
+ },
+ "dependencies": {
+ "emojis-list": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz",
+ "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=",
+ "dev": true
+ },
+ "json5": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
+ "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==",
+ "dev": true,
+ "requires": {
+ "minimist": "^1.2.0"
+ }
+ },
+ "loader-utils": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz",
+ "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==",
+ "dev": true,
+ "requires": {
+ "big.js": "^5.2.2",
+ "emojis-list": "^2.0.0",
+ "json5": "^1.0.1"
+ }
+ }
}
},
"@testing-library/dom": {
@@ -2457,77 +2327,30 @@
"@types/webpack": "*"
}
},
+ "@types/create-hash": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/@types/create-hash/-/create-hash-1.2.2.tgz",
+ "integrity": "sha512-Fg8/kfMJObbETFU/Tn+Y0jieYewryLrbKwLCEIwPyklZZVY2qB+64KFjhplGSw+cseZosfFXctXO+PyIYD8iZQ==",
+ "dev": true,
+ "requires": {
+ "@types/node": "*"
+ }
+ },
+ "@types/css-modules-loader-core": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@types/css-modules-loader-core/-/css-modules-loader-core-1.1.0.tgz",
+ "integrity": "sha512-LMbyf7THPqLCPHIXAj79v9Pa193MeOHgp1fBFRR6s6VvEVHUFIcM5bc/WttslOf+lao4TURNN1X1zfW5wr2CHQ==",
+ "dev": true,
+ "requires": {
+ "postcss": "7.x.x"
+ }
+ },
"@types/debug": {
"version": "4.1.5",
"resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.5.tgz",
"integrity": "sha512-Q1y515GcOdTHgagaVFhHnIFQ38ygs/kmxdNpvpou+raI9UO3YZcHDngBSYKQklcKlvA7iuQlmIKbzvmxcOE9CQ==",
"dev": true
},
- "@types/electron-devtools-installer": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@types/electron-devtools-installer/-/electron-devtools-installer-2.2.0.tgz",
- "integrity": "sha512-HJNxpaOXuykCK4rQ6FOMxAA0NLFYsf7FiPFGmab0iQmtVBHSAfxzy3MRFpLTTDDWbV0yD2YsHOQvdu8yCqtCfw==",
- "dev": true
- },
- "@types/electron-packager": {
- "version": "14.0.0",
- "resolved": "https://registry.npmjs.org/@types/electron-packager/-/electron-packager-14.0.0.tgz",
- "integrity": "sha512-n47/AbT4DEYPyXtES2myPyKCxVE3hICAB3MnpoVg+Ba8CLBGOpUUsNJ5fyLhfKt5N06sT9nTk4eAc+rtYVpvTQ==",
- "dev": true,
- "requires": {
- "@electron/get": "^1.3.1",
- "@types/node": "*",
- "electron-notarize": "^0.1.1",
- "electron-osx-sign": "^0.4.11"
- },
- "dependencies": {
- "debug": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
- "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
- "dev": true,
- "requires": {
- "ms": "^2.1.1"
- }
- },
- "electron-notarize": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/electron-notarize/-/electron-notarize-0.1.1.tgz",
- "integrity": "sha512-TpKfJcz4LXl5jiGvZTs5fbEx+wUFXV5u8voeG5WCHWfY/cdgdD8lDZIZRqLVOtR3VO+drgJ9aiSHIO9TYn/fKg==",
- "dev": true,
- "requires": {
- "debug": "^4.1.1",
- "fs-extra": "^8.0.1"
- }
- },
- "fs-extra": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
- "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^4.0.0",
- "universalify": "^0.1.0"
- }
- },
- "jsonfile": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
- "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.6"
- }
- },
- "universalify": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
- "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
- "dev": true
- }
- }
- },
"@types/eslint-visitor-keys": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz",
@@ -2806,15 +2629,6 @@
"@types/react-router": "*"
}
},
- "@types/react-transition-group": {
- "version": "4.2.4",
- "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.2.4.tgz",
- "integrity": "sha512-8DMUaDqh0S70TjkqU0DxOu80tFUiiaS9rxkWip/nb7gtvAsbqOXm02UCmR8zdcjWujgeYPiPNTVpVpKzUDotwA==",
- "dev": true,
- "requires": {
- "@types/react": "*"
- }
- },
"@types/react-virtualized-auto-sizer": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/@types/react-virtualized-auto-sizer/-/react-virtualized-auto-sizer-1.0.0.tgz",
@@ -2859,6 +2673,12 @@
"@types/node": "*"
}
},
+ "@types/socket.io-client": {
+ "version": "1.4.33",
+ "resolved": "https://registry.npmjs.org/@types/socket.io-client/-/socket.io-client-1.4.33.tgz",
+ "integrity": "sha512-m4LnxkljsI9fMsjwpW5QhRpMixo2BeeLpFmg0AE+sS4H1pzAd/cs/ftTiL60FLZgfFa8PFRPx5KsHu8O0bADKQ==",
+ "dev": true
+ },
"@types/source-list-map": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz",
@@ -3369,6 +3189,11 @@
"integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==",
"dev": true
},
+ "after": {
+ "version": "0.8.2",
+ "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz",
+ "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8="
+ },
"aggregate-error": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz",
@@ -3667,28 +3492,17 @@
"es-abstract": "^1.17.0-next.1"
}
},
+ "arraybuffer.slice": {
+ "version": "0.0.7",
+ "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz",
+ "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog=="
+ },
"arrify": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
"integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=",
"dev": true
},
- "asar": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/asar/-/asar-2.1.0.tgz",
- "integrity": "sha512-d2Ovma+bfqNpvBzY/KU8oPY67ZworixTpkjSx0PCXnQi67c2cXmssaTxpFDUM0ttopXoGx/KRxNg/GDThYbXQA==",
- "dev": true,
- "requires": {
- "@types/glob": "^7.1.1",
- "chromium-pickle-js": "^0.2.0",
- "commander": "^2.20.0",
- "cuint": "^0.2.2",
- "glob": "^7.1.3",
- "minimatch": "^3.0.4",
- "mkdirp": "^0.5.1",
- "tmp-promise": "^1.0.5"
- }
- },
"asn1": {
"version": "0.2.4",
"resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz",
@@ -3778,8 +3592,7 @@
"async-limiter": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz",
- "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==",
- "dev": true
+ "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ=="
},
"asynckit": {
"version": "0.4.0",
@@ -3805,12 +3618,6 @@
"integrity": "sha1-D+9a1G8b16hQLGVyfwNn1e5D1pY=",
"dev": true
},
- "author-regex": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/author-regex/-/author-regex-1.0.0.tgz",
- "integrity": "sha1-0IiFvmubv5Q5/gh8dihyRfCoFFA=",
- "dev": true
- },
"aws-sign2": {
"version": "0.7.0",
"resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
@@ -4144,6 +3951,11 @@
"integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==",
"dev": true
},
+ "backo2": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz",
+ "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc="
+ },
"balanced-match": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
@@ -4205,6 +4017,19 @@
}
}
},
+ "base-x": {
+ "version": "3.0.8",
+ "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.8.tgz",
+ "integrity": "sha512-Rl/1AWP4J/zRrk54hhlxH4drNxPJXYUaKffODVI53/dAsV4t9fBxyxYKAVPU1XBHxYwOWP9h9H0hM2MVw4YfJA==",
+ "requires": {
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "base64-arraybuffer": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz",
+ "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg="
+ },
"base64-js": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz",
@@ -4226,12 +4051,25 @@
"tweetnacl": "^0.14.3"
}
},
+ "bech32": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz",
+ "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ=="
+ },
"before-after-hook": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.1.0.tgz",
"integrity": "sha512-IWIbu7pMqyw3EAJHzzHbWa85b6oud/yfKYg5rqB5hNE8CeMi3nX+2C2sj0HswfblST86hpVEOAb9x34NZd6P7A==",
"dev": true
},
+ "better-assert": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz",
+ "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=",
+ "requires": {
+ "callsite": "1.0.0"
+ }
+ },
"big.js": {
"version": "5.2.2",
"resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
@@ -4248,12 +4086,89 @@
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
"integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
- "dev": true,
- "optional": true,
"requires": {
"file-uri-to-path": "1.0.0"
}
},
+ "bip174": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/bip174/-/bip174-1.0.1.tgz",
+ "integrity": "sha512-Mq2aFs1TdMfxBpYPg7uzjhsiXbAtoVq44TNjEWtvuZBiBgc3m7+n55orYMtTAxdg7jWbL4DtH0MKocJER4xERQ=="
+ },
+ "bip32": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/bip32/-/bip32-2.0.5.tgz",
+ "integrity": "sha512-zVY4VvJV+b2fS0/dcap/5XLlpqtgwyN8oRkuGgAS1uLOeEp0Yo6Tw2yUTozTtlrMJO3G8n4g/KX/XGFHW6Pq3g==",
+ "requires": {
+ "@types/node": "10.12.18",
+ "bs58check": "^2.1.1",
+ "create-hash": "^1.2.0",
+ "create-hmac": "^1.1.7",
+ "tiny-secp256k1": "^1.1.3",
+ "typeforce": "^1.11.5",
+ "wif": "^2.0.6"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "10.12.18",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-10.12.18.tgz",
+ "integrity": "sha512-fh+pAqt4xRzPfqA6eh3Z2y6fyZavRIumvjhaCL753+TVkGKGhpPeyrJG2JftD0T9q4GF00KjefsQ+PQNDdWQaQ=="
+ }
+ }
+ },
+ "bip39": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/bip39/-/bip39-3.0.2.tgz",
+ "integrity": "sha512-J4E1r2N0tUylTKt07ibXvhpT2c5pyAFgvuA5q1H9uDy6dEGpjV8jmymh3MTYJDLCNbIVClSB9FbND49I6N24MQ==",
+ "requires": {
+ "@types/node": "11.11.6",
+ "create-hash": "^1.1.0",
+ "pbkdf2": "^3.0.9",
+ "randombytes": "^2.0.1"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "11.11.6",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-11.11.6.tgz",
+ "integrity": "sha512-Exw4yUWMBXM3X+8oqzJNRqZSwUAaS4+7NdvHqQuFi/d+synz++xmX3QIf+BFqneW8N31R8Ky+sikfZUXq07ggQ=="
+ }
+ }
+ },
+ "bip66": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npmjs.org/bip66/-/bip66-1.1.5.tgz",
+ "integrity": "sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI=",
+ "requires": {
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "bitcoin-ops": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/bitcoin-ops/-/bitcoin-ops-1.4.1.tgz",
+ "integrity": "sha512-pef6gxZFztEhaE9RY9HmWVmiIHqCb2OyS4HPKkpc6CIiiOa3Qmuoylxc5P2EkU3w+5eTSifI9SEZC88idAIGow=="
+ },
+ "bitcoinjs-lib": {
+ "version": "5.1.10",
+ "resolved": "https://registry.npmjs.org/bitcoinjs-lib/-/bitcoinjs-lib-5.1.10.tgz",
+ "integrity": "sha512-CesUqtBtnYc+SOMsYN9jWQWhdohW1MpklUkF7Ukn4HiAyN6yxykG+cIJogfRt6x5xcgH87K1Q+Mnoe/B+du1Iw==",
+ "requires": {
+ "bech32": "^1.1.2",
+ "bip174": "^1.0.1",
+ "bip32": "^2.0.4",
+ "bip66": "^1.1.0",
+ "bitcoin-ops": "^1.4.0",
+ "bs58check": "^2.0.0",
+ "create-hash": "^1.1.0",
+ "create-hmac": "^1.1.3",
+ "merkle-lib": "^2.0.10",
+ "pushdata-bitcoin": "^1.0.1",
+ "randombytes": "^2.0.1",
+ "tiny-secp256k1": "^1.1.1",
+ "typeforce": "^1.11.3",
+ "varuint-bitcoin": "^1.0.4",
+ "wif": "^2.0.1"
+ }
+ },
"bl": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/bl/-/bl-4.0.2.tgz",
@@ -4287,6 +4202,11 @@
}
}
},
+ "blob": {
+ "version": "0.0.5",
+ "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz",
+ "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig=="
+ },
"bluebird": {
"version": "3.7.2",
"resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
@@ -4295,8 +4215,7 @@
"bn.js": {
"version": "4.11.8",
"resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz",
- "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==",
- "dev": true
+ "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA=="
},
"body-parser": {
"version": "1.19.0",
@@ -4365,12 +4284,6 @@
"integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=",
"dev": true
},
- "boolean": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.0.1.tgz",
- "integrity": "sha512-HRZPIjPcbwAVQvOTxR4YE3o8Xs98NqbbL1iEZDCz7CL8ql0Lt5iOyJFxfnAB0oFs8Oh02F/lLlg30Mexv46LjA==",
- "optional": true
- },
"brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
@@ -4393,8 +4306,7 @@
"brorand": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
- "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=",
- "dev": true
+ "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8="
},
"browser-process-hrtime": {
"version": "1.0.0",
@@ -4511,6 +4423,24 @@
"fast-json-stable-stringify": "2.x"
}
},
+ "bs58": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz",
+ "integrity": "sha1-vhYedsNU9veIrkBx9j806MTwpCo=",
+ "requires": {
+ "base-x": "^3.0.2"
+ }
+ },
+ "bs58check": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz",
+ "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==",
+ "requires": {
+ "bs58": "^4.0.0",
+ "create-hash": "^1.1.0",
+ "safe-buffer": "^5.1.2"
+ }
+ },
"bser": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz",
@@ -4536,37 +4466,17 @@
"ieee754": "^1.1.4"
}
},
- "buffer-alloc": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz",
- "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==",
- "dev": true,
- "requires": {
- "buffer-alloc-unsafe": "^1.1.0",
- "buffer-fill": "^1.0.0"
- }
- },
- "buffer-alloc-unsafe": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz",
- "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==",
- "dev": true
- },
"buffer-crc32": {
"version": "0.2.13",
"resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
- "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI="
- },
- "buffer-fill": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz",
- "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=",
+ "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=",
"dev": true
},
"buffer-from": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
- "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A=="
+ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
+ "dev": true
},
"buffer-indexof": {
"version": "1.1.1",
@@ -4638,35 +4548,6 @@
"unset-value": "^1.0.0"
}
},
- "cacheable-request": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz",
- "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==",
- "requires": {
- "clone-response": "^1.0.2",
- "get-stream": "^5.1.0",
- "http-cache-semantics": "^4.0.0",
- "keyv": "^3.0.0",
- "lowercase-keys": "^2.0.0",
- "normalize-url": "^4.1.0",
- "responselike": "^1.0.2"
- },
- "dependencies": {
- "get-stream": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz",
- "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==",
- "requires": {
- "pump": "^3.0.0"
- }
- },
- "lowercase-keys": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz",
- "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA=="
- }
- }
- },
"caller-callsite": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz",
@@ -4693,6 +4574,11 @@
"caller-callsite": "^2.0.0"
}
},
+ "callsite": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz",
+ "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA="
+ },
"callsites": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
@@ -4712,8 +4598,7 @@
"camelcase": {
"version": "5.3.1",
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
- "dev": true
+ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg=="
},
"camelcase-keys": {
"version": "6.2.2",
@@ -5476,12 +5361,6 @@
"tslib": "^1.9.0"
}
},
- "chromium-pickle-js": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/chromium-pickle-js/-/chromium-pickle-js-0.2.0.tgz",
- "integrity": "sha1-BKEGZywYsIWrd02YPfo+oTjyIgU=",
- "dev": true
- },
"ci-info": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz",
@@ -5492,7 +5371,6 @@
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
"integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
- "dev": true,
"requires": {
"inherits": "^2.0.1",
"safe-buffer": "^5.0.1"
@@ -5622,14 +5500,6 @@
}
}
},
- "clone-response": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz",
- "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=",
- "requires": {
- "mimic-response": "^1.0.0"
- }
- },
"clsx": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/clsx/-/clsx-1.1.0.tgz",
@@ -5647,6 +5517,11 @@
"integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
"dev": true
},
+ "coinselect": {
+ "version": "3.1.12",
+ "resolved": "https://registry.npmjs.org/coinselect/-/coinselect-3.1.12.tgz",
+ "integrity": "sha512-XKnm9wwZzJRGuvR1BGNbFZEfa4SEr38do8Z5riq0797QwMT836EqhdPuhtbn8uAX8vCMqJ7+gS4CHa1G9M5xhw=="
+ },
"collect-v8-coverage": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.0.tgz",
@@ -5699,17 +5574,20 @@
"integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
"dev": true
},
- "compare-version": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/compare-version/-/compare-version-0.1.2.tgz",
- "integrity": "sha1-AWLsLZNR9d3VmpICy6k1NmpyUIA=",
- "dev": true
+ "component-bind": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz",
+ "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E="
},
"component-emitter": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz",
- "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==",
- "dev": true
+ "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg=="
+ },
+ "component-inherit": {
+ "version": "0.0.3",
+ "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz",
+ "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM="
},
"compress-commons": {
"version": "2.1.1",
@@ -5818,6 +5696,7 @@
"version": "1.6.2",
"resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
"integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
+ "dev": true,
"requires": {
"buffer-from": "^1.0.0",
"inherits": "^2.0.3",
@@ -5828,12 +5707,14 @@
"isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
+ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
+ "dev": true
},
"readable-stream": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
"integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
+ "dev": true,
"requires": {
"core-util-is": "~1.0.0",
"inherits": "~2.0.3",
@@ -5847,28 +5728,20 @@
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+ "dev": true
},
"string_decoder": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+ "dev": true,
"requires": {
"safe-buffer": "~5.1.0"
}
}
}
},
- "config-chain": {
- "version": "1.1.12",
- "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.12.tgz",
- "integrity": "sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA==",
- "optional": true,
- "requires": {
- "ini": "^1.3.4",
- "proto-list": "~1.2.1"
- }
- },
"confusing-browser-globals": {
"version": "1.0.9",
"resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.9.tgz",
@@ -6063,7 +5936,8 @@
"core-util-is": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
- "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
+ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
+ "dev": true
},
"cosmiconfig": {
"version": "5.2.1",
@@ -6160,7 +6034,6 @@
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
"integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
- "dev": true,
"requires": {
"cipher-base": "^1.0.1",
"inherits": "^2.0.1",
@@ -6173,7 +6046,6 @@
"version": "1.1.7",
"resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
"integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
- "dev": true,
"requires": {
"cipher-base": "^1.0.3",
"create-hash": "^1.1.0",
@@ -6250,32 +6122,6 @@
}
}
},
- "cross-unzip": {
- "version": "0.0.2",
- "resolved": "https://registry.npmjs.org/cross-unzip/-/cross-unzip-0.0.2.tgz",
- "integrity": "sha1-UYO8R6CVWb78+YzEZXlkmZNZNy8=",
- "dev": true
- },
- "cross-zip": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/cross-zip/-/cross-zip-3.0.0.tgz",
- "integrity": "sha512-cm+l8PJ6WiSQmKZ/x8DGvUm2u/3FX2JFs1AFd18gdHaVhP5Lf4oE6Jrj2Jd05JYSioz5x+nIRVp0zBQuzuCRcQ==",
- "dev": true,
- "requires": {
- "rimraf": "^3.0.0"
- },
- "dependencies": {
- "rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "dev": true,
- "requires": {
- "glob": "^7.1.3"
- }
- }
- }
- },
"crypto-browserify": {
"version": "3.12.0",
"resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz",
@@ -6343,6 +6189,114 @@
}
}
},
+ "css-modules-loader-core": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/css-modules-loader-core/-/css-modules-loader-core-1.1.0.tgz",
+ "integrity": "sha1-WQhmgpShvs0mGuCkziGwtVHyHRY=",
+ "dev": true,
+ "requires": {
+ "icss-replace-symbols": "1.1.0",
+ "postcss": "6.0.1",
+ "postcss-modules-extract-imports": "1.1.0",
+ "postcss-modules-local-by-default": "1.2.0",
+ "postcss-modules-scope": "1.1.0",
+ "postcss-modules-values": "1.3.0"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
+ "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
+ "dev": true
+ },
+ "chalk": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
+ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^2.2.1",
+ "escape-string-regexp": "^1.0.2",
+ "has-ansi": "^2.0.0",
+ "strip-ansi": "^3.0.0",
+ "supports-color": "^2.0.0"
+ },
+ "dependencies": {
+ "supports-color": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
+ "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
+ "dev": true
+ }
+ }
+ },
+ "has-flag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz",
+ "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=",
+ "dev": true
+ },
+ "postcss": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.1.tgz",
+ "integrity": "sha1-AA29H47vIXqjaLmiEsX8QLKo8/I=",
+ "dev": true,
+ "requires": {
+ "chalk": "^1.1.3",
+ "source-map": "^0.5.6",
+ "supports-color": "^3.2.3"
+ }
+ },
+ "postcss-modules-extract-imports": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.1.0.tgz",
+ "integrity": "sha1-thTJcgvmgW6u41+zpfqh26agXds=",
+ "dev": true,
+ "requires": {
+ "postcss": "^6.0.1"
+ }
+ },
+ "postcss-modules-local-by-default": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz",
+ "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=",
+ "dev": true,
+ "requires": {
+ "css-selector-tokenizer": "^0.7.0",
+ "postcss": "^6.0.1"
+ }
+ },
+ "postcss-modules-scope": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz",
+ "integrity": "sha1-1upkmUx5+XtipytCb75gVqGUu5A=",
+ "dev": true,
+ "requires": {
+ "css-selector-tokenizer": "^0.7.0",
+ "postcss": "^6.0.1"
+ }
+ },
+ "postcss-modules-values": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz",
+ "integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=",
+ "dev": true,
+ "requires": {
+ "icss-replace-symbols": "^1.1.0",
+ "postcss": "^6.0.1"
+ }
+ },
+ "supports-color": {
+ "version": "3.2.3",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz",
+ "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=",
+ "dev": true,
+ "requires": {
+ "has-flag": "^1.0.0"
+ }
+ }
+ }
+ },
"css-select": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz",
@@ -6355,14 +6309,14 @@
"nth-check": "~1.0.1"
}
},
- "css-vendor": {
- "version": "2.0.8",
- "resolved": "https://registry.npmjs.org/css-vendor/-/css-vendor-2.0.8.tgz",
- "integrity": "sha512-x9Aq0XTInxrkuFeHKbYC7zWY8ai7qJ04Kxd9MnvbC1uO5DagxoHQjm4JvG+vCdXOoFtCjbL2XSZfxmoYa9uQVQ==",
+ "css-selector-tokenizer": {
+ "version": "0.7.3",
+ "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.3.tgz",
+ "integrity": "sha512-jWQv3oCEL5kMErj4wRnK/OPoBi0D+P1FR2cDCKYPaMeD2eW3/mttav8HT4hT1CKopiJI/psEULjkClhvJo4Lvg==",
"dev": true,
"requires": {
- "@babel/runtime": "^7.8.3",
- "is-in-browser": "^1.0.2"
+ "cssesc": "^3.0.0",
+ "fastparse": "^1.1.2"
}
},
"css-what": {
@@ -6412,12 +6366,6 @@
"integrity": "sha512-D34BqZU4cIlMCY93rZHbrq9pjTAQJ3U8S8rfBqjwHxkGPThWFjzZDQpgMJY0QViLxth6ZKYiwFBo14RdN44U/w==",
"dev": true
},
- "cuint": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz",
- "integrity": "sha1-QICG1AlVDCYxFVYZ6fp7ytw7mRs=",
- "dev": true
- },
"cyclist": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz",
@@ -6501,14 +6449,6 @@
"integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=",
"dev": true
},
- "decompress-response": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz",
- "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=",
- "requires": {
- "mimic-response": "^1.0.0"
- }
- },
"dedent": {
"version": "0.7.0",
"resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz",
@@ -6551,15 +6491,11 @@
"ip-regex": "^2.1.0"
}
},
- "defer-to-connect": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz",
- "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ=="
- },
"define-properties": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
"integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
+ "dev": true,
"requires": {
"object-keys": "^1.0.12"
},
@@ -6567,7 +6503,8 @@
"object-keys": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA=="
+ "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
+ "dev": true
}
}
},
@@ -6732,7 +6669,8 @@
"detect-node": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz",
- "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw=="
+ "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==",
+ "dev": true
},
"diff": {
"version": "4.0.2",
@@ -6832,16 +6770,6 @@
"utila": "~0.4"
}
},
- "dom-helpers": {
- "version": "5.1.4",
- "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.1.4.tgz",
- "integrity": "sha512-TjMyeVUvNEnOnhzs6uAn9Ya47GmMo3qq7m+Lr/3ON0Rs5kHvb8I+SQYjLUSYn7qhEm0QjW0yrBkvz9yOrwwz1A==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.8.7",
- "csstype": "^2.6.7"
- }
- },
"dom-serializer": {
"version": "0.2.2",
"resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz",
@@ -6906,11 +6834,6 @@
"domelementtype": "1"
}
},
- "duplexer3": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz",
- "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI="
- },
"duplexify": {
"version": "3.7.1",
"resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz",
@@ -6977,320 +6900,128 @@
"integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=",
"dev": true
},
- "electron": {
- "version": "8.2.4",
- "resolved": "https://registry.npmjs.org/electron/-/electron-8.2.4.tgz",
- "integrity": "sha512-Lle0InIgSAHZxD5KDY0wZ1A2Zlc6GHwMhAxoHMzn05mndyP1YBkCYHc0TDDofzUTrsLFofduPjlknO5Oj9fTPA==",
+ "electron-to-chromium": {
+ "version": "1.3.390",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.390.tgz",
+ "integrity": "sha512-4RvbM5x+002gKI8sltkqWEk5pptn0UnzekUx8RTThAMPDSb8jjpm6SwGiSnEve7f85biyZl8DMXaipaCxDjXag==",
+ "dev": true
+ },
+ "elegant-spinner": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-1.0.1.tgz",
+ "integrity": "sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4=",
+ "dev": true
+ },
+ "elliptic": {
+ "version": "6.5.2",
+ "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.2.tgz",
+ "integrity": "sha512-f4x70okzZbIQl/NSRLkI/+tteV/9WqL98zx+SQ69KbXxmVrmjwsNUPn/gYJJ0sHvEak24cZgHIPegRePAtA/xw==",
"requires": {
- "@electron/get": "^1.0.1",
- "@types/node": "^12.0.12",
- "extract-zip": "^1.0.3"
- },
- "dependencies": {
- "@types/node": {
- "version": "12.12.37",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.37.tgz",
- "integrity": "sha512-4mXKoDptrXAwZErQHrLzpe0FN/0Wmf5JRniSVIdwUrtDf9wnmEV1teCNLBo/TwuXhkK/bVegoEn/wmb+x0AuPg=="
- }
+ "bn.js": "^4.4.0",
+ "brorand": "^1.0.1",
+ "hash.js": "^1.0.0",
+ "hmac-drbg": "^1.0.0",
+ "inherits": "^2.0.1",
+ "minimalistic-assert": "^1.0.0",
+ "minimalistic-crypto-utils": "^1.0.0"
}
},
- "electron-devtools-installer": {
- "version": "2.2.4",
- "resolved": "https://registry.npmjs.org/electron-devtools-installer/-/electron-devtools-installer-2.2.4.tgz",
- "integrity": "sha512-b5kcM3hmUqn64+RUcHjjr8ZMpHS2WJ5YO0pnG9+P/RTdx46of/JrEjuciHWux6pE+On6ynWhHJF53j/EDJN0PA==",
+ "emoji-regex": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
+ "dev": true
+ },
+ "emojis-list": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
+ "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==",
+ "dev": true
+ },
+ "encodeurl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+ "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=",
+ "dev": true
+ },
+ "end-of-stream": {
+ "version": "1.4.4",
+ "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
+ "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
"dev": true,
"requires": {
- "7zip": "0.0.6",
- "cross-unzip": "0.0.2",
- "rimraf": "^2.5.2",
- "semver": "^5.3.0"
+ "once": "^1.4.0"
}
},
- "electron-notarize": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/electron-notarize/-/electron-notarize-0.2.1.tgz",
- "integrity": "sha512-oZ6/NhKeXmEKNROiFmRNfytqu3cxqC95sjooG7kBXQVEUSQkZnbiAhxVh5jXngL881G197pbwpeVPJyM7Ikmxw==",
- "dev": true,
- "requires": {
- "debug": "^4.1.1",
- "fs-extra": "^8.1.0"
+ "engine.io-client": {
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.4.3.tgz",
+ "integrity": "sha512-0NGY+9hioejTEJCaSJZfWZLk4FPI9dN+1H1C4+wj2iuFba47UgZbJzfWs4aNFajnX/qAaYKbe2lLTfEEWzCmcw==",
+ "requires": {
+ "component-emitter": "~1.3.0",
+ "component-inherit": "0.0.3",
+ "debug": "~4.1.0",
+ "engine.io-parser": "~2.2.0",
+ "has-cors": "1.1.0",
+ "indexof": "0.0.1",
+ "parseqs": "0.0.5",
+ "parseuri": "0.0.5",
+ "ws": "~6.1.0",
+ "xmlhttprequest-ssl": "~1.5.4",
+ "yeast": "0.1.2"
},
"dependencies": {
"debug": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
"integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
- "dev": true,
"requires": {
"ms": "^2.1.1"
}
},
- "fs-extra": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
- "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^4.0.0",
- "universalify": "^0.1.0"
- }
- },
- "jsonfile": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
- "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
- "dev": true,
+ "ws": {
+ "version": "6.1.4",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-6.1.4.tgz",
+ "integrity": "sha512-eqZfL+NE/YQc1/ZynhojeV8q+H050oR8AZ2uIev7RU10svA9ZnJUddHcOUZTJLinZ9yEfdA2kSATS2qZK5fhJA==",
"requires": {
- "graceful-fs": "^4.1.6"
+ "async-limiter": "~1.0.0"
}
- },
- "universalify": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
- "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
- "dev": true
}
}
},
- "electron-osx-sign": {
- "version": "0.4.15",
- "resolved": "https://registry.npmjs.org/electron-osx-sign/-/electron-osx-sign-0.4.15.tgz",
- "integrity": "sha512-1QtPNpjIji9bGZ0VRFwtJUyU1uHi7q3XUAOG0qFsvAUfs5H0T8hbgUfyg3xvPzmF1ruV8T8pQmQ86vNfLrcRiA==",
+ "engine.io-parser": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.2.0.tgz",
+ "integrity": "sha512-6I3qD9iUxotsC5HEMuuGsKA0cXerGz+4uGcXQEkfBidgKf0amsjrrtwcbwK/nzpZBxclXlV7gGl9dgWvu4LF6w==",
+ "requires": {
+ "after": "0.8.2",
+ "arraybuffer.slice": "~0.0.7",
+ "base64-arraybuffer": "0.1.5",
+ "blob": "0.0.5",
+ "has-binary2": "~1.0.2"
+ }
+ },
+ "enhanced-resolve": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.1.tgz",
+ "integrity": "sha512-98p2zE+rL7/g/DzMHMTF4zZlCgeVdJ7yr6xzEpJRYwFYrGi9ANdn5DnJURg6RpBkyk60XYDnWIv51VfIhfNGuA==",
"dev": true,
"requires": {
- "bluebird": "^3.5.0",
- "compare-version": "^0.1.2",
- "debug": "^2.6.8",
- "isbinaryfile": "^3.0.2",
- "minimist": "^1.2.0",
- "plist": "^3.0.1"
- },
- "dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
+ "graceful-fs": "^4.1.2",
+ "memory-fs": "^0.5.0",
+ "tapable": "^1.0.0"
}
},
- "electron-packager": {
- "version": "14.2.1",
- "resolved": "https://registry.npmjs.org/electron-packager/-/electron-packager-14.2.1.tgz",
- "integrity": "sha512-g6y3BVrAOz/iavKD+VMFbehrQcwCWuA3CZvVbmmbQuCfegGA1ytwWn0BNIDDrEdbuz31Fti7mnNHhb5L+3Wq9A==",
- "dev": true,
- "requires": {
- "@electron/get": "^1.6.0",
- "asar": "^2.0.1",
- "cross-zip": "^3.0.0",
- "debug": "^4.0.1",
- "electron-notarize": "^0.2.0",
- "electron-osx-sign": "^0.4.11",
- "fs-extra": "^8.1.0",
- "galactus": "^0.2.1",
- "get-package-info": "^1.0.0",
- "junk": "^3.1.0",
- "parse-author": "^2.0.0",
- "plist": "^3.0.0",
- "rcedit": "^2.0.0",
- "resolve": "^1.1.6",
- "sanitize-filename": "^1.6.0",
- "semver": "^6.0.0",
- "yargs-parser": "^16.0.0"
- },
- "dependencies": {
- "camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
- "dev": true
- },
- "debug": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
- "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
- "dev": true,
- "requires": {
- "ms": "^2.1.1"
- }
- },
- "fs-extra": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
- "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^4.0.0",
- "universalify": "^0.1.0"
- }
- },
- "jsonfile": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
- "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.6"
- }
- },
- "semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true
- },
- "universalify": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
- "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
- "dev": true
- },
- "yargs-parser": {
- "version": "16.1.0",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-16.1.0.tgz",
- "integrity": "sha512-H/V41UNZQPkUMIT5h5hiwg4QKIY1RPvoBV4XcjUbRM8Bk2oKqqyZ0DIEbTFZB0XjbtSPG8SAa/0DxCQmiRgzKg==",
- "dev": true,
- "requires": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- }
- }
- }
- },
- "electron-to-chromium": {
- "version": "1.3.390",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.390.tgz",
- "integrity": "sha512-4RvbM5x+002gKI8sltkqWEk5pptn0UnzekUx8RTThAMPDSb8jjpm6SwGiSnEve7f85biyZl8DMXaipaCxDjXag==",
- "dev": true
- },
- "electron-winstaller": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/electron-winstaller/-/electron-winstaller-4.0.0.tgz",
- "integrity": "sha512-Rq5YUQ/zBiGiDW3ezVaRigF3QbohVjDtfcpZpzmhJxX/1jndc96OQJw2x1HulHmhPV7n9R4WEsMkzkHObufU9g==",
- "dev": true,
- "requires": {
- "asar": "^2.0.1",
- "debug": "^4.1.1",
- "fs-extra": "^7.0.1",
- "lodash.template": "^4.2.2",
- "temp": "^0.9.0"
- },
- "dependencies": {
- "debug": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
- "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
- "dev": true,
- "requires": {
- "ms": "^2.1.1"
- }
- },
- "fs-extra": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz",
- "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
- "jsonfile": "^4.0.0",
- "universalify": "^0.1.0"
- }
- },
- "jsonfile": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
- "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.6"
- }
- },
- "universalify": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
- "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
- "dev": true
- }
- }
- },
- "elegant-spinner": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-1.0.1.tgz",
- "integrity": "sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4=",
- "dev": true
- },
- "elliptic": {
- "version": "6.5.2",
- "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.2.tgz",
- "integrity": "sha512-f4x70okzZbIQl/NSRLkI/+tteV/9WqL98zx+SQ69KbXxmVrmjwsNUPn/gYJJ0sHvEak24cZgHIPegRePAtA/xw==",
- "dev": true,
- "requires": {
- "bn.js": "^4.4.0",
- "brorand": "^1.0.1",
- "hash.js": "^1.0.0",
- "hmac-drbg": "^1.0.0",
- "inherits": "^2.0.1",
- "minimalistic-assert": "^1.0.0",
- "minimalistic-crypto-utils": "^1.0.0"
- }
- },
- "emoji-regex": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
- "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
- "dev": true
- },
- "emojis-list": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
- "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==",
- "dev": true
- },
- "encodeurl": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
- "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
- },
- "end-of-stream": {
- "version": "1.4.4",
- "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
- "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
- "requires": {
- "once": "^1.4.0"
- }
- },
- "enhanced-resolve": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.1.tgz",
- "integrity": "sha512-98p2zE+rL7/g/DzMHMTF4zZlCgeVdJ7yr6xzEpJRYwFYrGi9ANdn5DnJURg6RpBkyk60XYDnWIv51VfIhfNGuA==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
- "memory-fs": "^0.5.0",
- "tapable": "^1.0.0"
- }
- },
- "entities": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.0.tgz",
- "integrity": "sha512-D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw==",
- "dev": true
- },
- "errno": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz",
- "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==",
+ "entities": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.0.tgz",
+ "integrity": "sha512-D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw==",
+ "dev": true
+ },
+ "errno": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz",
+ "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==",
"dev": true,
"requires": {
"prr": "~1.0.1"
@@ -7343,12 +7074,6 @@
"is-symbol": "^1.0.2"
}
},
- "es6-error": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz",
- "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==",
- "optional": true
- },
"escape-html": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
@@ -8331,32 +8056,6 @@
}
}
},
- "extract-zip": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz",
- "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==",
- "requires": {
- "concat-stream": "^1.6.2",
- "debug": "^2.6.9",
- "mkdirp": "^0.5.4",
- "yauzl": "^2.10.0"
- },
- "dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "requires": {
- "ms": "2.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
- }
- }
- },
"extsprintf": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
@@ -8406,6 +8105,12 @@
"integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
"dev": true
},
+ "fastparse": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz",
+ "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==",
+ "dev": true
+ },
"fastq": {
"version": "1.6.1",
"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.6.1.tgz",
@@ -8433,14 +8138,6 @@
"bser": "2.1.1"
}
},
- "fd-slicer": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
- "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=",
- "requires": {
- "pend": "~1.2.0"
- }
- },
"figgy-pudding": {
"version": "3.5.2",
"resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz",
@@ -8490,9 +8187,7 @@
"file-uri-to-path": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
- "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
- "dev": true,
- "optional": true
+ "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw=="
},
"fill-range": {
"version": "7.0.1",
@@ -8751,53 +8446,6 @@
"integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==",
"dev": true
},
- "flora-colossus": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/flora-colossus/-/flora-colossus-1.0.1.tgz",
- "integrity": "sha512-d+9na7t9FyH8gBJoNDSi28mE4NgQVGGvxQ4aHtFRetjyh5SXjuus+V5EZaxFmFdXVemSOrx0lsgEl/ZMjnOWJA==",
- "dev": true,
- "requires": {
- "debug": "^4.1.1",
- "fs-extra": "^7.0.0"
- },
- "dependencies": {
- "debug": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
- "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
- "dev": true,
- "requires": {
- "ms": "^2.1.1"
- }
- },
- "fs-extra": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz",
- "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
- "jsonfile": "^4.0.0",
- "universalify": "^0.1.0"
- }
- },
- "jsonfile": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
- "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.6"
- }
- },
- "universalify": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
- "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
- "dev": true
- }
- }
- },
"flush-write-stream": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz",
@@ -8988,242 +8636,83 @@
},
"fs-constants": {
"version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
- "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==",
- "dev": true
- },
- "fs-extra": {
- "version": "9.0.0",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.0.tgz",
- "integrity": "sha512-pmEYSk3vYsG/bF651KPUXZ+hvjpgWYw/Gc7W9NFUe3ZVLczKKWIij3IKpOrQcdw4TILtibFslZ0UmR8Vvzig4g==",
- "dev": true,
- "requires": {
- "at-least-node": "^1.0.0",
- "graceful-fs": "^4.2.0",
- "jsonfile": "^6.0.1",
- "universalify": "^1.0.0"
- }
- },
- "fs-monkey": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.0.tgz",
- "integrity": "sha512-nxkkzQ5Ga+ETriXxIof4TncyMSzrV9jFIF+kGN16nw5CiAdWAnG/2FgM7CHhRenW1EBiDx+r1tf/P78HGKCgnA==",
- "dev": true
- },
- "fs-write-stream-atomic": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz",
- "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
- "iferr": "^0.1.5",
- "imurmurhash": "^0.1.4",
- "readable-stream": "1 || 2"
- }
- },
- "fs.realpath": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
- "dev": true
- },
- "fsevents": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz",
- "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==",
- "dev": true,
- "optional": true
- },
- "function-bind": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
- "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
- "dev": true
- },
- "functional-red-black-tree": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
- "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
- "dev": true
- },
- "galactus": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/galactus/-/galactus-0.2.1.tgz",
- "integrity": "sha1-y+0tIKQMH1Z5o1kI4rlBVzPnjbk=",
- "dev": true,
- "requires": {
- "debug": "^3.1.0",
- "flora-colossus": "^1.0.0",
- "fs-extra": "^4.0.0"
- },
- "dependencies": {
- "fs-extra": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz",
- "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
- "jsonfile": "^4.0.0",
- "universalify": "^0.1.0"
- }
- },
- "jsonfile": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
- "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.6"
- }
- },
- "universalify": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
- "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
- "dev": true
- }
- }
- },
- "gensync": {
- "version": "1.0.0-beta.1",
- "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz",
- "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==",
- "dev": true
- },
- "get-caller-file": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
- "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
- "dev": true
- },
- "get-own-enumerable-property-symbols": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz",
- "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==",
- "dev": true
- },
- "get-package-info": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/get-package-info/-/get-package-info-1.0.0.tgz",
- "integrity": "sha1-ZDJ5ZWPigRPNlHTbvQAFKYWkmZw=",
- "dev": true,
- "requires": {
- "bluebird": "^3.1.1",
- "debug": "^2.2.0",
- "lodash.get": "^4.0.0",
- "read-pkg-up": "^2.0.0"
- },
- "dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "find-up": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
- "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
- "dev": true,
- "requires": {
- "locate-path": "^2.0.0"
- }
- },
- "load-json-file": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz",
- "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
- "parse-json": "^2.2.0",
- "pify": "^2.0.0",
- "strip-bom": "^3.0.0"
- }
- },
- "locate-path": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
- "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
- "dev": true,
- "requires": {
- "p-locate": "^2.0.0",
- "path-exists": "^3.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- },
- "p-limit": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
- "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
- "dev": true,
- "requires": {
- "p-try": "^1.0.0"
- }
- },
- "p-locate": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
- "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
- "dev": true,
- "requires": {
- "p-limit": "^1.1.0"
- }
- },
- "p-try": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
- "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
- "dev": true
- },
- "path-type": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz",
- "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=",
- "dev": true,
- "requires": {
- "pify": "^2.0.0"
- }
- },
- "read-pkg": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz",
- "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=",
- "dev": true,
- "requires": {
- "load-json-file": "^2.0.0",
- "normalize-package-data": "^2.3.2",
- "path-type": "^2.0.0"
- }
- },
- "read-pkg-up": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz",
- "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=",
- "dev": true,
- "requires": {
- "find-up": "^2.0.0",
- "read-pkg": "^2.0.0"
- }
- },
- "strip-bom": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
- "dev": true
- }
+ "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
+ "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==",
+ "dev": true
+ },
+ "fs-extra": {
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.0.tgz",
+ "integrity": "sha512-pmEYSk3vYsG/bF651KPUXZ+hvjpgWYw/Gc7W9NFUe3ZVLczKKWIij3IKpOrQcdw4TILtibFslZ0UmR8Vvzig4g==",
+ "dev": true,
+ "requires": {
+ "at-least-node": "^1.0.0",
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^6.0.1",
+ "universalify": "^1.0.0"
+ }
+ },
+ "fs-monkey": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.0.tgz",
+ "integrity": "sha512-nxkkzQ5Ga+ETriXxIof4TncyMSzrV9jFIF+kGN16nw5CiAdWAnG/2FgM7CHhRenW1EBiDx+r1tf/P78HGKCgnA==",
+ "dev": true
+ },
+ "fs-write-stream-atomic": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz",
+ "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.2",
+ "iferr": "^0.1.5",
+ "imurmurhash": "^0.1.4",
+ "readable-stream": "1 || 2"
}
},
+ "fs.realpath": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
+ "dev": true
+ },
+ "fsevents": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz",
+ "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==",
+ "dev": true,
+ "optional": true
+ },
+ "function-bind": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
+ "dev": true
+ },
+ "functional-red-black-tree": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
+ "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
+ "dev": true
+ },
+ "gensync": {
+ "version": "1.0.0-beta.1",
+ "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz",
+ "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==",
+ "dev": true
+ },
+ "get-caller-file": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
+ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
+ "dev": true
+ },
+ "get-own-enumerable-property-symbols": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz",
+ "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==",
+ "dev": true
+ },
"get-stdin": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-7.0.0.tgz",
@@ -9234,6 +8723,7 @@
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz",
"integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==",
+ "dev": true,
"requires": {
"pump": "^3.0.0"
}
@@ -9298,35 +8788,6 @@
"process": "^0.11.10"
}
},
- "global-agent": {
- "version": "2.1.8",
- "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-2.1.8.tgz",
- "integrity": "sha512-VpBe/rhY6Rw2VDOTszAMNambg+4Qv8j0yiTNDYEXXXxkUNGWLHp8A3ztK4YDBbFNcWF4rgsec6/5gPyryya/+A==",
- "optional": true,
- "requires": {
- "boolean": "^3.0.0",
- "core-js": "^3.6.4",
- "es6-error": "^4.1.1",
- "matcher": "^2.1.0",
- "roarr": "^2.15.2",
- "semver": "^7.1.2",
- "serialize-error": "^5.0.0"
- },
- "dependencies": {
- "core-js": {
- "version": "3.6.4",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.4.tgz",
- "integrity": "sha512-4paDGScNgZP2IXXilaffL9X7968RuvwlkK3xWtZRVqgd8SYNiVKRJvkFd1aqqEuPfN7E68ZHEp9hDj6lHj4Hyw==",
- "optional": true
- },
- "semver": {
- "version": "7.1.3",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz",
- "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==",
- "optional": true
- }
- }
- },
"global-modules": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz",
@@ -9382,33 +8843,12 @@
}
}
},
- "global-tunnel-ng": {
- "version": "2.7.1",
- "resolved": "https://registry.npmjs.org/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz",
- "integrity": "sha512-4s+DyciWBV0eK148wqXxcmVAbFVPqtc3sEtUE/GTQfuU80rySLcMhUmHKSHI7/LDj8q0gDYI1lIhRRB7ieRAqg==",
- "optional": true,
- "requires": {
- "encodeurl": "^1.0.2",
- "lodash": "^4.17.10",
- "npm-conf": "^1.1.3",
- "tunnel": "^0.0.6"
- }
- },
"globals": {
"version": "11.12.0",
"resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
"integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
"dev": true
},
- "globalthis": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.1.tgz",
- "integrity": "sha512-mJPRTc/P39NH/iNG4mXa9aIhNymaQikTrnspeCa2ZuJ+mH2QN/rXwtX3XwKrHqWgUQFbNZKtHM105aHzJalElw==",
- "optional": true,
- "requires": {
- "define-properties": "^1.1.3"
- }
- },
"globalyzer": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/globalyzer/-/globalyzer-0.1.4.tgz",
@@ -9434,28 +8874,11 @@
"integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==",
"dev": true
},
- "got": {
- "version": "9.6.0",
- "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz",
- "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==",
- "requires": {
- "@sindresorhus/is": "^0.14.0",
- "@szmarczak/http-timer": "^1.1.2",
- "cacheable-request": "^6.0.0",
- "decompress-response": "^3.3.0",
- "duplexer3": "^0.1.4",
- "get-stream": "^4.1.0",
- "lowercase-keys": "^1.0.1",
- "mimic-response": "^1.0.1",
- "p-cancelable": "^1.0.0",
- "to-readable-stream": "^1.0.0",
- "url-parse-lax": "^3.0.0"
- }
- },
"graceful-fs": {
"version": "4.2.3",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz",
- "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ=="
+ "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==",
+ "dev": true
},
"growly": {
"version": "1.3.0",
@@ -9515,6 +8938,26 @@
"ansi-regex": "^2.0.0"
}
},
+ "has-binary2": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz",
+ "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==",
+ "requires": {
+ "isarray": "2.0.1"
+ },
+ "dependencies": {
+ "isarray": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz",
+ "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4="
+ }
+ }
+ },
+ "has-cors": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz",
+ "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk="
+ },
"has-flag": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
@@ -9583,7 +9026,6 @@
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz",
"integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=",
- "dev": true,
"requires": {
"inherits": "^2.0.1",
"safe-buffer": "^5.0.1"
@@ -9593,7 +9035,6 @@
"version": "1.1.7",
"resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz",
"integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
- "dev": true,
"requires": {
"inherits": "^2.0.3",
"minimalistic-assert": "^1.0.1"
@@ -9622,7 +9063,6 @@
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
"integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=",
- "dev": true,
"requires": {
"hash.js": "^1.0.3",
"minimalistic-assert": "^1.0.0",
@@ -9746,6 +9186,25 @@
}
}
},
+ "html-webpack-inline-source-plugin": {
+ "version": "0.0.10",
+ "resolved": "https://registry.npmjs.org/html-webpack-inline-source-plugin/-/html-webpack-inline-source-plugin-0.0.10.tgz",
+ "integrity": "sha512-0ZNU57u7283vrXSF5a4VDnVOMWiSwypKIp1z/XfXWoVHLA1r3Xmyxx5+Lz+mnthz/UvxL1OAf41w5UIF68Jngw==",
+ "dev": true,
+ "requires": {
+ "escape-string-regexp": "^1.0.5",
+ "slash": "^1.0.0",
+ "source-map-url": "^0.4.0"
+ },
+ "dependencies": {
+ "slash": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz",
+ "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=",
+ "dev": true
+ }
+ }
+ },
"html-webpack-plugin": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz",
@@ -9835,11 +9294,6 @@
}
}
},
- "http-cache-semantics": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz",
- "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ=="
- },
"http-deceiver": {
"version": "1.2.7",
"resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz",
@@ -10118,12 +9572,6 @@
}
}
},
- "hyphenate-style-name": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.3.tgz",
- "integrity": "sha512-EcuixamT82oplpoJ2XU4pDtKGWQ7b00CD9f1ug9IaQ3p1bkHMiKCZ9ut9QDI6qsa6cpUuB+A/I+zLtdNK4n2DQ==",
- "dev": true
- },
"iconv-lite": {
"version": "0.4.24",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
@@ -10133,6 +9581,12 @@
"safer-buffer": ">= 2.1.2 < 3"
}
},
+ "icss-replace-symbols": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz",
+ "integrity": "sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=",
+ "dev": true
+ },
"icss-utils": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz",
@@ -10142,6 +9596,11 @@
"postcss": "^7.0.14"
}
},
+ "idb": {
+ "version": "5.0.4",
+ "resolved": "https://registry.npmjs.org/idb/-/idb-5.0.4.tgz",
+ "integrity": "sha512-g+CRa0NLB5R+VTd8UQK/J8eEPlZk82iwekJQOYA0bFJsc7TGDKyBywNmLBUdHPUyyazV1wN8DdHhSKzEX9Z9kQ=="
+ },
"ieee754": {
"version": "1.1.13",
"resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz",
@@ -10160,6 +9619,11 @@
"integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==",
"dev": true
},
+ "immediate": {
+ "version": "3.0.6",
+ "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz",
+ "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps="
+ },
"import-fresh": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz",
@@ -10251,6 +9715,11 @@
"integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=",
"dev": true
},
+ "indexof": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz",
+ "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10="
+ },
"infer-owner": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz",
@@ -10275,7 +9744,8 @@
"ini": {
"version": "1.3.5",
"resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
- "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw=="
+ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==",
+ "dev": true
},
"inquirer": {
"version": "7.1.0",
@@ -10603,12 +10073,6 @@
"is-extglob": "^2.1.1"
}
},
- "is-in-browser": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/is-in-browser/-/is-in-browser-1.1.3.tgz",
- "integrity": "sha1-Vv9NtoOgeMYILrldrX3GLh0E+DU=",
- "dev": true
- },
"is-number": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
@@ -10711,6 +10175,12 @@
"has-symbols": "^1.0.1"
}
},
+ "is-there": {
+ "version": "4.5.1",
+ "resolved": "https://registry.npmjs.org/is-there/-/is-there-4.5.1.tgz",
+ "integrity": "sha512-vIZ7HTXAoRoIwYSsTnxb0sg9L6rth+JOulNcavsbskQkCIWoSM2cjFOWZs4wGziGZER+Xgs/HXiCQZgiL8ppxQ==",
+ "dev": true
+ },
"is-typedarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
@@ -10734,15 +10204,6 @@
"resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
"integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
},
- "isbinaryfile": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.3.tgz",
- "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==",
- "dev": true,
- "requires": {
- "buffer-alloc": "^1.2.0"
- }
- },
"isexe": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
@@ -12187,11 +11648,6 @@
"integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
"dev": true
},
- "json-buffer": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz",
- "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg="
- },
"json-parse-better-errors": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
@@ -12219,7 +11675,8 @@
"json-stringify-safe": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
- "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus="
+ "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=",
+ "dev": true
},
"json3": {
"version": "3.3.3",
@@ -12258,91 +11715,6 @@
"verror": "1.10.0"
}
},
- "jss": {
- "version": "10.1.1",
- "resolved": "https://registry.npmjs.org/jss/-/jss-10.1.1.tgz",
- "integrity": "sha512-Xz3qgRUFlxbWk1czCZibUJqhVPObrZHxY3FPsjCXhDld4NOj1BgM14Ir5hVm+Qr6OLqVljjGvoMcCdXNOAbdkQ==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.3.1",
- "csstype": "^2.6.5",
- "is-in-browser": "^1.1.3",
- "tiny-warning": "^1.0.2"
- }
- },
- "jss-plugin-camel-case": {
- "version": "10.1.1",
- "resolved": "https://registry.npmjs.org/jss-plugin-camel-case/-/jss-plugin-camel-case-10.1.1.tgz",
- "integrity": "sha512-MDIaw8FeD5uFz1seQBKz4pnvDLnj5vIKV5hXSVdMaAVq13xR6SVTVWkIV/keyTs5txxTvzGJ9hXoxgd1WTUlBw==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.3.1",
- "hyphenate-style-name": "^1.0.3",
- "jss": "10.1.1"
- }
- },
- "jss-plugin-default-unit": {
- "version": "10.1.1",
- "resolved": "https://registry.npmjs.org/jss-plugin-default-unit/-/jss-plugin-default-unit-10.1.1.tgz",
- "integrity": "sha512-UkeVCA/b3QEA4k0nIKS4uWXDCNmV73WLHdh2oDGZZc3GsQtlOCuiH3EkB/qI60v2MiCq356/SYWsDXt21yjwdg==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.3.1",
- "jss": "10.1.1"
- }
- },
- "jss-plugin-global": {
- "version": "10.1.1",
- "resolved": "https://registry.npmjs.org/jss-plugin-global/-/jss-plugin-global-10.1.1.tgz",
- "integrity": "sha512-VBG3wRyi3Z8S4kMhm8rZV6caYBegsk+QnQZSVmrWw6GVOT/Z4FA7eyMu5SdkorDlG/HVpHh91oFN56O4R9m2VA==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.3.1",
- "jss": "10.1.1"
- }
- },
- "jss-plugin-nested": {
- "version": "10.1.1",
- "resolved": "https://registry.npmjs.org/jss-plugin-nested/-/jss-plugin-nested-10.1.1.tgz",
- "integrity": "sha512-ozEu7ZBSVrMYxSDplPX3H82XHNQk2DQEJ9TEyo7OVTPJ1hEieqjDFiOQOxXEj9z3PMqkylnUbvWIZRDKCFYw5Q==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.3.1",
- "jss": "10.1.1",
- "tiny-warning": "^1.0.2"
- }
- },
- "jss-plugin-props-sort": {
- "version": "10.1.1",
- "resolved": "https://registry.npmjs.org/jss-plugin-props-sort/-/jss-plugin-props-sort-10.1.1.tgz",
- "integrity": "sha512-g/joK3eTDZB4pkqpZB38257yD4LXB0X15jxtZAGbUzcKAVUHPl9Jb47Y7lYmiGsShiV4YmQRqG1p2DHMYoK91g==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.3.1",
- "jss": "10.1.1"
- }
- },
- "jss-plugin-rule-value-function": {
- "version": "10.1.1",
- "resolved": "https://registry.npmjs.org/jss-plugin-rule-value-function/-/jss-plugin-rule-value-function-10.1.1.tgz",
- "integrity": "sha512-ClV1lvJ3laU9la1CUzaDugEcwnpjPTuJ0yGy2YtcU+gG/w9HMInD5vEv7xKAz53Bk4WiJm5uLOElSEshHyhKNw==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.3.1",
- "jss": "10.1.1"
- }
- },
- "jss-plugin-vendor-prefixer": {
- "version": "10.1.1",
- "resolved": "https://registry.npmjs.org/jss-plugin-vendor-prefixer/-/jss-plugin-vendor-prefixer-10.1.1.tgz",
- "integrity": "sha512-09MZpQ6onQrhaVSF6GHC4iYifQ7+4YC/tAP6D4ZWeZotvCMq1mHLqNKRIaqQ2lkgANjlEot2JnVi1ktu4+L4pw==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.3.1",
- "css-vendor": "^2.0.7",
- "jss": "10.1.1"
- }
- },
"jsx-ast-utils": {
"version": "2.2.3",
"resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-2.2.3.tgz",
@@ -12353,20 +11725,6 @@
"object.assign": "^4.1.0"
}
},
- "junk": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/junk/-/junk-3.1.0.tgz",
- "integrity": "sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ==",
- "dev": true
- },
- "keyv": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz",
- "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==",
- "requires": {
- "json-buffer": "3.0.0"
- }
- },
"killable": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz",
@@ -12466,6 +11824,14 @@
"type-check": "~0.3.2"
}
},
+ "lie": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz",
+ "integrity": "sha1-mkNrLMd0bKWd56QfpGmz77dr2H4=",
+ "requires": {
+ "immediate": "~3.0.5"
+ }
+ },
"lines-and-columns": {
"version": "1.1.6",
"resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz",
@@ -12843,6 +12209,14 @@
}
}
},
+ "localforage": {
+ "version": "1.9.0",
+ "resolved": "https://registry.npmjs.org/localforage/-/localforage-1.9.0.tgz",
+ "integrity": "sha512-rR1oyNrKulpe+VM9cYmcFn6tsHuokyVHFaCM3+osEmxaHTbEk8oQu6eGDfS6DQLWi/N67XRmB8ECG37OES368g==",
+ "requires": {
+ "lie": "3.1.1"
+ }
+ },
"locate-path": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
@@ -12863,12 +12237,6 @@
"resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.15.tgz",
"integrity": "sha512-rlrc3yU3+JNOpZ9zj5pQtxnx2THmvRykwL4Xlxoa8I9lHBlVbbyPhgyPMioxVZ4NqyxaVVtaJnzsyOidQIhyyQ=="
},
- "lodash._reinterpolate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz",
- "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=",
- "dev": true
- },
"lodash.defaults": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz",
@@ -12917,25 +12285,6 @@
"integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=",
"dev": true
},
- "lodash.template": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz",
- "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==",
- "dev": true,
- "requires": {
- "lodash._reinterpolate": "^3.0.0",
- "lodash.templatesettings": "^4.0.0"
- }
- },
- "lodash.templatesettings": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz",
- "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==",
- "dev": true,
- "requires": {
- "lodash._reinterpolate": "^3.0.0"
- }
- },
"lodash.union": {
"version": "4.6.0",
"resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz",
@@ -13080,11 +12429,6 @@
"integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=",
"dev": true
},
- "lowercase-keys": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz",
- "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA=="
- },
"lru-cache": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
@@ -13162,28 +12506,10 @@
"object-visit": "^1.0.0"
}
},
- "matcher": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/matcher/-/matcher-2.1.0.tgz",
- "integrity": "sha512-o+nZr+vtJtgPNklyeUKkkH42OsK8WAfdgaJE2FNxcjLPg+5QbeEoT6vRj8Xq/iv18JlQ9cmKsEu0b94ixWf1YQ==",
- "optional": true,
- "requires": {
- "escape-string-regexp": "^2.0.0"
- },
- "dependencies": {
- "escape-string-regexp": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
- "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==",
- "optional": true
- }
- }
- },
"md5.js": {
"version": "1.3.5",
"resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
"integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==",
- "dev": true,
"requires": {
"hash-base": "^3.0.0",
"inherits": "^2.0.1",
@@ -13338,6 +12664,11 @@
"integrity": "sha512-2j4DAdlBOkiSZIsaXk4mTE3sRS02yBHAtfy127xRV3bQUFqXkjHCHLW6Scv7DwNRbIWNHH8zpnz9zMaKXIdvYw==",
"dev": true
},
+ "merkle-lib": {
+ "version": "2.0.10",
+ "resolved": "https://registry.npmjs.org/merkle-lib/-/merkle-lib-2.0.10.tgz",
+ "integrity": "sha1-grjbrnXieneFOItz+ddyXQ9vMyY="
+ },
"methods": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
@@ -13391,11 +12722,6 @@
"integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
"dev": true
},
- "mimic-response": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz",
- "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ=="
- },
"min-document": {
"version": "2.19.0",
"resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz",
@@ -13424,14 +12750,12 @@
"minimalistic-assert": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
- "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==",
- "dev": true
+ "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A=="
},
"minimalistic-crypto-utils": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
- "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=",
- "dev": true
+ "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo="
},
"minimatch": {
"version": "3.0.4",
@@ -13445,7 +12769,8 @@
"minimist": {
"version": "1.2.5",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
- "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw=="
+ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
+ "dev": true
},
"minimist-options": {
"version": "4.0.2",
@@ -13554,6 +12879,7 @@
"version": "0.5.4",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz",
"integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==",
+ "dev": true,
"requires": {
"minimist": "^1.2.5"
}
@@ -13607,9 +12933,7 @@
"nan": {
"version": "2.14.0",
"resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz",
- "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==",
- "dev": true,
- "optional": true
+ "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg=="
},
"nanomatch": {
"version": "1.2.13",
@@ -13882,29 +13206,11 @@
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
"dev": true
},
- "normalize-url": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz",
- "integrity": "sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ=="
- },
- "npm-conf": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/npm-conf/-/npm-conf-1.1.3.tgz",
- "integrity": "sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==",
- "optional": true,
- "requires": {
- "config-chain": "^1.1.11",
- "pify": "^3.0.0"
- },
- "dependencies": {
- "pify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
- "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
- "optional": true
- }
- }
- },
+ "normalize.css": {
+ "version": "8.0.1",
+ "resolved": "https://registry.npmjs.org/normalize.css/-/normalize.css-8.0.1.tgz",
+ "integrity": "sha512-qizSNPO93t1YUuUhP22btGOo3chcvDFqFaj2TRybP0DMxkHOCTYwp3n34fel4a31ORXy4m1Xq0Gyqpb5m33qIg=="
+ },
"npm-run-all": {
"version": "4.1.5",
"resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz",
@@ -14019,6 +13325,11 @@
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
},
+ "object-component": {
+ "version": "0.0.3",
+ "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz",
+ "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE="
+ },
"object-copy": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
@@ -14187,6 +13498,7 @@
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
+ "dev": true,
"requires": {
"wrappy": "1"
}
@@ -14302,11 +13614,6 @@
"integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
"dev": true
},
- "p-cancelable": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz",
- "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw=="
- },
"p-defer": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz",
@@ -14451,15 +13758,6 @@
"safe-buffer": "^5.1.1"
}
},
- "parse-author": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/parse-author/-/parse-author-2.0.0.tgz",
- "integrity": "sha1-00YL8d3Q367tQtp1QkLmX7aEqB8=",
- "dev": true,
- "requires": {
- "author-regex": "^1.0.0"
- }
- },
"parse-json": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
@@ -14481,6 +13779,22 @@
"integrity": "sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ==",
"dev": true
},
+ "parseqs": {
+ "version": "0.0.5",
+ "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz",
+ "integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=",
+ "requires": {
+ "better-assert": "~1.0.0"
+ }
+ },
+ "parseuri": {
+ "version": "0.0.5",
+ "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz",
+ "integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=",
+ "requires": {
+ "better-assert": "~1.0.0"
+ }
+ },
"parseurl": {
"version": "1.3.3",
"resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
@@ -14547,7 +13861,6 @@
"version": "3.0.17",
"resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz",
"integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==",
- "dev": true,
"requires": {
"create-hash": "^1.1.2",
"create-hmac": "^1.1.4",
@@ -14562,11 +13875,6 @@
"integrity": "sha512-KGuODSTV6hcgdZvDrIDBUkN0utcAVj1LL7FfGbM0viKTtCHmtZcuEJ+lGqsp0fTFkGqesdtemV2yUSMeyy3ddA==",
"dev": true
},
- "pend": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
- "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA="
- },
"performance-now": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
@@ -14664,29 +13972,12 @@
"semver-compare": "^1.0.0"
}
},
- "plist": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/plist/-/plist-3.0.1.tgz",
- "integrity": "sha512-GpgvHHocGRyQm74b6FWEZZVRroHKE1I0/BTjAmySaohK+cUn+hZpbqXkc3KWgW3gQYkqcQej35FohcT0FRlkRQ==",
- "dev": true,
- "requires": {
- "base64-js": "^1.2.3",
- "xmlbuilder": "^9.0.7",
- "xmldom": "0.1.x"
- }
- },
"pn": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz",
"integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==",
"dev": true
},
- "popper.js": {
- "version": "1.16.1",
- "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz",
- "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==",
- "dev": true
- },
"portfinder": {
"version": "1.0.26",
"resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.26.tgz",
@@ -14796,11 +14087,6 @@
"integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
"dev": true
},
- "prepend-http": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz",
- "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc="
- },
"prettier": {
"version": "1.19.1",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz",
@@ -14877,12 +14163,14 @@
"process-nextick-args": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
- "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
+ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
+ "dev": true
},
"progress": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
- "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA=="
+ "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
+ "dev": true
},
"promise-inflight": {
"version": "1.0.1",
@@ -14921,12 +14209,6 @@
"resolved": "https://registry.npmjs.org/property-expr/-/property-expr-2.0.2.tgz",
"integrity": "sha512-bc/5ggaYZxNkFKj374aLbEDqVADdYaLcFo8XBkishUWbaAdjlphaBFns9TvRA2pUseVL/wMFmui9X3IdNDU37g=="
},
- "proto-list": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz",
- "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=",
- "optional": true
- },
"proxy-addr": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz",
@@ -14967,6 +14249,7 @@
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
"integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
+ "dev": true,
"requires": {
"end-of-stream": "^1.1.0",
"once": "^1.3.1"
@@ -15001,6 +14284,14 @@
"integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
"dev": true
},
+ "pushdata-bitcoin": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/pushdata-bitcoin/-/pushdata-bitcoin-1.0.1.tgz",
+ "integrity": "sha1-FZMdPNlnreUiBvUjqnMxrvfUOvc=",
+ "requires": {
+ "bitcoin-ops": "^1.3.0"
+ }
+ },
"qs": {
"version": "6.5.2",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
@@ -15035,7 +14326,6 @@
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
"integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
- "dev": true,
"requires": {
"safe-buffer": "^5.1.0"
}
@@ -15076,12 +14366,6 @@
}
}
},
- "rcedit": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/rcedit/-/rcedit-2.1.1.tgz",
- "integrity": "sha512-N1JyXxHD2zpqqW4A77RNK1d/M+tyed9JkvL/lnUI5cf4igF/8B9FNLFCtDUhGrk2GWEPxC+RF0WXWWB3I8QC7w==",
- "dev": true
- },
"react": {
"version": "16.13.1",
"resolved": "https://registry.npmjs.org/react/-/react-16.13.1.tgz",
@@ -15133,6 +14417,14 @@
}
}
},
+ "react-icons": {
+ "version": "3.11.0",
+ "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-3.11.0.tgz",
+ "integrity": "sha512-JRgiI/vdF6uyBgyZhVyYJUZAop95Sy4XDe/jmT3R/bKliFWpO/uZBwvSjWEdxwzec7SYbEPNPck0Kff2tUGM2Q==",
+ "requires": {
+ "camelcase": "^5.0.0"
+ }
+ },
"react-is": {
"version": "16.13.1",
"resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
@@ -15187,18 +14479,6 @@
"tiny-warning": "^1.0.0"
}
},
- "react-transition-group": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.3.0.tgz",
- "integrity": "sha512-1qRV1ZuVSdxPlPf4O8t7inxUGpdyO5zG9IoNfJxSO0ImU2A1YWkEQvFPuIPZmMLkg5hYs7vv5mMOyfgSkvAwvw==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.5.5",
- "dom-helpers": "^5.0.1",
- "loose-envify": "^1.4.0",
- "prop-types": "^15.6.2"
- }
- },
"react-virtualized-auto-sizer": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/react-virtualized-auto-sizer/-/react-virtualized-auto-sizer-1.0.2.tgz",
@@ -15667,6 +14947,11 @@
"integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=",
"dev": true
},
+ "reselect": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/reselect/-/reselect-4.0.0.tgz",
+ "integrity": "sha512-qUgANli03jjAyGlnbYVAV5vvnOmJnODyABz51RdBN7M4WaVu8mecZWgyQNkG8Yqe3KRGRt0l4K4B3XVEULC4CA=="
+ },
"resolve": {
"version": "1.15.1",
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz",
@@ -15725,14 +15010,6 @@
"integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
"dev": true
},
- "responselike": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz",
- "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=",
- "requires": {
- "lowercase-keys": "^1.0.0"
- }
- },
"restore-cursor": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
@@ -15774,34 +15051,11 @@
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz",
"integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
- "dev": true,
"requires": {
"hash-base": "^3.0.0",
"inherits": "^2.0.1"
}
},
- "roarr": {
- "version": "2.15.3",
- "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.3.tgz",
- "integrity": "sha512-AEjYvmAhlyxOeB9OqPUzQCo3kuAkNfuDk/HqWbZdFsqDFpapkTjiw+p4svNEoRLvuqNTxqfL+s+gtD4eDgZ+CA==",
- "optional": true,
- "requires": {
- "boolean": "^3.0.0",
- "detect-node": "^2.0.4",
- "globalthis": "^1.0.1",
- "json-stringify-safe": "^5.0.1",
- "semver-compare": "^1.0.0",
- "sprintf-js": "^1.1.2"
- },
- "dependencies": {
- "sprintf-js": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz",
- "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==",
- "optional": true
- }
- }
- },
"rsvp": {
"version": "4.8.5",
"resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz",
@@ -15850,8 +15104,7 @@
"safe-buffer": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz",
- "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==",
- "dev": true
+ "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg=="
},
"safe-regex": {
"version": "1.1.0",
@@ -15868,6 +15121,11 @@
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
"dev": true
},
+ "sakura.css": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/sakura.css/-/sakura.css-1.3.1.tgz",
+ "integrity": "sha512-J1Lj9yrAAs8OMseVDTIJPh5BxhZZEUz2VKkzj1u4HgjljVnIvVbCEfJKzjWolJTIs8SCxZ0murVJg0Ah7kK/yw=="
+ },
"sane": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz",
@@ -16009,14 +15267,6 @@
}
}
},
- "sanitize-filename": {
- "version": "1.6.3",
- "resolved": "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz",
- "integrity": "sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==",
- "requires": {
- "truncate-utf8-bytes": "^1.0.0"
- }
- },
"saxes": {
"version": "3.1.11",
"resolved": "https://registry.npmjs.org/saxes/-/saxes-3.1.11.tgz",
@@ -16069,7 +15319,8 @@
"semver-compare": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz",
- "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w="
+ "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=",
+ "dev": true
},
"send": {
"version": "0.17.1",
@@ -16117,15 +15368,6 @@
}
}
},
- "serialize-error": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-5.0.0.tgz",
- "integrity": "sha512-/VtpuyzYf82mHYTtI4QKtwHa79vAdU5OQpNPAmE/0UDdlGT0ZxHwC+J6gXkw29wwoVI8fMPsfcVHOwXtUQYYQA==",
- "optional": true,
- "requires": {
- "type-fest": "^0.8.0"
- }
- },
"serialize-javascript": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-2.1.2.tgz",
@@ -16245,7 +15487,6 @@
"version": "2.4.11",
"resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
"integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
- "dev": true,
"requires": {
"inherits": "^2.0.1",
"safe-buffer": "^5.0.1"
@@ -16312,6 +15553,12 @@
"integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==",
"dev": true
},
+ "simple-html-tokenizer": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.1.1.tgz",
+ "integrity": "sha1-BcLuxXn//+FFoDCsJs/qYbmA+r4=",
+ "dev": true
+ },
"sisteransi": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",
@@ -16465,6 +15712,77 @@
}
}
},
+ "socket.io-client": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.3.0.tgz",
+ "integrity": "sha512-cEQQf24gET3rfhxZ2jJ5xzAOo/xhZwK+mOqtGRg5IowZsMgwvHwnf/mCRapAAkadhM26y+iydgwsXGObBB5ZdA==",
+ "requires": {
+ "backo2": "1.0.2",
+ "base64-arraybuffer": "0.1.5",
+ "component-bind": "1.0.0",
+ "component-emitter": "1.2.1",
+ "debug": "~4.1.0",
+ "engine.io-client": "~3.4.0",
+ "has-binary2": "~1.0.2",
+ "has-cors": "1.1.0",
+ "indexof": "0.0.1",
+ "object-component": "0.0.3",
+ "parseqs": "0.0.5",
+ "parseuri": "0.0.5",
+ "socket.io-parser": "~3.3.0",
+ "to-array": "0.1.4"
+ },
+ "dependencies": {
+ "component-emitter": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
+ "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY="
+ },
+ "debug": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
+ "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
+ "requires": {
+ "ms": "^2.1.1"
+ }
+ }
+ }
+ },
+ "socket.io-parser": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.3.0.tgz",
+ "integrity": "sha512-hczmV6bDgdaEbVqhAeVMM/jfUfzuEZHsQg6eOmLgJht6G3mPKMxYm75w2+qhAQZ+4X+1+ATZ+QFKeOZD5riHng==",
+ "requires": {
+ "component-emitter": "1.2.1",
+ "debug": "~3.1.0",
+ "isarray": "2.0.1"
+ },
+ "dependencies": {
+ "component-emitter": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
+ "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY="
+ },
+ "debug": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
+ "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
+ "requires": {
+ "ms": "2.0.0"
+ }
+ },
+ "isarray": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz",
+ "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4="
+ },
+ "ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
+ }
+ }
+ },
"sockjs": {
"version": "0.3.20",
"resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.20.tgz",
@@ -17094,6 +16412,17 @@
}
}
},
+ "svg-inline-loader": {
+ "version": "0.8.2",
+ "resolved": "https://registry.npmjs.org/svg-inline-loader/-/svg-inline-loader-0.8.2.tgz",
+ "integrity": "sha512-kbrcEh5n5JkypaSC152eGfGcnT4lkR0eSfvefaUJkLqgGjRQJyKDvvEE/CCv5aTSdfXuc+N98w16iAojhShI3g==",
+ "dev": true,
+ "requires": {
+ "loader-utils": "^1.1.0",
+ "object-assign": "^4.0.1",
+ "simple-html-tokenizer": "^0.1.1"
+ }
+ },
"symbol-observable": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz",
@@ -17203,26 +16532,6 @@
}
}
},
- "temp": {
- "version": "0.9.1",
- "resolved": "https://registry.npmjs.org/temp/-/temp-0.9.1.tgz",
- "integrity": "sha512-WMuOgiua1xb5R56lE0eH6ivpVmg/lq2OHm4+LtT/xtEtPQ+sz6N3bBM6WZ5FvO1lO4IKIOb43qnhoc4qxP5OeA==",
- "dev": true,
- "requires": {
- "rimraf": "~2.6.2"
- },
- "dependencies": {
- "rimraf": {
- "version": "2.6.3",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
- "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
- "dev": true,
- "requires": {
- "glob": "^7.1.3"
- }
- }
- }
- },
"temp-dir": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz",
@@ -17380,6 +16689,18 @@
"resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.1.0.tgz",
"integrity": "sha512-ytxQvrb1cPc9WBEI/HSeYYoGD0kWnGEOR8RY6KomWLBVhqz0RgTwVO9dLrGz7dC+nN9llyI7OKAgRq8Vq4ZBSw=="
},
+ "tiny-secp256k1": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npmjs.org/tiny-secp256k1/-/tiny-secp256k1-1.1.5.tgz",
+ "integrity": "sha512-duE2hSLSQIpHGzmK48OgRrGTi+4OTkXLC6aa86uOYQ6LLCYZSarVKIAvEtY7MoXjoL6bOXMSerEGMzrvW4SkDw==",
+ "requires": {
+ "bindings": "^1.3.0",
+ "bn.js": "^4.11.8",
+ "create-hmac": "^1.1.7",
+ "elliptic": "^6.4.0",
+ "nan": "^2.13.2"
+ }
+ },
"tiny-warning": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz",
@@ -17394,33 +16715,17 @@
"os-tmpdir": "~1.0.2"
}
},
- "tmp-promise": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/tmp-promise/-/tmp-promise-1.1.0.tgz",
- "integrity": "sha512-8+Ah9aB1IRXCnIOxXZ0uFozV1nMU5xiu7hhFVUSxZ3bYu+psD4TzagCzVbexUCgNNGJnsmNDQlS4nG3mTyoNkw==",
- "dev": true,
- "requires": {
- "bluebird": "^3.5.0",
- "tmp": "0.1.0"
- },
- "dependencies": {
- "tmp": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.1.0.tgz",
- "integrity": "sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==",
- "dev": true,
- "requires": {
- "rimraf": "^2.6.3"
- }
- }
- }
- },
"tmpl": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz",
"integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=",
"dev": true
},
+ "to-array": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz",
+ "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA="
+ },
"to-arraybuffer": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz",
@@ -17453,11 +16758,6 @@
}
}
},
- "to-readable-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz",
- "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q=="
- },
"to-regex": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
@@ -17526,14 +16826,6 @@
"integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==",
"dev": true
},
- "truncate-utf8-bytes": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz",
- "integrity": "sha1-QFkjkJWS1W94pYGENLC3hInKXys=",
- "requires": {
- "utf8-byte-length": "^1.0.1"
- }
- },
"ts-jest": {
"version": "25.3.0",
"resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-25.3.0.tgz",
@@ -17655,7 +16947,8 @@
"tunnel": {
"version": "0.0.6",
"resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz",
- "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg=="
+ "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==",
+ "dev": true
},
"tunnel-agent": {
"version": "0.6.0",
@@ -17690,7 +16983,8 @@
"type-fest": {
"version": "0.8.1",
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
- "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA=="
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
+ "dev": true
},
"type-is": {
"version": "1.6.18",
@@ -17702,10 +16996,79 @@
"mime-types": "~2.1.24"
}
},
+ "typed-css-modules": {
+ "version": "0.6.4",
+ "resolved": "https://registry.npmjs.org/typed-css-modules/-/typed-css-modules-0.6.4.tgz",
+ "integrity": "sha512-2bL0dWY66wLGcz766HAwqJl4mnlUrx7D/dyUD9SPnab2QM1OsE6U842QhZhkEI5EoQdNziSLWqetHskdZ3MCxw==",
+ "dev": true,
+ "requires": {
+ "@types/css-modules-loader-core": "^1.1.0",
+ "camelcase": "^5.3.1",
+ "chalk": "^2.1.0",
+ "chokidar": "^3.4.0",
+ "css-modules-loader-core": "^1.1.0",
+ "glob": "^7.1.2",
+ "is-there": "^4.4.2",
+ "mkdirp": "^0.5.1",
+ "yargs": "^15.3.1"
+ },
+ "dependencies": {
+ "binary-extensions": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz",
+ "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==",
+ "dev": true
+ },
+ "chokidar": {
+ "version": "3.4.2",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.2.tgz",
+ "integrity": "sha512-IZHaDeBeI+sZJRX7lGcXsdzgvZqKv6sECqsbErJA4mHWfpRrD8B97kSFN4cQz6nGBGiuFia1MKR4d6c1o8Cv7A==",
+ "dev": true,
+ "requires": {
+ "anymatch": "~3.1.1",
+ "braces": "~3.0.2",
+ "fsevents": "~2.1.2",
+ "glob-parent": "~5.1.0",
+ "is-binary-path": "~2.1.0",
+ "is-glob": "~4.0.1",
+ "normalize-path": "~3.0.0",
+ "readdirp": "~3.4.0"
+ }
+ },
+ "glob-parent": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz",
+ "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==",
+ "dev": true,
+ "requires": {
+ "is-glob": "^4.0.1"
+ }
+ },
+ "is-binary-path": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
+ "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
+ "dev": true,
+ "requires": {
+ "binary-extensions": "^2.0.0"
+ }
+ },
+ "readdirp": {
+ "version": "3.4.0",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz",
+ "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==",
+ "dev": true,
+ "requires": {
+ "picomatch": "^2.2.1"
+ }
+ }
+ }
+ },
"typedarray": {
"version": "0.0.6",
"resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
- "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c="
+ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
+ "dev": true
},
"typedarray-to-buffer": {
"version": "3.1.5",
@@ -17722,15 +17085,20 @@
"integrity": "sha512-VrR/IiH00Z1tFP4vDGfwZ1esNqTiDMchBEXYY9kilT6wRGgFoCAlgkEUMHb1E3mB0FsfZhv756IF0+R+SFPfdg==",
"dev": true
},
+ "typeforce": {
+ "version": "1.18.0",
+ "resolved": "https://registry.npmjs.org/typeforce/-/typeforce-1.18.0.tgz",
+ "integrity": "sha512-7uc1O8h1M1g0rArakJdf0uLRSSgFcYexrVoKo+bzJd32gd4gDy2L/Z+8/FjPnU9ydY3pEnVPtr9FyscYY60K1g=="
+ },
"typesafe-actions": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/typesafe-actions/-/typesafe-actions-5.1.0.tgz",
"integrity": "sha512-bna6Yi1pRznoo6Bz1cE6btB/Yy8Xywytyfrzu/wc+NFW3ZF0I+2iCGImhBsoYYCOWuICtRO4yHcnDlzgo1AdNg=="
},
"typescript": {
- "version": "3.8.3",
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.8.3.tgz",
- "integrity": "sha512-MYlEfn5VrLNsgudQTVJeNaQFUAI7DkhnOjdpAp4T+ku1TfQClewlbSuTVHiA+8skNBgaf02TL/kLOvig4y3G8w==",
+ "version": "3.9.7",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.7.tgz",
+ "integrity": "sha512-BLbiRkiBzAwsjut4x/dsibSTB6yWpwT5qWmC2OfuCg3GgVQCSgMs4vEctYPhsaGtd0AeuuHMkjZ2h2WG8MSzRw==",
"dev": true
},
"uglify-js": {
@@ -17933,6 +17301,30 @@
}
}
},
+ "url-loader": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.0.tgz",
+ "integrity": "sha512-IzgAAIC8wRrg6NYkFIJY09vtktQcsvU8V6HhtQj9PTefbYImzLB1hufqo4m+RyM5N3mLx5BqJKccgxJS+W3kqw==",
+ "dev": true,
+ "requires": {
+ "loader-utils": "^2.0.0",
+ "mime-types": "^2.1.26",
+ "schema-utils": "^2.6.5"
+ },
+ "dependencies": {
+ "loader-utils": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz",
+ "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==",
+ "dev": true,
+ "requires": {
+ "big.js": "^5.2.2",
+ "emojis-list": "^3.0.0",
+ "json5": "^2.1.2"
+ }
+ }
+ }
+ },
"url-parse": {
"version": "1.4.7",
"resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.7.tgz",
@@ -17943,25 +17335,12 @@
"requires-port": "^1.0.0"
}
},
- "url-parse-lax": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz",
- "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=",
- "requires": {
- "prepend-http": "^2.0.0"
- }
- },
"use": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
"integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
"dev": true
},
- "utf8-byte-length": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz",
- "integrity": "sha1-9F8VDExm7uloGGUFq5P8u4rWv2E="
- },
"util": {
"version": "0.11.1",
"resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz",
@@ -17982,7 +17361,8 @@
"util-deprecate": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
- "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
+ "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
+ "dev": true
},
"util.promisify": {
"version": "1.0.0",
@@ -18052,6 +17432,14 @@
"resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz",
"integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw=="
},
+ "varuint-bitcoin": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/varuint-bitcoin/-/varuint-bitcoin-1.1.2.tgz",
+ "integrity": "sha512-4EVb+w4rx+YfVM32HQX42AbbT7/1f5zwAYhIujKXKk8NQK+JfRVl3pqT3hjNn/L+RstigmGGKVwHA/P0wgITZw==",
+ "requires": {
+ "safe-buffer": "^5.1.1"
+ }
+ },
"vary": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
@@ -19008,6 +18396,14 @@
"integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=",
"dev": true
},
+ "wif": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/wif/-/wif-2.0.6.tgz",
+ "integrity": "sha1-CNP1IFbGZnkplyb63g1DKudLRwQ=",
+ "requires": {
+ "bs58check": "<3.0.0"
+ }
+ },
"windows-release": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.3.0.tgz",
@@ -19105,7 +18501,8 @@
"wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
- "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
+ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
+ "dev": true
},
"write": {
"version": "1.0.3",
@@ -19140,23 +18537,16 @@
"integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==",
"dev": true
},
- "xmlbuilder": {
- "version": "9.0.7",
- "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz",
- "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=",
- "dev": true
- },
"xmlchars": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz",
"integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==",
"dev": true
},
- "xmldom": {
- "version": "0.1.31",
- "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.31.tgz",
- "integrity": "sha512-yS2uJflVQs6n+CyjHoaBmVSqIDevTAWrzMmjG1Gc7h1qQ7uVozNhEPJAwZXWyGQ/Gafo3fCwrcaokezLPupVyQ==",
- "dev": true
+ "xmlhttprequest-ssl": {
+ "version": "1.5.5",
+ "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz",
+ "integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4="
},
"xregexp": {
"version": "4.3.0",
@@ -19284,14 +18674,10 @@
}
}
},
- "yauzl": {
- "version": "2.10.0",
- "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz",
- "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=",
- "requires": {
- "buffer-crc32": "~0.2.3",
- "fd-slicer": "~1.1.0"
- }
+ "yeast": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz",
+ "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk="
},
"yn": {
"version": "3.1.1",
diff --git a/package.json b/package.json
index d9cb491..e9e3cb3 100644
--- a/package.json
+++ b/package.json
@@ -2,17 +2,14 @@
"name": "orange",
"productName": "Orange",
"version": "0.0.0-see-the-releases-page-on-github",
- "description": "Bitcoin blockchain explorer for Bitcoin Core",
+ "description": "Bitcoin PoS software",
"license": "Unlicense",
- "main": "main/main.js",
"engines": {
"node": "^12.0.0",
"npm": "^6.0.0"
},
"scripts": {
- "build:prod:main": "cross-env NODE_ENV=production npm run _webpack-build-main",
- "build:prod:renderer": "cross-env NODE_ENV=production npm run _webpack-build-renderer",
- "build": "run-s _rimraf-artifacts _build",
+ "build": "cross-env NODE_ENV=production npm run _webpack-build-main",
"build-action": "cross-env NODE_ENV=production TS_NODE_PROJECT='commonjsTsconfig/tsconfig.json' webpack --config webpack/webpack.action.config.ts",
"generate-workflows": "TS_NODE_PROJECT='commonjsTsconfig/tsconfig.json' ts-node .github/generateWorkflows/generateWorkflows.ts",
"check:coverage": "npm run _test-with-coverage",
@@ -21,22 +18,17 @@
"check:typescript": "npm run _typescript",
"check:depcheck": "depcheck",
"check": "run-p --aggregate-output -cln check:*",
- "create-executable": "cross-env createExecutable=true TS_NODE_PROJECT='commonjsTsconfig/tsconfig.json' ts-node .github/action/createExecutable.ts",
- "develop:main": "cross-env NODE_ENV=development run-s _webpack-build-main _electron",
- "develop:renderer": "cross-env NODE_ENV=development run-p -ln _webpack-server '_typescript -- -w'",
+ "develop": "cross-env NODE_ENV=development run-p -ln _webpack-server '_typescript -- -w' _tcm",
"trigger-release": "cross-env TS_NODE_PROJECT='commonjsTsconfig/tsconfig.json' ts-node scripts/triggerRelease.ts",
"see-coverage": "run-s --continue-on-error --silent '_test-with-coverage -- --coverageThreshold={}' _open-coverage-results",
"test": "jest",
"_build": "run-p --aggregate-output -cln build:*:*",
- "_create-executable": "node .github/action/createExecutable.js && rimraf .github/action/createExecutable.js",
- "_electron": "electron ./artifacts/webpack",
"_open-coverage-results": "open-cli coverage/lcov-report/index.html",
"_rimraf-artifacts": "rimraf artifacts",
"_test-with-coverage": "npm run test -- --coverage",
"_typescript": "tsc --noEmit",
- "_webpack-build-main": "cross-env TS_NODE_PROJECT='commonjsTsconfig/tsconfig.json' webpack --config webpack/webpack.main.config.ts",
- "_webpack-build-renderer": "cross-env TS_NODE_PROJECT='commonjsTsconfig/tsconfig.json' webpack --config webpack/webpack.renderer.config.ts",
- "_webpack-server": "cross-env TS_NODE_PROJECT='commonjsTsconfig/tsconfig.json' webpack-dev-server --config webpack/webpack.renderer.dev.config.ts"
+ "_tcm": "tcm src -w",
+ "_webpack-server": "cross-env TS_NODE_PROJECT='commonjsTsconfig/tsconfig.json' webpack-dev-server --config webpack/webpack.dev.config.ts"
},
"devDependencies": {
"@actions/artifact": "^0.3.2",
@@ -52,16 +44,14 @@
"@babel/preset-typescript": "^7.8.3",
"@hh.ru/babel-plugin-react-displayname": "0.5.3",
"@hot-loader/react-dom": "^16.11.0",
- "@material-ui/core": "^4.9.11",
- "@material-ui/icons": "^4.5.1",
+ "@teamsupercell/typings-for-css-modules-loader": "^2.2.0",
"@testing-library/jest-dom": "^5.5.0",
"@testing-library/react": "^9.5.0",
"@testing-library/user-event": "^10.1.0",
"@types/archiver": "^3.1.0",
"@types/bluebird": "^3.5.29",
"@types/copy-webpack-plugin": "^5.0.1",
- "@types/electron-devtools-installer": "^2.2.0",
- "@types/electron-packager": "^14.0.0",
+ "@types/create-hash": "^1.2.2",
"@types/fs-extra": "^8.1.0",
"@types/html-webpack-plugin": "^3.2.3",
"@types/jest": "^25.1.1",
@@ -74,6 +64,7 @@
"@types/react-virtualized-auto-sizer": "^1.0.0",
"@types/react-window": "^1.8.1",
"@types/shelljs": "^0.8.7",
+ "@types/socket.io-client": "^1.4.33",
"@types/testing-library__jest-dom": "^5.0.3",
"@types/webpack": "^4.41.13",
"@types/webpack-dev-server": "^3.11.0",
@@ -90,9 +81,6 @@
"cross-env": "^7.0.2",
"css-loader": "^3.4.2",
"depcheck": "^0.9.2",
- "electron-devtools-installer": "^2.2.4",
- "electron-packager": "^14.2.1",
- "electron-winstaller": "^4.0.0",
"eslint": "^6.8.0",
"eslint-config-airbnb": "^18.0.1",
"eslint-config-prettier": "^6.9.0",
@@ -105,6 +93,7 @@
"file-loader": "^5.0.2",
"formik": "^2.1.4",
"fs-extra": "^9.0.0",
+ "html-webpack-inline-source-plugin": "0.0.10",
"html-webpack-plugin": "^3.2.0",
"husky": "^3.1.0",
"jest": "^25.1.0",
@@ -119,12 +108,15 @@
"shelljs": "^0.8.3",
"source-map-loader": "^0.2.4",
"style-loader": "^1.1.3",
+ "svg-inline-loader": "^0.8.2",
"ts-jest": "^25.2.0",
"ts-node": "^8.10.1",
"tsconfig-paths": "^3.9.0",
"tsconfig-paths-webpack-plugin": "^3.2.0",
+ "typed-css-modules": "^0.6.4",
"typeface-roboto": "0.0.75",
- "typescript": "^3.7.5",
+ "typescript": "^3.9.7",
+ "url-loader": "^4.1.0",
"wait-for-expect": "^3.0.2",
"webpack": "^4.41.5",
"webpack-cli": "^3.3.10",
@@ -134,19 +126,31 @@
},
"dependencies": {
"@material-ui/lab": "^4.0.0-alpha.50",
+ "bip32": "^2.0.5",
+ "bip39": "^3.0.2",
+ "bitcoinjs-lib": "^5.1.10",
"bluebird": "^3.7.2",
+ "bs58check": "^2.1.2",
"clsx": "^1.0.4",
- "electron": "^8.2.4",
+ "coinselect": "^3.1.12",
+ "create-hash": "^1.2.0",
+ "idb": "^5.0.4",
+ "localforage": "^1.9.0",
"lodash": "^4.17.15",
"moment": "^2.24.0",
+ "normalize.css": "^8.0.1",
"react": "^16.12.0",
"react-dom": "^16.12.0",
+ "react-icons": "^3.11.0",
"react-redux": "^7.1.3",
"react-router-dom": "^5.1.2",
"react-virtualized-auto-sizer": "^1.0.2",
"react-window": "^1.8.5",
"redux": "^4.0.5",
"redux-thunk": "^2.3.0",
+ "reselect": "^4.0.0",
+ "sakura.css": "^1.3.1",
+ "socket.io-client": "^2.3.0",
"typesafe-actions": "^5.1.0",
"yup": "^0.28.4"
},
diff --git a/scripts/generateNonce.sh b/scripts/generateNonce.sh
deleted file mode 100644
index 118d5c9..0000000
--- a/scripts/generateNonce.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/usr/bin/env bash
-
-echo "Creating nonce file at $NONCE_FILE"
-
-NONCE=$(node -e console.log\(crypto.randomBytes\(18\).toString\(\"base64\"\)\))
-
-echo $NONCE > $NONCE_FILE
diff --git a/src/App/App.tsx b/src/App/App.tsx
new file mode 100644
index 0000000..92f6b39
--- /dev/null
+++ b/src/App/App.tsx
@@ -0,0 +1,59 @@
+import "normalize.css";
+import React, { StrictMode, useEffect, useState } from "react";
+import { Provider } from "react-redux";
+import { BrowserRouter as Router, Route, Switch } from "react-router-dom";
+import { store, StoreCreator } from "src/data/StoreCreator";
+import "src/styles.css";
+import { Actions } from "src/data/Actions";
+import { Home } from "./Home/Home";
+import { Menu } from "./Menu/Menu";
+import { Settings } from "./Settings/Settings";
+import { Wallet } from "./Wallet/Wallet";
+import { LoadingApp } from "./LoadingApp/LoadingApp";
+
+const App = () => {
+ const [isLoadingState, setLoadingState] = useState(true);
+
+ useEffect(() => {
+ const request = async () => {
+ const state = await StoreCreator.loadState();
+
+ store.dispatch(Actions.setState(state));
+ setLoadingState(false);
+ };
+
+ request();
+ }, []);
+
+ return (
+
+
+ {isLoadingState ? (
+
+ ) : (
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ )}
+
+
+ );
+};
+
+export const getApp = () => App;
diff --git a/src/App/Home/Home.tsx b/src/App/Home/Home.tsx
new file mode 100644
index 0000000..ca1b3fd
--- /dev/null
+++ b/src/App/Home/Home.tsx
@@ -0,0 +1,36 @@
+import React from "react";
+import { MdAddCircle, MdCloudDownload } from "react-icons/md";
+import { cn } from "src/cn";
+import { LinkButton } from "src/commonComponents/LinkButton/LinkButton";
+import styles from "src/styles.css";
+import { Icon } from "../common/Icon";
+import { Page } from "../common/Page";
+
+export const Home = () => (
+
+
+
+
+
+
+
+ Create new wallet
+
+
+
+
+
+
+
+ Import wallet
+
+
+
+);
diff --git a/src/App/LoadingApp/LoadingApp.tsx b/src/App/LoadingApp/LoadingApp.tsx
new file mode 100644
index 0000000..0bf2fd4
--- /dev/null
+++ b/src/App/LoadingApp/LoadingApp.tsx
@@ -0,0 +1,3 @@
+import React from "react";
+
+export const LoadingApp = () =>
Loading app...
;
diff --git a/src/App/Menu/Menu.tsx b/src/App/Menu/Menu.tsx
new file mode 100644
index 0000000..a7d83b0
--- /dev/null
+++ b/src/App/Menu/Menu.tsx
@@ -0,0 +1,31 @@
+import React from "react";
+import { Link } from "react-router-dom";
+import { BackButton } from "src/commonComponents/BackButton/BackButton";
+import { MdAccountBalanceWallet, MdSettings } from "react-icons/md";
+import styles from "src/styles.css";
+import { cn } from "src/cn";
+import { LinkText } from "src/commonComponents/LinkText/LinkText";
+import { Page } from "../common/Page";
+import { Icon } from "../common/Icon";
+
+export const Menu = () => (
+ }>
+
+
+
+
+ Wallet
+
+
+
+
+
+
+
+
+
+ Settings
+
+
+
+);
diff --git a/src/renderer/App/README.md b/src/App/README.md
similarity index 72%
rename from src/renderer/App/README.md
rename to src/App/README.md
index ae1fddc..4c332ab 100644
--- a/src/renderer/App/README.md
+++ b/src/App/README.md
@@ -1,5 +1,5 @@
-Folders represent the component nesting tree. The root component is `Index`.
-Its descendants, such as `Explorer`, are nested inside of `Index/` folder.
+Folders represent the component nesting tree. The root component is `Index`. Its
+descendants, such as `Explorer`, are nested inside of `Index/` folder.
Descendants of `Explorer` are inside `Explorer/` and so on.
One exception is the `components/` folder, which has re-usable components that
diff --git a/src/App/Settings/Settings.tsx b/src/App/Settings/Settings.tsx
new file mode 100644
index 0000000..c3ce92d
--- /dev/null
+++ b/src/App/Settings/Settings.tsx
@@ -0,0 +1,23 @@
+import React from "react";
+import { BackButton } from "src/commonComponents/BackButton/BackButton";
+import { cn } from "src/cn";
+import styles from "src/styles.css";
+import { Page } from "../common/Page";
+
+export const Settings = () => (
+ }>
+
+
+
+ Use testnet
+
+
+);
diff --git a/src/App/Wallet/Wallet.tsx b/src/App/Wallet/Wallet.tsx
new file mode 100644
index 0000000..5fcc78a
--- /dev/null
+++ b/src/App/Wallet/Wallet.tsx
@@ -0,0 +1,21 @@
+import React from "react";
+import { Route, Switch } from "react-router-dom";
+import { WalletCreate } from "./WalletCreate/WalletCreate";
+import { WalletHome } from "./WalletHome/WalletHome";
+import { WalletImport } from "./WalletImport/WalletImport";
+
+export const Wallet = () => (
+
+
+
+
+
+
+
+
+
+
+
+
+
+);
diff --git a/src/App/Wallet/WalletCreate/WalletCreate.tsx b/src/App/Wallet/WalletCreate/WalletCreate.tsx
new file mode 100644
index 0000000..a4b387e
--- /dev/null
+++ b/src/App/Wallet/WalletCreate/WalletCreate.tsx
@@ -0,0 +1,41 @@
+import React, { useEffect, useState } from "react";
+import { wallet } from "src/data/WalletThunks";
+import { Page } from "src/App/common/Page";
+
+import s from "src/styles.css";
+import { cn } from "src/cn";
+import { Switch, Route } from "react-router-dom";
+import { WalletCreateSecret } from "./WalletCreateSecret/WalletCreateSecret";
+import { WalletCreateConfirm } from "./WalletCreateConfirm/WalletCreateConfirm";
+
+const useGenerateMnemonic = () => {
+ const [mnemonic, setMnemonic] = useState(null);
+
+ useEffect(() => {
+ setMnemonic(wallet.generateMnemonic());
+ }, []);
+
+ return mnemonic;
+};
+
+export const WalletCreate = () => {
+ const mnemonic = useGenerateMnemonic();
+
+ return (
+ <>
+ {mnemonic ? (
+
+
+
+
+
+
+
+
+
+ ) : (
+ Creating secret...
+ )}
+ >
+ );
+};
diff --git a/src/App/Wallet/WalletCreate/WalletCreateConfirm/WalletCreateConfirm.tsx b/src/App/Wallet/WalletCreate/WalletCreateConfirm/WalletCreateConfirm.tsx
new file mode 100644
index 0000000..9f61730
--- /dev/null
+++ b/src/App/Wallet/WalletCreate/WalletCreateConfirm/WalletCreateConfirm.tsx
@@ -0,0 +1,127 @@
+import { useFormik } from "formik";
+import React from "react";
+import { BsExclamationCircle } from "react-icons/bs";
+import { FiChevronLeft } from "react-icons/fi";
+import { Link } from "react-router-dom";
+import { Icon } from "src/App/common/Icon";
+import { Page } from "src/App/common/Page";
+import { cn } from "src/cn";
+import { wallet } from "src/data/WalletThunks";
+import styles from "src/styles.css";
+import { LinkButton } from "src/commonComponents/LinkButton/LinkButton";
+import { Button } from "src/commonComponents/Button/Button";
+import { BackButton } from "src/commonComponents/BackButton/BackButton";
+import { Textarea } from "src/commonComponents/Textarea/Textarea";
+import { useSetInitialMasterPublicKey } from "../../common/useSetInitialMasterPublicKey";
+
+const useConfiguredFormik = (mnemonic: string) =>
+ useFormik({
+ validateOnMount: true,
+ initialValues: {
+ enteredMnemonic: "",
+ iUnderstand: false,
+ },
+ validate: values => {
+ const errors = {
+ enteredMnemonic: "",
+ iUnderstand: "",
+ };
+
+ if (values.enteredMnemonic.trim() !== mnemonic) {
+ errors.enteredMnemonic =
+ "The secret phrase you entered does not match the generated phrase";
+ }
+
+ if (values.iUnderstand !== true) {
+ errors.iUnderstand = "error";
+ }
+
+ if (Object.values(errors).every(errorValue => errorValue.length === 0)) {
+ return {};
+ }
+
+ return errors;
+ },
+ onSubmit: values => {
+ alert(JSON.stringify(values, null, 2));
+ },
+ });
+
+export const WalletCreateConfirm: React.FC<{ mnemonic: string }> = p => {
+ const formik = useConfiguredFormik(p.mnemonic);
+ const setInitialMasterPublicKey = useSetInitialMasterPublicKey();
+
+ return (
+ }>
+
+
+
+
+ {formik.errors.enteredMnemonic}
+
+
+
+ Orange will not store your secret but will ask you again for it before
+ you can send money out.
+
+
+
+
+
+
+
+ I understand that Orange does not store this secret phrase but I will
+ need it to send money out.
+
+
+
+
+
+
+
+
+
{
+ const masterPublicKey = await wallet.getMasterPublicKey(p.mnemonic);
+ setInitialMasterPublicKey(masterPublicKey);
+ }}
+ >
+ Open wallet
+
+
+
+ );
+};
diff --git a/src/App/Wallet/WalletCreate/WalletCreateSecret/WalletCreateSecret.tsx b/src/App/Wallet/WalletCreate/WalletCreateSecret/WalletCreateSecret.tsx
new file mode 100644
index 0000000..3176933
--- /dev/null
+++ b/src/App/Wallet/WalletCreate/WalletCreateSecret/WalletCreateSecret.tsx
@@ -0,0 +1,37 @@
+import React from "react";
+import { Page } from "src/App/common/Page";
+import { cn } from "src/cn";
+import { BackButton } from "src/commonComponents/BackButton/BackButton";
+import { LinkButton } from "src/commonComponents/LinkButton/LinkButton";
+import { P } from "src/commonComponents/P/P";
+import styles from "src/styles.css";
+
+export const WalletCreateSecret: React.FC<{
+ mnemonic: string;
+}> = p => (
+ }>
+
+ Below is the secret phrase to unlock your money. You must keep it safe. If
+ you lose it, you lose your money. If somebody sees it, they can steal your
+ money. Orange does not store this secret .
+
+
+
+ {p.mnemonic}
+
+
+
+
+
+
+ OK
+
+
+
+);
diff --git a/src/App/Wallet/WalletHome/WalletHome.tsx b/src/App/Wallet/WalletHome/WalletHome.tsx
new file mode 100644
index 0000000..d702757
--- /dev/null
+++ b/src/App/Wallet/WalletHome/WalletHome.tsx
@@ -0,0 +1,101 @@
+import React, { useEffect, useState } from "react";
+import { useDispatch, useSelector } from "react-redux";
+import { useHistory } from "react-router-dom";
+import { Page } from "src/App/common/Page";
+import { cn } from "src/cn";
+import { WalletThunks } from "src/data/WalletThunks";
+import styles from "src/styles.css";
+import { TxsWithBalance } from "src/data/Wallet";
+
+const useGlobalState = () => ({
+ walletMasterPublicKey: useSelector(state => state.walletMasterPublicKey),
+ walletStats: useSelector(state => state.walletStats),
+ walletTxs: useSelector(state => state.walletTxs),
+});
+
+const useLoadWallet = () => {
+ const dispatch = useDispatch();
+ const [isLoadingWallet, setLoadingWallet] = useState(false);
+
+ return {
+ loadWallet: async (walletMasterPublicKey: string) => {
+ setLoadingWallet(true);
+ await dispatch(WalletThunks.loadWallet(walletMasterPublicKey));
+ setLoadingWallet(false);
+
+ return isLoadingWallet;
+ },
+
+ isLoadingWallet,
+ };
+};
+
+const useInitialLoadWallet = () => {
+ const walletMasterPublicKey = useSelector(
+ state => state.walletMasterPublicKey,
+ );
+ const walletStats = useSelector(state => state.walletStats);
+ const history = useHistory();
+ const { loadWallet } = useLoadWallet();
+ const [isInitialLoading, setInitialLoading] = useState(true);
+
+ useEffect(() => {
+ const request = async () => {
+ if (!walletMasterPublicKey) {
+ history.push("/");
+ return;
+ }
+
+ if (!walletStats) {
+ await loadWallet(walletMasterPublicKey);
+ }
+
+ setInitialLoading(false);
+ };
+
+ request();
+
+ // eslint-disable-next-line react-hooks/exhaustive-deps
+ }, []);
+
+ return isInitialLoading;
+};
+
+const listTransactions = (txs: TxsWithBalance) => (
+
+ {txs.map(tx => (
+
+ Date: {tx.status.block_time}, amount: {tx.balance}
+
+ ))}
+
+);
+
+export const WalletHome = () => {
+ const globalState = useGlobalState();
+ const isInitialLoading = useInitialLoadWallet();
+ const { isLoadingWallet: isRefreshingWallet } = useLoadWallet();
+ const isLoadingWallet = isInitialLoading || isRefreshingWallet;
+
+ return (
+
+ {isLoadingWallet ? (
+ {isRefreshingWallet ? "Refreshing..." : "Loading wallet..."}
+ ) : (
+ <>
+
+ §
+ {globalState.walletStats?.balance.toLocaleString()}
+
+
+ Transactions
+ Pending
+ {listTransactions(globalState.walletTxs!.mempool)}
+
+ Confirmed
+ {listTransactions(globalState.walletTxs!.confirmed)}
+ >
+ )}
+
+ );
+};
diff --git a/src/App/Wallet/WalletImport/WalletImport.tsx b/src/App/Wallet/WalletImport/WalletImport.tsx
new file mode 100644
index 0000000..b6396a2
--- /dev/null
+++ b/src/App/Wallet/WalletImport/WalletImport.tsx
@@ -0,0 +1,83 @@
+import { useFormik } from "formik";
+import React from "react";
+import { BsExclamationCircle } from "react-icons/bs";
+import { Icon } from "src/App/common/Icon";
+import { Page } from "src/App/common/Page";
+import { cn } from "src/cn";
+import { BackButton } from "src/commonComponents/BackButton/BackButton";
+import { Button } from "src/commonComponents/Button/Button";
+import { Textarea } from "src/commonComponents/Textarea/Textarea";
+import { Wallet } from "src/data/Wallet";
+import styles from "src/styles.css";
+import { useSetInitialMasterPublicKey } from "../common/useSetInitialMasterPublicKey";
+
+const useConfiguredFormik = () =>
+ useFormik({
+ validateOnMount: true,
+ initialValues: {
+ masterPublicKey: "",
+ },
+ validate: values => {
+ const errors = {
+ masterPublicKey: "",
+ };
+
+ if (!Wallet.isValidMasterPublicKey(values.masterPublicKey.trim())) {
+ errors.masterPublicKey = "Please enter a valid master public key";
+ }
+
+ if (errors.masterPublicKey.length === 0) {
+ return {};
+ }
+
+ return errors;
+ },
+ onSubmit: () => undefined,
+ });
+
+export const WalletImport = () => {
+ const formik = useConfiguredFormik();
+ const setInitialMasterPublicKey = useSetInitialMasterPublicKey();
+
+ return (
+ }>
+
+
+
+
+ {formik.errors.masterPublicKey}
+
+
+
+
+ setInitialMasterPublicKey(formik.values.masterPublicKey)
+ }
+ >
+ Import
+
+
+
+ );
+};
diff --git a/src/App/Wallet/WalletOpen/WalletOpen.tsx b/src/App/Wallet/WalletOpen/WalletOpen.tsx
new file mode 100644
index 0000000..54111f1
--- /dev/null
+++ b/src/App/Wallet/WalletOpen/WalletOpen.tsx
@@ -0,0 +1,32 @@
+import React from "react";
+
+import s from "src/styles.css";
+import { cn } from "src/cn";
+
+export const WalletOpen = () => (
+ <>
+
+
+ Enter your seed phrase or master public key
+
+
+
+
+
+
+ Make a new key
+
+
+
+ Open
+
+
+
+ >
+);
diff --git a/src/App/Wallet/WalletReceive/WalletReceive.tsx b/src/App/Wallet/WalletReceive/WalletReceive.tsx
new file mode 100644
index 0000000..ae94e52
--- /dev/null
+++ b/src/App/Wallet/WalletReceive/WalletReceive.tsx
@@ -0,0 +1,20 @@
+import React from "react";
+import { useSelector } from "react-redux";
+
+export const WalletReceive = () => {
+ const walletStats = useSelector(state => state.walletStats);
+
+ if (!walletStats) {
+ return null;
+ }
+
+ return (
+
+
Receive
+
Your current Bitcoin receiving address is:
+
+ {walletStats.nextUnusedAddress.address}
+
+
+ );
+};
diff --git a/src/App/Wallet/WalletSend/WalletSend.tsx b/src/App/Wallet/WalletSend/WalletSend.tsx
new file mode 100644
index 0000000..ad07467
--- /dev/null
+++ b/src/App/Wallet/WalletSend/WalletSend.tsx
@@ -0,0 +1,79 @@
+import React, { useState } from "react";
+import { useSelector } from "react-redux";
+import { useMnemonicTextarea } from "../common/useMnemonicTextarea";
+import { wallet } from "src/data/WalletThunks";
+
+export const WalletSend = () => {
+ const walletStats = useSelector(state => state.walletStats);
+ const [targetAddress, setTargetAddress] = useState("");
+ const [feeRate, setFeeRate] = useState("");
+ const [amount, setAmount] = useState("");
+ const [transaction, setTransaction] = useState(null);
+
+ if (!walletStats) {
+ return null;
+ }
+
+ const createTransaction = async () => {
+ const payload = await wallet.createTransaction(
+ walletStats.addressesWithUtxo,
+ { address: targetAddress, value: parseInt(amount) },
+ parseInt(feeRate),
+ walletStats.nextUnusedChangeAddress.address,
+ mnemonic,
+ );
+
+ setTransaction(payload.transaction.toHex());
+ };
+
+ const { mnemonicTextarea, mnemonic } = useMnemonicTextarea();
+
+ return (
+
+
Send
+
+
+ Address
+ setTargetAddress(event.target.value)}
+ />
+
+
+
+ Amount
+ setAmount(event.target.value)}
+ />
+
+
+
+ Fee: sats/kb
+ setFeeRate(event.target.value)}
+ />
+
+
+
+ Secret seed phrase
+ {mnemonicTextarea}
+
+
+
+ createTransaction()}>
+ Preview
+
+
+
+ {transaction ?
{JSON.stringify(transaction, null, 2)} : null}
+
+ );
+};
diff --git a/src/App/Wallet/common/useMnemonicTextarea.tsx b/src/App/Wallet/common/useMnemonicTextarea.tsx
new file mode 100644
index 0000000..c0a7fb7
--- /dev/null
+++ b/src/App/Wallet/common/useMnemonicTextarea.tsx
@@ -0,0 +1,20 @@
+import React, { useState } from "react";
+
+export const useMnemonicTextarea = () => {
+ const [mnemonic, setMnemonic] = useState("");
+
+ return {
+ mnemonicTextarea: (
+