Compare commits

...
80 Commits
Author SHA1 Message Date
github-actions[bot] 6ec09907a2 [CI Skip] release/stable 13.2.2
skip-checks: true
2024-10-28 15:40:57 +00:00
Tarik Gul 677a778833 13.2.2 (#1956) 2024-10-28 17:35:01 +02:00
github-actions[bot] fa90f0a747 [CI Skip] bump/beta 13.2.2-2-x
skip-checks: true
2024-10-28 14:02:14 +00:00
Wil Wade e721c4f508 Add Frequency to the Generic Ledger App (#1955) 2024-10-28 09:56:24 -04:00
github-actions[bot] 7f5bd09322 [CI Skip] bump/beta 13.2.2-1-x
skip-checks: true
2024-10-23 13:32:49 +00:00
Leonardo Razovic 5d6244fc0b feat: add Polimec (#1945) 2024-10-23 09:26:59 -04:00
github-actions[bot] 58f12c4257 [CI Skip] bump/beta 13.2.2-0-x
skip-checks: true
2024-10-22 14:30:05 +00:00
Tarik Gul 038d20b5e7 Bump yarn to 4.5.1 (#1953) 2024-10-22 17:24:18 +03:00
github-actions[bot] c9d8c52567 [CI Skip] release/stable 13.2.1
skip-checks: true
2024-10-21 12:56:29 +00:00
Tarik Gul 3b85773636 13.2.1 (#1952) 2024-10-21 15:50:45 +03:00
github-actions[bot] 269740b775 [CI Skip] bump/beta 13.1.2-6-x
skip-checks: true
2024-10-21 03:07:39 +00:00
Tarik Gul fc732b8c44 Bump dev to 0.81.2 (#1951) 2024-10-21 06:01:55 +03:00
github-actions[bot] 2c4deb3f9d [CI Skip] bump/beta 13.1.2-5-x
skip-checks: true
2024-10-21 02:48:41 +00:00
Tarik Gul ebcb6857ad Bump polkadot/wasm to 7.4.1 (#1950) 2024-10-21 05:42:43 +03:00
github-actions[bot] 0ff31d7980 [CI Skip] bump/beta 13.1.2-4-x
skip-checks: true
2024-10-16 22:22:44 +00:00
Tarik Gul d897f25546 Update ws and deps (#1949)
* Update ws and deps

* fix tests
2024-10-17 01:16:53 +03:00
github-actions[bot] 3c431d5a01 [CI Skip] bump/beta 13.1.2-3-x
skip-checks: true
2024-10-16 15:10:34 +00:00
Tarik Gul 55ae71125d Update ledger deps (#1948) 2024-10-16 18:04:38 +03:00
github-actions[bot] fcd8cee7f6 [CI Skip] bump/beta 13.1.2-2-x
skip-checks: true
2024-10-16 14:12:27 +00:00
Tarik Gul 8aa4e60c4c Bump yarn to 4.5.0 (#1946) 2024-10-16 17:06:39 +03:00
github-actions[bot] 85665dfa20 [CI Skip] bump/beta 13.1.2-1-x
skip-checks: true
2024-10-16 13:49:06 +00:00
Tarik Gul 5f8f3e6309 Fix Deno CI Build (#1947) 2024-10-16 16:43:10 +03:00
github-actions[bot] 166845e367 [CI Skip] bump/beta 13.1.2-0-x
skip-checks: true
2024-09-18 12:33:52 +00:00
Cameron Fairchild 7c7233efd1 Add bittensor to genericLedgerApps (#1941)
* add bittensor to genericLedgerApps

* add CLA to the knownLedger obj
2024-09-18 08:28:02 -04:00
github-actions[bot] cb7f0da916 [CI Skip] release/stable 13.1.1
skip-checks: true
2024-09-16 13:04:16 +00:00
Tarik Gul 7d654c236f 13.1.1 (#1943)
* 13.0.3

* Make release for 13.1.1

* fix changelog
2024-09-16 15:58:19 +03:00
github-actions[bot] 6b4d9aac29 [CI Skip] bump/beta 13.0.3-9-x
skip-checks: true
2024-09-11 18:10:00 +00:00
Tarik Gul 4f863ddc29 Bump yarn to 4.1.1 (#1940) 2024-09-11 21:04:06 +03:00
github-actions[bot] a4a85a3a5d [CI Skip] bump/beta 13.0.3-8-x
skip-checks: true
2024-09-11 17:48:28 +00:00
Tarik Gul 2a6669c25d Add Encointer and adjust tests (#1939) 2024-09-11 20:42:39 +03:00
github-actions[bot] cb4c9fd90a [CI Skip] bump/beta 13.0.3-7-x
skip-checks: true
2024-08-30 14:58:36 +00:00
Jakub Pánik 28beb44374 HydraDX -> Hydration rebrand (#1923)
* hydration rebrand

* Update packages/hw-ledger/src/defaults.ts
2024-08-30 10:52:42 -04:00
github-actions[bot] 4a4847b032 [CI Skip] bump/beta 13.0.3-6-x
skip-checks: true
2024-08-30 12:54:02 +00:00
Tarik Gul 506c20a900 Update ss58 (#1937) 2024-08-30 15:48:15 +03:00
github-actions[bot] 736656f34f [CI Skip] bump/beta 13.0.3-5-x
skip-checks: true
2024-08-29 13:39:47 +00:00
Tarik Gul 31274916f9 Bump dev, and typescript (#1936) 2024-08-29 16:33:50 +03:00
github-actions[bot] 6e1afdc2f8 [CI Skip] bump/beta 13.0.3-4-x
skip-checks: true
2024-08-14 21:06:32 +00:00
Tarik Gul fd26d223be Bump yarn to 4.4.0 (#1935) 2024-08-15 00:00:35 +03:00
github-actions[bot] 86d8c81c27 [CI Skip] bump/beta 13.0.3-3-x
skip-checks: true
2024-08-14 19:54:56 +00:00
Tarik Gul 2de22cbb31 Update all deps that can do patch releases (#1934) 2024-08-14 22:49:01 +03:00
github-actions[bot] c1b8098b9e [CI Skip] bump/beta 13.0.3-2-x
skip-checks: true
2024-07-22 17:36:18 +00:00
Tarik Gul ee0ed25a83 Bump @substrate/ss58-registry to 1.49.0 (#1932) 2024-07-22 20:30:33 +03:00
github-actions[bot] 7ef452bdf0 [CI Skip] bump/beta 13.0.3-1-x
skip-checks: true
2024-07-20 20:52:54 +00:00
Tarik Gul eb41ab5bed Revert slip44 change (#1931) 2024-07-20 23:47:07 +03:00
github-actions[bot] 6947b1e4d9 [CI Skip] bump/beta 13.0.3-0-x
skip-checks: true
2024-07-16 04:48:46 +00:00
Tarik Gul 527b4f0eeb Remove slip44, and replace with POLKADOT_SLIP (#1930) 2024-07-16 07:42:57 +03:00
github-actions[bot] 44f7443d13 [CI Skip] release/stable 13.0.2
skip-checks: true
2024-07-13 00:18:37 +00:00
Tarik Gul 2b800577a5 13.0.2 (#1929)
* 13.0.2

* credit
2024-07-13 03:12:51 +03:00
github-actions[bot] c9ca01e96b [CI Skip] bump/beta 13.0.2-0-x
skip-checks: true
2024-07-12 23:22:45 +00:00
Lovish Arora ca93f3337f Add peaq support for ledger (#1928) 2024-07-12 19:16:57 -04:00
github-actions[bot] 557a681fe9 [CI Skip] release/stable 13.0.1
skip-checks: true
2024-07-12 17:51:16 +00:00
Tarik Gul 97b1fdf089 13.0.1 (#1927)
* 13.0.1

* Fix changelog
2024-07-12 13:45:20 -04:00
github-actions[bot] 9971684972 [CI Skip] bump/beta 12.6.3-13-x
skip-checks: true
2024-07-12 16:29:52 +00:00
Tarik Gul 04ab9dd77d Bump yarn to 4.3.1 (#1926) 2024-07-12 19:23:58 +03:00
github-actions[bot] b2bf9f4d53 [CI Skip] bump/beta 12.6.3-12-x
skip-checks: true
2024-07-12 15:59:29 +00:00
Tarik Gulandbee344 4d629fd8ce Add support for latest ledger app (#1925)
* Update ledger deps

* Update code to fit within interface

* additional changes

* fix import

* Get a working version with ledger

* Add metaUrl

* Ensure no breaking changes by keeping legacy Ledger class

* Update to include signWithMetadata

* lint

* Ensure error code is part of the message

* Update interface

* Fix address

* remove wrapped bytes for sign with metadata

* rolled back derivation path changes

* Update naming

* Fix inline docs

* Deprecate Ledger

---------

Co-authored-by: bee344 <alberto.penayo@parity.io>
2024-07-12 11:53:35 -04:00
github-actions[bot] 37fa211fdb [CI Skip] bump/beta 12.6.3-11-x
skip-checks: true
2024-05-14 00:45:17 +00:00
Tarik Gul a4a9a3dead Bump yarn to 4.2.2 (#1922) 2024-05-14 03:39:22 +03:00
github-actions[bot] e025195a9b [CI Skip] bump/beta 12.6.3-10-x
skip-checks: true
2024-05-14 00:21:30 +00:00
Tarik Gul 744e4c72d5 Bump @polkadot/dev to 0.79.1 w/ topo sort (#1921) 2024-05-14 03:15:44 +03:00
github-actions[bot] f23f0944a8 [CI Skip] bump/beta 12.6.3-9-x
skip-checks: true
2024-04-08 17:31:00 +00:00
Tarik Gul 6e28612f34 Update ci to checkout and setup_node v4 (#1918) 2024-04-08 20:25:08 +03:00
github-actions[bot] 57b0601f9b [CI Skip] bump/beta 12.6.3-8-x
skip-checks: true
2024-03-26 01:12:02 +00:00
Tarik Gul ee9d76639c Bump yarn to 4.1.1 (#1915) 2024-03-26 03:06:57 +02:00
github-actions[bot] db25938ad7 [CI Skip] bump/beta 12.6.3-7-x
skip-checks: true
2024-02-17 14:09:08 +00:00
Tarik Gul 175b0ef307 chore(yarn): update yarn to 4.1.0 (#1913) 2024-02-17 16:03:52 +02:00
github-actions[bot] 944c50d015 [CI Skip] bump/beta 12.6.3-6-x
skip-checks: true
2024-02-17 02:04:09 +00:00
Tarik Gul 191db8ea10 ci: add user (TarikGul) to auto-approve (#1914) 2024-02-17 03:58:55 +02:00
github-actions[bot] 095db555ba [CI Skip] bump/beta 12.6.3-5-x
skip-checks: true
2024-01-24 06:17:12 +00:00
Jaco a23989ca9d Bump deps (#1912) 2024-01-24 08:11:46 +02:00
github-actions[bot] a82ebdf6f9 [CI Skip] bump/beta 12.6.3-4-x
skip-checks: true
2024-01-09 07:35:28 +00:00
Jaco e6fbf01aa1 Comments around pair encode/decode 1-3 (#1910)
* Comments around pair generation 1-3

* Encoding comments
2024-01-09 09:30:21 +02:00
github-actions[bot] 00876f0b64 [CI Skip] bump/beta 12.6.3-3-x
skip-checks: true
2024-01-08 13:13:36 +00:00
Jaco 22aab4a4e6 2024 (#1909) 2024-01-08 15:08:27 +02:00
github-actions[bot] 6971012f4a [CI Skip] bump/beta 12.6.3-2-x
skip-checks: true
2023-12-19 10:31:18 +00:00
Jaco fc217b66ce Bump dev (#1905) 2023-12-19 12:26:12 +02:00
github-actions[bot] fb42e8f7ee [CI Skip] bump/beta 12.6.3-1-x
skip-checks: true
2023-12-19 08:48:01 +00:00
Jaco b4e3ed0a42 Bump dev w/ sideEffects adjustments (#1904) 2023-12-19 10:42:57 +02:00
github-actions[bot] e1218157a3 [CI Skip] bump/beta 12.6.3-0-x
skip-checks: true
2023-12-19 08:20:52 +00:00
Jaco 2dc171639d Bump dev w/ detectPackage adjustments (#1903)
* Bump dev w/ detectPackage adjustments

* Fix spec import

* Adjust line flow
2023-12-19 10:15:38 +02:00
639 changed files with 7122 additions and 3688 deletions
+1 -1
View File
@@ -11,6 +11,6 @@ jobs:
steps:
- uses: jacogr/action-approve@795afd1dd096a2071d7ec98740661af4e853b7da
with:
authors: jacogr
authors: jacogr, TarikGul
labels: -auto
token: ${{ secrets.GH_PAT_BOT }}
+4 -3
View File
@@ -12,13 +12,14 @@ jobs:
YARN_ENABLE_SCRIPTS: false
CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 'lts/*'
- uses: denoland/setup-deno@v1
with:
deno-version: vx.x.x
# Deno v2 throws errors with specific types therefore we set it to the last version before v2
deno-version: v1.42.x
- name: ${{ matrix.step }}
if: always()
run: |
+2 -2
View File
@@ -18,11 +18,11 @@ jobs:
GH_RELEASE_GITHUB_API_TOKEN: ${{ secrets.GH_PAT_BOT }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.GH_PAT_BOT }}
- uses: actions/setup-node@v3
- uses: actions/setup-node@v4
with:
node-version: 'lts/*'
- name: ${{ matrix.step }}
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util authors & contributors
// Copyright 2017-2024 @polkadot/util authors & contributors
// SPDX-License-Identifier: Apache-2.0
module.exports = require('@polkadot/dev/config/prettier.cjs');
-893
View File
File diff suppressed because one or more lines are too long
+934
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -12,4 +12,4 @@ logFilters:
nodeLinker: node-modules
yarnPath: .yarn/releases/yarn-4.0.2.cjs
yarnPath: .yarn/releases/yarn-4.5.1.cjs
+69
View File
@@ -1,5 +1,74 @@
# CHANGELOG
## 13.2.2 Oct 28, 2024
Contributed:
- Add Polimec support to the Generic Ledger App ([#1945](https://github.com/polkadot-js/common/pull/1945)) (Thanks to https://github.com/lrazovic)
- Add Frequency to the Generic Ledger App ([#1955](https://github.com/polkadot-js/common/pull/1955)) (Thanks to https://github.com/wilwade)
Changes:
- Bump yarn to 4.5.1 ([#1953](https://github.com/polkadot-js/common/pull/1953))
## 13.2.1 Oct 21, 2024
Contributed:
- Add bittensor to genericLedgerApps (Thanks to https://github.com/camfairchild) ([#1941](https://github.com/polkadot-js/common/pull/1941))
Changes:
- Fix Deno CI Build ([#1947](https://github.com/polkadot-js/common/pull/1947))
- Bump yarn to 4.5.0 ([#1946](https://github.com/polkadot-js/common/pull/1946))
- Update Ledger Deps ([#1948](https://github.com/polkadot-js/common/pull/1948))
- Update WS and deps ([#1949](https://github.com/polkadot-js/common/pull/1949))
- Bump polkadot/wasm to 7.4.1 ([#1950](https://github.com/polkadot-js/common/pull/1950))
- Bump dev to 0.81.2 ([#1951](https://github.com/polkadot-js/common/pull/1951))
- Allows for CJS target in build
## 13.1.1 Sep 16, 2024
Contributed:
HydraDx - Hydration Rebrand Thanks to (https://github.com/jak-pan) ([#1923](https://github.com/polkadot-js/common/pull/1923))
Changes:
- Update all deps that have patch releases ([#1934](https://github.com/polkadot-js/common/pull/1934))
- Bump yarn to 4.4.1 ([#1940](https://github.com/polkadot-js/common/pull/1940))
- Update ss58-registry to 1.50.0 ([#1937](https://github.com/polkadot-js/common/pull/1937))
- Update dev and typescript ([#1936](https://github.com/polkadot-js/common/pull/1936))
- Add Encointer and Integritee to Ledger, and adjust tests ([#1939](https://github.com/polkadot-js/common/pull/1939))
- This PR added the addition of `genericLedgerApps` and `prevLedgerRecord` objects. They both combine into `ledgerApps` in `hw-ledger/defaults`.
## 13.0.2 July 12, 2024
Contributed:
- Add peaq support for ledger (Thanks to https://github.com/lavish0000)
## 13.0.1 July 12, 2024
Breaking Changes:
- Add Support for latest Ledger App
- This deprecates `class Ledger` in favor of `class LedgerGeneric`
- More info in the following PR ([#1925](https://github.com/polkadot-js/common/pull/1925))
Changes:
- Bump dev to 0.79.1
- Comments around pair encode/decode 1-3
- Bump ws, react-native, ss58Registry
- Bump yarn to 4.3.1
- Update CI to checkout and setup_node v4
## 12.6.2 Dec 18, 2023
Changes:
+7 -3
View File
@@ -1,13 +1,15 @@
1668 Jaco 12.6.2 (#1902)
1674 Jaco Bump deps (#1912)
29 Tarik Gul 13.2.2 (#1956)
13 Carlo Sala feat(networks): add zeitgeist Ledger support (#1840)
9 Antoine Estienne Add eth uri keyring test (#1291)
6 Amaury Martiny Add tests from Rust (#283)
5 Jakub Pánik Add HydraDX parachain to genesis (#1583)
6 Jakub Pánik HydraDX -> Hydration rebrand (#1923)
5 kwingram25 Add BN consts and timeToString (#610)
4 Adam Dossa Update Polymesh Genesis Hash (#1193)
4 pan add bifrost kusama (#1626)
3 Luke Schoen docs: Fix example in readme since we use default imports (#243)
2 AndreasGassmann feat(dependencies): remove moment.js (#530)
2 Cameron Fairchild Add bittensor details (#1783)
2 Gav Wood Fix stake:unstake (#182)
2 Hyungsuk Kang Add cross client Encryption/Decryption (#496)
2 Jared Norris Add Sora network (#1306)
@@ -23,7 +25,6 @@
1 amphineko chore: fix typo in versionDetect messages (#941)
1 Axel Chalon Simplify @polkadot/keyring KeyringPair (#419)
1 Brad Larson [FIX] Adjust error message (#646)
1 Cameron Fairchild Add bittensor details (#1783)
1 Carlos Medeiros add hydradx to knownLedger (#1647)
1 Chris Get rid of warnings for dual esm and cjs packages of the same version (#1890)
1 Eliott Teissonniere add nodle ledger specs (#1089)
@@ -38,7 +39,9 @@
1 joe petrowski Add example for multisig address creation (#590)
1 kaelnew add ledger support for stafi (#1569)
1 Leonardo Custodio Ledger support (#1879)
1 Leonardo Razovic feat: add Polimec (#1945)
1 Lezek123 logger - wildcard include/exclude with DEBUG env (#932)
1 Lovish Arora Add peaq support for ledger (#1928)
1 Mario Neises remove redudant export (#257)
1 Miguel Hervas Add CFG Ledger Support (#1057)
1 Mikhail Fedosov feat: add 3dpass network (#1769)
@@ -57,6 +60,7 @@
1 Tomokazu Kozuma fix comment (#1119)
1 Tore19 Add stafi genesis hash (#1096)
1 Wei Tang ss58: add Kulupu prefix to the list (#595)
1 Wil Wade Add Frequency to the Generic Ledger App (#1955)
1 WoeOm Handing high precision scenes (#450)
1 xx network Add xxnetwork genesis hash and ledger app (#1463)
1 Yaroslav Bolyukin Add quartz support for ledger, update unique slip-0044 identifier (#1882)
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util authors & contributors
// Copyright 2017-2024 @polkadot/util authors & contributors
// SPDX-License-Identifier: Apache-2.0
import baseConfig from '@polkadot/dev/config/eslint';
+7 -7
View File
@@ -6,7 +6,7 @@
},
"homepage": "https://github.com/polkadot-js/common#readme",
"license": "Apache-2.0",
"packageManager": "yarn@3.2.0",
"packageManager": "yarn@4.5.1",
"private": true,
"repository": {
"type": "git",
@@ -14,10 +14,10 @@
},
"sideEffects": false,
"type": "module",
"version": "12.6.2",
"version": "13.2.2",
"versions": {
"git": "12.6.2",
"npm": "12.6.2"
"git": "13.2.2",
"npm": "13.2.2"
},
"workspaces": [
"packages/*"
@@ -37,10 +37,10 @@
"test:one": "polkadot-dev-run-test --env browser"
},
"devDependencies": {
"@polkadot/dev": "^0.78.1",
"@types/node": "^20.10.5"
"@polkadot/dev": "^0.81.2",
"@types/node": "^22.7.5"
},
"resolutions": {
"typescript": "^5.3.3"
"typescript": "^5.5.4"
}
}
+7 -7
View File
@@ -14,18 +14,18 @@
},
"sideEffects": false,
"type": "module",
"version": "12.6.2",
"version": "13.2.2",
"browser": "browser.js",
"main": "node.js",
"react-native": "react-native.js",
"dependencies": {
"@ledgerhq/hw-transport": "^6.30.1",
"@ledgerhq/hw-transport-webhid": "^6.28.1",
"@ledgerhq/hw-transport-webusb": "^6.28.1",
"@polkadot/util": "12.6.2",
"tslib": "^2.6.2"
"@ledgerhq/hw-transport": "^6.31.4",
"@ledgerhq/hw-transport-webhid": "^6.29.4",
"@ledgerhq/hw-transport-webusb": "^6.29.4",
"@polkadot/util": "13.2.2",
"tslib": "^2.8.0"
},
"optionalDependencies": {
"@ledgerhq/hw-transport-node-hid-singleton": "^6.30.1"
"@ledgerhq/hw-transport-node-hid-singleton": "^6.31.5"
}
}
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
import LedgerHid from '@ledgerhq/hw-transport-webhid';
@@ -1,4 +0,0 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
export default [];
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { createDefs } from './util.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
export * from './empty.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
import LedgerHid from '@ledgerhq/hw-transport-node-hid-singleton';
@@ -1,11 +1,11 @@
// Copyright 2017-2023 @polkadot/hw-ledger-transports authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger-transports authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
// (packageInfo imports will be kept as-is, user-editable)
import { detectPackage } from '@polkadot/util';
import others from './detectOther.js';
import { packageInfo } from './packageInfo.js';
detectPackage(packageInfo, null, others);
detectPackage(packageInfo, null, []);
@@ -1,6 +1,6 @@
// Copyright 2017-2023 @polkadot/hw-ledger-transports authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger-transports authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
export const packageInfo = { name: '@polkadot/hw-ledger-transports', path: 'auto', type: 'auto', version: '12.6.2' };
export const packageInfo = { name: '@polkadot/hw-ledger-transports', path: 'auto', type: 'auto', version: '13.2.2' };
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
export * from './empty.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
// CJS, so we use import * syntax
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Transport, TransportDef, TransportType } from './types.js';
+7 -7
View File
@@ -13,16 +13,16 @@
"url": "https://github.com/polkadot-js/common.git"
},
"sideEffects": [
"./detectPackage.js",
"./detectPackage.cjs"
"./packageDetect.js",
"./packageDetect.cjs"
],
"type": "module",
"version": "12.6.2",
"version": "13.2.2",
"main": "index.js",
"dependencies": {
"@polkadot/hw-ledger-transports": "12.6.2",
"@polkadot/util": "12.6.2",
"@zondax/ledger-substrate": "^0.41.3",
"tslib": "^2.6.2"
"@polkadot/hw-ledger-transports": "13.2.2",
"@polkadot/util": "13.2.2",
"@zondax/ledger-substrate": "1.0.0",
"tslib": "^2.8.0"
}
}
+144
View File
@@ -0,0 +1,144 @@
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { SubstrateApp } from '@zondax/ledger-substrate';
import type { TransportDef, TransportType } from '@polkadot/hw-ledger-transports/types';
import type { AccountOptions, LedgerAddress, LedgerSignature, LedgerVersion } from './types.js';
import { newSubstrateApp } from '@zondax/ledger-substrate';
import { transports } from '@polkadot/hw-ledger-transports';
import { hexAddPrefix, u8aToBuffer, u8aWrapBytes } from '@polkadot/util';
import { LEDGER_DEFAULT_ACCOUNT, LEDGER_DEFAULT_CHANGE, LEDGER_DEFAULT_INDEX, LEDGER_SUCCESS_CODE } from './constants.js';
import { ledgerApps } from './defaults.js';
export { packageInfo } from './packageInfo.js';
type Chain = keyof typeof ledgerApps;
type WrappedResult = Awaited<ReturnType<SubstrateApp['getAddress' | 'getVersion' | 'sign']>>;
/** @internal Wraps a SubstrateApp call, checking the result for any errors which result in a rejection */
async function wrapError <T extends WrappedResult> (promise: Promise<T>): Promise<T> {
const result = await promise;
if (result.return_code !== LEDGER_SUCCESS_CODE) {
throw new Error(result.error_message);
}
return result;
}
/** @internal Wraps a sign/signRaw call and returns the associated signature */
function sign (method: 'sign' | 'signRaw', message: Uint8Array, accountOffset = 0, addressOffset = 0, { account = LEDGER_DEFAULT_ACCOUNT, addressIndex = LEDGER_DEFAULT_INDEX, change = LEDGER_DEFAULT_CHANGE }: Partial<AccountOptions> = {}): (app: SubstrateApp) => Promise<LedgerSignature> {
return async (app: SubstrateApp): Promise<LedgerSignature> => {
const { signature } = await wrapError(app[method](account + accountOffset, change, addressIndex + addressOffset, u8aToBuffer(message)));
return {
signature: hexAddPrefix(signature.toString('hex'))
};
};
}
/**
* @name Ledger
*
* @description
* Legacy wrapper for a ledger app -
* - it connects automatically on use, creating an underlying interface as required
* - Promises reject with errors (unwrapped errors from @zondax/ledger-substrate)
* @deprecated Use LedgerGeneric for up to date integration with ledger
*/
export class Ledger {
readonly #ledgerName: string;
readonly #transportDef: TransportDef;
#app: SubstrateApp | null = null;
constructor (transport: TransportType, chain: Chain) {
const ledgerName = ledgerApps[chain];
const transportDef = transports.find(({ type }) => type === transport);
if (!ledgerName) {
throw new Error(`Unsupported Ledger chain ${chain}`);
} else if (!transportDef) {
throw new Error(`Unsupported Ledger transport ${transport}`);
}
this.#ledgerName = ledgerName;
this.#transportDef = transportDef;
}
/**
* Returns the address associated with a specific account & address offset. Optionally
* asks for on-device confirmation
*/
public async getAddress (confirm = false, accountOffset = 0, addressOffset = 0, { account = LEDGER_DEFAULT_ACCOUNT, addressIndex = LEDGER_DEFAULT_INDEX, change = LEDGER_DEFAULT_CHANGE }: Partial<AccountOptions> = {}): Promise<LedgerAddress> {
return this.withApp(async (app: SubstrateApp): Promise<LedgerAddress> => {
const { address, pubKey } = await wrapError(app.getAddress(account + accountOffset, change, addressIndex + addressOffset, confirm));
return {
address,
publicKey: hexAddPrefix(pubKey)
};
});
}
/**
* Returns the version of the Ledger application on the device
*/
public async getVersion (): Promise<LedgerVersion> {
return this.withApp(async (app: SubstrateApp): Promise<LedgerVersion> => {
const { device_locked: isLocked, major, minor, patch, test_mode: isTestMode } = await wrapError(app.getVersion());
return {
isLocked,
isTestMode,
version: [major, minor, patch]
};
});
}
/**
* Signs a transaction on the Ledger device
*/
public async sign (message: Uint8Array, accountOffset?: number, addressOffset?: number, options?: Partial<AccountOptions>): Promise<LedgerSignature> {
return this.withApp(sign('sign', message, accountOffset, addressOffset, options));
}
/**
* Signs a message (non-transactional) on the Ledger device
*/
public async signRaw (message: Uint8Array, accountOffset?: number, addressOffset?: number, options?: Partial<AccountOptions>): Promise<LedgerSignature> {
return this.withApp(sign('signRaw', u8aWrapBytes(message), accountOffset, addressOffset, options));
}
/**
* @internal
*
* Returns a created SubstrateApp to perform operations against. Generally
* this is only used internally, to ensure consistent bahavior.
*/
async withApp <T> (fn: (app: SubstrateApp) => Promise<T>): Promise<T> {
try {
if (!this.#app) {
const transport = await this.#transportDef.create();
// We need this override for the actual type passing - the Deno environment
// is quite a bit stricter and it yields invalids between the two (specifically
// since we mangle the imports from .default in the types for CJS/ESM and between
// esm.sh versions this yields problematic outputs)
//
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-explicit-any
this.#app = newSubstrateApp(transport as any, this.#ledgerName);
}
return await fn(this.#app);
} catch (error) {
this.#app = null;
throw error;
}
}
}
+201
View File
@@ -0,0 +1,201 @@
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { TransportDef, TransportType } from '@polkadot/hw-ledger-transports/types';
import type { AccountOptionsGeneric, LedgerAddress, LedgerSignature, LedgerVersion } from './types.js';
import { PolkadotGenericApp } from '@zondax/ledger-substrate';
import { transports } from '@polkadot/hw-ledger-transports';
import { hexAddPrefix, u8aToBuffer, u8aWrapBytes } from '@polkadot/util';
import { ledgerApps } from './defaults.js';
export { packageInfo } from './packageInfo.js';
type Chain = keyof typeof ledgerApps;
type WrappedResult = Awaited<ReturnType<PolkadotGenericApp['getAddress' | 'getVersion' | 'sign' | 'signWithMetadata']>>;
// FIXME This type is a copy of the `class ResponseError`
// imported from `@zondax/ledger-js`. Happens because ledger-js includes
// circular dependencies. This is a hack to avoid versioning issues
// with Deno.
interface ResponseError {
errorMessage: string
returnCode: number
}
/** @internal Wraps a PolkadotGenericApp call, checking the result for any errors which result in a rejection */
async function wrapError <T extends WrappedResult> (promise: Promise<T>): Promise<T> {
let result: T;
try {
result = await promise;
} catch (e: unknown) {
// We check to see if the propogated error is the newer ResponseError type.
// The response code use to be part of the result, but with the latest breaking changes from 0.42.x
// the interface and it's types have completely changed.
if ((e as ResponseError).returnCode) {
throw new Error(`${(e as ResponseError).returnCode}: ${(e as ResponseError).errorMessage}`);
}
throw new Error((e as Error).message);
}
return result;
}
/** @internal Wraps a sign/signRaw call and returns the associated signature */
function sign (method: 'sign' | 'signRaw', message: Uint8Array, slip44: number, accountIndex = 0, addressOffset = 0): (app: PolkadotGenericApp) => Promise<LedgerSignature> {
const bip42Path = `m/44'/${slip44}'/${accountIndex}'/${0}'/${addressOffset}'`;
return async (app: PolkadotGenericApp): Promise<LedgerSignature> => {
const { signature } = await wrapError(app[method](bip42Path, u8aToBuffer(message)));
return {
signature: hexAddPrefix(signature.toString('hex'))
};
};
}
/** @internal Wraps a signWithMetadata call and returns the associated signature */
function signWithMetadata (message: Uint8Array, slip44: number, accountIndex = 0, addressOffset = 0, { metadata }: Partial<AccountOptionsGeneric> = {}): (app: PolkadotGenericApp) => Promise<LedgerSignature> {
const bip42Path = `m/44'/${slip44}'/${accountIndex}'/${0}'/${addressOffset}'`;
return async (app: PolkadotGenericApp): Promise<LedgerSignature> => {
if (!metadata) {
throw new Error('The metadata option must be present when using signWithMetadata');
}
const bufferMsg = Buffer.from(message);
const { signature } = await wrapError(app.signWithMetadata(bip42Path, bufferMsg, metadata));
return {
signature: hexAddPrefix(signature.toString('hex'))
};
};
}
/**
* @name Ledger
*
* @description
* A very basic wrapper for a ledger app -
* - it connects automatically on use, creating an underlying interface as required
* - Promises reject with errors (unwrapped errors from @zondax/ledger-substrate-js)
*/
export class LedgerGeneric {
readonly #transportDef: TransportDef;
readonly #slip44: number;
/**
* The chainId is represented by the chains token in all lowercase. Example: Polkadot -> dot
*/
readonly #chainId?: string;
/**
* The metaUrl is seen as a server url that the underlying `PolkadotGenericApp` will use to
* retrieve the signature given a tx blob, and a chainId. It is important to note that if you would like to avoid
* having any network calls made, use `signWithMetadata`, and avoid `sign`.
*/
readonly #metaUrl?: string;
#app: PolkadotGenericApp | null = null;
constructor (transport: TransportType, chain: Chain, slip44: number, chainId?: string, metaUrl?: string) {
const ledgerName = ledgerApps[chain];
const transportDef = transports.find(({ type }) => type === transport);
if (!ledgerName) {
throw new Error(`Unsupported Ledger chain ${chain}`);
} else if (!transportDef) {
throw new Error(`Unsupported Ledger transport ${transport}`);
}
this.#metaUrl = metaUrl;
this.#chainId = chainId;
this.#slip44 = slip44;
this.#transportDef = transportDef;
}
/**
* @description Returns the address associated with a specific account & address offset. Optionally
* asks for on-device confirmation
*/
public async getAddress (ss58Prefix: number, confirm = false, accountIndex = 0, addressOffset = 0): Promise<LedgerAddress> {
const bip42Path = `m/44'/${this.#slip44}'/${accountIndex}'/${0}'/${addressOffset}'`;
return this.withApp(async (app: PolkadotGenericApp): Promise<LedgerAddress> => {
const { address, pubKey } = await wrapError(app.getAddress(bip42Path, ss58Prefix, confirm));
return {
address,
publicKey: hexAddPrefix(pubKey)
};
});
}
/**
* @description Returns the version of the Ledger application on the device
*/
public async getVersion (): Promise<LedgerVersion> {
return this.withApp(async (app: PolkadotGenericApp): Promise<LedgerVersion> => {
const { deviceLocked: isLocked, major, minor, patch, testMode: isTestMode } = await wrapError(app.getVersion());
return {
isLocked: !!isLocked,
isTestMode: !!isTestMode,
version: [major || 0, minor || 0, patch || 0]
};
});
}
/**
* @description Signs a transaction on the Ledger device. This requires the LedgerGeneric class to be instantiated with `chainId`, and `metaUrl`
*/
public async sign (message: Uint8Array, accountIndex?: number, addressOffset?: number): Promise<LedgerSignature> {
return this.withApp(sign('sign', message, this.#slip44, accountIndex, addressOffset));
}
/**
* @description Signs a message (non-transactional) on the Ledger device
*/
public async signRaw (message: Uint8Array, accountIndex?: number, addressOffset?: number): Promise<LedgerSignature> {
return this.withApp(sign('signRaw', u8aWrapBytes(message), this.#slip44, accountIndex, addressOffset));
}
/**
* @description Signs a transaction on the ledger device provided some metadata.
*/
public async signWithMetadata (message: Uint8Array, accountIndex?: number, addressOffset?: number, options?: Partial<AccountOptionsGeneric>): Promise<LedgerSignature> {
return this.withApp(signWithMetadata(message, this.#slip44, accountIndex, addressOffset, options));
}
/**
* @internal
*
* Returns a created PolkadotGenericApp to perform operations against. Generally
* this is only used internally, to ensure consistent bahavior.
*/
async withApp <T> (fn: (app: PolkadotGenericApp) => Promise<T>): Promise<T> {
try {
if (!this.#app) {
const transport = await this.#transportDef.create();
// We need this override for the actual type passing - the Deno environment
// is quite a bit stricter and it yields invalids between the two (specifically
// since we mangle the imports from .default in the types for CJS/ESM and between
// esm.sh versions this yields problematic outputs)
//
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-explicit-any
this.#app = new PolkadotGenericApp(transport as any, this.#chainId, this.#metaUrl);
}
return await fn(this.#app);
} catch (error) {
this.#app = null;
throw error;
}
}
}
+6 -141
View File
@@ -1,143 +1,8 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { SubstrateApp } from '@zondax/ledger-substrate';
import type { TransportDef, TransportType } from '@polkadot/hw-ledger-transports/types';
import type { AccountOptions, LedgerAddress, LedgerSignature, LedgerVersion } from './types.js';
import { newSubstrateApp } from '@zondax/ledger-substrate';
import { transports } from '@polkadot/hw-ledger-transports';
import { hexAddPrefix, u8aToBuffer, u8aWrapBytes } from '@polkadot/util';
import { LEDGER_DEFAULT_ACCOUNT, LEDGER_DEFAULT_CHANGE, LEDGER_DEFAULT_INDEX, LEDGER_SUCCESS_CODE } from './constants.js';
import { ledgerApps } from './defaults.js';
export { packageInfo } from './packageInfo.js';
type Chain = keyof typeof ledgerApps;
type WrappedResult = Awaited<ReturnType<SubstrateApp['getAddress' | 'getVersion' | 'sign']>>;
/** @internal Wraps a SubstrateApp call, checking the result for any errors which result in a rejection */
async function wrapError <T extends WrappedResult> (promise: Promise<T>): Promise<T> {
const result = await promise;
if (result.return_code !== LEDGER_SUCCESS_CODE) {
throw new Error(result.error_message);
}
return result;
}
/** @internal Wraps a sign/signRaw call and returns the associated signature */
function sign (method: 'sign' | 'signRaw', message: Uint8Array, accountOffset = 0, addressOffset = 0, { account = LEDGER_DEFAULT_ACCOUNT, addressIndex = LEDGER_DEFAULT_INDEX, change = LEDGER_DEFAULT_CHANGE }: Partial<AccountOptions> = {}): (app: SubstrateApp) => Promise<LedgerSignature> {
return async (app: SubstrateApp): Promise<LedgerSignature> => {
const { signature } = await wrapError(app[method](account + accountOffset, change, addressIndex + addressOffset, u8aToBuffer(message)));
return {
signature: hexAddPrefix(signature.toString('hex'))
};
};
}
/**
* @name Ledger
*
* @description
* A very basic wrapper for a ledger app -
* - it connects automatically on use, creating an underlying interface as required
* - Promises reject with errors (unwrapped errors from @zondax/ledger-substrate)
*/
export class Ledger {
readonly #ledgerName: string;
readonly #transportDef: TransportDef;
#app: SubstrateApp | null = null;
constructor (transport: TransportType, chain: Chain) {
const ledgerName = ledgerApps[chain];
const transportDef = transports.find(({ type }) => type === transport);
if (!ledgerName) {
throw new Error(`Unsupported Ledger chain ${chain}`);
} else if (!transportDef) {
throw new Error(`Unsupported Ledger transport ${transport}`);
}
this.#ledgerName = ledgerName;
this.#transportDef = transportDef;
}
/**
* Returns the address associated with a specific account & address offset. Optionally
* asks for on-device confirmation
*/
public async getAddress (confirm = false, accountOffset = 0, addressOffset = 0, { account = LEDGER_DEFAULT_ACCOUNT, addressIndex = LEDGER_DEFAULT_INDEX, change = LEDGER_DEFAULT_CHANGE }: Partial<AccountOptions> = {}): Promise<LedgerAddress> {
return this.withApp(async (app: SubstrateApp): Promise<LedgerAddress> => {
const { address, pubKey } = await wrapError(app.getAddress(account + accountOffset, change, addressIndex + addressOffset, confirm));
return {
address,
publicKey: hexAddPrefix(pubKey)
};
});
}
/**
* Returns the version of the Ledger application on the device
*/
public async getVersion (): Promise<LedgerVersion> {
return this.withApp(async (app: SubstrateApp): Promise<LedgerVersion> => {
const { device_locked: isLocked, major, minor, patch, test_mode: isTestMode } = await wrapError(app.getVersion());
return {
isLocked,
isTestMode,
version: [major, minor, patch]
};
});
}
/**
* Signs a transaction on the Ledger device
*/
public async sign (message: Uint8Array, accountOffset?: number, addressOffset?: number, options?: Partial<AccountOptions>): Promise<LedgerSignature> {
return this.withApp(sign('sign', message, accountOffset, addressOffset, options));
}
/**
* Signs a message (non-transactional) on the Ledger device
*/
public async signRaw (message: Uint8Array, accountOffset?: number, addressOffset?: number, options?: Partial<AccountOptions>): Promise<LedgerSignature> {
return this.withApp(sign('signRaw', u8aWrapBytes(message), accountOffset, addressOffset, options));
}
/**
* @internal
*
* Returns a created SubstrateApp to perform operations against. Generally
* this is only used internally, to ensure consistent bahavior.
*/
async withApp <T> (fn: (app: SubstrateApp) => Promise<T>): Promise<T> {
try {
if (!this.#app) {
const transport = await this.#transportDef.create();
// We need this override for the actual type passing - the Deno environment
// is quite a bit stricter and it yields invalids between the two (specifically
// since we mangle the imports from .default in the types for CJS/ESM and between
// esm.sh versions this yields problematic outputs)
//
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-explicit-any
this.#app = newSubstrateApp(transport as any, this.#ledgerName);
}
return await fn(this.#app);
} catch (error) {
this.#app = null;
throw error;
}
}
}
// This is necessary to ensure users still have access to class Ledger even though its deprecated.
//
// eslint-disable-next-line deprecation/deprecation
export { Ledger } from './Ledger.js';
export { LedgerGeneric } from './LedgerGeneric.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
export const LEDGER_DEFAULT_ACCOUNT = 0x80000000;
+4 -4
View File
@@ -1,18 +1,18 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
import { supportedApps } from '@zondax/ledger-substrate';
import { ledgerApps } from './defaults.js';
import { prevLedgerRecord } from './defaults.js';
describe('ledgerApps', (): void => {
for (const k of Object.keys(ledgerApps)) {
for (const k of Object.keys(prevLedgerRecord)) {
it(`${k} is available in @zondax/ledger-substrate`, (): void => {
expect(
supportedApps.find(({ name }) =>
name === ledgerApps[k]
name === prevLedgerRecord[k]
)
).toBeDefined();
});
+22 -4
View File
@@ -1,9 +1,11 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
// These match up with the keys of the knownLedger object in the @polkadot/networks/defaults/ledger.ts
// and maps to the known name in the @zondax/ledger-substrate/supported_apps package
export const ledgerApps: Record<string, string> = {
// These map to the known name in the @zondax/ledger-substrate/supported_apps package
// but they do not reflect all ledger apps that are supported. Since ledger now has support for all
// substrate chains via the PolkadotGenericApp, any new chains that need ledger support can be added to
// `genericLedgerApps` below.
export const prevLedgerRecord: Record<string, string> = {
acala: 'Acala',
ajuna: 'Ajuna',
'aleph-node': 'AlephZero',
@@ -27,6 +29,7 @@ export const ledgerApps: Record<string, string> = {
nodle: 'Nodle',
origintrail: 'OriginTrail',
parallel: 'Parallel',
peaq: 'Peaq',
pendulum: 'Pendulum',
phala: 'Phala',
picasso: 'Picasso',
@@ -44,3 +47,18 @@ export const ledgerApps: Record<string, string> = {
xxnetwork: 'XXNetwork',
zeitgeist: 'Zeitgeist'
};
// Any chains moving forward that are supported by the PolkadotGenericApp from ledger will input their names below.
export const genericLedgerApps = {
bittensor: 'Bittensor',
encointer: 'Encointer',
frequency: 'Frequency',
integritee: 'Integritee',
polimec: 'Polimec'
};
// These match up with the keys of the knownLedger object in the @polkadot/networks/defaults/ledger.ts
export const ledgerApps: Record<string, string> = {
...prevLedgerRecord,
...genericLedgerApps
};
-7
View File
@@ -1,7 +0,0 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { packageInfo as transportInfo } from '@polkadot/hw-ledger-transports/packageInfo';
import { packageInfo as utilInfo } from '@polkadot/util/packageInfo';
export default [transportInfo, utilInfo];
-11
View File
@@ -1,11 +0,0 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
import { detectPackage } from '@polkadot/util';
import others from './detectOther.js';
import { packageInfo } from './packageInfo.js';
detectPackage(packageInfo, null, others);
+2 -2
View File
@@ -1,6 +1,6 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
import './detectPackage.js';
import './packageDetect.js';
export * from './bundle.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
export * from './index.js';
+13
View File
@@ -0,0 +1,13 @@
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
// (packageInfo imports will be kept as-is, user-editable)
import { packageInfo as transportInfo } from '@polkadot/hw-ledger-transports/packageInfo';
import { detectPackage } from '@polkadot/util';
import { packageInfo as utilInfo } from '@polkadot/util/packageInfo';
import { packageInfo } from './packageInfo.js';
detectPackage(packageInfo, null, [transportInfo, utilInfo]);
+2 -2
View File
@@ -1,6 +1,6 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
export const packageInfo = { name: '@polkadot/hw-ledger', path: 'auto', type: 'auto', version: '12.6.2' };
export const packageInfo = { name: '@polkadot/hw-ledger', path: 'auto', type: 'auto', version: '13.2.2' };
+9 -1
View File
@@ -1,8 +1,11 @@
// Copyright 2017-2023 @polkadot/hw-ledger authors & contributors
// Copyright 2017-2024 @polkadot/hw-ledger authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { HexString } from '@polkadot/util/types';
/**
* Legacy Type that works with the `Ledger` class.
*/
export interface AccountOptions {
/** The index of the account */
account: number;
@@ -12,6 +15,11 @@ export interface AccountOptions {
change: number;
}
export interface AccountOptionsGeneric extends AccountOptions {
/** Option for PolkadotGenericApp.signWithMetadata */
metadata: Buffer;
}
export interface LedgerAddress {
/** The ss58 encoded address */
address: string;
+8 -8
View File
@@ -14,19 +14,19 @@
"url": "https://github.com/polkadot-js/common.git"
},
"sideEffects": [
"./detectPackage.js",
"./detectPackage.cjs"
"./packageDetect.js",
"./packageDetect.cjs"
],
"type": "module",
"version": "12.6.2",
"version": "13.2.2",
"main": "index.js",
"dependencies": {
"@polkadot/util": "12.6.2",
"@polkadot/util-crypto": "12.6.2",
"tslib": "^2.6.2"
"@polkadot/util": "13.2.2",
"@polkadot/util-crypto": "13.2.2",
"tslib": "^2.8.0"
},
"peerDependencies": {
"@polkadot/util": "12.6.2",
"@polkadot/util-crypto": "12.6.2"
"@polkadot/util": "13.2.2",
"@polkadot/util-crypto": "13.2.2"
}
}
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
// all external
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
// default substrate dev phrase
-7
View File
@@ -1,7 +0,0 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { packageInfo as utilInfo } from '@polkadot/util/packageInfo';
import { packageInfo as cryptoInfo } from '@polkadot/util-crypto/packageInfo';
export default [utilInfo, cryptoInfo];
-11
View File
@@ -1,11 +0,0 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
import { detectPackage } from '@polkadot/util';
import others from './detectOther.js';
import { packageInfo } from './packageInfo.js';
detectPackage(packageInfo, null, others);
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
+2 -2
View File
@@ -1,7 +1,7 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
import './detectPackage.js';
import './packageDetect.js';
import { Keyring } from './bundle.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { EncryptedJsonEncoding, Keypair, KeypairType } from '@polkadot/util-crypto/types';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
export * from './index.js';
+13
View File
@@ -0,0 +1,13 @@
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
// (packageInfo imports will be kept as-is, user-editable)
import { detectPackage } from '@polkadot/util';
import { packageInfo as utilInfo } from '@polkadot/util/packageInfo';
import { packageInfo as cryptoInfo } from '@polkadot/util-crypto/packageInfo';
import { packageInfo } from './packageInfo.js';
detectPackage(packageInfo, null, [cryptoInfo, utilInfo]);
+2 -2
View File
@@ -1,6 +1,6 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
export const packageInfo = { name: '@polkadot/keyring', path: 'auto', type: 'auto', version: '12.6.2' };
export const packageInfo = { name: '@polkadot/keyring', path: 'auto', type: 'auto', version: '13.2.2' };
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
+24 -19
View File
@@ -1,47 +1,52 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { EncryptedJsonEncoding } from '@polkadot/util-crypto/types';
import type { PairInfo } from './types.js';
import { u8aEq } from '@polkadot/util';
import { jsonDecryptData } from '@polkadot/util-crypto';
import { PKCS8_DIVIDER, PKCS8_HEADER, PUB_LENGTH, SEC_LENGTH, SEED_LENGTH } from './defaults.js';
import { PAIR_DIV, PAIR_HDR, PUB_LENGTH, SEC_LENGTH, SEED_LENGTH } from './defaults.js';
const SEED_OFFSET = PKCS8_HEADER.length;
const SEED_OFFSET = PAIR_HDR.length;
type DecodeResult = PairInfo & {
secretKey: Uint8Array;
};
export function decodePair (passphrase?: string, encrypted?: Uint8Array | null, _encType?: EncryptedJsonEncoding | EncryptedJsonEncoding[]): DecodeResult {
/**
* Decode a pair, taking into account the generation-specific formats and headers
*
* For divisor/headers, don't rely on the magic being static. These will
* change between generations, aka with the long-awaited 4th generation
* of the format. The external decode interface is the only way to use and decode these.
**/
export function decodePair (passphrase?: string, encrypted?: Uint8Array | null, _encType?: EncryptedJsonEncoding | EncryptedJsonEncoding[]): { publicKey: Uint8Array; secretKey: Uint8Array } {
const encType = Array.isArray(_encType) || _encType === undefined
? _encType
: [_encType];
const decrypted = jsonDecryptData(encrypted, passphrase, encType);
const header = decrypted.subarray(0, PKCS8_HEADER.length);
const header = decrypted.subarray(0, PAIR_HDR.length);
if (!u8aEq(header, PKCS8_HEADER)) {
throw new Error('Invalid Pkcs8 header found in body');
// check the start header (generations 1-3)
if (!u8aEq(header, PAIR_HDR)) {
throw new Error('Invalid encoding header found in body');
}
// setup for generation 3 format
let secretKey = decrypted.subarray(SEED_OFFSET, SEED_OFFSET + SEC_LENGTH);
let divOffset = SEED_OFFSET + SEC_LENGTH;
let divider = decrypted.subarray(divOffset, divOffset + PKCS8_DIVIDER.length);
let divider = decrypted.subarray(divOffset, divOffset + PAIR_DIV.length);
// old-style, we have the seed here
if (!u8aEq(divider, PKCS8_DIVIDER)) {
// old-style (generation 1 & 2), we have the seed here
if (!u8aEq(divider, PAIR_DIV)) {
divOffset = SEED_OFFSET + SEED_LENGTH;
secretKey = decrypted.subarray(SEED_OFFSET, divOffset);
divider = decrypted.subarray(divOffset, divOffset + PKCS8_DIVIDER.length);
divider = decrypted.subarray(divOffset, divOffset + PAIR_DIV.length);
if (!u8aEq(divider, PKCS8_DIVIDER)) {
throw new Error('Invalid Pkcs8 divider found in body');
// check the divisior at this point (already checked for generation 3)
if (!u8aEq(divider, PAIR_DIV)) {
throw new Error('Invalid encoding divider found in body');
}
}
const pubOffset = divOffset + PKCS8_DIVIDER.length;
const pubOffset = divOffset + PAIR_DIV.length;
const publicKey = decrypted.subarray(pubOffset, pubOffset + PUB_LENGTH);
return {
+14 -3
View File
@@ -1,9 +1,20 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
export const PKCS8_DIVIDER = new Uint8Array([161, 35, 3, 33, 0]);
export const PKCS8_HEADER = new Uint8Array([48, 83, 2, 1, 1, 48, 5, 6, 3, 43, 101, 112, 4, 34, 4, 32]);
/** public/secret section divider (generation 1-3, will change in 4, don't rely on value) */
export const PAIR_DIV = new Uint8Array([161, 35, 3, 33, 0]);
/** public/secret start block (generation 1-3, will change in 4, don't rely on value) */
export const PAIR_HDR = new Uint8Array([48, 83, 2, 1, 1, 48, 5, 6, 3, 43, 101, 112, 4, 34, 4, 32]);
/** length of a public key */
export const PUB_LENGTH = 32;
/** length of a salt */
export const SALT_LENGTH = 32;
/** length of a secret key */
export const SEC_LENGTH = 64;
/** length of a user-input seed */
export const SEED_LENGTH = 32;
+5 -5
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
@@ -6,10 +6,10 @@
import { NONCE_LENGTH, SCRYPT_LENGTH } from '@polkadot/util-crypto/json/constants';
import { createTestPairs } from '../testingPairs.js';
import { PKCS8_DIVIDER, PKCS8_HEADER, PUB_LENGTH, SEC_LENGTH } from './defaults.js';
import { PAIR_DIV, PAIR_HDR, PUB_LENGTH, SEC_LENGTH } from './defaults.js';
const PKCS8_LENGTH = PKCS8_DIVIDER.length + PKCS8_HEADER.length + PUB_LENGTH + SEC_LENGTH;
const ENCODED_LENGTH = 16 + PKCS8_LENGTH + NONCE_LENGTH + SCRYPT_LENGTH;
const DECODED_LENGTH = PAIR_DIV.length + PAIR_HDR.length + PUB_LENGTH + SEC_LENGTH;
const ENCODED_LENGTH = 16 + DECODED_LENGTH + NONCE_LENGTH + SCRYPT_LENGTH;
const keyring = createTestPairs({ type: 'ed25519' }, false);
@@ -17,7 +17,7 @@ describe('encode', (): void => {
it('returns PKCS8 when no passphrase supplied', (): void => {
expect(
keyring.alice.encodePkcs8()
).toHaveLength(PKCS8_LENGTH);
).toHaveLength(DECODED_LENGTH);
});
it('returns encoded PKCS8 when passphrase supplied', (): void => {
+7 -8
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { PairInfo } from './types.js';
@@ -6,24 +6,23 @@ import type { PairInfo } from './types.js';
import { u8aConcat } from '@polkadot/util';
import { naclEncrypt, scryptEncode, scryptToU8a } from '@polkadot/util-crypto';
import { PKCS8_DIVIDER, PKCS8_HEADER } from './defaults.js';
import { PAIR_DIV, PAIR_HDR } from './defaults.js';
/**
* Encode a pair with the latest generation format (generation 3)
**/
export function encodePair ({ publicKey, secretKey }: PairInfo, passphrase?: string): Uint8Array {
if (!secretKey) {
throw new Error('Expected a valid secretKey to be passed to encode');
}
const encoded = u8aConcat(
PKCS8_HEADER,
secretKey,
PKCS8_DIVIDER,
publicKey
);
const encoded = u8aConcat(PAIR_HDR, secretKey, PAIR_DIV, publicKey);
if (!passphrase) {
return encoded;
}
// this is only for generation 3 (previous generations are only handled in decoding)
const { params, password, salt } = scryptEncode(passphrase);
const { encrypted, nonce } = naclEncrypt(encoded, password.subarray(0, 32));
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { EncryptedJsonEncoding, Keypair, KeypairType } from '@polkadot/util-crypto/types';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { KeyringPair, KeyringPair$Json, KeyringPair$Meta } from '../types.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { KeypairType } from '@polkadot/util-crypto/types';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
export interface PairInfo {
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { KeyringPair, KeyringPairs } from './types.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { HexString } from '@polkadot/util/types';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { KeypairType } from '@polkadot/util-crypto/types';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { HexString } from '@polkadot/util/types';
+5 -5
View File
@@ -15,14 +15,14 @@
},
"sideEffects": false,
"type": "module",
"version": "12.6.2",
"version": "13.2.2",
"main": "index.js",
"dependencies": {
"@polkadot/util": "12.6.2",
"@substrate/ss58-registry": "^1.44.0",
"tslib": "^2.6.2"
"@polkadot/util": "13.2.2",
"@substrate/ss58-registry": "^1.51.0",
"tslib": "^2.8.0"
},
"devDependencies": {
"@polkadot/hw-ledger": "12.6.2"
"@polkadot/hw-ledger": "13.2.2"
}
}
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/networks authors & contributors
// Copyright 2017-2024 @polkadot/networks authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
+18 -2
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/networks authors & contributors
// Copyright 2017-2024 @polkadot/networks authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { KnownGenesis } from '../types.js';
@@ -56,22 +56,32 @@ export const knownGenesis: KnownGenesis = {
edgeware: [
'0x742a2ca70c2fda6cee4f8df98d64c4c670a052d9568058982dad9d5a7a135c5b'
],
encointer: [
'0x7dd99936c1e9e6d1ce7d90eb6f33bea8393b4bf87677d675aa63c9cb3e8c5b5b'
],
enjin: [
'0xd8761d3c88f26dc12875c00d3165f7d67243d56fc85b4cf19937601a7916e5a9'
],
equilibrium: [
'0x6f1a800de3daff7f5e037ddf66ab22ce03ab91874debeddb1086f5f7dbd48925'
],
frequency: [
'0x4a587bf17a404e3572747add7aab7bbe56e805a5479c6c436f07f36fcc8d3ae1'
],
genshiro: [
'0x9b8cefc0eb5c568b527998bdd76c184e2b76ae561be76e4667072230217ea243'
],
hydradx: [
'0xafdc188f45c71dacbaa0b62e16a91f726c7b8699a9748cdf715459de6b7f366d', // HydraDX Parachain
'0xafdc188f45c71dacbaa0b62e16a91f726c7b8699a9748cdf715459de6b7f366d', // Hydration | HydraDX Parachain
'0xd2a620c27ec5cbc5621ff9a522689895074f7cca0d08e7134a7804e1a3ba86fc', // Snakenet Gen3-1
'0x10af6e84234477d84dc572bac0789813b254aa490767ed06fb9591191d1073f9', // Snakenet Gen3
'0x3d75507dd46301767e601265791da1d9cb47b6ebc94e87347b635e5bf58bd047', // Snakenet Gen2
'0x0ed32bfcab4a83517fac88f2aa7cbc2f88d3ab93be9a12b6188a036bf8a943c2' // Snakenet Gen1
],
integritee: [
'0xcdedc8eadbfa209d3f207bba541e57c3c58a667b05a2e1d1e86353c9000758da', // on Kusama
'0xe13e7af377c64e83f95e0d70d5e5c3c01d697a84538776c5b9bbe0e7d7b6034c' // on Polkadot
],
'interlay-parachain': [
'0xbf88efe70e9e0e916416e8bed61f2b45717f517d7f3523e33c7b001e5ffcbc72'
],
@@ -104,6 +114,9 @@ export const knownGenesis: KnownGenesis = {
parallel: [
'0xe61a41c53f5dcd0beb09df93b34402aada44cb05117b71059cce40a2723a4e97'
],
peaq: [
'0xd2a5d385932d1f650dae03ef8e2748983779ee342c614f80854d32b8cd8fa48c'
],
pendulum: [
'0x5d3c298622d5634ed019bf61ea4b71655030015bde9beb0d6a24743714462c86'
],
@@ -114,6 +127,9 @@ export const knownGenesis: KnownGenesis = {
'0x6811a339673c9daa897944dcdac99c6e2939cc88245ed21951a0a3c9a2be75bc',
'0xe8e7f0f4c4f5a00720b4821dbfddefea7490bcf0b19009961cc46957984e2c1c'
],
polimec: [
'0x7eb9354488318e7549c722669dcbdcdc526f1fef1420e7944667212f3601fdbd'
],
polkadex: [
'0x3920bcb4960a1eef5580cd5367ff3f430eef052774f78468852f7b9cb39f8a3c'
],
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/networks authors & contributors
// Copyright 2017-2024 @polkadot/networks authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { KnownIcon } from '../types.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/networks authors & contributors
// Copyright 2017-2024 @polkadot/networks authors & contributors
// SPDX-License-Identifier: Apache-2.0
export { knownGenesis } from './genesis.js';
+7 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/networks authors & contributors
// Copyright 2017-2024 @polkadot/networks authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { KnownLedger } from '../types.js';
@@ -14,15 +14,19 @@ export const knownLedger: KnownLedger = {
astar: 0x0000032a,
bifrost: 0x00000314,
'bifrost-kusama': 0x00000314,
bittensor: 0x00000162,
centrifuge: 0x000002eb,
composable: 0x00000162,
darwinia: 0x00000162,
'dock-mainnet': 0x00000252,
edgeware: 0x0000020b,
encointer: 0x000001b2,
enjin: 0x00000483,
equilibrium: 0x05f5e0fd,
frequency: 0x0000082b,
genshiro: 0x05f5e0fc,
hydradx: 0x00000162,
integritee: 0x000007df,
'interlay-parachain': 0x00000162,
karura: 0x000002ae,
khala: 0x000001b2,
@@ -31,9 +35,11 @@ export const knownLedger: KnownLedger = {
nodle: 0x000003eb,
origintrail: 0x00000162,
parallel: 0x00000162,
peaq: 0x00000d0a,
pendulum: 0x00000162,
phala: 0x00000162,
picasso: 0x000001b2,
polimec: 0x00000d10,
polkadex: 0x0000031f,
polkadot: 0x00000162,
polymesh: 0x00000253,
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/networks authors & contributors
// Copyright 2017-2024 @polkadot/networks authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { KnownTestnet } from '../types.js';
-4
View File
@@ -1,4 +0,0 @@
// Copyright 2017-2023 @polkadot/networks authors & contributors
// SPDX-License-Identifier: Apache-2.0
export default [];
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/networks authors & contributors
// Copyright 2017-2024 @polkadot/networks authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
+2 -2
View File
@@ -1,9 +1,9 @@
// Copyright 2017-2023 @polkadot/networks authors & contributors
// Copyright 2017-2024 @polkadot/networks authors & contributors
// SPDX-License-Identifier: Apache-2.0
// TODO: This was removed, really cannot recall the reason...
// ... put it back, but keep it removed
// import './detectPackage';
// import './packageDetect.js';
export * from './interfaces.js';
export { packageInfo } from './packageInfo.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/networks authors & contributors
// Copyright 2017-2024 @polkadot/networks authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { KnownSubstrate, Network, SubstrateNetwork } from './types.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/networks authors & contributors
// Copyright 2017-2024 @polkadot/networks authors & contributors
// SPDX-License-Identifier: Apache-2.0
export * from './index.js';
@@ -1,11 +1,11 @@
// Copyright 2017-2023 @polkadot/networks authors & contributors
// Copyright 2017-2024 @polkadot/networks authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
// (packageInfo imports will be kept as-is, user-editable)
import { detectPackage } from '@polkadot/util';
import others from './detectOther.js';
import { packageInfo } from './packageInfo.js';
detectPackage(packageInfo, null, others);
detectPackage(packageInfo, null, []);
+2 -2
View File
@@ -1,6 +1,6 @@
// Copyright 2017-2023 @polkadot/networks authors & contributors
// Copyright 2017-2024 @polkadot/networks authors & contributors
// SPDX-License-Identifier: Apache-2.0
// Do not edit, auto-generated by @polkadot/dev
export const packageInfo = { name: '@polkadot/networks', path: 'auto', type: 'auto', version: '12.6.2' };
export const packageInfo = { name: '@polkadot/networks', path: 'auto', type: 'auto', version: '13.2.2' };
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/networks authors & contributors
// Copyright 2017-2024 @polkadot/networks authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/keyring authors & contributors
// Copyright 2017-2024 @polkadot/keyring authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { RegistryEntry } from '@substrate/ss58-registry';
+114 -36
View File
@@ -715,10 +715,23 @@
"standardAccount": "*25519",
"website": "https://pendulumchain.org/"
},
{
"prefix": 58,
"network": "eternal-civilization",
"displayName": "Eternal Civilization",
"symbols": [
"ECC"
],
"decimals": [
12
],
"standardAccount": "*25519",
"website": "http://www.ysknfr.cn/"
},
{
"prefix": 63,
"network": "hydradx",
"displayName": "HydraDX",
"displayName": "Hydration",
"symbols": [
"HDX"
],
@@ -726,20 +739,7 @@
12
],
"standardAccount": "*25519",
"website": "https://hydradx.io"
},
{
"prefix": 64,
"network": "ewx",
"displayName": "Energy Web X",
"symbols": [
"EWT"
],
"decimals": [
18
],
"standardAccount": "*25519",
"website": "https://www.energyweb.org"
"website": "https://hydration.net"
},
{
"prefix": 65,
@@ -1129,7 +1129,7 @@
12
],
"standardAccount": "*25519",
"website": "https://vara-network.io/"
"website": "https://vara.network/"
},
{
"prefix": 172,
@@ -1222,6 +1222,19 @@
"standardAccount": "*25519",
"website": "https://metaquity.xyz/"
},
{
"prefix": 777,
"network": "curio",
"displayName": "Curio",
"symbols": [
"CGT"
],
"decimals": [
18
],
"standardAccount": "*25519",
"website": "https://parachain.capitaldex.exchange/"
},
{
"prefix": 789,
"network": "geek",
@@ -1404,6 +1417,19 @@
"standardAccount": "*25519",
"website": "https://logion.network"
},
{
"prefix": 2024,
"network": "vow-chain",
"displayName": "Enigmatic Smile",
"symbols": [
"VOW"
],
"decimals": [
18
],
"standardAccount": "*25519",
"website": "https://www.vow.foundation/"
},
{
"prefix": 2032,
"network": "interlay",
@@ -1521,19 +1547,6 @@
"standardAccount": "secp256k1",
"website": "https://www.peerplays.com/"
},
{
"prefix": 4006,
"network": "tangle",
"displayName": "Tangle Network",
"symbols": [
"TNT"
],
"decimals": [
18
],
"standardAccount": "*25519",
"website": "https://www.webb.tools/"
},
{
"prefix": 4450,
"network": "g1",
@@ -1561,17 +1574,30 @@
"website": "https://humanode.io"
},
{
"prefix": 6094,
"network": "subspace",
"displayName": "Subspace",
"prefix": 5845,
"network": "tangle",
"displayName": "Tangle Network",
"symbols": [
"SSC"
"TNT"
],
"decimals": [
18
],
"standardAccount": "*25519",
"website": "https://subspace.network"
"website": "https://www.tangle.tools/"
},
{
"prefix": 6094,
"network": "autonomys",
"displayName": "Autonomys",
"symbols": [
"AI3"
],
"decimals": [
18
],
"standardAccount": "*25519",
"website": "https://autonomys.xyz"
},
{
"prefix": 7007,
@@ -1728,7 +1754,7 @@
"TCESS"
],
"decimals": [
12
18
],
"standardAccount": "*25519",
"website": "https://cess.cloud"
@@ -1741,7 +1767,7 @@
"CESS"
],
"decimals": [
12
18
],
"standardAccount": "*25519",
"website": "https://cess.cloud"
@@ -1798,6 +1824,19 @@
"standardAccount": "*25519",
"website": "https://nftmart.io"
},
{
"prefix": 12850,
"network": "analog-timechain",
"displayName": "Analog Timechain",
"symbols": [
"ANLOG"
],
"decimals": [
12
],
"standardAccount": "*25519",
"website": "https://analog.one"
},
{
"prefix": 13116,
"network": "bittensor",
@@ -1823,5 +1862,44 @@
],
"standardAccount": "*25519",
"website": "https://goro.network"
},
{
"prefix": 14998,
"network": "mosaic-chain",
"displayName": "Mosaic Chain",
"symbols": [
"MOS"
],
"decimals": [
18
],
"standardAccount": "*25519",
"website": "https://mosaicchain.io"
},
{
"prefix": 29972,
"network": "mythos",
"displayName": "Mythos",
"symbols": [
"MYTH"
],
"decimals": [
18
],
"standardAccount": "secp256k1",
"website": "https://mythos.foundation"
},
{
"prefix": 8888,
"network": "xcavate",
"displayName": "Xcavate Protocol",
"symbols": [
"XCAV"
],
"decimals": [
12
],
"standardAccount": "*25519",
"website": "https://xcavate.io/"
}
]
+12 -12
View File
@@ -16,11 +16,11 @@
"sideEffects": [
"./bundleInit.js",
"./bundleInit.cjs",
"./detectPackage.js",
"./detectPackage.cjs"
"./packageDetect.js",
"./packageDetect.cjs"
],
"type": "module",
"version": "12.6.2",
"version": "13.2.2",
"browser": {
"crypto": false,
"stream": false
@@ -29,16 +29,16 @@
"dependencies": {
"@noble/curves": "^1.3.0",
"@noble/hashes": "^1.3.3",
"@polkadot/networks": "12.6.2",
"@polkadot/util": "12.6.2",
"@polkadot/wasm-crypto": "^7.3.2",
"@polkadot/wasm-util": "^7.3.2",
"@polkadot/x-bigint": "12.6.2",
"@polkadot/x-randomvalues": "12.6.2",
"@scure/base": "^1.1.5",
"tslib": "^2.6.2"
"@polkadot/networks": "13.2.2",
"@polkadot/util": "13.2.2",
"@polkadot/wasm-crypto": "^7.4.1",
"@polkadot/wasm-util": "^7.4.1",
"@polkadot/x-bigint": "13.2.2",
"@polkadot/x-randomvalues": "13.2.2",
"@scure/base": "^1.1.7",
"tslib": "^2.8.0"
},
"peerDependencies": {
"@polkadot/util": "12.6.2"
"@polkadot/util": "13.2.2"
}
}
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { decodeAddress } from './decode.js';
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Prefix } from './types.js';
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { sshash } from './sshash.js';
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Prefix } from './types.js';
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { availableNetworks } from '../networks.js';
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { DeriveJunction } from '../key/DeriveJunction.js';
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
+1 -1
View File
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { Prefix } from './types.js';
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { BN } from '@polkadot/util';
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
/// <reference types="@polkadot/dev-test/globals.d.ts" />
@@ -1,4 +1,4 @@
// Copyright 2017-2023 @polkadot/util-crypto authors & contributors
// Copyright 2017-2024 @polkadot/util-crypto authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { BN } from '@polkadot/util';

Some files were not shown because too many files have changed in this diff Show More