Compare commits
27 Commits
Author | SHA1 | Date | |
---|---|---|---|
1e1149eb78 | |||
139fb37bef | |||
4c22335313 | |||
5a09cdd79a | |||
fc83856e11 | |||
c1e368b3b0 | |||
db449e9fe2 | |||
|
b1f95b488c | ||
|
fc76478b8a | ||
4afadb9502 | |||
|
bff6749a91 | ||
a4c15a4d3f | |||
3ead0ee0d0 | |||
aa794637d1 | |||
|
956c84c17e | ||
ccb31956a8 | |||
01122eb7a8 | |||
740143ce7d | |||
4150076469 | |||
7330d03c3c | |||
06726b019d | |||
61f445abe5 | |||
ef73da7ec5 | |||
b9fd355a0e | |||
39ec9a2e31 | |||
6f77228f73 | |||
475f53cdcf |
36
.gitea/workflows/publish-webapp.yaml
Normal file
36
.gitea/workflows/publish-webapp.yaml
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
name: Publish ApplicationRecord to Registry
|
||||||
|
on:
|
||||||
|
release:
|
||||||
|
types: [published]
|
||||||
|
|
||||||
|
env:
|
||||||
|
CERC_REGISTRY_USER_KEY: ${{ secrets.CICD_VAASL_LACONIC_USER_KEY }}
|
||||||
|
CERC_REGISTRY_BOND_ID: ${{ secrets.CICD_VAASL_LACONIC_BOND_ID }}
|
||||||
|
CERC_REGISTRY_DEPLOYMENT_HOSTNAME: ${{ vars.CERC_REGISTRY_DEPLOYMENT_HOSTNAME }}
|
||||||
|
LACONIC_HOSTED_CONFIG_services_wns_server: ${{ vars.LACONIC_HOSTED_CONFIG_SERVICES_WNS_SERVER }}
|
||||||
|
LACONIC_HOSTED_CONFIG_services_wns_webui: ${{ vars.LACONIC_HOSTED_CONFIG_SERVICES_WNS_WEBUI }}
|
||||||
|
LACONIC_HOSTED_CONFIG_services_signal_api: ${{ vars.LACONIC_HOSTED_CONFIg_SERVICES_SIGNAL_API }}
|
||||||
|
LACONIC_HOSTED_CONFIG_app_api_url: ${{ vars.LACONIC_HOSTED_CONFIg_APP_API_URL }}
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
cns_publish:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: "Clone project repository"
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
- name: Use Node.js
|
||||||
|
uses: actions/setup-node@v3
|
||||||
|
with:
|
||||||
|
node-version: 18
|
||||||
|
- name: "Enable Yarn"
|
||||||
|
run: corepack enable
|
||||||
|
- name: "Install registry CLI"
|
||||||
|
run: |
|
||||||
|
npm config set @cerc-io:registry https://git.vdb.to/api/packages/cerc-io/npm/
|
||||||
|
npm install -g @cerc-io/laconic-registry-cli
|
||||||
|
- name: "Install jq"
|
||||||
|
run: apt -y update && apt -y install jq
|
||||||
|
- name: "Publish Application Record"
|
||||||
|
run: scripts/publish-app-record.sh
|
||||||
|
- name: "Request Deployment"
|
||||||
|
run: scripts/request-app-deployment.sh
|
@ -17,6 +17,9 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
curl -fsSL -o /usr/local/bin/yarn https://github.com/yarnpkg/yarn/releases/download/v1.22.21/yarn-1.22.21.js
|
curl -fsSL -o /usr/local/bin/yarn https://github.com/yarnpkg/yarn/releases/download/v1.22.21/yarn-1.22.21.js
|
||||||
chmod +x /usr/local/bin/yarn
|
chmod +x /usr/local/bin/yarn
|
||||||
|
- name: Install jq
|
||||||
|
run: |
|
||||||
|
apt update && apt install -y jq
|
||||||
- name: Use Node.js ${{ matrix.node-version }}
|
- name: Use Node.js ${{ matrix.node-version }}
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
@ -24,7 +27,7 @@ jobs:
|
|||||||
- run: yarn
|
- run: yarn
|
||||||
- name: Run yarn build
|
- name: Run yarn build
|
||||||
run: |
|
run: |
|
||||||
yarn dist
|
LACONIC_HOSTED_CONFIG_FILE=config-hosted.yml yarn dist
|
||||||
- name: Configure git.vdb.to npm registry
|
- name: Configure git.vdb.to npm registry
|
||||||
run: |
|
run: |
|
||||||
npm config set registry https://git.vdb.to/api/packages/cerc-io/npm/
|
npm config set registry https://git.vdb.to/api/packages/cerc-io/npm/
|
||||||
|
29
README.md
29
README.md
@ -7,22 +7,17 @@ User interface for submitting and reading records registered on Laconic.
|
|||||||
## Development
|
## Development
|
||||||
|
|
||||||
* Clone the required repos:
|
* Clone the required repos:
|
||||||
* [laconicd](https://github.com/cerc-io/laconicd)
|
* [laconicd](https://git.vdb.to/cerc-io/laconicd)
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone git@github.com:cerc-io/laconicd.git
|
git clone git@git.vdb.to:cerc-io/laconicd.git
|
||||||
```
|
```
|
||||||
|
|
||||||
* Run the `laconicd` chain:
|
* Run the `laconicd` chain:
|
||||||
* In [laconicd](https://github.com/cerc-io/laconicd) repo, start the chain
|
* In [laconicd](https://git.vdb.to/cerc-io/laconicd) repo, start the chain
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
./init.sh
|
./scripts/init.sh clean
|
||||||
```
|
|
||||||
* For auction functionality enabled, add this environment variable:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
TEST_AUCTION_ENABLED=true ./init.sh
|
|
||||||
```
|
```
|
||||||
|
|
||||||
* Run the laconic-console app
|
* Run the laconic-console app
|
||||||
@ -45,21 +40,21 @@ User interface for submitting and reading records registered on Laconic.
|
|||||||
|
|
||||||
* Start the app:
|
* Start the app:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
CONFIG_FILE=config-local.yml yarn start
|
CONFIG_FILE=config-local.yml yarn start
|
||||||
```
|
```
|
||||||
|
|
||||||
* Open console at <http://localhost:8080>
|
* Open console at <http://localhost:8080>
|
||||||
|
|
||||||
* To view records in the console, the test suite in laconic-sdk can be run
|
* To view records in the console, the test suite in registry-sdk can be run
|
||||||
|
|
||||||
* Clone the [laconic-sdk](https://github.com/cerc-io/laconic-sdk) repo:
|
* Clone the [registry-sdk](https://git.vdb.to/cerc-io/registry-sdk) repo:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone git@github.com:cerc-io/laconic-sdk.git
|
git clone git@git.vdb.to:cerc-io/registry-sdk.git
|
||||||
```
|
```
|
||||||
|
|
||||||
* In [laconic-sdk](https://github.com/cerc-io/laconic-sdk) repo, copy [.env.example](https://github.com/cerc-io/laconic-sdk/blob/main/.env.example) file and create a `.env` file
|
* In [registry-sdk](https://git.vdb.to/cerc-io/registry-sdk) repo, copy [.env.example](https://git.vdb.to/cerc-io/registry-sdk/blob/main/.env.example) file and create a `.env` file
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cp .env.example .env
|
cp .env.example .env
|
||||||
@ -68,7 +63,7 @@ User interface for submitting and reading records registered on Laconic.
|
|||||||
* Export the private key using:
|
* Export the private key using:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
laconicd keys export mykey --unarmored-hex --unsafe
|
laconicd keys export alice --keyring-backend test --unarmored-hex --unsafe
|
||||||
```
|
```
|
||||||
|
|
||||||
* Copy the private key exported above and assign it to variable `PRIVATE_KEY` in the `.env` file.
|
* Copy the private key exported above and assign it to variable `PRIVATE_KEY` in the `.env` file.
|
||||||
@ -79,12 +74,12 @@ User interface for submitting and reading records registered on Laconic.
|
|||||||
yarn
|
yarn
|
||||||
```
|
```
|
||||||
|
|
||||||
* Run the tests in laconic-sdk repo:
|
* Run the tests in registry-sdk repo:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
yarn test
|
yarn test
|
||||||
```
|
```
|
||||||
|
|
||||||
*NOTE*: One test from [util.test.ts](https://github.com/cerc-io/laconic-sdk/blob/main/src/util.test.ts) fails as mentioned in the [PR](https://github.com/cerc-io/laconic-sdk/pull/5#issuecomment-1299572012)
|
*NOTE*: One test from [util.test.ts](https://git.vdb.to/cerc-io/registry-sdk/blob/main/src/util.test.ts) fails as mentioned in the [PR](https://git.vdb.to/cerc-io/registry-sdk/pull/5#issuecomment-1299572012)
|
||||||
|
|
||||||
* Open console at <http://localhost:8080> to view the records.
|
* Open console at <http://localhost:8080> to view the records.
|
||||||
|
7
build-webapp.sh
Executable file
7
build-webapp.sh
Executable file
@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
yarn
|
||||||
|
LACONIC_HOSTED_CONFIG_FILE=config-hosted.yml yarn build
|
||||||
|
rm -rf dist/es
|
||||||
|
|
||||||
|
mv dist/production "$1"
|
@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
app:
|
app:
|
||||||
title: 'Console'
|
title: 'Console'
|
||||||
org': 'Laconic'
|
org: 'Laconic'
|
||||||
theme: 'dark'
|
theme: 'dark'
|
||||||
website: 'https://laconic.com'
|
website: 'https://laconic.com'
|
||||||
publicUrl: '/console'
|
publicUrl: '/console'
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@cerc-io/console-app",
|
"name": "@cerc-io/console-app",
|
||||||
"version": "1.3.3",
|
"version": "0.2.5",
|
||||||
"description": "Laconic Console",
|
"description": "Laconic Console",
|
||||||
"repository": "https://github.com/cerc-io/laconic-console",
|
"repository": "https://github.com/cerc-io/laconic-console",
|
||||||
"main": "dist/es/index.js",
|
"main": "dist/es/index.js",
|
||||||
@ -31,7 +31,7 @@
|
|||||||
"@apollo/react-components": "^4.0.0",
|
"@apollo/react-components": "^4.0.0",
|
||||||
"@apollo/react-hooks": "^4.0.0",
|
"@apollo/react-hooks": "^4.0.0",
|
||||||
"@babel/runtime": "^7.21.0",
|
"@babel/runtime": "^7.21.0",
|
||||||
"@cerc-io/laconic-sdk": "^0.1.14",
|
"@cerc-io/registry-sdk": "^0.2.8",
|
||||||
"@lirewine/debug": "1.0.0-beta.78",
|
"@lirewine/debug": "1.0.0-beta.78",
|
||||||
"@lirewine/gem-core": "1.0.0-beta.28",
|
"@lirewine/gem-core": "1.0.0-beta.28",
|
||||||
"@lirewine/react-ux": "1.1.0-beta.1",
|
"@lirewine/react-ux": "1.1.0-beta.1",
|
||||||
|
BIN
public/favicon.ico
Normal file
BIN
public/favicon.ico
Normal file
Binary file not shown.
After Width: | Height: | Size: 15 KiB |
@ -1,10 +1,18 @@
|
|||||||
<!DOCTYPE html>
|
<!doctype html>
|
||||||
<html>
|
<html>
|
||||||
<head>
|
|
||||||
<meta charset="utf-8">
|
<head>
|
||||||
<title><%= title %></title>
|
<meta charset="utf-8" />
|
||||||
</head>
|
<title>Laconic | Console</title>
|
||||||
<body>
|
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
||||||
<div id="root"></div>
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||||||
</body>
|
<link
|
||||||
|
href="https://fonts.googleapis.com/css2?family=DM+Mono:ital,wght@0,300;0,400;0,500;1,300;1,400;1,500&display=swap"
|
||||||
|
rel="stylesheet" />
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div id="root"></div>
|
||||||
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
@ -1,32 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -euo pipefail
|
|
||||||
|
|
||||||
for appdir in `find ./packages -name '*-app' -type d | grep -v node_modules`; do
|
|
||||||
pushd $appdir
|
|
||||||
|
|
||||||
WNS_ORG="${WNS_ORG:-dxos}"
|
|
||||||
PKG_CHANNEL="${PKG_CHANNEL:-}"
|
|
||||||
PKG_NAME=`cat package.json | jq -r '.name' | cut -d'/' -f2- | sed 's/-app$//'`
|
|
||||||
WNS_NAME="$WNS_ORG/$PKG_NAME"
|
|
||||||
|
|
||||||
cat <<EOF > app.yml
|
|
||||||
name: $PKG_NAME
|
|
||||||
build: yarn dist
|
|
||||||
EOF
|
|
||||||
|
|
||||||
cat app.yml
|
|
||||||
echo "wrn://${WNS_ORG}/application/${PKG_NAME}${PKG_CHANNEL}"
|
|
||||||
|
|
||||||
yarn clean
|
|
||||||
yarn -s wire app build
|
|
||||||
|
|
||||||
if [ -d "dist/production" ]; then
|
|
||||||
yarn -s wire app publish --path './dist/production'
|
|
||||||
else
|
|
||||||
yarn -s wire app publish
|
|
||||||
fi
|
|
||||||
|
|
||||||
yarn -s wire app register --name "wrn://${WNS_ORG}/application/${PKG_NAME}${PKG_CHANNEL}"
|
|
||||||
popd
|
|
||||||
done
|
|
69
scripts/publish-app-record.sh
Executable file
69
scripts/publish-app-record.sh
Executable file
@ -0,0 +1,69 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
RECORD_FILE=tmp.rf.$$
|
||||||
|
CONFIG_FILE=`mktemp`
|
||||||
|
|
||||||
|
CERC_APP_TYPE=${CERC_APP_TYPE:-"webapp"}
|
||||||
|
CERC_REPO_REF=${CERC_REPO_REF:-${GITHUB_SHA:-`git log -1 --format="%H"`}}
|
||||||
|
CERC_IS_LATEST_RELEASE=${CERC_IS_LATEST_RELEASE:-"true"}
|
||||||
|
|
||||||
|
rcd_name=$(jq -r '.name' package.json | sed 's/null//')
|
||||||
|
rcd_desc=$(jq -r '.description' package.json | sed 's/null//')
|
||||||
|
rcd_repository=$(jq -r '.repository' package.json | sed 's/null//')
|
||||||
|
rcd_homepage=$(jq -r '.homepage' package.json | sed 's/null//')
|
||||||
|
rcd_license=$(jq -r '.license' package.json | sed 's/null//')
|
||||||
|
rcd_author=$(jq -r '.author' package.json | sed 's/null//')
|
||||||
|
rcd_app_version=$(jq -r '.version' package.json | sed 's/null//')
|
||||||
|
|
||||||
|
cat <<EOF > "$CONFIG_FILE"
|
||||||
|
services:
|
||||||
|
registry:
|
||||||
|
rpcEndpoint: '${CERC_REGISTRY_RPC_ENDPOINT:-http://testnet-a-1.dev.vaasl.io:26657}'
|
||||||
|
gqlEndpoint: '${CERC_REGISTRY_GQL_ENDPOINT:-http://testnet-a-1.dev.vaasl.io:9473/api}'
|
||||||
|
chainId: ${CERC_REGISTRY_CHAIN_ID:-laconic-08062024}
|
||||||
|
gas: 900000
|
||||||
|
fees: 900000alnt
|
||||||
|
EOF
|
||||||
|
|
||||||
|
next_ver=$(laconic -c $CONFIG_FILE registry record list --type ApplicationRecord --all --name "$rcd_name" 2>/dev/null | jq -r -s ".[] | sort_by(.createTime) | reverse | [ .[] | select(.bondId == \"$CERC_REGISTRY_BOND_ID\") ] | .[0].attributes.version" | awk -F. -v OFS=. '{$NF += 1 ; print}')
|
||||||
|
|
||||||
|
if [ -z "$next_ver" ] || [ "1" == "$next_ver" ]; then
|
||||||
|
next_ver=0.0.1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cat <<EOF | sed '/.*: ""$/d' > "$RECORD_FILE"
|
||||||
|
record:
|
||||||
|
type: ApplicationRecord
|
||||||
|
version: ${next_ver}
|
||||||
|
name: "$rcd_name"
|
||||||
|
description: "$rcd_desc"
|
||||||
|
homepage: "$rcd_homepage"
|
||||||
|
license: "$rcd_license"
|
||||||
|
author: "$rcd_author"
|
||||||
|
repository:
|
||||||
|
- "$rcd_repository"
|
||||||
|
repository_ref: "$CERC_REPO_REF"
|
||||||
|
app_version: "$rcd_app_version"
|
||||||
|
app_type: "$CERC_APP_TYPE"
|
||||||
|
EOF
|
||||||
|
|
||||||
|
|
||||||
|
cat $RECORD_FILE
|
||||||
|
RECORD_ID=$(laconic -c $CONFIG_FILE registry record publish --filename $RECORD_FILE --user-key "${CERC_REGISTRY_USER_KEY}" --bond-id ${CERC_REGISTRY_BOND_ID} | jq -r '.id')
|
||||||
|
echo $RECORD_ID
|
||||||
|
|
||||||
|
if [ -z "$CERC_REGISTRY_APP_LRN" ]; then
|
||||||
|
authority=$(echo "$rcd_name" | cut -d'/' -f1 | sed 's/@//')
|
||||||
|
app=$(echo "$rcd_name" | cut -d'/' -f2-)
|
||||||
|
CERC_REGISTRY_APP_LRN="lrn://$authority/applications/$app"
|
||||||
|
fi
|
||||||
|
|
||||||
|
laconic -c $CONFIG_FILE registry name set --user-key "${CERC_REGISTRY_USER_KEY}" --bond-id ${CERC_REGISTRY_BOND_ID} "$CERC_REGISTRY_APP_LRN@${rcd_app_version}" "$RECORD_ID"
|
||||||
|
laconic -c $CONFIG_FILE registry name set --user-key "${CERC_REGISTRY_USER_KEY}" --bond-id ${CERC_REGISTRY_BOND_ID} "$CERC_REGISTRY_APP_LRN@${CERC_REPO_REF}" "$RECORD_ID"
|
||||||
|
if [ "true" == "$CERC_IS_LATEST_RELEASE" ]; then
|
||||||
|
laconic -c $CONFIG_FILE registry name set --user-key "${CERC_REGISTRY_USER_KEY}" --bond-id ${CERC_REGISTRY_BOND_ID} "$CERC_REGISTRY_APP_LRN" "$RECORD_ID"
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -f $RECORD_FILE $CONFIG_FILE
|
61
scripts/request-app-deployment.sh
Executable file
61
scripts/request-app-deployment.sh
Executable file
@ -0,0 +1,61 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
RECORD_FILE=tmp.rf.$$
|
||||||
|
CONFIG_FILE=`mktemp`
|
||||||
|
|
||||||
|
rcd_name=$(jq -r '.name' package.json | sed 's/null//' | sed 's/^@//')
|
||||||
|
rcd_app_version=$(jq -r '.version' package.json | sed 's/null//')
|
||||||
|
|
||||||
|
cat <<EOF > "$CONFIG_FILE"
|
||||||
|
services:
|
||||||
|
registry:
|
||||||
|
rpcEndpoint: '${CERC_REGISTRY_RPC_ENDPOINT:-http://testnet-a-2.dev.vaasl.io:26657}'
|
||||||
|
gqlEndpoint: '${CERC_REGISTRY_GQL_ENDPOINT:-http://testnet-a-2.dev.vaasl.io:9473/api}'
|
||||||
|
chainId: ${CERC_REGISTRY_CHAIN_ID:-laconic-08062024}
|
||||||
|
gas: 900000
|
||||||
|
fees: 900000alnt
|
||||||
|
EOF
|
||||||
|
|
||||||
|
if [ -z "$CERC_REGISTRY_APP_LRN" ]; then
|
||||||
|
authority=$(echo "$rcd_name" | cut -d'/' -f1 | sed 's/@//')
|
||||||
|
app=$(echo "$rcd_name" | cut -d'/' -f2-)
|
||||||
|
CERC_REGISTRY_APP_LRN="lrn://$authority/applications/$app"
|
||||||
|
fi
|
||||||
|
|
||||||
|
APP_RECORD=$(laconic -c $CONFIG_FILE registry name resolve "$CERC_REGISTRY_APP_LRN" | jq '.[0]')
|
||||||
|
if [ -z "$APP_RECORD" ] || [ "null" == "$APP_RECORD" ]; then
|
||||||
|
echo "No record found for $CERC_REGISTRY_APP_LRN."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
MY_ACCOUNT=$(laconic -c $CONFIG_FILE registry account get --user-key "${CERC_REGISTRY_USER_KEY}" | jq -r '.[0].address')
|
||||||
|
|
||||||
|
cat <<EOF | sed '/.*: ""$/d' > "$RECORD_FILE"
|
||||||
|
record:
|
||||||
|
type: ApplicationDeploymentRequest
|
||||||
|
version: 1.0.0
|
||||||
|
name: "$rcd_name@$rcd_app_version"
|
||||||
|
application: "$CERC_REGISTRY_APP_LRN@$rcd_app_version"
|
||||||
|
dns: "$CERC_REGISTRY_DEPLOYMENT_HOSTNAME"
|
||||||
|
deployment: "$CERC_REGISTRY_DEPLOYMENT_LRN"
|
||||||
|
to: $MY_ACCOUNT
|
||||||
|
config:
|
||||||
|
env:
|
||||||
|
CERC_WEBAPP_DEBUG: "$rcd_app_version"
|
||||||
|
LACONIC_HOSTED_CONFIG_services_wns_server: "$LACONIC_HOSTED_CONFIG_services_wns_server"
|
||||||
|
LACONIC_HOSTED_CONFIG_services_wns_webui: "$LACONIC_HOSTED_CONFIG_services_wns_webui"
|
||||||
|
LACONIC_HOSTED_CONFIG_services_signal_api: "$LACONIC_HOSTED_CONFIG_services_signal_api"
|
||||||
|
LACONIC_HOSTED_CONFIG_app_api_url: "$LACONIC_HOSTED_CONFIG_app_api_url"
|
||||||
|
meta:
|
||||||
|
note: "Added by CI @ `date`"
|
||||||
|
repository: "`git remote get-url origin`"
|
||||||
|
repository_ref: "${GITHUB_SHA:-`git log -1 --format="%H"`}"
|
||||||
|
EOF
|
||||||
|
|
||||||
|
cat $RECORD_FILE
|
||||||
|
RECORD_ID=$(laconic -c $CONFIG_FILE registry record publish --filename $RECORD_FILE --user-key "${CERC_REGISTRY_USER_KEY}" --bond-id ${CERC_REGISTRY_BOND_ID} | jq -r '.id')
|
||||||
|
echo $RECORD_ID
|
||||||
|
|
||||||
|
rm -f $RECORD_FILE $CONFIG_FILE
|
@ -2,16 +2,17 @@
|
|||||||
// Copyright 2020 DXOS.org
|
// Copyright 2020 DXOS.org
|
||||||
//
|
//
|
||||||
|
|
||||||
import React from 'react';
|
import React from "react";
|
||||||
import { makeStyles } from '@material-ui/core';
|
import { makeStyles } from "@material-ui/core";
|
||||||
import MuiAppBar from '@material-ui/core/AppBar';
|
import MuiAppBar from "@material-ui/core/AppBar";
|
||||||
import Link from '@material-ui/core/Link';
|
import Divider from "@material-ui/core/Divider";
|
||||||
import Toolbar from '@material-ui/core/Toolbar';
|
import Link from "@material-ui/core/Link";
|
||||||
import Typography from '@material-ui/core/Typography';
|
import Toolbar from "@material-ui/core/Toolbar";
|
||||||
import blueGrey from '@material-ui/core/colors/blueGrey';
|
import Typography from "@material-ui/core/Typography";
|
||||||
|
import blueGrey from "@material-ui/core/colors/blueGrey";
|
||||||
// import GraphQLIcon from '@material-ui/icons/Adb';
|
// import GraphQLIcon from '@material-ui/icons/Adb';
|
||||||
|
|
||||||
// import LaconicIcon from '../icons/Laconic';
|
import LaconicIcon from "../icons/Logo";
|
||||||
// import { graphqlApi } from '../client';
|
// import { graphqlApi } from '../client';
|
||||||
|
|
||||||
const useStyles = makeStyles((theme) => ({
|
const useStyles = makeStyles((theme) => ({
|
||||||
@ -21,26 +22,34 @@ const useStyles = makeStyles((theme) => ({
|
|||||||
marginRight: theme.spacing(2),
|
marginRight: theme.spacing(2),
|
||||||
color: theme.palette.grey[800],
|
color: theme.palette.grey[800],
|
||||||
|
|
||||||
'& svg': {
|
"& svg": {
|
||||||
width: 100,
|
width: 100,
|
||||||
height: 48
|
height: 48,
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
logoLink: {
|
logoLink: {
|
||||||
lineHeight: 0
|
lineHeight: 0,
|
||||||
},
|
},
|
||||||
|
|
||||||
title: {
|
title: {
|
||||||
display: 'flex',
|
display: "flex",
|
||||||
flex: 1,
|
flex: 1,
|
||||||
marginTop: 2,
|
marginTop: 2,
|
||||||
color: theme.palette.grey[800]
|
color: "#FBFBFB",
|
||||||
},
|
},
|
||||||
|
|
||||||
link: {
|
link: {
|
||||||
color: blueGrey[900]
|
color: blueGrey[900],
|
||||||
}
|
},
|
||||||
|
|
||||||
|
divider: {
|
||||||
|
backgroundColor: theme.palette.text.primary,
|
||||||
|
width: "1px",
|
||||||
|
height: "20px",
|
||||||
|
alignSelf: "center",
|
||||||
|
marginRight: 14,
|
||||||
|
},
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const AppBar = ({ config }) => {
|
const AppBar = ({ config }) => {
|
||||||
@ -48,19 +57,20 @@ const AppBar = ({ config }) => {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<MuiAppBar position='fixed' elevation={0}>
|
<MuiAppBar position="fixed" elevation={0} color="primary">
|
||||||
<Toolbar>
|
<Toolbar>
|
||||||
<Link classes={{ root: classes.logoLink }} href='/'>
|
<Link classes={{ root: classes.logoLink }} href="/">
|
||||||
{/* <div className={classes.logo}>
|
<div className={classes.logo}>
|
||||||
<LaconicIcon />
|
<LaconicIcon />
|
||||||
</div> */}
|
|
||||||
<div className={classes.title}>
|
|
||||||
<Typography variant='h6'>Laconic</Typography>
|
|
||||||
</div>
|
</div>
|
||||||
</Link>
|
</Link>
|
||||||
|
<Divider
|
||||||
|
orientation="vertical"
|
||||||
|
flexItem
|
||||||
|
className={classes.divider}
|
||||||
|
/>
|
||||||
<div className={classes.title}>
|
<div className={classes.title}>
|
||||||
<Typography variant='h6'>{config.app.title}</Typography>
|
<Typography variant="h6">{config.app.title}</Typography>
|
||||||
</div>
|
</div>
|
||||||
{/* <div>
|
{/* <div>
|
||||||
<Link
|
<Link
|
||||||
|
@ -31,9 +31,9 @@ const getAppUrl = (config, { wrn }) => {
|
|||||||
* @param {string} name
|
* @param {string} name
|
||||||
* @param {string} [text]
|
* @param {string} [text]
|
||||||
*/
|
*/
|
||||||
const AppLink = ({ config, crn, text }) => {
|
const AppLink = ({ config, lrn, text }) => {
|
||||||
const fullURL = getAppUrl(config, { crn });
|
const fullURL = getAppUrl(config, { lrn });
|
||||||
return <Link href={fullURL} target={crn}>{text || crn}</Link>;
|
return <Link href={fullURL} target={lrn}>{text || lrn}</Link>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export default AppLink;
|
export default AppLink;
|
||||||
|
@ -2,24 +2,36 @@
|
|||||||
// Copyright 2020 DXOS.org
|
// Copyright 2020 DXOS.org
|
||||||
//
|
//
|
||||||
|
|
||||||
import React from 'react';
|
import React from "react";
|
||||||
import { makeStyles } from '@material-ui/core';
|
import { makeStyles } from "@material-ui/core";
|
||||||
|
|
||||||
import { JsonTreeView } from '@lirewine/react-ux';
|
import { JsonTreeView } from "@lirewine/react-ux";
|
||||||
|
|
||||||
import { omitDeep } from '../util/omit';
|
import { omitDeep } from "../util/omit";
|
||||||
|
|
||||||
const useStyles = makeStyles(() => ({
|
const useStyles = makeStyles(() => ({
|
||||||
root: {
|
root: {
|
||||||
flex: 1
|
flex: 1,
|
||||||
}
|
},
|
||||||
}));
|
}));
|
||||||
|
const useTreeStyles = makeStyles(
|
||||||
|
(theme) => ({
|
||||||
|
colorPrimary: {
|
||||||
|
color: theme.palette.secondary.main,
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
{ name: "MuiTypography" },
|
||||||
|
);
|
||||||
|
|
||||||
const Json = ({ data }) => {
|
const Json = ({ data }) => {
|
||||||
const classes = useStyles();
|
const classes = useStyles();
|
||||||
|
useTreeStyles();
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<JsonTreeView className={classes.root} data={omitDeep(data, '__typename')} />
|
<JsonTreeView
|
||||||
|
className={classes.root}
|
||||||
|
data={omitDeep(data, "__typename")}
|
||||||
|
/>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { makeStyles } from '@material-ui/core';
|
import { makeStyles } from '@material-ui/core';
|
||||||
|
|
||||||
const useStyles = makeStyles(() => ({
|
const useStyles = makeStyles(theme => ({
|
||||||
root: {
|
root: {
|
||||||
display: 'flex',
|
display: 'flex',
|
||||||
flexDirection: 'column',
|
flexDirection: 'column',
|
||||||
@ -17,7 +17,8 @@ const useStyles = makeStyles(() => ({
|
|||||||
display: 'flex',
|
display: 'flex',
|
||||||
flexDirection: 'column',
|
flexDirection: 'column',
|
||||||
flex: 1,
|
flex: 1,
|
||||||
overflow: 'hidden'
|
overflow: 'hidden',
|
||||||
|
backgroundColor: theme.palette.background.paper,
|
||||||
}
|
}
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
@ -10,8 +10,41 @@ import LinkIcon from '@material-ui/icons/ExitToApp';
|
|||||||
import { getServiceUrl } from '../util/config';
|
import { getServiceUrl } from '../util/config';
|
||||||
|
|
||||||
const QUERY = `
|
const QUERY = `
|
||||||
query {
|
fragment ValueParts on Value {
|
||||||
getRecordsByIds(ids: [ "%ID%" ]) {
|
... on BooleanValue {
|
||||||
|
bool: value
|
||||||
|
}
|
||||||
|
... on IntValue {
|
||||||
|
int: value
|
||||||
|
}
|
||||||
|
... on FloatValue {
|
||||||
|
float: value
|
||||||
|
}
|
||||||
|
... on StringValue {
|
||||||
|
string: value
|
||||||
|
}
|
||||||
|
... on BytesValue {
|
||||||
|
bytes: value
|
||||||
|
}
|
||||||
|
... on LinkValue {
|
||||||
|
link: value
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fragment AttrParts on Attribute {
|
||||||
|
key
|
||||||
|
value {
|
||||||
|
...ValueParts
|
||||||
|
... on ArrayValue {
|
||||||
|
value {
|
||||||
|
...ValueParts
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
getRecordsByIds(ids: ["%ID%"]) {
|
||||||
id
|
id
|
||||||
names
|
names
|
||||||
bondId
|
bondId
|
||||||
@ -19,12 +52,12 @@ const QUERY = `
|
|||||||
expiryTime
|
expiryTime
|
||||||
owners
|
owners
|
||||||
attributes {
|
attributes {
|
||||||
key
|
...AttrParts
|
||||||
value {
|
value {
|
||||||
string
|
... on MapValue {
|
||||||
json
|
map: value {
|
||||||
reference {
|
...AttrParts
|
||||||
id
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,45 +2,60 @@
|
|||||||
// Copyright 2020 DXOS.org
|
// Copyright 2020 DXOS.org
|
||||||
//
|
//
|
||||||
|
|
||||||
import clsx from 'clsx';
|
import clsx from "clsx";
|
||||||
import React from 'react';
|
import React from "react";
|
||||||
import { useHistory, useParams } from 'react-router';
|
import { useHistory, useParams } from "react-router";
|
||||||
// import { useQuery } from '@apollo/react-hooks';
|
// import { useQuery } from '@apollo/react-hooks';
|
||||||
|
|
||||||
import { makeStyles } from '@material-ui/core';
|
import { makeStyles } from "@material-ui/core";
|
||||||
import List from '@material-ui/core/List';
|
import List from "@material-ui/core/List";
|
||||||
import ListItem from '@material-ui/core/ListItem';
|
import ListItem from "@material-ui/core/ListItem";
|
||||||
import ListItemIcon from '@material-ui/core/ListItemIcon';
|
import ListItemIcon from "@material-ui/core/ListItemIcon";
|
||||||
import LinkIcon from '@material-ui/icons/ExitToApp';
|
import LinkIcon from "@material-ui/icons/ExitToApp";
|
||||||
import ListItemText from '@material-ui/core/ListItemText';
|
import ListItemText from "@material-ui/core/ListItemText";
|
||||||
|
|
||||||
// import EXTENSIONS from '../gql/extensions.graphql';
|
// import EXTENSIONS from '../gql/extensions.graphql';
|
||||||
// import { useQueryStatusReducer } from '../hooks';
|
// import { useQueryStatusReducer } from '../hooks';
|
||||||
|
|
||||||
const useStyles = makeStyles(theme => ({
|
const useStyles = makeStyles((theme) => ({
|
||||||
root: {
|
root: {
|
||||||
display: 'flex',
|
display: "flex",
|
||||||
flex: 1,
|
flex: 1,
|
||||||
flexDirection: 'column',
|
flexDirection: "column",
|
||||||
justifyContent: 'space-between'
|
justifyContent: "space-between",
|
||||||
},
|
},
|
||||||
|
|
||||||
list: {
|
list: {
|
||||||
padding: 0
|
padding: 0,
|
||||||
|
},
|
||||||
|
|
||||||
|
listItem: {
|
||||||
|
display: "flex",
|
||||||
|
alignItems: "center",
|
||||||
|
backgroundColor: theme.palette.background.default,
|
||||||
|
},
|
||||||
|
|
||||||
|
selected: {
|
||||||
|
backgroundColor: theme.palette.background.secondary,
|
||||||
|
},
|
||||||
|
|
||||||
|
itemText: {
|
||||||
|
fontFamily: '"DM Mono", monospace',
|
||||||
|
fontWeight: 400,
|
||||||
},
|
},
|
||||||
|
|
||||||
icon: {
|
icon: {
|
||||||
minWidth: 40,
|
minWidth: 40,
|
||||||
color: theme.palette.grey[500]
|
color: theme.palette.grey[500],
|
||||||
},
|
},
|
||||||
|
|
||||||
selected: {
|
selected: {
|
||||||
color: theme.palette.primary.main
|
color: theme.palette.text.primary,
|
||||||
},
|
},
|
||||||
|
|
||||||
expand: {
|
expand: {
|
||||||
flex: 1
|
flex: 1,
|
||||||
}
|
},
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const Sidebar = ({ modules: { services, settings } }) => {
|
const Sidebar = ({ modules: { services, settings } }) => {
|
||||||
@ -52,38 +67,61 @@ const Sidebar = ({ modules: { services, settings } }) => {
|
|||||||
// const extensions = extensionsData ? JSON.parse(extensionsData.extensions.json) : [];
|
// const extensions = extensionsData ? JSON.parse(extensionsData.extensions.json) : [];
|
||||||
const extensions = [];
|
const extensions = [];
|
||||||
|
|
||||||
const isSelected = path => path === `/${module}`;
|
const isSelected = (path) => path === `/${module}`;
|
||||||
|
|
||||||
const Modules = ({ modules }) => (
|
const Modules = ({ modules }) => (
|
||||||
<List aria-label='items' className={classes.list}>
|
<List aria-label="items" className={classes.list}>
|
||||||
{modules.map(({ path, title, icon: Icon }) => (
|
{modules.map(({ path, title, icon: Icon }) => (
|
||||||
<ListItem button selected={isSelected(path)} key={path} onClick={() => history.push(path)}>
|
<ListItem
|
||||||
|
button
|
||||||
|
selected={isSelected(path)}
|
||||||
|
key={path}
|
||||||
|
onClick={() => history.push(path)}
|
||||||
|
classes={{ root: classes.listItem, selected: classes.selected }}
|
||||||
|
>
|
||||||
<ListItemIcon classes={{ root: classes.icon }}>
|
<ListItemIcon classes={{ root: classes.icon }}>
|
||||||
<Icon className={clsx(classes.icon, isSelected(path) && classes.selected)} />
|
<Icon
|
||||||
|
className={clsx(
|
||||||
|
classes.icon,
|
||||||
|
isSelected(path) && classes.selected,
|
||||||
|
)}
|
||||||
|
/>
|
||||||
</ListItemIcon>
|
</ListItemIcon>
|
||||||
<ListItemText primary={title} />
|
<ListItemText
|
||||||
|
primary={title.toUpperCase()}
|
||||||
|
classes={{ primary: classes.itemText }}
|
||||||
|
/>
|
||||||
</ListItem>
|
</ListItem>
|
||||||
))}
|
))}
|
||||||
</List>
|
</List>
|
||||||
);
|
);
|
||||||
|
|
||||||
const Extensions = ({ extensions }) => (
|
const Extensions = ({ extensions }) => (
|
||||||
<List aria-label='items' className={classes.list}>
|
<List aria-label="items" className={classes.list}>
|
||||||
{extensions.map(({ url, title }) => {
|
{extensions.map(({ url, title }) => {
|
||||||
url = url
|
url = url
|
||||||
.replace('%HOST%', window.location.host)
|
.replace("%HOST%", window.location.host)
|
||||||
.replace('%PORT%', window.location.port)
|
.replace("%PORT%", window.location.port)
|
||||||
.replace('%PROTOCOL%', window.location.protocol);
|
.replace("%PROTOCOL%", window.location.protocol);
|
||||||
return (
|
return (
|
||||||
<ListItem button key={url} onClick={() => { window.location = url; return true; }}>
|
<ListItem
|
||||||
|
button
|
||||||
|
key={url}
|
||||||
|
onClick={() => {
|
||||||
|
window.location = url;
|
||||||
|
return true;
|
||||||
|
}}
|
||||||
|
>
|
||||||
<ListItemIcon classes={{ root: classes.icon }}>
|
<ListItemIcon classes={{ root: classes.icon }}>
|
||||||
<LinkIcon className={clsx(classes.icon)} />
|
<LinkIcon className={clsx(classes.icon)} />
|
||||||
</ListItemIcon>
|
</ListItemIcon>
|
||||||
<ListItemText primary={title} />
|
<ListItemText
|
||||||
|
primary={title.toUpperCase()}
|
||||||
|
classes={{ primary: classes.itemText }}
|
||||||
|
/>
|
||||||
</ListItem>
|
</ListItem>
|
||||||
);
|
);
|
||||||
}
|
})}
|
||||||
)}
|
|
||||||
</List>
|
</List>
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -2,20 +2,21 @@
|
|||||||
// Copyright 2020 DXOS.org
|
// Copyright 2020 DXOS.org
|
||||||
//
|
//
|
||||||
|
|
||||||
import React from 'react';
|
import React from "react";
|
||||||
import { makeStyles } from '@material-ui/core';
|
import { makeStyles } from "@material-ui/core";
|
||||||
import MuiToolbar from '@material-ui/core/Toolbar';
|
import MuiToolbar from "@material-ui/core/Toolbar";
|
||||||
|
|
||||||
const useStyles = makeStyles(theme => ({
|
const useStyles = makeStyles((theme) => ({
|
||||||
toolbar: {
|
toolbar: {
|
||||||
display: 'flex',
|
display: "flex",
|
||||||
justifyContent: 'space-between',
|
justifyContent: "space-between",
|
||||||
whiteSpace: 'nowrap',
|
whiteSpace: "nowrap",
|
||||||
|
|
||||||
'& > button': {
|
"& > button": {
|
||||||
margin: theme.spacing(0.5)
|
margin: theme.spacing(0.5),
|
||||||
}
|
},
|
||||||
}
|
color: "primary",
|
||||||
|
},
|
||||||
}));
|
}));
|
||||||
|
|
||||||
// TODO(burdon): Tabs.
|
// TODO(burdon): Tabs.
|
||||||
|
@ -28,7 +28,10 @@ const useStyles = makeStyles((theme) => ({
|
|||||||
flexDirection: 'row',
|
flexDirection: 'row',
|
||||||
flex: 1,
|
flex: 1,
|
||||||
justifyContent: 'space-between',
|
justifyContent: 'space-between',
|
||||||
backgroundColor: grey[900],
|
backgroundColor: theme.palette.background.default,
|
||||||
|
borderTop: 1,
|
||||||
|
borderTopColor: "rgba(255, 255, 255, 0.12)",
|
||||||
|
borderTopStyle: "solid",
|
||||||
color: grey[400]
|
color: grey[400]
|
||||||
},
|
},
|
||||||
left: {
|
left: {
|
||||||
|
@ -2,43 +2,48 @@
|
|||||||
// Copyright 2020 DXOS.org
|
// Copyright 2020 DXOS.org
|
||||||
//
|
//
|
||||||
|
|
||||||
import React, { useState } from 'react';
|
import React, { useState } from "react";
|
||||||
import { makeStyles } from '@material-ui/core';
|
import { makeStyles } from "@material-ui/core";
|
||||||
import Paper from '@material-ui/core/Paper';
|
import Paper from "@material-ui/core/Paper";
|
||||||
import Tab from '@material-ui/core/Tab';
|
import Tab from "@material-ui/core/Tab";
|
||||||
import Tabs from '@material-ui/core/Tabs';
|
import Tabs from "@material-ui/core/Tabs";
|
||||||
import TabContext from '@material-ui/lab/TabContext';
|
import TabContext from "@material-ui/lab/TabContext";
|
||||||
|
|
||||||
import Panel from '../../../components/Panel';
|
import Panel from "../../../components/Panel";
|
||||||
import Toolbar from '../../../components/Toolbar';
|
import Toolbar from "../../../components/Toolbar";
|
||||||
// import LogPoller from '../../../components/LogPoller';
|
// import LogPoller from '../../../components/LogPoller';
|
||||||
|
|
||||||
import RegistryLookup, { LookupType } from './RegistryLookup';
|
import RegistryLookup, { LookupType } from "./RegistryLookup";
|
||||||
import RegistryStatus from './RegistryStatus';
|
import RegistryStatus from "./RegistryStatus";
|
||||||
import RegistryRecords from './RegistryRecords';
|
import RegistryRecords from "./RegistryRecords";
|
||||||
// import RegistryRecords, { RecordType } from './RegistryRecords';
|
// import RegistryRecords, { RecordType } from './RegistryRecords';
|
||||||
|
|
||||||
const TAB_RECORDS = 'records';
|
const TAB_RECORDS = "records";
|
||||||
const TAB_STATUS = 'status';
|
const TAB_STATUS = "status";
|
||||||
const TAB_LOOKUP = 'lookup';
|
const TAB_LOOKUP = "lookup";
|
||||||
// const TAB_LOG = 'log';
|
// const TAB_LOG = 'log';
|
||||||
|
|
||||||
const useStyles = makeStyles(() => ({
|
const useStyles = makeStyles(() => ({
|
||||||
expand: {
|
expand: {
|
||||||
flex: 1
|
flex: 1,
|
||||||
},
|
},
|
||||||
|
|
||||||
panel: {
|
panel: {
|
||||||
display: 'flex',
|
display: "flex",
|
||||||
overflowY: 'scroll',
|
overflowY: "scroll",
|
||||||
flex: 1
|
flex: 1,
|
||||||
},
|
},
|
||||||
|
|
||||||
paper: {
|
paper: {
|
||||||
display: 'flex',
|
display: "flex",
|
||||||
overflow: 'hidden',
|
overflow: "hidden",
|
||||||
flex: 1
|
flex: 1,
|
||||||
}
|
},
|
||||||
|
|
||||||
|
tabs: {
|
||||||
|
fontFamily: '"DM Mono", monospace',
|
||||||
|
fontWeight: 400,
|
||||||
|
},
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const Registry = () => {
|
const Registry = () => {
|
||||||
@ -51,10 +56,14 @@ const Registry = () => {
|
|||||||
<Panel
|
<Panel
|
||||||
toolbar={
|
toolbar={
|
||||||
<Toolbar>
|
<Toolbar>
|
||||||
<Tabs value={tab} onChange={(_, value) => setTab(value)}>
|
<Tabs
|
||||||
<Tab value={TAB_RECORDS} label='Records' />
|
value={tab}
|
||||||
<Tab value={TAB_LOOKUP} label='Lookup' />
|
onChange={(_, value) => setTab(value)}
|
||||||
<Tab value={TAB_STATUS} label='Status' />
|
indicatorColor="primary"
|
||||||
|
>
|
||||||
|
<Tab value={TAB_RECORDS} label="Records" className={classes.tabs} />
|
||||||
|
<Tab value={TAB_LOOKUP} label="Lookup" className={classes.tabs} />
|
||||||
|
<Tab value={TAB_STATUS} label="Status" className={classes.tabs} />
|
||||||
{/* <Tab value={TAB_LOG} label='Log' /> */}
|
{/* <Tab value={TAB_LOG} label='Log' /> */}
|
||||||
</Tabs>
|
</Tabs>
|
||||||
|
|
||||||
|
@ -37,7 +37,7 @@ const useStyles = makeStyles(theme => ({
|
|||||||
|
|
||||||
const types = [
|
const types = [
|
||||||
{ key: 'authority', label: 'Authority' },
|
{ key: 'authority', label: 'Authority' },
|
||||||
{ key: 'crn', label: 'CRN' }
|
{ key: 'lrn', label: 'LRN' }
|
||||||
];
|
];
|
||||||
|
|
||||||
export const LookupType = ({ scope = types[0].key, onChange }) => {
|
export const LookupType = ({ scope = types[0].key, onChange }) => {
|
||||||
@ -87,7 +87,7 @@ const RegistryLookup = ({ scope }) => {
|
|||||||
const getNames = () => {
|
const getNames = () => {
|
||||||
let ret;
|
let ret;
|
||||||
switch (scope) {
|
switch (scope) {
|
||||||
case 'crn': {
|
case 'lrn': {
|
||||||
ret = [];
|
ret = [];
|
||||||
records.forEach(item => ret.push(...(item.names || [])));
|
records.forEach(item => ret.push(...(item.names || [])));
|
||||||
break;
|
break;
|
||||||
@ -99,8 +99,8 @@ const RegistryLookup = ({ scope }) => {
|
|||||||
const names = new Set();
|
const names = new Set();
|
||||||
for (const record of records) {
|
for (const record of records) {
|
||||||
for (const name of (record.names || [])) {
|
for (const name of (record.names || [])) {
|
||||||
// TODO(telackey): We need a general purpose CRN handling library.
|
// TODO(telackey): We need a general purpose LRN handling library.
|
||||||
names.add(name.replace('crn://', '').split('/')[0]);
|
names.add(name.replace('lrn://', '').split('/')[0]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ret = Array.from(names.values());
|
ret = Array.from(names.values());
|
||||||
@ -120,7 +120,7 @@ const RegistryLookup = ({ scope }) => {
|
|||||||
|
|
||||||
let result;
|
let result;
|
||||||
switch (scope) {
|
switch (scope) {
|
||||||
case 'crn':
|
case 'lrn':
|
||||||
result = await registry.lookupNames([newInputValue], true);
|
result = await registry.lookupNames([newInputValue], true);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
import moment from 'moment';
|
import moment from 'moment';
|
||||||
import React, { useContext } from 'react';
|
import React, { useContext, useState } from 'react';
|
||||||
import { useQuery } from '@apollo/react-hooks';
|
import { useQuery } from '@apollo/react-hooks';
|
||||||
import { makeStyles } from '@material-ui/core';
|
import { makeStyles } from '@material-ui/core';
|
||||||
import ButtonGroup from '@material-ui/core/ButtonGroup';
|
import ButtonGroup from '@material-ui/core/ButtonGroup';
|
||||||
@ -11,6 +11,8 @@ import Button from '@material-ui/core/Button';
|
|||||||
import TableHead from '@material-ui/core/TableHead';
|
import TableHead from '@material-ui/core/TableHead';
|
||||||
import TableRow from '@material-ui/core/TableRow';
|
import TableRow from '@material-ui/core/TableRow';
|
||||||
import TableBody from '@material-ui/core/TableBody';
|
import TableBody from '@material-ui/core/TableBody';
|
||||||
|
import TablePagination from '@material-ui/core/TablePagination';
|
||||||
|
import { Paper, TableContainer, } from '@material-ui/core';
|
||||||
|
|
||||||
import WNS_RECORDS from '../../../gql/wns_records.graphql';
|
import WNS_RECORDS from '../../../gql/wns_records.graphql';
|
||||||
|
|
||||||
@ -31,13 +33,13 @@ const useStyles = makeStyles(theme => ({
|
|||||||
|
|
||||||
const types = [
|
const types = [
|
||||||
{ key: null, label: 'ALL' },
|
{ key: null, label: 'ALL' },
|
||||||
{ key: 'crn:kube', label: 'Kube' },
|
{ key: 'lrn:kube', label: 'Kube' },
|
||||||
{ key: 'crn:service', label: 'Service' },
|
{ key: 'lrn:service', label: 'Service' },
|
||||||
{ key: 'crn:app', label: 'App' },
|
{ key: 'lrn:app', label: 'App' },
|
||||||
{ key: 'crn:bot', label: 'Bot' },
|
{ key: 'lrn:bot', label: 'Bot' },
|
||||||
{ key: 'crn:bot-factory', label: 'Bot Factory' },
|
{ key: 'lrn:bot-factory', label: 'Bot Factory' },
|
||||||
{ key: 'crn:file', label: 'File' },
|
{ key: 'lrn:file', label: 'File' },
|
||||||
{ key: 'crn:type', label: 'Type' }
|
{ key: 'lrn:type', label: 'Type' }
|
||||||
];
|
];
|
||||||
|
|
||||||
export const RecordType = ({ type = types[0].key, onChange }) => {
|
export const RecordType = ({ type = types[0].key, onChange }) => {
|
||||||
@ -68,9 +70,14 @@ export const RecordType = ({ type = types[0].key, onChange }) => {
|
|||||||
const RegistryRecords = ({ type }) => {
|
const RegistryRecords = ({ type }) => {
|
||||||
const { config } = useContext(ConsoleContext);
|
const { config } = useContext(ConsoleContext);
|
||||||
const [sorter, sortBy] = useSorter('createTime', false);
|
const [sorter, sortBy] = useSorter('createTime', false);
|
||||||
const { data } = useQueryStatusReducer(useQuery(WNS_RECORDS, {
|
const [page, setPage] = useState(0);
|
||||||
|
const [rowsPerPage, setRowsPerPage] = useState(10);
|
||||||
|
|
||||||
|
const offset = page * rowsPerPage;
|
||||||
|
|
||||||
|
const { data, refetch } = useQueryStatusReducer(useQuery(WNS_RECORDS, {
|
||||||
pollInterval: config.api.intervalQuery,
|
pollInterval: config.api.intervalQuery,
|
||||||
variables: { attributes: { type } }
|
variables: { attributes: { type, limit: rowsPerPage, offset: offset } }
|
||||||
}));
|
}));
|
||||||
|
|
||||||
if (!data) {
|
if (!data) {
|
||||||
@ -79,70 +86,100 @@ const RegistryRecords = ({ type }) => {
|
|||||||
|
|
||||||
const records = JSON.parse(data.wns_records.json);
|
const records = JSON.parse(data.wns_records.json);
|
||||||
|
|
||||||
|
const handleChangePage = (event, newPage) => {
|
||||||
|
setPage(newPage);
|
||||||
|
const offset = newPage * rowsPerPage;
|
||||||
|
refetch({ attributes: { type, limit: rowsPerPage, offset } });
|
||||||
|
};
|
||||||
|
|
||||||
|
const handleChangeRowsPerPage = (event) => {
|
||||||
|
const newRowsPerPage = parseInt(event.target.value, 10);
|
||||||
|
setRowsPerPage(newRowsPerPage);
|
||||||
|
setPage(0);
|
||||||
|
refetch({ attributes: { type, limit: newRowsPerPage, offset: 0 } });
|
||||||
|
};
|
||||||
|
|
||||||
|
const labelDisplayedRows = ({ from, to }) => {
|
||||||
|
if (rowsPerPage > records.length) {
|
||||||
|
return `${from}-${from + records.length - 1}`;
|
||||||
|
} else {
|
||||||
|
return `${from}-${to}`;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Table>
|
<Paper style={{
|
||||||
<TableHead>
|
width: '100%',
|
||||||
<TableRow>
|
}}>
|
||||||
<TableCell onClick={sortBy('attributes.type')} size='medium'>Type</TableCell>
|
<TableContainer>
|
||||||
<TableCell onClick={sortBy('names[0]')}>Registered Names</TableCell>
|
<Table>
|
||||||
<TableCell onClick={sortBy('attributes.version')} size='small'>Version</TableCell>
|
<TableHead>
|
||||||
<TableCell onClick={sortBy('attributes.name')}>Display Name</TableCell>
|
<TableRow>
|
||||||
<TableCell onClick={sortBy('createTime')} size='small'>Created</TableCell>
|
<TableCell onClick={sortBy('attributes.type')} size='medium'>Type</TableCell>
|
||||||
<TableCell onClick={sortBy('attributes.package')}>Package</TableCell>
|
<TableCell onClick={sortBy('names[0]')}>Registered Names</TableCell>
|
||||||
<TableCell size='icon' />
|
<TableCell onClick={sortBy('attributes.version')} size='small'>Version</TableCell>
|
||||||
</TableRow>
|
<TableCell onClick={sortBy('attributes.name')}>Display Name</TableCell>
|
||||||
</TableHead>
|
<TableCell onClick={sortBy('createTime')} size='small'>Created</TableCell>
|
||||||
<TableBody>
|
<TableCell onClick={sortBy('attributes.package')}>Package</TableCell>
|
||||||
{records.sort(sorter)
|
<TableCell size='icon' />
|
||||||
.map((record) => {
|
</TableRow>
|
||||||
const { id, names, createTime, attributes: { type, name: displayName, fileName, version, description, service, package: pkg } } = record;
|
</TableHead>
|
||||||
|
<TableBody>
|
||||||
|
{records.sort(sorter).map((record) => {
|
||||||
|
const { id, names, createTime, attributes: { type, name: displayName, fileName, version, description, service, package: pkg } } = record;
|
||||||
|
|
||||||
let pkgLink;
|
let pkgLink;
|
||||||
let appLinks;
|
let appLinks;
|
||||||
|
|
||||||
if (pkg) {
|
if (pkg) {
|
||||||
pkgLink = (<PackageLink config={config} type={type} pkg={pkg} />);
|
pkgLink = (<PackageLink config={config} type={type} pkg={pkg} />);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (type === 'crn:app') {
|
if (type === 'lrn:app') {
|
||||||
appLinks = (
|
appLinks = (
|
||||||
<>
|
<>
|
||||||
{(names || []).map(crn =>
|
{(names || []).map(lrn =>
|
||||||
<div key={crn}>
|
<div key={lrn}>
|
||||||
<AppLink config={config} crn={crn} />
|
<AppLink config={config} lrn={lrn} />
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
</>
|
</>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
return (
|
||||||
|
<TableRow key={id} size='small'>
|
||||||
|
<TableCell monospace>{type}</TableCell>
|
||||||
|
<TableCell monospace>
|
||||||
|
{appLinks || (names || []).map(name => <div key={name}>{name}</div>)}
|
||||||
|
</TableCell>
|
||||||
|
<TableCell monospace>{version}</TableCell>
|
||||||
|
<TableCell>{displayName || service || fileName || description}</TableCell>
|
||||||
|
<TableCell>{moment.utc(createTime).fromNow()}</TableCell>
|
||||||
|
<TableCell monospace>{pkgLink}</TableCell>
|
||||||
|
<TableCell>
|
||||||
|
<QueryLink config={config} id={id} icon />
|
||||||
|
</TableCell>
|
||||||
|
</TableRow>
|
||||||
);
|
);
|
||||||
}
|
})}
|
||||||
|
</TableBody>
|
||||||
return (
|
</Table>
|
||||||
<TableRow key={id} size='small'>
|
</TableContainer>
|
||||||
<TableCell monospace>{type}</TableCell>
|
<TablePagination
|
||||||
<TableCell monospace>
|
component="td"
|
||||||
{appLinks || (names || []).map(name => <div key={name}>{name}</div>)}
|
rowsPerPageOptions={[5, 10, 25]}
|
||||||
</TableCell>
|
count={-1}
|
||||||
<TableCell monospace>
|
rowsPerPage={rowsPerPage}
|
||||||
{version}
|
page={page}
|
||||||
</TableCell>
|
onPageChange={handleChangePage}
|
||||||
<TableCell>
|
onRowsPerPageChange={handleChangeRowsPerPage}
|
||||||
{displayName || service || fileName || description}
|
labelDisplayedRows={labelDisplayedRows}
|
||||||
</TableCell>
|
nextIconButtonProps={{
|
||||||
<TableCell>
|
disabled: records.length < rowsPerPage,
|
||||||
{moment.utc(createTime).fromNow()}
|
}}
|
||||||
</TableCell>
|
/>
|
||||||
<TableCell monospace>
|
</Paper>
|
||||||
{pkgLink}
|
|
||||||
</TableCell>
|
|
||||||
<TableCell>
|
|
||||||
<QueryLink config={config} id={id} icon />
|
|
||||||
</TableCell>
|
|
||||||
</TableRow>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
)}
|
|
||||||
</TableBody>
|
|
||||||
</Table>
|
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Copyright 2020 DXOS.org
|
// Copyright 2020 DXOS.org
|
||||||
//
|
//
|
||||||
|
|
||||||
import { Registry } from '@cerc-io/laconic-sdk';
|
import { Registry } from '@cerc-io/registry-sdk';
|
||||||
|
|
||||||
import { getServiceUrl } from '../util/config';
|
import { getServiceUrl } from '../util/config';
|
||||||
|
|
||||||
|
@ -2,35 +2,47 @@
|
|||||||
// Copyright 2020 DXOS.org
|
// Copyright 2020 DXOS.org
|
||||||
//
|
//
|
||||||
|
|
||||||
import React from 'react';
|
import React from "react";
|
||||||
import SvgIcon from '@material-ui/core/SvgIcon';
|
import SvgIcon from "@material-ui/core/SvgIcon";
|
||||||
|
|
||||||
// TODO(burdon): Fixed color?
|
// TODO(burdon): Fixed color?
|
||||||
|
|
||||||
const Icon = (props) => (
|
const Icon = (props) => (
|
||||||
<SvgIcon {...props} viewBox='0 0 256 256'>
|
<SvgIcon {...props} viewBox="0 0 115 20">
|
||||||
<g transform='matrix(1,0,0,1,-160,-124)'>
|
<path
|
||||||
<path
|
fill-rule="evenodd"
|
||||||
d='M282.254,147.134L195.254,194.589C191.399,196.692 189,200.732 189,205.124L189,298.876C189,303.268 191.399,307.308 195.254,309.411L282.254,356.866C285.836,358.819 290.164,358.819 293.746,356.866L380.746,309.411C384.601,307.308 387,303.268 387,298.876L387,205.124C387,200.732 384.601,196.692 380.746,194.589L293.746,147.134C290.164,145.181 285.836,145.181 282.254,147.134Z'
|
clip-rule="evenodd"
|
||||||
style={{ fill: 'none', fillRule: 'nonzero', stroke: 'rgb(0,68,121)', strokeWidth: '12px' }}
|
d="M3.37388 10.5194C5.70149 8.19185 7.14225 4.97748 7.1416 1.42853C7.14246 0.94681 7.11586 0.470456 7.063 0L-0.000488281 0.000643078L-0.000273922 13.5723C-0.000917354 15.2174 0.62632 16.863 1.88091 18.1175C3.1356 19.3721 4.78235 20.0001 6.42772 19.9993L6.42729 19.9997L19.9995 20L19.999 12.9355C19.5296 12.8838 19.0532 12.857 18.5704 12.8569C15.0224 12.8574 11.8079 14.298 9.48026 16.6255C7.78654 18.2768 5.07093 18.2771 3.39812 16.6043C1.72638 14.9325 1.72562 12.2161 3.37388 10.5194ZM18.5344 1.46863C16.5837 -0.481929 13.4146 -0.48268 11.4633 1.46863C9.512 3.41984 9.51276 6.58895 11.4633 8.53941C13.415 10.491 16.5831 10.4907 18.5344 8.53941C20.4857 6.5882 20.4861 3.42016 18.5344 1.46863Z"
|
||||||
/>
|
fill="#FBFBFB"
|
||||||
<path
|
/>
|
||||||
d='M288,252L216,216'
|
<path
|
||||||
style={{ fill: 'none', fillRule: 'nonzero', stroke: 'rgb(0,68,121)', strokeWidth: '8px', strokeLinejoin: 'round' }}
|
d="M31.4741 18.5838H39.2552V16.3302H34.075V1.41351H31.4741V18.5838Z"
|
||||||
/>
|
fill="#FBFBFB"
|
||||||
<path
|
/>
|
||||||
d='M216,288L288,252'
|
<path
|
||||||
style={{ fill: 'none', fillRule: 'nonzero', stroke: 'rgb(0,68,121)', strokeWidth: '8px', strokeLinejoin: 'round' }}
|
d="M49.8108 1.41351H45.4976L40.9893 18.5838H43.6769L44.8039 14.2913H50.3744L51.5014 18.5838H54.3191L49.8108 1.41351ZM45.3458 12.145L47.6 3.2593H47.6866L49.8541 12.145H45.3458Z"
|
||||||
/>
|
fill="#FBFBFB"
|
||||||
<path
|
/>
|
||||||
d='M360,288L288,252'
|
<path
|
||||||
style={{ fill: 'none', fillRule: 'nonzero', stroke: 'rgb(0,68,121)', strokeWidth: '8px', strokeLinejoin: 'round' }}
|
d="M62.9292 8.06885H65.9636C65.9636 3.17534 64.3813 1.07196 60.6967 1.07196C56.8169 1.07196 55.1479 3.73341 55.1479 9.97909C55.1479 16.2462 56.8169 18.9291 60.6967 18.9291C64.3813 18.9291 65.9636 16.8901 65.9853 12.1468H62.9508C62.9292 15.8599 62.474 16.7828 60.6967 16.7828C58.6593 16.7828 58.1607 15.4307 58.1824 9.97909C58.1824 4.54896 58.6809 3.19678 60.6967 3.21823C62.474 3.21823 62.9292 4.18413 62.9292 8.06885Z"
|
||||||
/>
|
fill="#FBFBFB"
|
||||||
<path
|
/>
|
||||||
d='M360,216L288,252'
|
<path
|
||||||
style={{ fill: 'none', fillRule: 'nonzero', stroke: 'rgb(0,68,121)', strokeWidth: '8px', strokeLinejoin: 'round' }}
|
d="M73.7781 1.07209C77.7229 1.09364 79.4135 3.77643 79.4135 10.0007C79.4135 16.2249 77.7229 18.9078 73.7781 18.9292C69.8117 18.9507 68.1211 16.2678 68.1211 10.0007C68.1211 3.73354 69.8117 1.05064 73.7781 1.07209ZM71.1555 10.0007C71.1555 15.4308 71.6757 16.783 73.7781 16.783C75.8589 16.783 76.3791 15.4308 76.3791 10.0007C76.3791 4.54909 75.8589 3.19691 73.7781 3.21847C71.6757 3.23992 71.1555 4.59209 71.1555 10.0007Z"
|
||||||
/>
|
fill="#FBFBFB"
|
||||||
</g>
|
/>
|
||||||
|
<path
|
||||||
|
d="M85.0819 18.5624L82.481 18.5838V1.41351H87.0544L91.3243 15.4073H91.3676V1.41351H93.968V18.5838H89.677L85.1254 3.51689H85.0819V18.5624Z"
|
||||||
|
fill="#FBFBFB"
|
||||||
|
/>
|
||||||
|
<path
|
||||||
|
d="M100.468 1.41351H97.8677V18.5838H100.468V1.41351Z"
|
||||||
|
fill="#FBFBFB"
|
||||||
|
/>
|
||||||
|
<path
|
||||||
|
d="M111.139 8.06885H114.174C114.174 3.17534 112.591 1.07196 108.906 1.07196C105.028 1.07196 103.358 3.73341 103.358 9.97909C103.358 16.2462 105.028 18.9291 108.906 18.9291C112.591 18.9291 114.174 16.8901 114.195 12.1468H111.161C111.139 15.8599 110.684 16.7828 108.906 16.7828C106.869 16.7828 106.371 15.4307 106.393 9.97909C106.393 4.54896 106.891 3.19678 108.906 3.21823C110.684 3.21823 111.139 4.18413 111.139 8.06885Z"
|
||||||
|
fill="#FBFBFB"
|
||||||
|
/>
|
||||||
</SvgIcon>
|
</SvgIcon>
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
import debug from 'debug';
|
import debug from 'debug';
|
||||||
|
|
||||||
import { Registry } from '@cerc-io/laconic-sdk';
|
import { Registry } from '@cerc-io/registry-sdk';
|
||||||
|
|
||||||
import { getServiceUrl } from './util/config';
|
import { getServiceUrl } from './util/config';
|
||||||
|
|
||||||
@ -45,7 +45,9 @@ export const createResolvers = config => {
|
|||||||
|
|
||||||
wns_records: async (_, { attributes }) => {
|
wns_records: async (_, { attributes }) => {
|
||||||
log('WNS records...');
|
log('WNS records...');
|
||||||
const data = await registry.queryRecords(attributes);
|
|
||||||
|
const {limit, offset, ...queryAttributes } = attributes || {};
|
||||||
|
const data = await registry.queryRecords(queryAttributes, false, false, limit, offset);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
__typename: 'JSONResult',
|
__typename: 'JSONResult',
|
||||||
|
156
src/theme.js
156
src/theme.js
@ -2,78 +2,96 @@
|
|||||||
// Copyright 2019 DXOS.org
|
// Copyright 2019 DXOS.org
|
||||||
//
|
//
|
||||||
|
|
||||||
import { createTheme as createMuiTheme } from '@material-ui/core/styles';
|
import { createTheme as createMuiTheme } from "@material-ui/core/styles";
|
||||||
import teal from '@material-ui/core/colors/teal';
|
import teal from "@material-ui/core/colors/teal";
|
||||||
import orange from '@material-ui/core/colors/orange';
|
import orange from "@material-ui/core/colors/orange";
|
||||||
|
|
||||||
export const createTheme = (theme) => createMuiTheme({
|
export const createTheme = (theme) =>
|
||||||
|
createMuiTheme({
|
||||||
|
// https://material-ui.com/system/shadows
|
||||||
|
shadows: ["none"],
|
||||||
|
|
||||||
// https://material-ui.com/system/shadows
|
// https://stackoverflow.com/questions/60567673/reactjs-material-ui-theme-mixins-toolbar-offset-is-not-adapting-when-toolbar
|
||||||
shadows: ['none'],
|
mixins: {
|
||||||
|
denseToolbar: {
|
||||||
|
height: 48,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
// https://stackoverflow.com/questions/60567673/reactjs-material-ui-theme-mixins-toolbar-offset-is-not-adapting-when-toolbar
|
// https://material-ui.com/customization/globals/#default-props
|
||||||
mixins: {
|
props: {
|
||||||
denseToolbar: {
|
MuiButtonBase: {
|
||||||
height: 48
|
disableRipple: true,
|
||||||
}
|
},
|
||||||
},
|
MuiButton: {
|
||||||
|
size: "small",
|
||||||
|
},
|
||||||
|
MuiFilledInput: {
|
||||||
|
margin: "dense",
|
||||||
|
},
|
||||||
|
MuiFormControl: {
|
||||||
|
margin: "dense",
|
||||||
|
},
|
||||||
|
MuiFormHelperText: {
|
||||||
|
margin: "dense",
|
||||||
|
},
|
||||||
|
MuiIconButton: {
|
||||||
|
size: "small",
|
||||||
|
},
|
||||||
|
MuiInputBase: {
|
||||||
|
margin: "dense",
|
||||||
|
},
|
||||||
|
MuiInputLabel: {
|
||||||
|
margin: "dense",
|
||||||
|
},
|
||||||
|
MuiTable: {
|
||||||
|
size: "small",
|
||||||
|
},
|
||||||
|
MuiTextField: {
|
||||||
|
margin: "dense",
|
||||||
|
},
|
||||||
|
MuiToolbar: {
|
||||||
|
variant: "dense",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
// https://material-ui.com/customization/globals/#default-props
|
// https://material-ui.com/customization/palette/
|
||||||
props: {
|
palette:
|
||||||
MuiButtonBase: {
|
theme === "dark"
|
||||||
disableRipple: true
|
? {
|
||||||
},
|
type: "dark",
|
||||||
MuiButton: {
|
primary: {
|
||||||
size: 'small'
|
main: "#0000F4",
|
||||||
},
|
},
|
||||||
MuiFilledInput: {
|
secondary: {
|
||||||
margin: 'dense'
|
main: "#A2A2FF",
|
||||||
},
|
},
|
||||||
MuiFormControl: {
|
background: {
|
||||||
margin: 'dense'
|
default: "#0F0F0F",
|
||||||
},
|
secondary: "#18181A",
|
||||||
MuiFormHelperText: {
|
paper: "#18181A",
|
||||||
margin: 'dense'
|
},
|
||||||
},
|
text: {
|
||||||
MuiIconButton: {
|
primary: "#FBFBFB",
|
||||||
size: 'small'
|
secondary: "#BDBCC3",
|
||||||
},
|
lineLabel: "#A2A2FF",
|
||||||
MuiInputBase: {
|
},
|
||||||
margin: 'dense'
|
}
|
||||||
},
|
: {
|
||||||
MuiInputLabel: {
|
primary: teal,
|
||||||
margin: 'dense'
|
},
|
||||||
},
|
|
||||||
MuiTable: {
|
|
||||||
size: 'small'
|
|
||||||
},
|
|
||||||
MuiTextField: {
|
|
||||||
margin: 'dense'
|
|
||||||
},
|
|
||||||
MuiToolbar: {
|
|
||||||
variant: 'dense'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
// https://material-ui.com/customization/palette/
|
// https://material-ui.com/customization/theming/#theme-configuration-variables
|
||||||
palette: theme === 'dark' ? {
|
|
||||||
type: 'dark',
|
|
||||||
primary: orange
|
|
||||||
} : {
|
|
||||||
primary: teal
|
|
||||||
},
|
|
||||||
|
|
||||||
// https://material-ui.com/customization/theming/#theme-configuration-variables
|
// https://material-ui.com/customization/globals/
|
||||||
|
overrides: {
|
||||||
// https://material-ui.com/customization/globals/
|
MuiCssBaseline: {
|
||||||
overrides: {
|
"@global": {
|
||||||
MuiCssBaseline: {
|
body: {
|
||||||
'@global': {
|
margin: 0,
|
||||||
body: {
|
overflow: "hidden",
|
||||||
margin: 0,
|
},
|
||||||
overflow: 'hidden'
|
},
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
}
|
});
|
||||||
}
|
|
||||||
});
|
|
||||||
|
@ -14,6 +14,7 @@ module.exports = merge(commonConfig, {
|
|||||||
// https://github.com/jantimon/html-webpack-plugin#options
|
// https://github.com/jantimon/html-webpack-plugin#options
|
||||||
new HtmlWebPackPlugin({
|
new HtmlWebPackPlugin({
|
||||||
template: './public/index.html',
|
template: './public/index.html',
|
||||||
|
favicon: './public/favicon.ico',
|
||||||
templateParameters: {
|
templateParameters: {
|
||||||
title: 'Console'
|
title: 'Console'
|
||||||
}
|
}
|
||||||
|
393
yarn.lock
393
yarn.lock
@ -1037,14 +1037,18 @@
|
|||||||
resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
|
resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
|
||||||
integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
|
integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
|
||||||
|
|
||||||
"@cerc-io/laconic-sdk@^0.1.14":
|
"@cerc-io/registry-sdk@^0.2.8":
|
||||||
version "0.1.14"
|
version "0.2.8"
|
||||||
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Flaconic-sdk/-/0.1.14/laconic-sdk-0.1.14.tgz#67a255133c8907657878270f02b7084e11e23736"
|
resolved "https://git.vdb.to/api/packages/cerc-io/npm/%40cerc-io%2Fregistry-sdk/-/0.2.8/registry-sdk-0.2.8.tgz#d71837f735d998987055068457fdf8b2e94ca69c"
|
||||||
integrity sha512-B9iR/PYripQwkXYuJBubz6IojixWLuJb7WZosCuitn+2hroH8+K/VhkBhdKHpJGMs6Z+3GneOzhu7XrLhn1j6Q==
|
integrity sha512-utK3Rq5qZrEoRs/eOsOkowcsD740nlnBs6C3KKFRHgKIiR0XedD6t33KukUPLKbGp4mYZOYXRTA7/A04x58lKw==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@cosmjs/amino" "^0.28.1"
|
"@cosmjs/amino" "^0.28.1"
|
||||||
"@cosmjs/crypto" "^0.28.1"
|
"@cosmjs/crypto" "^0.28.1"
|
||||||
"@cosmjs/encoding" "^0.28.1"
|
"@cosmjs/encoding" "^0.28.1"
|
||||||
|
"@cosmjs/launchpad" "^0.27.1"
|
||||||
|
"@cosmjs/proto-signing" "^0.32.2"
|
||||||
|
"@cosmjs/stargate" "^0.32.2"
|
||||||
|
"@cosmjs/tendermint-rpc" "^0.32.2"
|
||||||
"@ipld/dag-cbor" "^7.0.1"
|
"@ipld/dag-cbor" "^7.0.1"
|
||||||
"@ipld/dag-json" "^8.0.9"
|
"@ipld/dag-json" "^8.0.9"
|
||||||
"@metamask/eth-sig-util" "^4.0.0"
|
"@metamask/eth-sig-util" "^4.0.0"
|
||||||
@ -1058,11 +1062,9 @@
|
|||||||
bip39 "^3.0.4"
|
bip39 "^3.0.4"
|
||||||
canonical-json "^0.0.4"
|
canonical-json "^0.0.4"
|
||||||
ethers "^5.6.2"
|
ethers "^5.6.2"
|
||||||
evmosjs "^0.2.5"
|
|
||||||
graphql.js "^0.6.8"
|
graphql.js "^0.6.8"
|
||||||
js-sha256 "^0.9.0"
|
js-sha256 "^0.9.0"
|
||||||
js-yaml "^3.14.1"
|
js-yaml "^3.14.1"
|
||||||
jsonschema "^1.4.0"
|
|
||||||
lodash "^4.17.21"
|
lodash "^4.17.21"
|
||||||
multiformats "^9.5.4"
|
multiformats "^9.5.4"
|
||||||
node-yaml "^4.0.1"
|
node-yaml "^4.0.1"
|
||||||
@ -1070,7 +1072,25 @@
|
|||||||
semver "^7.3.5"
|
semver "^7.3.5"
|
||||||
tiny-secp256k1 "^1.1.6"
|
tiny-secp256k1 "^1.1.6"
|
||||||
|
|
||||||
"@cosmjs/amino@0.28.13", "@cosmjs/amino@^0.28.1":
|
"@confio/ics23@^0.6.8":
|
||||||
|
version "0.6.8"
|
||||||
|
resolved "https://registry.yarnpkg.com/@confio/ics23/-/ics23-0.6.8.tgz#2a6b4f1f2b7b20a35d9a0745bb5a446e72930b3d"
|
||||||
|
integrity sha512-wB6uo+3A50m0sW/EWcU64xpV/8wShZ6bMTa7pF8eYsTrSkQA7oLUIJcs/wb8g4y2Oyq701BaGiO6n/ak5WXO1w==
|
||||||
|
dependencies:
|
||||||
|
"@noble/hashes" "^1.0.0"
|
||||||
|
protobufjs "^6.8.8"
|
||||||
|
|
||||||
|
"@cosmjs/amino@0.27.1":
|
||||||
|
version "0.27.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/@cosmjs/amino/-/amino-0.27.1.tgz#0910256b5aecd794420bb5f7319d98fc63252fa1"
|
||||||
|
integrity sha512-w56ar/nK9+qlvWDpBPRmD0Blk2wfkkLqRi1COs1x7Ll1LF0AtkIBUjbRKplENLbNovK0T3h+w8bHiFm+GBGQOA==
|
||||||
|
dependencies:
|
||||||
|
"@cosmjs/crypto" "0.27.1"
|
||||||
|
"@cosmjs/encoding" "0.27.1"
|
||||||
|
"@cosmjs/math" "0.27.1"
|
||||||
|
"@cosmjs/utils" "0.27.1"
|
||||||
|
|
||||||
|
"@cosmjs/amino@^0.28.1":
|
||||||
version "0.28.13"
|
version "0.28.13"
|
||||||
resolved "https://registry.yarnpkg.com/@cosmjs/amino/-/amino-0.28.13.tgz#b51417a23c1ff8ef8b85a6862eba8492c6c44f38"
|
resolved "https://registry.yarnpkg.com/@cosmjs/amino/-/amino-0.28.13.tgz#b51417a23c1ff8ef8b85a6862eba8492c6c44f38"
|
||||||
integrity sha512-IHnH2zGwaY69qT4mVAavr/pfzx6YE+ud1NHJbvVePlbGiz68CXTi5LHR+K0lrKB5mQ7E+ZErWz2mw5U/x+V1wQ==
|
integrity sha512-IHnH2zGwaY69qT4mVAavr/pfzx6YE+ud1NHJbvVePlbGiz68CXTi5LHR+K0lrKB5mQ7E+ZErWz2mw5U/x+V1wQ==
|
||||||
@ -1080,6 +1100,32 @@
|
|||||||
"@cosmjs/math" "0.28.13"
|
"@cosmjs/math" "0.28.13"
|
||||||
"@cosmjs/utils" "0.28.13"
|
"@cosmjs/utils" "0.28.13"
|
||||||
|
|
||||||
|
"@cosmjs/amino@^0.32.3":
|
||||||
|
version "0.32.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/@cosmjs/amino/-/amino-0.32.3.tgz#b81d4a2b8d61568431a1afcd871e1344a19d97ff"
|
||||||
|
integrity sha512-G4zXl+dJbqrz1sSJ56H/25l5NJEk/pAPIr8piAHgbXYw88OdAOlpA26PQvk2IbSN/rRgVbvlLTNgX2tzz1dyUA==
|
||||||
|
dependencies:
|
||||||
|
"@cosmjs/crypto" "^0.32.3"
|
||||||
|
"@cosmjs/encoding" "^0.32.3"
|
||||||
|
"@cosmjs/math" "^0.32.3"
|
||||||
|
"@cosmjs/utils" "^0.32.3"
|
||||||
|
|
||||||
|
"@cosmjs/crypto@0.27.1":
|
||||||
|
version "0.27.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/@cosmjs/crypto/-/crypto-0.27.1.tgz#271c853089a3baf3acd6cf0b2122fd49f8815743"
|
||||||
|
integrity sha512-vbcxwSt99tIYJg8Spp00wc3zx72qx+pY3ozGuBN8gAvySnagK9dQ/jHwtWQWdammmdD6oW+75WfIHZ+gNa+Ybg==
|
||||||
|
dependencies:
|
||||||
|
"@cosmjs/encoding" "0.27.1"
|
||||||
|
"@cosmjs/math" "0.27.1"
|
||||||
|
"@cosmjs/utils" "0.27.1"
|
||||||
|
bip39 "^3.0.2"
|
||||||
|
bn.js "^5.2.0"
|
||||||
|
elliptic "^6.5.3"
|
||||||
|
js-sha3 "^0.8.0"
|
||||||
|
libsodium-wrappers "^0.7.6"
|
||||||
|
ripemd160 "^2.0.2"
|
||||||
|
sha.js "^2.4.11"
|
||||||
|
|
||||||
"@cosmjs/crypto@0.28.13", "@cosmjs/crypto@^0.28.1":
|
"@cosmjs/crypto@0.28.13", "@cosmjs/crypto@^0.28.1":
|
||||||
version "0.28.13"
|
version "0.28.13"
|
||||||
resolved "https://registry.yarnpkg.com/@cosmjs/crypto/-/crypto-0.28.13.tgz#541b6a36f616b2da5a568ead46d4e83841ceb412"
|
resolved "https://registry.yarnpkg.com/@cosmjs/crypto/-/crypto-0.28.13.tgz#541b6a36f616b2da5a568ead46d4e83841ceb412"
|
||||||
@ -1093,6 +1139,28 @@
|
|||||||
elliptic "^6.5.3"
|
elliptic "^6.5.3"
|
||||||
libsodium-wrappers "^0.7.6"
|
libsodium-wrappers "^0.7.6"
|
||||||
|
|
||||||
|
"@cosmjs/crypto@^0.32.3":
|
||||||
|
version "0.32.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/@cosmjs/crypto/-/crypto-0.32.3.tgz#787f8e659709678722068ee1ddf379f65051a25e"
|
||||||
|
integrity sha512-niQOWJHUtlJm2GG4F00yGT7sGPKxfUwz+2qQ30uO/E3p58gOusTcH2qjiJNVxb8vScYJhFYFqpm/OA/mVqoUGQ==
|
||||||
|
dependencies:
|
||||||
|
"@cosmjs/encoding" "^0.32.3"
|
||||||
|
"@cosmjs/math" "^0.32.3"
|
||||||
|
"@cosmjs/utils" "^0.32.3"
|
||||||
|
"@noble/hashes" "^1"
|
||||||
|
bn.js "^5.2.0"
|
||||||
|
elliptic "^6.5.4"
|
||||||
|
libsodium-wrappers-sumo "^0.7.11"
|
||||||
|
|
||||||
|
"@cosmjs/encoding@0.27.1":
|
||||||
|
version "0.27.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/@cosmjs/encoding/-/encoding-0.27.1.tgz#3cd5bc0af743485eb2578cdb08cfa84c86d610e1"
|
||||||
|
integrity sha512-rayLsA0ojHeniaRfWWcqSsrE/T1rl1gl0OXVNtXlPwLJifKBeLEefGbOUiAQaT0wgJ8VNGBazVtAZBpJidfDhw==
|
||||||
|
dependencies:
|
||||||
|
base64-js "^1.3.0"
|
||||||
|
bech32 "^1.1.4"
|
||||||
|
readonly-date "^1.0.0"
|
||||||
|
|
||||||
"@cosmjs/encoding@0.28.13", "@cosmjs/encoding@^0.28.1":
|
"@cosmjs/encoding@0.28.13", "@cosmjs/encoding@^0.28.1":
|
||||||
version "0.28.13"
|
version "0.28.13"
|
||||||
resolved "https://registry.yarnpkg.com/@cosmjs/encoding/-/encoding-0.28.13.tgz#7994e8e2c435beaf0690296ffb0f7f3eaec8150b"
|
resolved "https://registry.yarnpkg.com/@cosmjs/encoding/-/encoding-0.28.13.tgz#7994e8e2c435beaf0690296ffb0f7f3eaec8150b"
|
||||||
@ -1102,6 +1170,43 @@
|
|||||||
bech32 "^1.1.4"
|
bech32 "^1.1.4"
|
||||||
readonly-date "^1.0.0"
|
readonly-date "^1.0.0"
|
||||||
|
|
||||||
|
"@cosmjs/encoding@^0.32.3":
|
||||||
|
version "0.32.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/@cosmjs/encoding/-/encoding-0.32.3.tgz#e245ff511fe4a0df7ba427b5187aab69e3468e5b"
|
||||||
|
integrity sha512-p4KF7hhv8jBQX3MkB3Defuhz/W0l3PwWVYU2vkVuBJ13bJcXyhU9nJjiMkaIv+XP+W2QgRceqNNgFUC5chNR7w==
|
||||||
|
dependencies:
|
||||||
|
base64-js "^1.3.0"
|
||||||
|
bech32 "^1.1.4"
|
||||||
|
readonly-date "^1.0.0"
|
||||||
|
|
||||||
|
"@cosmjs/json-rpc@^0.32.3":
|
||||||
|
version "0.32.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/@cosmjs/json-rpc/-/json-rpc-0.32.3.tgz#ccffdd7f722cecfab6daaa7463843b92f5d25355"
|
||||||
|
integrity sha512-JwFRWZa+Y95KrAG8CuEbPVOSnXO2uMSEBcaAB/FBU3Mo4jQnDoUjXvt3vwtFWxfAytrWCn1I4YDFaOAinnEG/Q==
|
||||||
|
dependencies:
|
||||||
|
"@cosmjs/stream" "^0.32.3"
|
||||||
|
xstream "^11.14.0"
|
||||||
|
|
||||||
|
"@cosmjs/launchpad@^0.27.1":
|
||||||
|
version "0.27.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/@cosmjs/launchpad/-/launchpad-0.27.1.tgz#b6f1995748be96560f5f01e84d3ff907477dda77"
|
||||||
|
integrity sha512-DcFwGD/z5PK8CzO2sojDxa+Be9EIEtRZb2YawgVnw2Ht/p5FlNv+OVo8qlishpBdalXEN7FvQ1dVeDFEe9TuJw==
|
||||||
|
dependencies:
|
||||||
|
"@cosmjs/amino" "0.27.1"
|
||||||
|
"@cosmjs/crypto" "0.27.1"
|
||||||
|
"@cosmjs/encoding" "0.27.1"
|
||||||
|
"@cosmjs/math" "0.27.1"
|
||||||
|
"@cosmjs/utils" "0.27.1"
|
||||||
|
axios "^0.21.2"
|
||||||
|
fast-deep-equal "^3.1.3"
|
||||||
|
|
||||||
|
"@cosmjs/math@0.27.1":
|
||||||
|
version "0.27.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/@cosmjs/math/-/math-0.27.1.tgz#be78857b008ffc6b1ed6fecaa1c4cd5bc38c07d7"
|
||||||
|
integrity sha512-cHWVjmfIjtRc7f80n7x+J5k8pe+vTVTQ0lA82tIxUgqUvgS6rogPP/TmGtTiZ4+NxWxd11DUISY6gVpr18/VNQ==
|
||||||
|
dependencies:
|
||||||
|
bn.js "^5.2.0"
|
||||||
|
|
||||||
"@cosmjs/math@0.28.13":
|
"@cosmjs/math@0.28.13":
|
||||||
version "0.28.13"
|
version "0.28.13"
|
||||||
resolved "https://registry.yarnpkg.com/@cosmjs/math/-/math-0.28.13.tgz#50c05bc67007a04216f7f5e0c93f57270f8cc077"
|
resolved "https://registry.yarnpkg.com/@cosmjs/math/-/math-0.28.13.tgz#50c05bc67007a04216f7f5e0c93f57270f8cc077"
|
||||||
@ -1109,24 +1214,89 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
bn.js "^5.2.0"
|
bn.js "^5.2.0"
|
||||||
|
|
||||||
"@cosmjs/proto-signing@^0.28.13":
|
"@cosmjs/math@^0.32.3":
|
||||||
version "0.28.13"
|
version "0.32.3"
|
||||||
resolved "https://registry.yarnpkg.com/@cosmjs/proto-signing/-/proto-signing-0.28.13.tgz#95ac12f0da0f0814f348f5ae996c3e96d015df61"
|
resolved "https://registry.yarnpkg.com/@cosmjs/math/-/math-0.32.3.tgz#16e4256f4da507b9352327da12ae64056a2ba6c9"
|
||||||
integrity sha512-nSl/2ZLsUJYz3Ad0RY3ihZUgRHIow2OnYqKsESMu+3RA/jTi9bDYhiBu8mNMHI0xrEJry918B2CyI56pOUHdPQ==
|
integrity sha512-amumUtZs8hCCnV+lSBaJIiZkGabQm22QGg/IotYrhcmoOEOjt82n7hMNlNXRs7V6WLMidGrGYcswB5zcmp0Meg==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@cosmjs/amino" "0.28.13"
|
bn.js "^5.2.0"
|
||||||
"@cosmjs/crypto" "0.28.13"
|
|
||||||
"@cosmjs/encoding" "0.28.13"
|
"@cosmjs/proto-signing@^0.32.2", "@cosmjs/proto-signing@^0.32.3":
|
||||||
"@cosmjs/math" "0.28.13"
|
version "0.32.3"
|
||||||
"@cosmjs/utils" "0.28.13"
|
resolved "https://registry.yarnpkg.com/@cosmjs/proto-signing/-/proto-signing-0.32.3.tgz#91ae149b747d18666a6ccc924165b306431f7c0d"
|
||||||
cosmjs-types "^0.4.0"
|
integrity sha512-kSZ0ZUY0DwcRT0NcIn2HkadH4NKlwjfZgbLj1ABwh/4l0RgeT84QCscZCu63tJYq3K6auwqTiZSZERwlO4/nbg==
|
||||||
long "^4.0.0"
|
dependencies:
|
||||||
|
"@cosmjs/amino" "^0.32.3"
|
||||||
|
"@cosmjs/crypto" "^0.32.3"
|
||||||
|
"@cosmjs/encoding" "^0.32.3"
|
||||||
|
"@cosmjs/math" "^0.32.3"
|
||||||
|
"@cosmjs/utils" "^0.32.3"
|
||||||
|
cosmjs-types "^0.9.0"
|
||||||
|
|
||||||
|
"@cosmjs/socket@^0.32.3":
|
||||||
|
version "0.32.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/@cosmjs/socket/-/socket-0.32.3.tgz#fa5c36bf58e87c0ad865d6318ecb0f8d9c89a28a"
|
||||||
|
integrity sha512-F2WwNmaUPdZ4SsH6Uyreq3wQk7jpaEkb3wfOP951f5Jt6HCW/PxbxhKzHkAAf6+Sqks6SPhkbWoE8XaZpjL2KA==
|
||||||
|
dependencies:
|
||||||
|
"@cosmjs/stream" "^0.32.3"
|
||||||
|
isomorphic-ws "^4.0.1"
|
||||||
|
ws "^7"
|
||||||
|
xstream "^11.14.0"
|
||||||
|
|
||||||
|
"@cosmjs/stargate@^0.32.2":
|
||||||
|
version "0.32.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/@cosmjs/stargate/-/stargate-0.32.3.tgz#5a92b222ada960ebecea72cc9f366370763f4b66"
|
||||||
|
integrity sha512-OQWzO9YWKerUinPIxrO1MARbe84XkeXJAW0lyMIjXIEikajuXZ+PwftiKA5yA+8OyditVmHVLtPud6Pjna2s5w==
|
||||||
|
dependencies:
|
||||||
|
"@confio/ics23" "^0.6.8"
|
||||||
|
"@cosmjs/amino" "^0.32.3"
|
||||||
|
"@cosmjs/encoding" "^0.32.3"
|
||||||
|
"@cosmjs/math" "^0.32.3"
|
||||||
|
"@cosmjs/proto-signing" "^0.32.3"
|
||||||
|
"@cosmjs/stream" "^0.32.3"
|
||||||
|
"@cosmjs/tendermint-rpc" "^0.32.3"
|
||||||
|
"@cosmjs/utils" "^0.32.3"
|
||||||
|
cosmjs-types "^0.9.0"
|
||||||
|
xstream "^11.14.0"
|
||||||
|
|
||||||
|
"@cosmjs/stream@^0.32.3":
|
||||||
|
version "0.32.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/@cosmjs/stream/-/stream-0.32.3.tgz#7522579aaf18025d322c2f33d6fb7573220395d6"
|
||||||
|
integrity sha512-J2zVWDojkynYifAUcRmVczzmp6STEpyiAARq0rSsviqjreGIfspfuws/8rmkPa6qQBZvpQOBQCm2HyZZwYplIw==
|
||||||
|
dependencies:
|
||||||
|
xstream "^11.14.0"
|
||||||
|
|
||||||
|
"@cosmjs/tendermint-rpc@^0.32.2", "@cosmjs/tendermint-rpc@^0.32.3":
|
||||||
|
version "0.32.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/@cosmjs/tendermint-rpc/-/tendermint-rpc-0.32.3.tgz#f0406b9f0233e588fb924dca8c614972f9038aff"
|
||||||
|
integrity sha512-xeprW+VR9xKGstqZg0H/KBZoUp8/FfFyS9ljIUTLM/UINjP2MhiwncANPS2KScfJVepGufUKk0/phHUeIBSEkw==
|
||||||
|
dependencies:
|
||||||
|
"@cosmjs/crypto" "^0.32.3"
|
||||||
|
"@cosmjs/encoding" "^0.32.3"
|
||||||
|
"@cosmjs/json-rpc" "^0.32.3"
|
||||||
|
"@cosmjs/math" "^0.32.3"
|
||||||
|
"@cosmjs/socket" "^0.32.3"
|
||||||
|
"@cosmjs/stream" "^0.32.3"
|
||||||
|
"@cosmjs/utils" "^0.32.3"
|
||||||
|
axios "^1.6.0"
|
||||||
|
readonly-date "^1.0.0"
|
||||||
|
xstream "^11.14.0"
|
||||||
|
|
||||||
|
"@cosmjs/utils@0.27.1":
|
||||||
|
version "0.27.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/@cosmjs/utils/-/utils-0.27.1.tgz#1c8efde17256346ef142a3bd15158ee4055470e2"
|
||||||
|
integrity sha512-VG7QPDiMUzVPxRdJahDV8PXxVdnuAHiIuG56hldV4yPnOz/si/DLNd7VAUUA5923b6jS1Hhev0Hr6AhEkcxBMg==
|
||||||
|
|
||||||
"@cosmjs/utils@0.28.13":
|
"@cosmjs/utils@0.28.13":
|
||||||
version "0.28.13"
|
version "0.28.13"
|
||||||
resolved "https://registry.yarnpkg.com/@cosmjs/utils/-/utils-0.28.13.tgz#2fd2844ec832d7833811e2ae1691305d09791a08"
|
resolved "https://registry.yarnpkg.com/@cosmjs/utils/-/utils-0.28.13.tgz#2fd2844ec832d7833811e2ae1691305d09791a08"
|
||||||
integrity sha512-dVeMBiyg+46x7XBZEfJK8yTihphbCFpjVYmLJVqmTsHfJwymQ65cpyW/C+V/LgWARGK8hWQ/aX9HM5Ao8QmMSg==
|
integrity sha512-dVeMBiyg+46x7XBZEfJK8yTihphbCFpjVYmLJVqmTsHfJwymQ65cpyW/C+V/LgWARGK8hWQ/aX9HM5Ao8QmMSg==
|
||||||
|
|
||||||
|
"@cosmjs/utils@^0.32.3":
|
||||||
|
version "0.32.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/@cosmjs/utils/-/utils-0.32.3.tgz#5dcaee6dd7cc846cdc073e9a7a7f63242f5f7e31"
|
||||||
|
integrity sha512-WCZK4yksj2hBDz4w7xFZQTRZQ/RJhBX26uFHmmQFIcNUUVAihrLO+RerqJgk0dZqC42wstM9pEUQGtPmLcIYvg==
|
||||||
|
|
||||||
"@discoveryjs/json-ext@0.5.7", "@discoveryjs/json-ext@^0.5.0":
|
"@discoveryjs/json-ext@0.5.7", "@discoveryjs/json-ext@^0.5.0":
|
||||||
version "0.5.7"
|
version "0.5.7"
|
||||||
resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70"
|
resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70"
|
||||||
@ -1479,57 +1649,6 @@
|
|||||||
"@ethersproject/properties" "^5.7.0"
|
"@ethersproject/properties" "^5.7.0"
|
||||||
"@ethersproject/strings" "^5.7.0"
|
"@ethersproject/strings" "^5.7.0"
|
||||||
|
|
||||||
"@evmos/address-converter@^0.1.9":
|
|
||||||
version "0.1.9"
|
|
||||||
resolved "https://registry.yarnpkg.com/@evmos/address-converter/-/address-converter-0.1.9.tgz#7e867f0f08be6338f031f4c7c32edf11e443bbf6"
|
|
||||||
integrity sha512-Sbl4hHo/4UkMgmdwBDN/GNMhDeOlc5CyRCLFMajTVKyT0Sf269RQsuntD+P48EJWIpBjw3q6+laVZ9hrpfB4Nw==
|
|
||||||
dependencies:
|
|
||||||
bech32 "^2.0.0"
|
|
||||||
crypto-addr-codec "^0.1.7"
|
|
||||||
link-module-alias "^1.2.0"
|
|
||||||
shx "^0.3.4"
|
|
||||||
|
|
||||||
"@evmos/eip712@^0.2.11":
|
|
||||||
version "0.2.11"
|
|
||||||
resolved "https://registry.yarnpkg.com/@evmos/eip712/-/eip712-0.2.11.tgz#ae4d7bae241df5d7a0d007a88ecd3d72d185915f"
|
|
||||||
integrity sha512-8iGZ03PqhxYXZycAvl/GJ6b78qVPkzP7A42a/d3zeZXtzRpRwOpxHmBJr5xmsZur+eqZlgAqkmZ8Q+vEh+ICgA==
|
|
||||||
dependencies:
|
|
||||||
"@cosmjs/proto-signing" "^0.28.13"
|
|
||||||
"@evmos/proto" "^0.1.27"
|
|
||||||
"@metamask/eth-sig-util" "^4.0.1"
|
|
||||||
cosmjs-types "^0.5.1"
|
|
||||||
link-module-alias "^1.2.0"
|
|
||||||
long "^5.2.0"
|
|
||||||
shx "^0.3.4"
|
|
||||||
|
|
||||||
"@evmos/proto@^0.1.27":
|
|
||||||
version "0.1.27"
|
|
||||||
resolved "https://registry.yarnpkg.com/@evmos/proto/-/proto-0.1.27.tgz#efc86ec959150aa595190f3d1244ac8ee19f7525"
|
|
||||||
integrity sha512-lBOZhQFsIUz3on/4H+Rj1aDj2OWaZnz7OJjUFklkPZQ3tEtAATBOQiVCjkPvIX3jh/H5DACahmi8BmhcNF+7UA==
|
|
||||||
dependencies:
|
|
||||||
google-protobuf "^3.19.4"
|
|
||||||
link-module-alias "^1.2.0"
|
|
||||||
sha3 "^2.1.4"
|
|
||||||
shx "^0.3.4"
|
|
||||||
|
|
||||||
"@evmos/provider@^0.2.8":
|
|
||||||
version "0.2.8"
|
|
||||||
resolved "https://registry.yarnpkg.com/@evmos/provider/-/provider-0.2.8.tgz#164be0c7a57f6a20a6816cfe35d027b1fad2aacc"
|
|
||||||
integrity sha512-LOml6RtabQafhNn38IaREXB2oClHTUBYF0VttQRB3qxaOEqBy9WbH0Dz7fvqqGFbcanMdQKhBQ4NfNMeslWQgQ==
|
|
||||||
dependencies:
|
|
||||||
link-module-alias "^1.2.0"
|
|
||||||
shx "^0.3.4"
|
|
||||||
|
|
||||||
"@evmos/transactions@^0.2.13":
|
|
||||||
version "0.2.13"
|
|
||||||
resolved "https://registry.yarnpkg.com/@evmos/transactions/-/transactions-0.2.13.tgz#beadd070524924e64ee3964a31b3f2658cd064be"
|
|
||||||
integrity sha512-O+SoWUXkg3XoP80PB01BSKBh+HMGZuWbQ2M07yscGfSxgmSsKrTPliOmai3yM8CnDnzUmPSNZk/oWaKaCDl8kw==
|
|
||||||
dependencies:
|
|
||||||
"@evmos/eip712" "^0.2.11"
|
|
||||||
"@evmos/proto" "^0.1.27"
|
|
||||||
link-module-alias "^1.2.0"
|
|
||||||
shx "^0.3.4"
|
|
||||||
|
|
||||||
"@graphql-typed-document-node/core@^3.1.1":
|
"@graphql-typed-document-node/core@^3.1.1":
|
||||||
version "3.2.0"
|
version "3.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/@graphql-typed-document-node/core/-/core-3.2.0.tgz#5f3d96ec6b2354ad6d8a28bf216a1d97b5426861"
|
resolved "https://registry.yarnpkg.com/@graphql-typed-document-node/core/-/core-3.2.0.tgz#5f3d96ec6b2354ad6d8a28bf216a1d97b5426861"
|
||||||
@ -1938,7 +2057,7 @@
|
|||||||
prop-types "^15.7.2"
|
prop-types "^15.7.2"
|
||||||
react-is "^16.8.0 || ^17.0.0"
|
react-is "^16.8.0 || ^17.0.0"
|
||||||
|
|
||||||
"@metamask/eth-sig-util@^4.0.0", "@metamask/eth-sig-util@^4.0.1":
|
"@metamask/eth-sig-util@^4.0.0":
|
||||||
version "4.0.1"
|
version "4.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/@metamask/eth-sig-util/-/eth-sig-util-4.0.1.tgz#3ad61f6ea9ad73ba5b19db780d40d9aae5157088"
|
resolved "https://registry.yarnpkg.com/@metamask/eth-sig-util/-/eth-sig-util-4.0.1.tgz#3ad61f6ea9ad73ba5b19db780d40d9aae5157088"
|
||||||
integrity sha512-tghyZKLHZjcdlDqCA3gNZmLeR0XvOE9U1qoQO9ohyAZT6Pya+H9vkBPcsyXytmYLNgVoin7CKCmweo/R43V+tQ==
|
integrity sha512-tghyZKLHZjcdlDqCA3gNZmLeR0XvOE9U1qoQO9ohyAZT6Pya+H9vkBPcsyXytmYLNgVoin7CKCmweo/R43V+tQ==
|
||||||
@ -1959,6 +2078,11 @@
|
|||||||
resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.3.0.tgz#085fd70f6d7d9d109671090ccae1d3bec62554a1"
|
resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.3.0.tgz#085fd70f6d7d9d109671090ccae1d3bec62554a1"
|
||||||
integrity sha512-ilHEACi9DwqJB0pw7kv+Apvh50jiiSyR/cQ3y4W7lOR5mhvn/50FLUfsnfJz0BDZtl/RR16kXvptiv6q1msYZg==
|
integrity sha512-ilHEACi9DwqJB0pw7kv+Apvh50jiiSyR/cQ3y4W7lOR5mhvn/50FLUfsnfJz0BDZtl/RR16kXvptiv6q1msYZg==
|
||||||
|
|
||||||
|
"@noble/hashes@^1.0.0":
|
||||||
|
version "1.4.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.4.0.tgz#45814aa329f30e4fe0ba49426f49dfccdd066426"
|
||||||
|
integrity sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==
|
||||||
|
|
||||||
"@octetstream/promisify@2.0.2":
|
"@octetstream/promisify@2.0.2":
|
||||||
version "2.0.2"
|
version "2.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/@octetstream/promisify/-/promisify-2.0.2.tgz#29ac3bd7aefba646db670227f895d812c1a19615"
|
resolved "https://registry.yarnpkg.com/@octetstream/promisify/-/promisify-2.0.2.tgz#29ac3bd7aefba646db670227f895d812c1a19615"
|
||||||
@ -2884,6 +3008,13 @@ aws4@^1.8.0:
|
|||||||
resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.12.0.tgz#ce1c9d143389679e253b314241ea9aa5cec980d3"
|
resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.12.0.tgz#ce1c9d143389679e253b314241ea9aa5cec980d3"
|
||||||
integrity sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==
|
integrity sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==
|
||||||
|
|
||||||
|
axios@^0.21.2:
|
||||||
|
version "0.21.4"
|
||||||
|
resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575"
|
||||||
|
integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==
|
||||||
|
dependencies:
|
||||||
|
follow-redirects "^1.14.0"
|
||||||
|
|
||||||
axios@^0.26.1:
|
axios@^0.26.1:
|
||||||
version "0.26.1"
|
version "0.26.1"
|
||||||
resolved "https://registry.yarnpkg.com/axios/-/axios-0.26.1.tgz#1ede41c51fcf51bbbd6fd43669caaa4f0495aaa9"
|
resolved "https://registry.yarnpkg.com/axios/-/axios-0.26.1.tgz#1ede41c51fcf51bbbd6fd43669caaa4f0495aaa9"
|
||||||
@ -2891,6 +3022,15 @@ axios@^0.26.1:
|
|||||||
dependencies:
|
dependencies:
|
||||||
follow-redirects "^1.14.8"
|
follow-redirects "^1.14.8"
|
||||||
|
|
||||||
|
axios@^1.6.0:
|
||||||
|
version "1.6.8"
|
||||||
|
resolved "https://registry.yarnpkg.com/axios/-/axios-1.6.8.tgz#66d294951f5d988a00e87a0ffb955316a619ea66"
|
||||||
|
integrity sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==
|
||||||
|
dependencies:
|
||||||
|
follow-redirects "^1.15.6"
|
||||||
|
form-data "^4.0.0"
|
||||||
|
proxy-from-env "^1.1.0"
|
||||||
|
|
||||||
b4a@^1.0.1, b4a@^1.1.0, b4a@^1.3.0:
|
b4a@^1.0.1, b4a@^1.1.0, b4a@^1.3.0:
|
||||||
version "1.6.3"
|
version "1.6.3"
|
||||||
resolved "https://registry.yarnpkg.com/b4a/-/b4a-1.6.3.tgz#cce6e8a2f0d0774e5fe8062086827e979970266d"
|
resolved "https://registry.yarnpkg.com/b4a/-/b4a-1.6.3.tgz#cce6e8a2f0d0774e5fe8062086827e979970266d"
|
||||||
@ -3082,7 +3222,7 @@ bip32@3.0.1:
|
|||||||
typeforce "^1.11.5"
|
typeforce "^1.11.5"
|
||||||
wif "^2.0.6"
|
wif "^2.0.6"
|
||||||
|
|
||||||
bip39@^3.0.4:
|
bip39@^3.0.2, bip39@^3.0.4:
|
||||||
version "3.1.0"
|
version "3.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/bip39/-/bip39-3.1.0.tgz#c55a418deaf48826a6ceb34ac55b3ee1577e18a3"
|
resolved "https://registry.yarnpkg.com/bip39/-/bip39-3.1.0.tgz#c55a418deaf48826a6ceb34ac55b3ee1577e18a3"
|
||||||
integrity sha512-c9kiwdk45Do5GL0vJMe7tS95VjCii65mYAH7DfWl3uW8AVzXKQVUm64i3hzVybBDMp9r7j9iNxR85+ul8MdN/A==
|
integrity sha512-c9kiwdk45Do5GL0vJMe7tS95VjCii65mYAH7DfWl3uW8AVzXKQVUm64i3hzVybBDMp9r7j9iNxR85+ul8MdN/A==
|
||||||
@ -3531,7 +3671,7 @@ colorette@^2.0.10, colorette@^2.0.14:
|
|||||||
resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a"
|
resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a"
|
||||||
integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==
|
integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==
|
||||||
|
|
||||||
combined-stream@^1.0.6, combined-stream@~1.0.6:
|
combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6:
|
||||||
version "1.0.8"
|
version "1.0.8"
|
||||||
resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
|
resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
|
||||||
integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
|
integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
|
||||||
@ -3674,21 +3814,10 @@ core-util-is@~1.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85"
|
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85"
|
||||||
integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==
|
integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==
|
||||||
|
|
||||||
cosmjs-types@^0.4.0:
|
cosmjs-types@^0.9.0:
|
||||||
version "0.4.1"
|
version "0.9.0"
|
||||||
resolved "https://registry.yarnpkg.com/cosmjs-types/-/cosmjs-types-0.4.1.tgz#3b2a53ba60d33159dd075596ce8267cfa7027063"
|
resolved "https://registry.yarnpkg.com/cosmjs-types/-/cosmjs-types-0.9.0.tgz#c3bc482d28c7dfa25d1445093fdb2d9da1f6cfcc"
|
||||||
integrity sha512-I7E/cHkIgoJzMNQdFF0YVqPlaTqrqKHrskuSTIqlEyxfB5Lf3WKCajSXVK2yHOfOFfSux/RxEdpMzw/eO4DIog==
|
integrity sha512-MN/yUe6mkJwHnCFfsNPeCfXVhyxHYW6c/xDUzrSbBycYzw++XvWDMJArXp2pLdgD6FQ8DW79vkPjeNKVrXaHeQ==
|
||||||
dependencies:
|
|
||||||
long "^4.0.0"
|
|
||||||
protobufjs "~6.11.2"
|
|
||||||
|
|
||||||
cosmjs-types@^0.5.1:
|
|
||||||
version "0.5.2"
|
|
||||||
resolved "https://registry.yarnpkg.com/cosmjs-types/-/cosmjs-types-0.5.2.tgz#2d42b354946f330dfb5c90a87fdc2a36f97b965d"
|
|
||||||
integrity sha512-zxCtIJj8v3Di7s39uN4LNcN3HIE1z0B9Z0SPE8ZNQR0oSzsuSe1ACgxoFkvhkS7WBasCAFcglS11G2hyfd5tPg==
|
|
||||||
dependencies:
|
|
||||||
long "^4.0.0"
|
|
||||||
protobufjs "~6.11.2"
|
|
||||||
|
|
||||||
create-ecdh@^4.0.0:
|
create-ecdh@^4.0.0:
|
||||||
version "4.0.4"
|
version "4.0.4"
|
||||||
@ -4840,19 +4969,6 @@ events@^3.2.0, events@^3.3.0:
|
|||||||
resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400"
|
resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400"
|
||||||
integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==
|
integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==
|
||||||
|
|
||||||
evmosjs@^0.2.5:
|
|
||||||
version "0.2.17"
|
|
||||||
resolved "https://registry.yarnpkg.com/evmosjs/-/evmosjs-0.2.17.tgz#2f2d3708bf9df6a2be46388393402647c937ec88"
|
|
||||||
integrity sha512-VCFZjxpbL2cy/vXKJwjAzFnOVllIo+qiJz4Fqqleoja0dr+cYY4s+ndXxAGIJq0/pOuQL+SqxukOxRDxcTN29w==
|
|
||||||
dependencies:
|
|
||||||
"@evmos/address-converter" "^0.1.9"
|
|
||||||
"@evmos/eip712" "^0.2.11"
|
|
||||||
"@evmos/proto" "^0.1.27"
|
|
||||||
"@evmos/provider" "^0.2.8"
|
|
||||||
"@evmos/transactions" "^0.2.13"
|
|
||||||
link-module-alias "^1.2.0"
|
|
||||||
shx "^0.3.4"
|
|
||||||
|
|
||||||
evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3:
|
evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3:
|
||||||
version "1.0.3"
|
version "1.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02"
|
resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02"
|
||||||
@ -5098,6 +5214,11 @@ follow-redirects@^1.0.0, follow-redirects@^1.14.8:
|
|||||||
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13"
|
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13"
|
||||||
integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==
|
integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==
|
||||||
|
|
||||||
|
follow-redirects@^1.14.0, follow-redirects@^1.15.6:
|
||||||
|
version "1.15.6"
|
||||||
|
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.6.tgz#7f815c0cda4249c74ff09e95ef97c23b5fd0399b"
|
||||||
|
integrity sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==
|
||||||
|
|
||||||
for-each@^0.3.3:
|
for-each@^0.3.3:
|
||||||
version "0.3.3"
|
version "0.3.3"
|
||||||
resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e"
|
resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e"
|
||||||
@ -5110,6 +5231,15 @@ forever-agent@~0.6.1:
|
|||||||
resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
|
resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
|
||||||
integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==
|
integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==
|
||||||
|
|
||||||
|
form-data@^4.0.0:
|
||||||
|
version "4.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452"
|
||||||
|
integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==
|
||||||
|
dependencies:
|
||||||
|
asynckit "^0.4.0"
|
||||||
|
combined-stream "^1.0.8"
|
||||||
|
mime-types "^2.1.12"
|
||||||
|
|
||||||
form-data@~2.3.2:
|
form-data@~2.3.2:
|
||||||
version "2.3.3"
|
version "2.3.3"
|
||||||
resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6"
|
resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6"
|
||||||
@ -5264,7 +5394,7 @@ globals@^12.1.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
type-fest "^0.8.1"
|
type-fest "^0.8.1"
|
||||||
|
|
||||||
globalthis@^1.0.3:
|
globalthis@^1.0.1, globalthis@^1.0.3:
|
||||||
version "1.0.3"
|
version "1.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf"
|
resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf"
|
||||||
integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==
|
integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==
|
||||||
@ -5935,6 +6065,11 @@ isobject@^3.0.1:
|
|||||||
resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
|
resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
|
||||||
integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==
|
integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==
|
||||||
|
|
||||||
|
isomorphic-ws@^4.0.1:
|
||||||
|
version "4.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz#55fd4cd6c5e6491e76dc125938dd863f5cd4f2dc"
|
||||||
|
integrity sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w==
|
||||||
|
|
||||||
isstream@~0.1.2:
|
isstream@~0.1.2:
|
||||||
version "0.1.2"
|
version "0.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
|
resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
|
||||||
@ -6372,7 +6507,7 @@ js-sha256@^0.9.0:
|
|||||||
resolved "https://registry.yarnpkg.com/js-sha256/-/js-sha256-0.9.0.tgz#0b89ac166583e91ef9123644bd3c5334ce9d0966"
|
resolved "https://registry.yarnpkg.com/js-sha256/-/js-sha256-0.9.0.tgz#0b89ac166583e91ef9123644bd3c5334ce9d0966"
|
||||||
integrity sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA==
|
integrity sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA==
|
||||||
|
|
||||||
js-sha3@0.8.0:
|
js-sha3@0.8.0, js-sha3@^0.8.0:
|
||||||
version "0.8.0"
|
version "0.8.0"
|
||||||
resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840"
|
resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840"
|
||||||
integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==
|
integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==
|
||||||
@ -6477,11 +6612,6 @@ json5@^2.1.2, json5@^2.2.2:
|
|||||||
resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283"
|
resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283"
|
||||||
integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==
|
integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==
|
||||||
|
|
||||||
jsonschema@^1.4.0:
|
|
||||||
version "1.4.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/jsonschema/-/jsonschema-1.4.1.tgz#cc4c3f0077fb4542982973d8a083b6b34f482dab"
|
|
||||||
integrity sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ==
|
|
||||||
|
|
||||||
jsprim@^1.2.2:
|
jsprim@^1.2.2:
|
||||||
version "1.4.2"
|
version "1.4.2"
|
||||||
resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.2.tgz#712c65533a15c878ba59e9ed5f0e26d5b77c5feb"
|
resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.2.tgz#712c65533a15c878ba59e9ed5f0e26d5b77c5feb"
|
||||||
@ -6615,6 +6745,18 @@ levn@^0.3.0, levn@~0.3.0:
|
|||||||
prelude-ls "~1.1.2"
|
prelude-ls "~1.1.2"
|
||||||
type-check "~0.3.2"
|
type-check "~0.3.2"
|
||||||
|
|
||||||
|
libsodium-sumo@^0.7.13:
|
||||||
|
version "0.7.13"
|
||||||
|
resolved "https://registry.yarnpkg.com/libsodium-sumo/-/libsodium-sumo-0.7.13.tgz#533b97d2be44b1277e59c1f9f60805978ac5542d"
|
||||||
|
integrity sha512-zTGdLu4b9zSNLfovImpBCbdAA4xkpkZbMnSQjP8HShyOutnGjRHmSOKlsylh1okao6QhLiz7nG98EGn+04cZjQ==
|
||||||
|
|
||||||
|
libsodium-wrappers-sumo@^0.7.11:
|
||||||
|
version "0.7.13"
|
||||||
|
resolved "https://registry.yarnpkg.com/libsodium-wrappers-sumo/-/libsodium-wrappers-sumo-0.7.13.tgz#a33aea845a0bb56db067548f04feba28c730ab8e"
|
||||||
|
integrity sha512-lz4YdplzDRh6AhnLGF2Dj2IUj94xRN6Bh8T0HLNwzYGwPehQJX6c7iYVrFUPZ3QqxE0bqC+K0IIqqZJYWumwSQ==
|
||||||
|
dependencies:
|
||||||
|
libsodium-sumo "^0.7.13"
|
||||||
|
|
||||||
libsodium-wrappers@^0.7.6:
|
libsodium-wrappers@^0.7.6:
|
||||||
version "0.7.11"
|
version "0.7.11"
|
||||||
resolved "https://registry.yarnpkg.com/libsodium-wrappers/-/libsodium-wrappers-0.7.11.tgz#53bd20606dffcc54ea2122133c7da38218f575f7"
|
resolved "https://registry.yarnpkg.com/libsodium-wrappers/-/libsodium-wrappers-0.7.11.tgz#53bd20606dffcc54ea2122133c7da38218f575f7"
|
||||||
@ -6732,11 +6874,6 @@ long@^4.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28"
|
resolved "https://registry.yarnpkg.com/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28"
|
||||||
integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==
|
integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==
|
||||||
|
|
||||||
long@^5.2.0:
|
|
||||||
version "5.2.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/long/-/long-5.2.3.tgz#a3ba97f3877cf1d778eccbcb048525ebb77499e1"
|
|
||||||
integrity sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q==
|
|
||||||
|
|
||||||
loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0:
|
loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0:
|
||||||
version "1.4.0"
|
version "1.4.0"
|
||||||
resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
|
resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
|
||||||
@ -7546,10 +7683,10 @@ prop-types@^15.5.10, prop-types@^15.6.2, prop-types@^15.7.2:
|
|||||||
object-assign "^4.1.1"
|
object-assign "^4.1.1"
|
||||||
react-is "^16.13.1"
|
react-is "^16.13.1"
|
||||||
|
|
||||||
protobufjs@~6.11.2:
|
protobufjs@^6.8.8:
|
||||||
version "6.11.3"
|
version "6.11.4"
|
||||||
resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-6.11.3.tgz#637a527205a35caa4f3e2a9a4a13ddffe0e7af74"
|
resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-6.11.4.tgz#29a412c38bf70d89e537b6d02d904a6f448173aa"
|
||||||
integrity sha512-xL96WDdCZYdU7Slin569tFX712BxsxslWwAfAhCYjQKGTq7dAU91Lomy6nLLhh/dyGhk/YH4TwTSRxTzhuHyZg==
|
integrity sha512-5kQWPaJHi1WoCpjTGszzQ32PG2F4+wRY6BmAT4Vfw56Q2FZ4YZzK20xUYQH4YkfehY1e6QSICrJquM6xXZNcrw==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@protobufjs/aspromise" "^1.1.2"
|
"@protobufjs/aspromise" "^1.1.2"
|
||||||
"@protobufjs/base64" "^1.1.2"
|
"@protobufjs/base64" "^1.1.2"
|
||||||
@ -7573,6 +7710,11 @@ proxy-addr@~2.0.7:
|
|||||||
forwarded "0.2.0"
|
forwarded "0.2.0"
|
||||||
ipaddr.js "1.9.1"
|
ipaddr.js "1.9.1"
|
||||||
|
|
||||||
|
proxy-from-env@^1.1.0:
|
||||||
|
version "1.1.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2"
|
||||||
|
integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==
|
||||||
|
|
||||||
psl@^1.1.28:
|
psl@^1.1.28:
|
||||||
version "1.9.0"
|
version "1.9.0"
|
||||||
resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7"
|
resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7"
|
||||||
@ -8036,7 +8178,7 @@ ripemd160-min@0.0.6:
|
|||||||
resolved "https://registry.yarnpkg.com/ripemd160-min/-/ripemd160-min-0.0.6.tgz#a904b77658114474d02503e819dcc55853b67e62"
|
resolved "https://registry.yarnpkg.com/ripemd160-min/-/ripemd160-min-0.0.6.tgz#a904b77658114474d02503e819dcc55853b67e62"
|
||||||
integrity sha512-+GcJgQivhs6S9qvLogusiTcS9kQUfgR75whKuy5jIhuiOfQuJ8fjqxV6EGD5duH1Y/FawFUMtMhyeq3Fbnib8A==
|
integrity sha512-+GcJgQivhs6S9qvLogusiTcS9kQUfgR75whKuy5jIhuiOfQuJ8fjqxV6EGD5duH1Y/FawFUMtMhyeq3Fbnib8A==
|
||||||
|
|
||||||
ripemd160@^2.0.0, ripemd160@^2.0.1:
|
ripemd160@^2.0.0, ripemd160@^2.0.1, ripemd160@^2.0.2:
|
||||||
version "2.0.2"
|
version "2.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c"
|
resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c"
|
||||||
integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==
|
integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==
|
||||||
@ -8256,7 +8398,7 @@ setprototypeof@1.2.0:
|
|||||||
resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424"
|
resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424"
|
||||||
integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==
|
integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==
|
||||||
|
|
||||||
sha.js@^2.4.0, sha.js@^2.4.8:
|
sha.js@^2.4.0, sha.js@^2.4.11, sha.js@^2.4.8:
|
||||||
version "2.4.11"
|
version "2.4.11"
|
||||||
resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7"
|
resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7"
|
||||||
integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==
|
integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==
|
||||||
@ -8728,6 +8870,11 @@ supports-preserve-symlinks-flag@^1.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
|
resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
|
||||||
integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
|
integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
|
||||||
|
|
||||||
|
symbol-observable@^2.0.3:
|
||||||
|
version "2.0.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-2.0.3.tgz#5b521d3d07a43c351055fa43b8355b62d33fd16a"
|
||||||
|
integrity sha512-sQV7phh2WCYAn81oAkakC5qjq2Ml0g8ozqz03wOGnx9dDlG1de6yrF+0RAzSJD8fPUow3PTSMf2SAbOGxb93BA==
|
||||||
|
|
||||||
symbol-observable@^4.0.0:
|
symbol-observable@^4.0.0:
|
||||||
version "4.0.0"
|
version "4.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-4.0.0.tgz#5b425f192279e87f2f9b937ac8540d1984b39205"
|
resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-4.0.0.tgz#5b425f192279e87f2f9b937ac8540d1984b39205"
|
||||||
@ -9440,7 +9587,7 @@ ws@^6.1.2:
|
|||||||
dependencies:
|
dependencies:
|
||||||
async-limiter "~1.0.0"
|
async-limiter "~1.0.0"
|
||||||
|
|
||||||
ws@^7.3.1:
|
ws@^7, ws@^7.3.1:
|
||||||
version "7.5.9"
|
version "7.5.9"
|
||||||
resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591"
|
resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591"
|
||||||
integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==
|
integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==
|
||||||
@ -9472,6 +9619,14 @@ xsalsa20@^1.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/xsalsa20/-/xsalsa20-1.2.0.tgz#e5a05cb26f8cef723f94a559102ed50c1b44c25c"
|
resolved "https://registry.yarnpkg.com/xsalsa20/-/xsalsa20-1.2.0.tgz#e5a05cb26f8cef723f94a559102ed50c1b44c25c"
|
||||||
integrity sha512-FIr/DEeoHfj7ftfylnoFt3rAIRoWXpx2AoDfrT2qD2wtp7Dp+COajvs/Icb7uHqRW9m60f5iXZwdsJJO3kvb7w==
|
integrity sha512-FIr/DEeoHfj7ftfylnoFt3rAIRoWXpx2AoDfrT2qD2wtp7Dp+COajvs/Icb7uHqRW9m60f5iXZwdsJJO3kvb7w==
|
||||||
|
|
||||||
|
xstream@^11.14.0:
|
||||||
|
version "11.14.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/xstream/-/xstream-11.14.0.tgz#2c071d26b18310523b6877e86b4e54df068a9ae5"
|
||||||
|
integrity sha512-1bLb+kKKtKPbgTK6i/BaoAn03g47PpFstlbe1BA+y3pNS/LfvcaghS5BFf9+EE1J+KwSQsEpfJvFN5GqFtiNmw==
|
||||||
|
dependencies:
|
||||||
|
globalthis "^1.0.1"
|
||||||
|
symbol-observable "^2.0.3"
|
||||||
|
|
||||||
xtend@^4.0.1, xtend@^4.0.2:
|
xtend@^4.0.1, xtend@^4.0.2:
|
||||||
version "4.0.2"
|
version "4.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
|
resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
|
||||||
|
Loading…
Reference in New Issue
Block a user