Ledger derivation (account/address indexes) (#3680)
* Ledger derivation (account/address indexes) * Fix API version
This commit is contained in:
parent
6b4a1c01ba
commit
329bcd291e
@ -33,10 +33,10 @@
|
||||
"afterSign": "electron-builder-notarize"
|
||||
},
|
||||
"resolutions": {
|
||||
"@polkadot/api": "^1.34.0-beta.2",
|
||||
"@polkadot/api-contract": "^1.34.0-beta.2",
|
||||
"@polkadot/api": "^1.33.1",
|
||||
"@polkadot/api-contract": "^1.33.1",
|
||||
"@polkadot/keyring": "^3.4.1",
|
||||
"@polkadot/types": "^1.34.0-beta.2",
|
||||
"@polkadot/types": "^1.33.1",
|
||||
"@polkadot/util": "^3.4.1",
|
||||
"@polkadot/util-crypto": "^3.4.1",
|
||||
"@polkadot/wasm-crypto": "^1.4.1",
|
||||
|
||||
@ -371,7 +371,7 @@
|
||||
"Proxied": "بروكسيد",
|
||||
"Proxied account has no owned proxies": "حساب بروكسي ليس لديه بروكسيات مملوكة",
|
||||
"Proxy overview": "نظرة عامة الوكيل",
|
||||
"Query Ledger": "الاستعلام عن اللدجر",
|
||||
"Add Ledger": "الاستعلام عن اللدجر",
|
||||
"RPC calls": "استدعاء إجراء مكالمة عن بُعد",
|
||||
"Random": "عشوائي",
|
||||
"Raw seed": "البذرة المسودة",
|
||||
@ -1277,4 +1277,4 @@
|
||||
"{{threshold}}, not passing": "سقف}}، لا يتم تمريره}}",
|
||||
"{{threshold}}, passing": "سقف}}، يتم تمريره}}",
|
||||
"{{value}}x voting balance, locked for {{lock}}x enactment ({{period}} days)": "({{قفل}} (تاريخ إصدار {{أيام}}x رصيد التصويت، مقفل لـ x {{قيمة }}"
|
||||
}
|
||||
}
|
||||
|
||||
@ -104,7 +104,7 @@
|
||||
"Proxied": "Proxied",
|
||||
"Proxied account has no owned proxies": "Proxied account has no owned proxies",
|
||||
"Proxy overview": "Proxy overview",
|
||||
"Query Ledger": "Query Ledger",
|
||||
"Add Ledger": "Add Ledger",
|
||||
"Raw seed": "Raw seed",
|
||||
"Reasonable": "Reasonable",
|
||||
"Register identity": "Register identity",
|
||||
@ -296,4 +296,4 @@
|
||||
"website": "website",
|
||||
"your current password": "your current password",
|
||||
"your new password": "your new password"
|
||||
}
|
||||
}
|
||||
|
||||
@ -346,7 +346,7 @@
|
||||
"Propose tip": "",
|
||||
"Provide judgement": "",
|
||||
"Provide the account QR from the module/external application for scanning. One detected as valid, you will be taken to the next step to add the account to your list.": "",
|
||||
"Query Ledger": "",
|
||||
"Add Ledger": "",
|
||||
"RPC calls": "",
|
||||
"Random": "",
|
||||
"Raw seed": "",
|
||||
@ -1179,4 +1179,4 @@
|
||||
"{{threshold}}, not passing": "",
|
||||
"{{threshold}}, passing": "",
|
||||
"{{value}}x voting balance, locked for {{lock}}x enactment ({{period}} days)": ""
|
||||
}
|
||||
}
|
||||
|
||||
@ -308,7 +308,7 @@
|
||||
"Propose tip": "Proponer gratificación",
|
||||
"Provide judgement": "Juicio proporcionado",
|
||||
"Provide the account QR from the module/external application for scanning. One detected as valid, you will be taken to the next step to add the account to your list.": "Proporcionar el QR de la cuenta del módulo/aplicación externa para el análisis. Una vez detectada como válida, se le llevará al siguiente paso para añadir la cuenta a su lista.",
|
||||
"Query Ledger": "Consultar el libro de cuentas",
|
||||
"Add Ledger": "Consultar el libro de cuentas",
|
||||
"RPC calls": "llamadas RPC",
|
||||
"Random": "Aleatorio",
|
||||
"Raw seed": "Semillas en bruto",
|
||||
@ -1115,4 +1115,4 @@
|
||||
"{{threshold}}, not passing": "{{threshold}}, no pasará",
|
||||
"{{threshold}}, passing": "{{threshold}}, de aprobación",
|
||||
"{{value}}x voting balance, locked for {{lock}}x enactment ({{period}} days)": "{{value}}x saldo de votos, bloqueado por {{lock}}x sentencia ({{period}} días."
|
||||
}
|
||||
}
|
||||
|
||||
@ -424,7 +424,7 @@
|
||||
"Proxied": "Proxy",
|
||||
"Proxied account has no owned proxies": "Akun proxy tidak memiliki proxy",
|
||||
"Proxy overview": "Ringkasan proxy",
|
||||
"Query Ledger": "Query Ledger",
|
||||
"Add Ledger": "Add Ledger",
|
||||
"RPC calls": "pemanggilan RPC",
|
||||
"Random": "Acak",
|
||||
"Raw seed": "Benih raw",
|
||||
@ -1432,4 +1432,4 @@
|
||||
"{{threshold}}, not passing": "{{threshold}}, tidak melewati",
|
||||
"{{threshold}}, passing": "{{threshold}}, melewati",
|
||||
"{{value}}x voting balance, locked for {{lock}}x enactment ({{period}} days)": "{{value}}x memilih saldo, terkunci untuk {{lock}}x berlaku ({{period}} hari)"
|
||||
}
|
||||
}
|
||||
|
||||
@ -416,7 +416,7 @@
|
||||
"Proxied": "Proxy",
|
||||
"Proxied account has no owned proxies": "L'account scelto non possiede proxy",
|
||||
"Proxy overview": "Riepilogo Proxy",
|
||||
"Query Ledger": "Connetti il Ledger",
|
||||
"Add Ledger": "Connetti il Ledger",
|
||||
"RPC calls": "Chiamata RPC",
|
||||
"Random": "Casuale",
|
||||
"Raw seed": "Raw Seed",
|
||||
@ -1391,4 +1391,4 @@
|
||||
"{{threshold}}, not passing": "{{threshold}}, respinta",
|
||||
"{{threshold}}, passing": "{{threshold}}, approvato",
|
||||
"{{value}}x voting balance, locked for {{lock}}x enactment ({{period}} days)": "{{value}} x moltiplicatore di voto, fondi bloccati per {{lock}}x = {{period}} giorni"
|
||||
}
|
||||
}
|
||||
|
||||
@ -186,7 +186,7 @@
|
||||
"Propose a council motion": "カウンシルモーションを提出する",
|
||||
"Provide judgement": "ジャッジメントを提供する",
|
||||
"Provide the account QR from the module/external application for scanning. One detected as valid, you will be taken to the next step to add the account to your list.": "スキャンするためにモジュール/外部アプリケーションからアカウントのQRを提供します。有効として検出された場合、次のステップに移行しあなたのリストにアカウントが追加されます。",
|
||||
"Query Ledger": "クエリーレッジャー",
|
||||
"Add Ledger": "クエリーレッジャー",
|
||||
"RPC calls": "RPCコール",
|
||||
"Raw seed": "生のシード",
|
||||
"Raw storage": "生のストレージ",
|
||||
@ -564,4 +564,4 @@
|
||||
"{{relayDispatchQueueSize}} dispatch messages pending": "{{relayDispatchQueueSize}} ディスパッチメッセージペンディング",
|
||||
"{{seconds}} s": "{{seconds}} 秒",
|
||||
"{{step}}. Sign with your ETH address": "{{step}}. ETHアドレスでサインしてください"
|
||||
}
|
||||
}
|
||||
|
||||
@ -104,7 +104,7 @@
|
||||
"Proxied": "프록시 된",
|
||||
"Proxied account has no owned proxies": "프록시 계정에 소유하고 있는 프록시가 없음",
|
||||
"Proxy overview": "프록시 개요",
|
||||
"Query Ledger": "Ledger 조회",
|
||||
"Add Ledger": "Ledger 조회",
|
||||
"Raw seed": "시드 문구",
|
||||
"Reasonable": "적합한",
|
||||
"Register identity": "신원 인증/등록하기",
|
||||
@ -301,4 +301,4 @@
|
||||
"website": "website",
|
||||
"your current password": "현재 비밀번호",
|
||||
"your new password": "새로운 비밀번호"
|
||||
}
|
||||
}
|
||||
|
||||
@ -308,7 +308,7 @@
|
||||
"Propose tip": "Propor gorjeta",
|
||||
"Provide judgement": "Fornecer julgamento",
|
||||
"Provide the account QR from the module/external application for scanning. One detected as valid, you will be taken to the next step to add the account to your list.": "Forneça o QR da conta no módulo/aplicativo externo para digitalização. Se for detectado como válido, você será levado para a próxima etapa para adicionar a conta à sua lista.",
|
||||
"Query Ledger": "Livro de consultas",
|
||||
"Add Ledger": "Livro de consultas",
|
||||
"RPC calls": "Chamadas RPC",
|
||||
"Random": "Aleatória",
|
||||
"Raw seed": "Semente bruta",
|
||||
@ -1122,4 +1122,4 @@
|
||||
"{{threshold}}, not passing": "{{threshold}}, não passando",
|
||||
"{{threshold}}, passing": "{{threshold}}, passando",
|
||||
"{{value}}x voting balance, locked for {{lock}}x enactment ({{period}} days)": "{{value}} x saldo de votos, bloqueado por {{lock}} x promulgação ({{period}} dias)"
|
||||
}
|
||||
}
|
||||
|
||||
@ -314,7 +314,7 @@
|
||||
"Propose tip": "Предложить чаевые",
|
||||
"Provide judgement": "Сделать оценку",
|
||||
"Provide the account QR from the module/external application for scanning. One detected as valid, you will be taken to the next step to add the account to your list.": "Предоставьте QR-код аккаунта из модуля/внешнего приложения для сканирования. Когда он будет правильным, Вы перейдете к следующему шагу, чтобы добавить учетную запись в свой список.",
|
||||
"Query Ledger": "Книга запросов",
|
||||
"Add Ledger": "Книга запросов",
|
||||
"RPC calls": "RPC вызовы",
|
||||
"Random": "Случайный",
|
||||
"Raw seed": "Исходная секретная фраза",
|
||||
@ -1133,4 +1133,4 @@
|
||||
"{{threshold}}, not passing": "{{threshold}}, не проходит",
|
||||
"{{threshold}}, passing": "{{threshold}}, проходит",
|
||||
"{{value}}x voting balance, locked for {{lock}}x enactment ({{period}} days)": "{{value}}x баланс голосования, заблокировано на {{lock}}x ({{period}} дней)"
|
||||
}
|
||||
}
|
||||
|
||||
@ -413,7 +413,7 @@
|
||||
"Proxied": "代理",
|
||||
"Proxied account has no owned proxies": "代理帐户没有自己的代理",
|
||||
"Proxy overview": "代理概览",
|
||||
"Query Ledger": "查询账本",
|
||||
"Add Ledger": "查询账本",
|
||||
"RPC calls": "RPC 调用",
|
||||
"Random": "随机生成颜色",
|
||||
"Raw seed": "原始种子",
|
||||
@ -1380,4 +1380,4 @@
|
||||
"{{threshold}}, not passing": "{{threshold}},没有通过",
|
||||
"{{threshold}}, passing": "{{threshold}}, 通过",
|
||||
"{{value}}x voting balance, locked for {{lock}}x enactment ({{period}} days)": "{{value}}x投票余额,锁定 {{lock}}x 执行 ({{period}} days)"
|
||||
}
|
||||
}
|
||||
|
||||
@ -190,12 +190,12 @@ function Account ({ account: { address, meta }, className = '', delegation, filt
|
||||
// for now we are always assuming hardwareType === 'ledger'
|
||||
(): void => {
|
||||
getLedger()
|
||||
.getAddress(true)
|
||||
.getAddress(true, meta.accountOffset as number || 0, meta.addressOffset as number || 0)
|
||||
.catch((error): void => {
|
||||
console.error(`ledger: ${(error as Error).message}`);
|
||||
});
|
||||
},
|
||||
[]
|
||||
[meta]
|
||||
);
|
||||
|
||||
if (!isVisible) {
|
||||
|
||||
@ -9,8 +9,7 @@ import { Delegation, SortedAccount } from '../types';
|
||||
import BN from 'bn.js';
|
||||
import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
||||
import styled from 'styled-components';
|
||||
import keyring from '@polkadot/ui-keyring';
|
||||
import { getLedger, isLedger } from '@polkadot/react-api';
|
||||
import { isLedger } from '@polkadot/react-api';
|
||||
import { useApi, useAccounts, useCall, useFavorites, useIpfs, useLoadingDelay, useToggle } from '@polkadot/react-hooks';
|
||||
import { FormatBalance } from '@polkadot/react-query';
|
||||
import { Button, Input, Table } from '@polkadot/react-components';
|
||||
@ -19,6 +18,7 @@ import { BN_ZERO } from '@polkadot/util';
|
||||
import { useTranslation } from '../translate';
|
||||
import CreateModal from '../modals/Create';
|
||||
import ImportModal from '../modals/Import';
|
||||
import Ledger from '../modals/Ledger';
|
||||
import Multisig from '../modals/MultisigCreate';
|
||||
import Proxy from '../modals/ProxiedAdd';
|
||||
import Qr from '../modals/Qr';
|
||||
@ -44,19 +44,6 @@ interface Props {
|
||||
|
||||
const STORE_FAVS = 'accounts:favorites';
|
||||
|
||||
// query the ledger for the address, adding it to the keyring
|
||||
async function queryLedger (): Promise<void> {
|
||||
const ledger = getLedger();
|
||||
|
||||
try {
|
||||
const { address } = await ledger.getAddress();
|
||||
|
||||
keyring.addHardware(address, 'ledger', { name: 'ledger' });
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
}
|
||||
}
|
||||
|
||||
function Overview ({ className = '', onStatusChange }: Props): React.ReactElement<Props> {
|
||||
const { t } = useTranslation();
|
||||
const { api } = useApi();
|
||||
@ -64,6 +51,7 @@ function Overview ({ className = '', onStatusChange }: Props): React.ReactElemen
|
||||
const { isIpfs } = useIpfs();
|
||||
const [isCreateOpen, toggleCreate] = useToggle();
|
||||
const [isImportOpen, toggleImport] = useToggle();
|
||||
const [isLedgerOpen, toggleLedger] = useToggle();
|
||||
const [isMultisigOpen, toggleMultisig] = useToggle();
|
||||
const [isProxyOpen, toggleProxy] = useToggle();
|
||||
const [isQrOpen, toggleQr] = useToggle();
|
||||
@ -181,6 +169,9 @@ function Overview ({ className = '', onStatusChange }: Props): React.ReactElemen
|
||||
onStatusChange={onStatusChange}
|
||||
/>
|
||||
)}
|
||||
{isLedgerOpen && (
|
||||
<Ledger onClose={toggleLedger} />
|
||||
)}
|
||||
{isMultisigOpen && (
|
||||
<Multisig
|
||||
onClose={toggleMultisig}
|
||||
@ -221,8 +212,8 @@ function Overview ({ className = '', onStatusChange }: Props): React.ReactElemen
|
||||
<>
|
||||
<Button
|
||||
icon='question'
|
||||
label={t<string>('Query Ledger')}
|
||||
onClick={queryLedger}
|
||||
label={t<string>('Add Ledger')}
|
||||
onClick={toggleLedger}
|
||||
/>
|
||||
</>
|
||||
)}
|
||||
|
||||
121
packages/page-accounts/src/modals/Ledger.tsx
Normal file
121
packages/page-accounts/src/modals/Ledger.tsx
Normal file
@ -0,0 +1,121 @@
|
||||
// Copyright 2017-2020 @polkadot/app-accounts authors & contributors
|
||||
// This software may be modified and distributed under the terms
|
||||
// of the Apache-2.0 license. See the LICENSE file for details.
|
||||
|
||||
import React, { useCallback, useRef, useState } from 'react';
|
||||
import keyring from '@polkadot/ui-keyring';
|
||||
import { getLedger } from '@polkadot/react-api';
|
||||
import { Button, Dropdown, Modal } from '@polkadot/react-components';
|
||||
|
||||
import { useTranslation } from '../translate';
|
||||
|
||||
interface Option {
|
||||
text: string;
|
||||
value: number;
|
||||
}
|
||||
|
||||
interface Props {
|
||||
className?: string;
|
||||
onClose: () => void;
|
||||
}
|
||||
|
||||
const AVAIL = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19];
|
||||
|
||||
// query the ledger for the address, adding it to the keyring
|
||||
async function queryLedger (accountOffset: number, addressOffset: number): Promise<void> {
|
||||
try {
|
||||
const ledger = getLedger();
|
||||
const { address } = await ledger.getAddress(false, accountOffset, addressOffset);
|
||||
|
||||
keyring.addHardware(address, 'ledger', { accountOffset, addressOffset, name: 'ledger' });
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
|
||||
function Ledger ({ className, onClose }: Props): React.ReactElement<Props> {
|
||||
const { t } = useTranslation();
|
||||
const [accIndex, setAccIndex] = useState(0);
|
||||
const [addIndex, setAddIndex] = useState(0);
|
||||
const [error, setError] = useState<Error | null>(null);
|
||||
const [isBusy, setIsBusy] = useState(false);
|
||||
|
||||
const accOps = useRef(AVAIL.map((value): Option => ({
|
||||
text: t('Account type {{index}}', { replace: { index: value } }),
|
||||
value
|
||||
})));
|
||||
|
||||
const addOps = useRef(AVAIL.map((value): Option => ({
|
||||
text: t('Address index {{index}}', { replace: { index: value } }),
|
||||
value
|
||||
})));
|
||||
|
||||
const _onSave = useCallback(
|
||||
(): void => {
|
||||
setError(null);
|
||||
setIsBusy(true);
|
||||
|
||||
queryLedger(accIndex, addIndex)
|
||||
.then(() => onClose())
|
||||
.catch((error): void => {
|
||||
setIsBusy(false);
|
||||
setError(error);
|
||||
});
|
||||
},
|
||||
[accIndex, addIndex, onClose]
|
||||
);
|
||||
|
||||
return (
|
||||
<Modal
|
||||
className={className}
|
||||
header={t<string>('Add account via Ledger')}
|
||||
size='large'
|
||||
>
|
||||
<Modal.Content>
|
||||
<Modal.Columns>
|
||||
<Modal.Column>
|
||||
<Dropdown
|
||||
help={t('The account type (derivation) to use')}
|
||||
label={t('account type')}
|
||||
onChange={setAccIndex}
|
||||
options={accOps.current}
|
||||
value={accIndex}
|
||||
/>
|
||||
</Modal.Column>
|
||||
<Modal.Column>
|
||||
<p>{t('The account type that you wish to create. This is the top-level derivation.')}</p>
|
||||
</Modal.Column>
|
||||
</Modal.Columns>
|
||||
<Modal.Columns>
|
||||
<Modal.Column>
|
||||
<Dropdown
|
||||
help={t('The address index (derivation on account) to use')}
|
||||
label={t('address index')}
|
||||
onChange={setAddIndex}
|
||||
options={addOps.current}
|
||||
value={addIndex}
|
||||
/>
|
||||
{error && (
|
||||
<article className='error'>{error.message}</article>
|
||||
)}
|
||||
</Modal.Column>
|
||||
<Modal.Column>
|
||||
<p>{t('The address index on the account that you wish to add. This is the second-level derivation.')}</p>
|
||||
</Modal.Column>
|
||||
</Modal.Columns>
|
||||
</Modal.Content>
|
||||
<Modal.Actions onCancel={onClose}>
|
||||
<Button
|
||||
icon='sync'
|
||||
isBusy={isBusy}
|
||||
label={t<string>('Save')}
|
||||
onClick={_onSave}
|
||||
/>
|
||||
</Modal.Actions>
|
||||
</Modal>
|
||||
);
|
||||
}
|
||||
|
||||
export default React.memo(Ledger);
|
||||
@ -12,6 +12,6 @@
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.11.2",
|
||||
"@polkadot/api-contract": "^1.34.0-beta.2"
|
||||
"@polkadot/api-contract": "^1.33.1"
|
||||
}
|
||||
}
|
||||
|
||||
@ -31,7 +31,7 @@
|
||||
"homepage": "https://github.com/polkadot-js/ui/tree/master/packages/ui-reactive#readme",
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.11.2",
|
||||
"@polkadot/api": "^1.34.0-beta.2",
|
||||
"@polkadot/api": "^1.33.1",
|
||||
"@polkadot/extension-dapp": "^0.34.0-beta.12",
|
||||
"rxjs-compat": "^6.6.3"
|
||||
}
|
||||
|
||||
@ -16,11 +16,11 @@
|
||||
"@fortawesome/react-fontawesome": "^0.1.11",
|
||||
"@polkadot/keyring": "^3.4.1",
|
||||
"@polkadot/react-api": "0.59.0-beta.2",
|
||||
"@polkadot/react-identicon": "^0.59.0-beta.4",
|
||||
"@polkadot/react-qr": "^0.59.0-beta.4",
|
||||
"@polkadot/react-identicon": "^0.59.0-beta.6",
|
||||
"@polkadot/react-qr": "^0.59.0-beta.6",
|
||||
"@polkadot/react-query": "0.59.0-beta.2",
|
||||
"@polkadot/ui-keyring": "^0.59.0-beta.4",
|
||||
"@polkadot/ui-settings": "^0.59.0-beta.4",
|
||||
"@polkadot/ui-keyring": "^0.59.0-beta.6",
|
||||
"@polkadot/ui-settings": "^0.59.0-beta.6",
|
||||
"@polkadot/util": "^3.4.1",
|
||||
"@polkadot/util-crypto": "^3.4.1",
|
||||
"chart.js": "^2.9.3",
|
||||
|
||||
164
yarn.lock
164
yarn.lock
@ -3061,57 +3061,57 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/api-contract@npm:^1.34.0-beta.2":
|
||||
version: 1.34.0-beta.2
|
||||
resolution: "@polkadot/api-contract@npm:1.34.0-beta.2"
|
||||
"@polkadot/api-contract@npm:^1.33.1":
|
||||
version: 1.33.1
|
||||
resolution: "@polkadot/api-contract@npm:1.33.1"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/api": 1.34.0-beta.2
|
||||
"@polkadot/rpc-core": 1.34.0-beta.2
|
||||
"@polkadot/types": 1.34.0-beta.2
|
||||
"@polkadot/api": 1.33.1
|
||||
"@polkadot/rpc-core": 1.33.1
|
||||
"@polkadot/types": 1.33.1
|
||||
"@polkadot/util": ^3.4.1
|
||||
bn.js: ^5.1.3
|
||||
rxjs: ^6.6.3
|
||||
checksum: c4c97961b4b01428beefdfd05f90452a6787bdd7219d19d8b608390609b77bd0d9f1158ef18c655c13f51f6cd579a058b08e5dba5f1cd01a786355d2d1135b73
|
||||
checksum: 366442878793e0a8f0a377d46d903e984d5853d37403b3ca912bde19640b5d42daa3c256250bce52768b68c411e8c46161011e9caeb8e5fc5ce504055d26f5cf
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/api-derive@npm:1.34.0-beta.2":
|
||||
version: 1.34.0-beta.2
|
||||
resolution: "@polkadot/api-derive@npm:1.34.0-beta.2"
|
||||
"@polkadot/api-derive@npm:1.33.1":
|
||||
version: 1.33.1
|
||||
resolution: "@polkadot/api-derive@npm:1.33.1"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/api": 1.34.0-beta.2
|
||||
"@polkadot/rpc-core": 1.34.0-beta.2
|
||||
"@polkadot/rpc-provider": 1.34.0-beta.2
|
||||
"@polkadot/types": 1.34.0-beta.2
|
||||
"@polkadot/api": 1.33.1
|
||||
"@polkadot/rpc-core": 1.33.1
|
||||
"@polkadot/rpc-provider": 1.33.1
|
||||
"@polkadot/types": 1.33.1
|
||||
"@polkadot/util": ^3.4.1
|
||||
"@polkadot/util-crypto": ^3.4.1
|
||||
bn.js: ^5.1.3
|
||||
memoizee: ^0.4.14
|
||||
rxjs: ^6.6.3
|
||||
checksum: 1aeb4f3d28fa3e6162a77b49b43579a6aabed0798ca54cae2ee345f5f1a83aa352fa845a214ab2cc63069e70e527bcbb6d4257ed47d408834ef407dca524dc28
|
||||
checksum: 38a607993b3905c155ca7e65789cf34efdbc453950c09cf8c484e7bee51e18c19cc23ec906a1d983a8ed1ed3d8c8e689363516d7b5aa7dc11906ee3061071009
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/api@npm:^1.34.0-beta.2":
|
||||
version: 1.34.0-beta.2
|
||||
resolution: "@polkadot/api@npm:1.34.0-beta.2"
|
||||
"@polkadot/api@npm:^1.33.1":
|
||||
version: 1.33.1
|
||||
resolution: "@polkadot/api@npm:1.33.1"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/api-derive": 1.34.0-beta.2
|
||||
"@polkadot/api-derive": 1.33.1
|
||||
"@polkadot/keyring": ^3.4.1
|
||||
"@polkadot/metadata": 1.34.0-beta.2
|
||||
"@polkadot/rpc-core": 1.34.0-beta.2
|
||||
"@polkadot/rpc-provider": 1.34.0-beta.2
|
||||
"@polkadot/types": 1.34.0-beta.2
|
||||
"@polkadot/types-known": 1.34.0-beta.2
|
||||
"@polkadot/metadata": 1.33.1
|
||||
"@polkadot/rpc-core": 1.33.1
|
||||
"@polkadot/rpc-provider": 1.33.1
|
||||
"@polkadot/types": 1.33.1
|
||||
"@polkadot/types-known": 1.33.1
|
||||
"@polkadot/util": ^3.4.1
|
||||
"@polkadot/util-crypto": ^3.4.1
|
||||
bn.js: ^5.1.3
|
||||
eventemitter3: ^4.0.7
|
||||
rxjs: ^6.6.3
|
||||
checksum: fca8f3919bf54d0874f25a34e7c70c5bde0a9aded2f8f38ea6a05ccb12a1ac639e3b20b2467b5254111a8e68941cc555b34ddaa50f7913aa9552107cf145bcb1
|
||||
checksum: efa8a825270c61cb1ffc4cef371fe86979cfbc568c224d2b0d8945b927348a37efb4c61c0473cac1d873799815af45b21063090d9b2e5f640c5be6039487494e
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
@ -3167,7 +3167,7 @@ __metadata:
|
||||
resolution: "@polkadot/app-contracts@workspace:packages/page-contracts"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/api-contract": ^1.34.0-beta.2
|
||||
"@polkadot/api-contract": ^1.33.1
|
||||
languageName: unknown
|
||||
linkType: soft
|
||||
|
||||
@ -3553,17 +3553,17 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/metadata@npm:1.34.0-beta.2":
|
||||
version: 1.34.0-beta.2
|
||||
resolution: "@polkadot/metadata@npm:1.34.0-beta.2"
|
||||
"@polkadot/metadata@npm:1.33.1":
|
||||
version: 1.33.1
|
||||
resolution: "@polkadot/metadata@npm:1.33.1"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/types": 1.34.0-beta.2
|
||||
"@polkadot/types-known": 1.34.0-beta.2
|
||||
"@polkadot/types": 1.33.1
|
||||
"@polkadot/types-known": 1.33.1
|
||||
"@polkadot/util": ^3.4.1
|
||||
"@polkadot/util-crypto": ^3.4.1
|
||||
bn.js: ^5.1.3
|
||||
checksum: 1a36bc75f0ee3a6ca4b5993d6bec443c677fb4056f847e3e44222a75843d758cf7884a4b9febe0190c0136cee18eb346bc2aae09330b87c225b7aa8ec57ad32a
|
||||
checksum: 80b229b6c682bb730533d241d74ea0d5d42ecefa78d89f19a820964a63e77c5c35e09f5ce960d24f9a25b3d5a8a3da98011cace2b194eed84c20c061f0cebbce
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
@ -3572,7 +3572,7 @@ __metadata:
|
||||
resolution: "@polkadot/react-api@workspace:packages/react-api"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/api": ^1.34.0-beta.2
|
||||
"@polkadot/api": ^1.33.1
|
||||
"@polkadot/extension-dapp": ^0.34.0-beta.12
|
||||
rxjs-compat: ^6.6.3
|
||||
languageName: unknown
|
||||
@ -3588,11 +3588,11 @@ __metadata:
|
||||
"@fortawesome/react-fontawesome": ^0.1.11
|
||||
"@polkadot/keyring": ^3.4.1
|
||||
"@polkadot/react-api": 0.59.0-beta.2
|
||||
"@polkadot/react-identicon": ^0.59.0-beta.4
|
||||
"@polkadot/react-qr": ^0.59.0-beta.4
|
||||
"@polkadot/react-identicon": ^0.59.0-beta.6
|
||||
"@polkadot/react-qr": ^0.59.0-beta.6
|
||||
"@polkadot/react-query": 0.59.0-beta.2
|
||||
"@polkadot/ui-keyring": ^0.59.0-beta.4
|
||||
"@polkadot/ui-settings": ^0.59.0-beta.4
|
||||
"@polkadot/ui-keyring": ^0.59.0-beta.6
|
||||
"@polkadot/ui-settings": ^0.59.0-beta.6
|
||||
"@polkadot/util": ^3.4.1
|
||||
"@polkadot/util-crypto": ^3.4.1
|
||||
"@types/codeflask": ^1.4.2
|
||||
@ -3630,13 +3630,13 @@ __metadata:
|
||||
languageName: unknown
|
||||
linkType: soft
|
||||
|
||||
"@polkadot/react-identicon@npm:^0.59.0-beta.4":
|
||||
version: 0.59.0-beta.4
|
||||
resolution: "@polkadot/react-identicon@npm:0.59.0-beta.4"
|
||||
"@polkadot/react-identicon@npm:^0.59.0-beta.6":
|
||||
version: 0.59.0-beta.6
|
||||
resolution: "@polkadot/react-identicon@npm:0.59.0-beta.6"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/ui-settings": 0.59.0-beta.4
|
||||
"@polkadot/ui-shared": 0.59.0-beta.4
|
||||
"@polkadot/ui-settings": 0.59.0-beta.6
|
||||
"@polkadot/ui-shared": 0.59.0-beta.6
|
||||
color: ^3.1.2
|
||||
jdenticon: 2.2.0
|
||||
react-copy-to-clipboard: ^5.0.2
|
||||
@ -3648,7 +3648,7 @@ __metadata:
|
||||
react-dom: "*"
|
||||
react-is: "*"
|
||||
styled-components: "*"
|
||||
checksum: bfea3ee51ed3c9784fd27d6c76e0f0f7545870a00b49ff09dfd933b36eaaa24922f0e20cedd81bcfdb22b8dd5bb5f2f3dabd650aa8d7d18ccc51f67e6a8c1654
|
||||
checksum: bf816ae14af2cd242e3ee47f0c96e1e886db08f39017fb1eab6d46000050d374be52155fecf0c2dcfba8a86983bf3c967b245aebc1fcd884ce486f6b176778ba
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
@ -3661,9 +3661,9 @@ __metadata:
|
||||
languageName: unknown
|
||||
linkType: soft
|
||||
|
||||
"@polkadot/react-qr@npm:^0.59.0-beta.4":
|
||||
version: 0.59.0-beta.4
|
||||
resolution: "@polkadot/react-qr@npm:0.59.0-beta.4"
|
||||
"@polkadot/react-qr@npm:^0.59.0-beta.6":
|
||||
version: 0.59.0-beta.6
|
||||
resolution: "@polkadot/react-qr@npm:0.59.0-beta.6"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
qrcode-generator: ^1.4.4
|
||||
@ -3674,7 +3674,7 @@ __metadata:
|
||||
react: "*"
|
||||
react-dom: "*"
|
||||
styled-components: "*"
|
||||
checksum: 8b8526f2d85dc3425224f49546f54a690e4803da346e6ea44e929823d12b5c2fe946c95f2a3d1692920e73927fc3f31fd74a2c8688ff4994c16f513faeafce1e
|
||||
checksum: c1073b846ea5699e4eb76ce1314b8b362d4e373c8fbdf0e33ccf500582b7dcf2a92781a57251a6bced03f296638b49c2a82ae6c55cf0fa4aa6412d0e8dcee084
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
@ -3695,35 +3695,35 @@ __metadata:
|
||||
languageName: unknown
|
||||
linkType: soft
|
||||
|
||||
"@polkadot/rpc-core@npm:1.34.0-beta.2":
|
||||
version: 1.34.0-beta.2
|
||||
resolution: "@polkadot/rpc-core@npm:1.34.0-beta.2"
|
||||
"@polkadot/rpc-core@npm:1.33.1":
|
||||
version: 1.33.1
|
||||
resolution: "@polkadot/rpc-core@npm:1.33.1"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/metadata": 1.34.0-beta.2
|
||||
"@polkadot/rpc-provider": 1.34.0-beta.2
|
||||
"@polkadot/types": 1.34.0-beta.2
|
||||
"@polkadot/metadata": 1.33.1
|
||||
"@polkadot/rpc-provider": 1.33.1
|
||||
"@polkadot/types": 1.33.1
|
||||
"@polkadot/util": ^3.4.1
|
||||
memoizee: ^0.4.14
|
||||
rxjs: ^6.6.3
|
||||
checksum: 715839ef14be28c805053cbf3fb9725ade27d9179c57637d27b1356efd3ad9cc9457630678833816f99b6d61146125a2ed40cb3602a70675a34c9e37c4fddccb
|
||||
checksum: 265b9450449a712f734ffab422d2d98526e73c62576be7d1163c49981a27400aa17699f3773526b1f306268513b1c1ce95a6d0686d363bb40f88df071874eb6e
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/rpc-provider@npm:1.34.0-beta.2":
|
||||
version: 1.34.0-beta.2
|
||||
resolution: "@polkadot/rpc-provider@npm:1.34.0-beta.2"
|
||||
"@polkadot/rpc-provider@npm:1.33.1":
|
||||
version: 1.33.1
|
||||
resolution: "@polkadot/rpc-provider@npm:1.33.1"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/metadata": 1.34.0-beta.2
|
||||
"@polkadot/types": 1.34.0-beta.2
|
||||
"@polkadot/metadata": 1.33.1
|
||||
"@polkadot/types": 1.33.1
|
||||
"@polkadot/util": ^3.4.1
|
||||
"@polkadot/util-crypto": ^3.4.1
|
||||
bn.js: ^5.1.3
|
||||
eventemitter3: ^4.0.7
|
||||
isomorphic-fetch: ^2.2.1
|
||||
websocket: ^1.0.32
|
||||
checksum: 78796075eb1971b8f61e3de35e416aacc6b2b60608e0e9b519757d04e5e0d58396efd8a6137a7da9b0215d375c37f7761def321b847bb2b382d0ec5d929db060
|
||||
checksum: acc11e53ae5d965da552ca95bae2cc5b09e47efbf105d5d4032467644698f95481e599108ae4c84890e67ddd3cec2294d181e98b8f979d13fa1b44881093f82f
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
@ -3736,37 +3736,37 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/types-known@npm:1.34.0-beta.2":
|
||||
version: 1.34.0-beta.2
|
||||
resolution: "@polkadot/types-known@npm:1.34.0-beta.2"
|
||||
"@polkadot/types-known@npm:1.33.1":
|
||||
version: 1.33.1
|
||||
resolution: "@polkadot/types-known@npm:1.33.1"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/types": 1.34.0-beta.2
|
||||
"@polkadot/types": 1.33.1
|
||||
"@polkadot/util": ^3.4.1
|
||||
bn.js: ^5.1.3
|
||||
checksum: c18780dc22362689372f374b5eabc978c70bc7dd342ce1edc9c3ede4b96aa0421074b82d59f204d2e0d77a335a414acaf2d64e67633579e14ef906220c8a84dc
|
||||
checksum: 27273cb08558e2128999a713c739b64146da29720437c4c33b599213c8401f42b9fdd75aa6d24827e0a3dae5c9be1fc6ed9ffead1bdb215ff5fdf5a19b163c94
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/types@npm:^1.34.0-beta.2":
|
||||
version: 1.34.0-beta.2
|
||||
resolution: "@polkadot/types@npm:1.34.0-beta.2"
|
||||
"@polkadot/types@npm:^1.33.1":
|
||||
version: 1.33.1
|
||||
resolution: "@polkadot/types@npm:1.33.1"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/metadata": 1.34.0-beta.2
|
||||
"@polkadot/metadata": 1.33.1
|
||||
"@polkadot/util": ^3.4.1
|
||||
"@polkadot/util-crypto": ^3.4.1
|
||||
"@types/bn.js": ^4.11.6
|
||||
bn.js: ^5.1.3
|
||||
memoizee: ^0.4.14
|
||||
rxjs: ^6.6.3
|
||||
checksum: 0c377bd0469fad2685e70da94c19a52ece297169668a6bf2319b256968cfa15a1d40fa528084a0e1f9054b65db7d937966276592f649bcc7c9133e718ec1da14
|
||||
checksum: bc9e71a61c81be6fc794adc6a80c0ffbcc7f86d50a91fb44a727226d56d71cfb159cd459464f2ad2482adc339154fe10eb60716761c4eee2b1d4e513750b7f4b
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/ui-keyring@npm:^0.59.0-beta.4":
|
||||
version: 0.59.0-beta.4
|
||||
resolution: "@polkadot/ui-keyring@npm:0.59.0-beta.4"
|
||||
"@polkadot/ui-keyring@npm:^0.59.0-beta.6":
|
||||
version: 0.59.0-beta.6
|
||||
resolution: "@polkadot/ui-keyring@npm:0.59.0-beta.6"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@ledgerhq/hw-transport-node-hid": ^5.23.2
|
||||
@ -3782,33 +3782,33 @@ __metadata:
|
||||
dependenciesMeta:
|
||||
"@ledgerhq/hw-transport-node-hid":
|
||||
optional: true
|
||||
checksum: 3f95f35b0efb7e481b918a63dbe8e84f86acb61e82fb4d3fbc62ca85104e6c83c8999c0c3c4ad1797b540d5a4210a11c040c36cd3b3d6272d74da1f4e9346b50
|
||||
checksum: 8814775da7548991515681fe1e5ce1ee8935856219cbecfebf3b610b6a5eff5006bbe1ea2592c2c2d1eb93aa7760f8283332668dac8f75104985b25d56e9b13a
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/ui-settings@npm:0.59.0-beta.4, @polkadot/ui-settings@npm:^0.59.0-beta.4":
|
||||
version: 0.59.0-beta.4
|
||||
resolution: "@polkadot/ui-settings@npm:0.59.0-beta.4"
|
||||
"@polkadot/ui-settings@npm:0.59.0-beta.6, @polkadot/ui-settings@npm:^0.59.0-beta.6":
|
||||
version: 0.59.0-beta.6
|
||||
resolution: "@polkadot/ui-settings@npm:0.59.0-beta.6"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
eventemitter3: ^4.0.7
|
||||
store: ^2.0.12
|
||||
peerDependencies:
|
||||
"@polkadot/util": "*"
|
||||
checksum: 27788fcdcf69f769167d26f7904a7e146d0eb6879a9aa6f956eccbd70ae109a1bbd05801a2cb714983526ce853c67a848a20910039a81d73dc9becf64f26b8ed
|
||||
checksum: 86efb797e1f1e498eddd96b8f3b29cf2362025d6960f25acf581ca83b5de319b7427606c4152e63f79a7c06e0ec8c712672e762974b08b22b06f9101a2acf0da
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/ui-shared@npm:0.59.0-beta.4":
|
||||
version: 0.59.0-beta.4
|
||||
resolution: "@polkadot/ui-shared@npm:0.59.0-beta.4"
|
||||
"@polkadot/ui-shared@npm:0.59.0-beta.6":
|
||||
version: 0.59.0-beta.6
|
||||
resolution: "@polkadot/ui-shared@npm:0.59.0-beta.6"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
color: ^3.1.2
|
||||
peerDependencies:
|
||||
"@polkadot/util": "*"
|
||||
"@polkadot/util-crypto": "*"
|
||||
checksum: bd944755e16d01fe6dfba1a311d8a93b94dd9b51a0862844dc57a2fa1479831cf20d433eed41edec51e4ee18ab1aceb9b5caf66ddd0463b81b97a1274c4a10a7
|
||||
checksum: d969ee861a09a7a5ecb0ca75c18dfebd71736c5e3de8a38e24d6a727aa7dd625e02a35f9b1d37a0f3c6c2bc57c2a839ba72e1c2a82db8110da246b96f742ce62
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user