@gnolang/tm2-js-client 2.0.3 → 2.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +424 -0
- package/CONTRIBUTING.md +83 -0
- package/dist/_virtual/_@oxc-project_runtime@0.143.0/helpers/esm/defineProperty.cjs +12 -0
- package/dist/_virtual/{_@oxc-project_runtime@0.122.0/helpers → _@oxc-project_runtime@0.143.0/helpers/esm}/defineProperty.mjs +3 -3
- package/dist/_virtual/{_@oxc-project_runtime@0.122.0/helpers → _@oxc-project_runtime@0.143.0/helpers/esm}/toPrimitive.cjs +4 -4
- package/dist/_virtual/{_@oxc-project_runtime@0.122.0/helpers → _@oxc-project_runtime@0.143.0/helpers/esm}/toPrimitive.mjs +3 -3
- package/dist/_virtual/_@oxc-project_runtime@0.143.0/helpers/esm/toPropertyKey.cjs +9 -0
- package/dist/_virtual/_@oxc-project_runtime@0.143.0/helpers/esm/toPropertyKey.mjs +9 -0
- package/dist/_virtual/{_@oxc-project_runtime@0.122.0/helpers → _@oxc-project_runtime@0.143.0/helpers/esm}/typeof.cjs +2 -2
- package/dist/_virtual/{_@oxc-project_runtime@0.122.0/helpers → _@oxc-project_runtime@0.143.0/helpers/esm}/typeof.mjs +2 -2
- package/dist/_virtual/_rolldown/runtime.cjs +1 -1
- package/dist/index.cjs +9 -2
- package/dist/index.d.cts +8 -1
- package/dist/index.d.mts +8 -1
- package/dist/index.mjs +3 -1
- package/dist/proto/google/protobuf/any.cjs +3 -4
- package/dist/proto/google/protobuf/any.cjs.map +1 -1
- package/dist/proto/google/protobuf/any.d.cts +3 -4
- package/dist/proto/google/protobuf/any.d.cts.map +1 -1
- package/dist/proto/google/protobuf/any.d.mts +3 -4
- package/dist/proto/google/protobuf/any.d.mts.map +1 -1
- package/dist/proto/google/protobuf/any.mjs +3 -3
- package/dist/proto/google/protobuf/any.mjs.map +1 -1
- package/dist/proto/index.cjs +15 -2
- package/dist/proto/index.d.cts +4 -1
- package/dist/proto/index.d.mts +4 -1
- package/dist/proto/index.mjs +5 -3
- package/dist/proto/tm2/abci.cjs +4 -4
- package/dist/proto/tm2/abci.cjs.map +1 -1
- package/dist/proto/tm2/abci.d.cts +3 -4
- package/dist/proto/tm2/abci.d.cts.map +1 -1
- package/dist/proto/tm2/abci.d.mts +3 -4
- package/dist/proto/tm2/abci.d.mts.map +1 -1
- package/dist/proto/tm2/abci.mjs +4 -4
- package/dist/proto/tm2/abci.mjs.map +1 -1
- package/dist/proto/tm2/multisig.cjs +198 -0
- package/dist/proto/tm2/multisig.cjs.map +1 -0
- package/dist/proto/tm2/multisig.d.cts +3 -4
- package/dist/proto/tm2/multisig.d.cts.map +1 -1
- package/dist/proto/tm2/multisig.d.mts +3 -4
- package/dist/proto/tm2/multisig.d.mts.map +1 -1
- package/dist/proto/tm2/multisig.mjs +196 -0
- package/dist/proto/tm2/multisig.mjs.map +1 -0
- package/dist/proto/tm2/tx.cjs +6 -7
- package/dist/proto/tm2/tx.cjs.map +1 -1
- package/dist/proto/tm2/tx.d.cts +2 -3
- package/dist/proto/tm2/tx.d.cts.map +1 -1
- package/dist/proto/tm2/tx.d.mts +2 -3
- package/dist/proto/tm2/tx.d.mts.map +1 -1
- package/dist/proto/tm2/tx.mjs +6 -6
- package/dist/proto/tm2/tx.mjs.map +1 -1
- package/dist/provider/endpoints.cjs.map +1 -1
- package/dist/provider/endpoints.d.cts.map +1 -1
- package/dist/provider/endpoints.d.mts.map +1 -1
- package/dist/provider/endpoints.mjs.map +1 -1
- package/dist/provider/errors/errors.cjs +2 -2
- package/dist/provider/errors/errors.cjs.map +1 -1
- package/dist/provider/errors/errors.d.cts.map +1 -1
- package/dist/provider/errors/errors.d.mts.map +1 -1
- package/dist/provider/errors/errors.mjs +1 -1
- package/dist/provider/errors/errors.mjs.map +1 -1
- package/dist/provider/errors/index.cjs +20 -1
- package/dist/provider/errors/index.d.cts +2 -1
- package/dist/provider/errors/index.d.mts +2 -1
- package/dist/provider/errors/index.mjs +2 -2
- package/dist/provider/index.cjs +61 -9
- package/dist/provider/index.d.cts +7 -1
- package/dist/provider/index.d.mts +7 -1
- package/dist/provider/index.mjs +10 -10
- package/dist/provider/jsonrpc/index.cjs +2 -1
- package/dist/provider/jsonrpc/index.d.cts +2 -1
- package/dist/provider/jsonrpc/index.d.mts +2 -1
- package/dist/provider/jsonrpc/index.mjs +2 -2
- package/dist/provider/jsonrpc/jsonrpc.cjs +2 -2
- package/dist/provider/jsonrpc/jsonrpc.cjs.map +1 -1
- package/dist/provider/jsonrpc/jsonrpc.d.cts +0 -1
- package/dist/provider/jsonrpc/jsonrpc.d.cts.map +1 -1
- package/dist/provider/jsonrpc/jsonrpc.d.mts +0 -1
- package/dist/provider/jsonrpc/jsonrpc.d.mts.map +1 -1
- package/dist/provider/jsonrpc/jsonrpc.mjs +2 -1
- package/dist/provider/jsonrpc/jsonrpc.mjs.map +1 -1
- package/dist/provider/provider.cjs +8 -9
- package/dist/provider/provider.cjs.map +1 -1
- package/dist/provider/provider.d.cts +2 -1
- package/dist/provider/provider.d.cts.map +1 -1
- package/dist/provider/provider.d.mts +2 -1
- package/dist/provider/provider.d.mts.map +1 -1
- package/dist/provider/provider.mjs +43 -26
- package/dist/provider/provider.mjs.map +1 -1
- package/dist/provider/types/abci.d.cts.map +1 -1
- package/dist/provider/types/abci.d.mts.map +1 -1
- package/dist/provider/types/common.d.cts +1 -2
- package/dist/provider/types/common.d.cts.map +1 -1
- package/dist/provider/types/common.d.mts +1 -2
- package/dist/provider/types/common.d.mts.map +1 -1
- package/dist/provider/types/index.cjs +2 -1
- package/dist/provider/types/index.d.cts +2 -1
- package/dist/provider/types/index.d.mts +2 -1
- package/dist/provider/types/index.mjs +2 -2
- package/dist/provider/types/jsonrpc.d.cts.map +1 -1
- package/dist/provider/types/jsonrpc.d.mts.map +1 -1
- package/dist/provider/utility/adapters.cjs +1 -1
- package/dist/provider/utility/adapters.cjs.map +1 -1
- package/dist/provider/utility/adapters.d.cts +1 -1
- package/dist/provider/utility/adapters.d.cts.map +1 -1
- package/dist/provider/utility/adapters.d.mts +1 -1
- package/dist/provider/utility/adapters.d.mts.map +1 -1
- package/dist/provider/utility/adapters.mjs +1 -1
- package/dist/provider/utility/adapters.mjs.map +1 -1
- package/dist/provider/utility/errors.utility.cjs.map +1 -1
- package/dist/provider/utility/errors.utility.mjs.map +1 -1
- package/dist/provider/utility/index.cjs +27 -3
- package/dist/provider/utility/index.d.cts +2 -1
- package/dist/provider/utility/index.d.mts +2 -1
- package/dist/provider/utility/index.mjs +4 -4
- package/dist/provider/utility/provider.utility.cjs +4 -5
- package/dist/provider/utility/provider.utility.cjs.map +1 -1
- package/dist/provider/utility/provider.utility.d.cts +3 -2
- package/dist/provider/utility/provider.utility.d.cts.map +1 -1
- package/dist/provider/utility/provider.utility.d.mts +3 -2
- package/dist/provider/utility/provider.utility.d.mts.map +1 -1
- package/dist/provider/utility/provider.utility.mjs +3 -2
- package/dist/provider/utility/provider.utility.mjs.map +1 -1
- package/dist/provider/utility/requests.utility.cjs +0 -1
- package/dist/provider/utility/requests.utility.cjs.map +1 -1
- package/dist/provider/utility/requests.utility.d.cts +1 -1
- package/dist/provider/utility/requests.utility.d.cts.map +1 -1
- package/dist/provider/utility/requests.utility.d.mts +1 -1
- package/dist/provider/utility/requests.utility.d.mts.map +1 -1
- package/dist/provider/utility/requests.utility.mjs.map +1 -1
- package/dist/provider/websocket/index.cjs +2 -1
- package/dist/provider/websocket/index.d.cts +2 -1
- package/dist/provider/websocket/index.d.mts +2 -1
- package/dist/provider/websocket/index.mjs +2 -2
- package/dist/provider/websocket/ws.cjs +2 -2
- package/dist/provider/websocket/ws.cjs.map +1 -1
- package/dist/provider/websocket/ws.d.cts +0 -1
- package/dist/provider/websocket/ws.d.cts.map +1 -1
- package/dist/provider/websocket/ws.d.mts +0 -1
- package/dist/provider/websocket/ws.d.mts.map +1 -1
- package/dist/provider/websocket/ws.mjs +2 -1
- package/dist/provider/websocket/ws.mjs.map +1 -1
- package/dist/services/index.cjs +2 -1
- package/dist/services/index.d.cts +2 -1
- package/dist/services/index.d.mts +2 -1
- package/dist/services/index.mjs +2 -2
- package/dist/services/rest/restService.cjs +1 -1
- package/dist/services/rest/restService.cjs.map +1 -1
- package/dist/services/rest/restService.d.cts +0 -1
- package/dist/services/rest/restService.d.cts.map +1 -1
- package/dist/services/rest/restService.d.mts +0 -1
- package/dist/services/rest/restService.d.mts.map +1 -1
- package/dist/services/rest/restService.mjs.map +1 -1
- package/dist/services/rest/restService.types.d.cts +1 -1
- package/dist/services/rest/restService.types.d.cts.map +1 -1
- package/dist/services/rest/restService.types.d.mts +1 -1
- package/dist/services/rest/restService.types.d.mts.map +1 -1
- package/dist/utility/compact-bit-array.cjs +1 -1
- package/dist/utility/compact-bit-array.cjs.map +1 -1
- package/dist/utility/compact-bit-array.d.cts +0 -1
- package/dist/utility/compact-bit-array.d.cts.map +1 -1
- package/dist/utility/compact-bit-array.d.mts +0 -1
- package/dist/utility/compact-bit-array.d.mts.map +1 -1
- package/dist/utility/compact-bit-array.mjs +1 -1
- package/dist/utility/compact-bit-array.mjs.map +1 -1
- package/dist/utility/index.cjs +3 -1
- package/dist/utility/index.d.cts +2 -1
- package/dist/utility/index.d.mts +2 -1
- package/dist/utility/index.mjs +2 -2
- package/dist/wallet/index.cjs +16 -5
- package/dist/wallet/index.d.cts +6 -1
- package/dist/wallet/index.d.mts +6 -1
- package/dist/wallet/index.mjs +6 -6
- package/dist/wallet/key/index.cjs +2 -1
- package/dist/wallet/key/index.d.cts +2 -1
- package/dist/wallet/key/index.d.mts +2 -1
- package/dist/wallet/key/index.mjs +2 -2
- package/dist/wallet/key/key.cjs +9 -10
- package/dist/wallet/key/key.cjs.map +1 -1
- package/dist/wallet/key/key.d.cts +0 -1
- package/dist/wallet/key/key.d.cts.map +1 -1
- package/dist/wallet/key/key.d.mts +0 -1
- package/dist/wallet/key/key.d.mts.map +1 -1
- package/dist/wallet/key/key.mjs +1 -1
- package/dist/wallet/key/key.mjs.map +1 -1
- package/dist/wallet/ledger/index.cjs +2 -1
- package/dist/wallet/ledger/index.d.cts +2 -1
- package/dist/wallet/ledger/index.d.mts +2 -1
- package/dist/wallet/ledger/index.mjs +2 -2
- package/dist/wallet/ledger/ledger.cjs +9 -10
- package/dist/wallet/ledger/ledger.cjs.map +1 -1
- package/dist/wallet/ledger/ledger.d.cts +0 -1
- package/dist/wallet/ledger/ledger.d.cts.map +1 -1
- package/dist/wallet/ledger/ledger.d.mts +0 -1
- package/dist/wallet/ledger/ledger.d.mts.map +1 -1
- package/dist/wallet/ledger/ledger.mjs +3 -2
- package/dist/wallet/ledger/ledger.mjs.map +1 -1
- package/dist/wallet/signer.d.cts.map +1 -1
- package/dist/wallet/signer.d.mts.map +1 -1
- package/dist/wallet/types/index.cjs +2 -1
- package/dist/wallet/types/index.d.cts +2 -1
- package/dist/wallet/types/index.d.mts +2 -1
- package/dist/wallet/types/index.mjs +2 -2
- package/dist/wallet/types/sign.d.cts.map +1 -1
- package/dist/wallet/types/sign.d.mts.map +1 -1
- package/dist/wallet/types/wallet.d.cts.map +1 -1
- package/dist/wallet/types/wallet.d.mts.map +1 -1
- package/dist/wallet/utility/index.cjs +8 -1
- package/dist/wallet/utility/index.d.cts +2 -1
- package/dist/wallet/utility/index.d.mts +2 -1
- package/dist/wallet/utility/index.mjs +2 -2
- package/dist/wallet/utility/utility.cjs +1 -1
- package/dist/wallet/utility/utility.cjs.map +1 -1
- package/dist/wallet/utility/utility.d.cts +0 -1
- package/dist/wallet/utility/utility.d.cts.map +1 -1
- package/dist/wallet/utility/utility.d.mts +0 -1
- package/dist/wallet/utility/utility.d.mts.map +1 -1
- package/dist/wallet/utility/utility.mjs.map +1 -1
- package/dist/wallet/wallet.cjs +16 -17
- package/dist/wallet/wallet.cjs.map +1 -1
- package/dist/wallet/wallet.d.cts +3 -1
- package/dist/wallet/wallet.d.cts.map +1 -1
- package/dist/wallet/wallet.d.mts +3 -1
- package/dist/wallet/wallet.d.mts.map +1 -1
- package/dist/wallet/wallet.mjs +4 -3
- package/dist/wallet/wallet.mjs.map +1 -1
- package/package.json +38 -36
- package/dist/_virtual/_@oxc-project_runtime@0.122.0/helpers/defineProperty.cjs +0 -12
- package/dist/_virtual/_@oxc-project_runtime@0.122.0/helpers/toPropertyKey.cjs +0 -9
- package/dist/_virtual/_@oxc-project_runtime@0.122.0/helpers/toPropertyKey.mjs +0 -9
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.cts.map +0 -1
- package/dist/index.d.mts.map +0 -1
- package/dist/index.mjs.map +0 -1
package/dist/wallet/index.cjs
CHANGED
|
@@ -1,10 +1,21 @@
|
|
|
1
|
-
require("./utility/utility.cjs");
|
|
1
|
+
const require_utility = require("./utility/utility.cjs");
|
|
2
2
|
require("./utility/index.cjs");
|
|
3
|
-
require("./key/key.cjs");
|
|
3
|
+
const require_key = require("./key/key.cjs");
|
|
4
4
|
require("./key/index.cjs");
|
|
5
|
-
require("./ledger/ledger.cjs");
|
|
5
|
+
const require_ledger = require("./ledger/ledger.cjs");
|
|
6
6
|
require("./ledger/index.cjs");
|
|
7
7
|
require("./signer.cjs");
|
|
8
|
-
require("./types/sign.cjs");
|
|
8
|
+
const require_sign = require("./types/sign.cjs");
|
|
9
9
|
require("./types/index.cjs");
|
|
10
|
-
require("./wallet.cjs");
|
|
10
|
+
const require_wallet = require("./wallet.cjs");
|
|
11
|
+
exports.KeySigner = require_key.KeySigner;
|
|
12
|
+
exports.LedgerSigner = require_ledger.LedgerSigner;
|
|
13
|
+
exports.Secp256k1PubKeyType = require_sign.Secp256k1PubKeyType;
|
|
14
|
+
exports.Wallet = require_wallet.Wallet;
|
|
15
|
+
exports.defaultAddressPrefix = require_utility.defaultAddressPrefix;
|
|
16
|
+
exports.encodeCharacterSet = require_utility.encodeCharacterSet;
|
|
17
|
+
exports.generateEntropy = require_utility.generateEntropy;
|
|
18
|
+
exports.generateHDPath = require_utility.generateHDPath;
|
|
19
|
+
exports.generateKeyPair = require_utility.generateKeyPair;
|
|
20
|
+
exports.sortedJsonStringify = require_utility.sortedJsonStringify;
|
|
21
|
+
exports.stringToUTF8 = require_utility.stringToUTF8;
|
package/dist/wallet/index.d.cts
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import { Signer } from "./signer.cjs";
|
|
2
2
|
import { KeySigner } from "./key/key.cjs";
|
|
3
|
+
import "./key/index.cjs";
|
|
3
4
|
import { LedgerSigner } from "./ledger/ledger.cjs";
|
|
5
|
+
import "./ledger/index.cjs";
|
|
4
6
|
import { Secp256k1PubKeyType, TxSignPayload } from "./types/sign.cjs";
|
|
5
7
|
import { AccountWalletOption, CreateWalletOptions } from "./types/wallet.cjs";
|
|
8
|
+
import "./types/index.cjs";
|
|
6
9
|
import { defaultAddressPrefix, encodeCharacterSet, generateEntropy, generateHDPath, generateKeyPair, sortedJsonStringify, stringToUTF8 } from "./utility/utility.cjs";
|
|
7
|
-
import
|
|
10
|
+
import "./utility/index.cjs";
|
|
11
|
+
import { SignTransactionOptions, Wallet } from "./wallet.cjs";
|
|
12
|
+
export { AccountWalletOption, CreateWalletOptions, KeySigner, LedgerSigner, Secp256k1PubKeyType, SignTransactionOptions, Signer, TxSignPayload, Wallet, defaultAddressPrefix, encodeCharacterSet, generateEntropy, generateHDPath, generateKeyPair, sortedJsonStringify, stringToUTF8 };
|
package/dist/wallet/index.d.mts
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import { Signer } from "./signer.mjs";
|
|
2
2
|
import { KeySigner } from "./key/key.mjs";
|
|
3
|
+
import "./key/index.mjs";
|
|
3
4
|
import { LedgerSigner } from "./ledger/ledger.mjs";
|
|
5
|
+
import "./ledger/index.mjs";
|
|
4
6
|
import { Secp256k1PubKeyType, TxSignPayload } from "./types/sign.mjs";
|
|
5
7
|
import { AccountWalletOption, CreateWalletOptions } from "./types/wallet.mjs";
|
|
8
|
+
import "./types/index.mjs";
|
|
6
9
|
import { defaultAddressPrefix, encodeCharacterSet, generateEntropy, generateHDPath, generateKeyPair, sortedJsonStringify, stringToUTF8 } from "./utility/utility.mjs";
|
|
7
|
-
import
|
|
10
|
+
import "./utility/index.mjs";
|
|
11
|
+
import { SignTransactionOptions, Wallet } from "./wallet.mjs";
|
|
12
|
+
export { AccountWalletOption, CreateWalletOptions, KeySigner, LedgerSigner, Secp256k1PubKeyType, SignTransactionOptions, Signer, TxSignPayload, Wallet, defaultAddressPrefix, encodeCharacterSet, generateEntropy, generateHDPath, generateKeyPair, sortedJsonStringify, stringToUTF8 };
|
package/dist/wallet/index.mjs
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import "./utility/utility.mjs";
|
|
1
|
+
import { defaultAddressPrefix, encodeCharacterSet, generateEntropy, generateHDPath, generateKeyPair, sortedJsonStringify, stringToUTF8 } from "./utility/utility.mjs";
|
|
2
2
|
import "./utility/index.mjs";
|
|
3
|
-
import "./key/key.mjs";
|
|
3
|
+
import { KeySigner } from "./key/key.mjs";
|
|
4
4
|
import "./key/index.mjs";
|
|
5
|
-
import "./ledger/ledger.mjs";
|
|
5
|
+
import { LedgerSigner } from "./ledger/ledger.mjs";
|
|
6
6
|
import "./ledger/index.mjs";
|
|
7
7
|
import "./signer.mjs";
|
|
8
|
-
import "./types/sign.mjs";
|
|
8
|
+
import { Secp256k1PubKeyType } from "./types/sign.mjs";
|
|
9
9
|
import "./types/index.mjs";
|
|
10
|
-
import "./wallet.mjs";
|
|
11
|
-
export {};
|
|
10
|
+
import { Wallet } from "./wallet.mjs";
|
|
11
|
+
export { KeySigner, LedgerSigner, Secp256k1PubKeyType, Wallet, defaultAddressPrefix, encodeCharacterSet, generateEntropy, generateHDPath, generateKeyPair, sortedJsonStringify, stringToUTF8 };
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
require("./key.cjs");
|
|
1
|
+
const require_key = require("./key.cjs");
|
|
2
|
+
exports.KeySigner = require_key.KeySigner;
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
import { KeySigner } from "./key.cjs";
|
|
1
|
+
import { KeySigner } from "./key.cjs";
|
|
2
|
+
export { KeySigner };
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
import { KeySigner } from "./key.mjs";
|
|
1
|
+
import { KeySigner } from "./key.mjs";
|
|
2
|
+
export { KeySigner };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./key.mjs";
|
|
2
|
-
export {};
|
|
1
|
+
import { KeySigner } from "./key.mjs";
|
|
2
|
+
export { KeySigner };
|
package/dist/wallet/key/key.cjs
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
require("../../_virtual/
|
|
2
|
-
const require_defineProperty = require("../../_virtual/_@oxc-project_runtime@0.122.0/helpers/defineProperty.cjs");
|
|
1
|
+
const require_defineProperty = require("../../_virtual/_@oxc-project_runtime@0.143.0/helpers/esm/defineProperty.cjs");
|
|
3
2
|
require("../utility/utility.cjs");
|
|
4
3
|
require("../utility/index.cjs");
|
|
5
4
|
let _cosmjs_crypto = require("@cosmjs/crypto");
|
|
@@ -16,23 +15,23 @@ var KeySigner = class {
|
|
|
16
15
|
* @param {string} addressPrefix the address prefix
|
|
17
16
|
*/
|
|
18
17
|
constructor(privateKey, publicKey, addressPrefix = "g") {
|
|
19
|
-
require_defineProperty.
|
|
20
|
-
require_defineProperty.
|
|
21
|
-
require_defineProperty.
|
|
22
|
-
require_defineProperty.
|
|
18
|
+
require_defineProperty.default(this, "privateKey", void 0);
|
|
19
|
+
require_defineProperty.default(this, "publicKey", void 0);
|
|
20
|
+
require_defineProperty.default(this, "addressPrefix", void 0);
|
|
21
|
+
require_defineProperty.default(this, "getAddress", async () => {
|
|
23
22
|
return (0, _cosmjs_amino.pubkeyToAddress)((0, _cosmjs_amino.encodeSecp256k1Pubkey)(_cosmjs_crypto.Secp256k1.compressPubkey(this.publicKey)), this.addressPrefix);
|
|
24
23
|
});
|
|
25
|
-
require_defineProperty.
|
|
24
|
+
require_defineProperty.default(this, "getPublicKey", async () => {
|
|
26
25
|
return this.publicKey;
|
|
27
26
|
});
|
|
28
|
-
require_defineProperty.
|
|
27
|
+
require_defineProperty.default(this, "getPrivateKey", async () => {
|
|
29
28
|
return this.privateKey;
|
|
30
29
|
});
|
|
31
|
-
require_defineProperty.
|
|
30
|
+
require_defineProperty.default(this, "signData", async (data) => {
|
|
32
31
|
const signature = await _cosmjs_crypto.Secp256k1.createSignature((0, _cosmjs_crypto.sha256)(data), this.privateKey);
|
|
33
32
|
return new Uint8Array([...signature.r(32), ...signature.s(32)]);
|
|
34
33
|
});
|
|
35
|
-
require_defineProperty.
|
|
34
|
+
require_defineProperty.default(this, "verifySignature", async (data, signature) => {
|
|
36
35
|
return _cosmjs_crypto.Secp256k1.verifySignature(_cosmjs_crypto.Secp256k1Signature.fromFixedLength(signature), (0, _cosmjs_crypto.sha256)(data), this.publicKey);
|
|
37
36
|
});
|
|
38
37
|
this.privateKey = privateKey;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"key.cjs","names":["Secp256k1","Secp256k1Signature"],"sources":["../../../src/wallet/key/key.ts"],"sourcesContent":["import {\n encodeSecp256k1Pubkey, pubkeyToAddress,\n} from \"@cosmjs/amino\";\nimport {\n Secp256k1, Secp256k1Signature, sha256,\n} from \"@cosmjs/crypto\";\n\nimport {\n Signer,\n} from \"../signer.js\";\nimport {\n defaultAddressPrefix,\n} from \"../utility/index.js\";\n\n/**\n * KeySigner implements the logic for the private key signer\n */\nexport class KeySigner implements Signer {\n private readonly privateKey: Uint8Array; // the raw private key\n private readonly publicKey: Uint8Array; // the compressed public key\n private readonly addressPrefix: string; // the address prefix\n\n /**\n * Creates a new {@link KeySigner} instance\n * @param {Uint8Array} privateKey the raw Secp256k1 private key\n * @param {Uint8Array} publicKey the raw Secp256k1 public key\n * @param {string} addressPrefix the address prefix\n */\n constructor(\n privateKey: Uint8Array,\n publicKey: Uint8Array,\n addressPrefix: string = defaultAddressPrefix,\n ) {\n this.privateKey = privateKey;\n this.publicKey = publicKey;\n this.addressPrefix = addressPrefix;\n }\n\n getAddress = async (): Promise<string> => {\n return pubkeyToAddress(\n encodeSecp256k1Pubkey(Secp256k1.compressPubkey(this.publicKey)),\n this.addressPrefix,\n );\n };\n\n getPublicKey = async (): Promise<Uint8Array> => {\n return this.publicKey;\n };\n\n getPrivateKey = async (): Promise<Uint8Array> => {\n return this.privateKey;\n };\n\n signData = async (data: Uint8Array): Promise<Uint8Array> => {\n const signature = await Secp256k1.createSignature(\n sha256(data),\n this.privateKey,\n );\n\n return new Uint8Array([...signature.r(32), ...signature.s(32)]);\n };\n\n verifySignature = async (\n data: Uint8Array,\n signature: Uint8Array,\n ): Promise<boolean> => {\n return Secp256k1.verifySignature(\n Secp256k1Signature.fromFixedLength(signature),\n sha256(data),\n this.publicKey,\n );\n };\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"key.cjs","names":["pubkeyToAddress","encodeSecp256k1Pubkey","Secp256k1","sha256","Secp256k1Signature"],"sources":["../../../src/wallet/key/key.ts"],"sourcesContent":["import {\n encodeSecp256k1Pubkey, pubkeyToAddress,\n} from \"@cosmjs/amino\";\nimport {\n Secp256k1, Secp256k1Signature, sha256,\n} from \"@cosmjs/crypto\";\n\nimport {\n Signer,\n} from \"../signer.js\";\nimport {\n defaultAddressPrefix,\n} from \"../utility/index.js\";\n\n/**\n * KeySigner implements the logic for the private key signer\n */\nexport class KeySigner implements Signer {\n private readonly privateKey: Uint8Array; // the raw private key\n private readonly publicKey: Uint8Array; // the compressed public key\n private readonly addressPrefix: string; // the address prefix\n\n /**\n * Creates a new {@link KeySigner} instance\n * @param {Uint8Array} privateKey the raw Secp256k1 private key\n * @param {Uint8Array} publicKey the raw Secp256k1 public key\n * @param {string} addressPrefix the address prefix\n */\n constructor(\n privateKey: Uint8Array,\n publicKey: Uint8Array,\n addressPrefix: string = defaultAddressPrefix,\n ) {\n this.privateKey = privateKey;\n this.publicKey = publicKey;\n this.addressPrefix = addressPrefix;\n }\n\n getAddress = async (): Promise<string> => {\n return pubkeyToAddress(\n encodeSecp256k1Pubkey(Secp256k1.compressPubkey(this.publicKey)),\n this.addressPrefix,\n );\n };\n\n getPublicKey = async (): Promise<Uint8Array> => {\n return this.publicKey;\n };\n\n getPrivateKey = async (): Promise<Uint8Array> => {\n return this.privateKey;\n };\n\n signData = async (data: Uint8Array): Promise<Uint8Array> => {\n const signature = await Secp256k1.createSignature(\n sha256(data),\n this.privateKey,\n );\n\n return new Uint8Array([...signature.r(32), ...signature.s(32)]);\n };\n\n verifySignature = async (\n data: Uint8Array,\n signature: Uint8Array,\n ): Promise<boolean> => {\n return Secp256k1.verifySignature(\n Secp256k1Signature.fromFixedLength(signature),\n sha256(data),\n this.publicKey,\n );\n };\n}\n"],"mappings":";;;;;;;;;AAiBA,IAAa,YAAb,MAAyC;;;;;;;CAWvC,YACE,YACA,WACA,gBAAA,KACA;EAde,uBAAA,QAAA,MAAA,cAAA,KAAA,CAAA;EACA,uBAAA,QAAA,MAAA,aAAA,KAAA,CAAA;EACA,uBAAA,QAAA,MAAA,iBAAA,KAAA,CAAA;EAkBjB,uBAAA,QAAA,MAAA,cAAa,YAA6B;GACxC,QAAA,GAAOA,cAAAA,gBAAAA,EAAAA,GACLC,cAAAA,sBAAAA,CAAsBC,eAAAA,UAAU,eAAe,KAAK,SAAS,CAAC,GAC9D,KAAK,aACP;EACF,CAAA;EAEA,uBAAA,QAAA,MAAA,gBAAe,YAAiC;GAC9C,OAAO,KAAK;EACd,CAAA;EAEA,uBAAA,QAAA,MAAA,iBAAgB,YAAiC;GAC/C,OAAO,KAAK;EACd,CAAA;EAEA,uBAAA,QAAA,MAAA,YAAW,OAAO,SAA0C;GAC1D,MAAM,YAAY,MAAMA,eAAAA,UAAU,iBAAA,GAChCC,eAAAA,OAAAA,CAAO,IAAI,GACX,KAAK,UACP;GAEA,OAAO,IAAI,WAAW,CAAC,GAAG,UAAU,EAAE,EAAE,GAAG,GAAG,UAAU,EAAE,EAAE,CAAC,CAAC;EAChE,CAAA;EAEA,uBAAA,QAAA,MAAA,mBAAkB,OAChB,MACA,cACqB;GACrB,OAAOD,eAAAA,UAAU,gBACfE,eAAAA,mBAAmB,gBAAgB,SAAS,IAAA,GAC5CD,eAAAA,OAAAA,CAAO,IAAI,GACX,KAAK,SACP;EACF,CAAA;EAtCE,KAAK,aAAa;EAClB,KAAK,YAAY;EACjB,KAAK,gBAAgB;CACvB;AAoCF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"key.d.cts","names":[],"sources":["../../../src/wallet/key/key.ts"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"key.d.cts","names":[],"sources":["../../../src/wallet/key/key.ts"],"mappings":";;;;;cAiBa,qBAAqB;mBACf;mBACA;mBACA;;;;;;;EASf,YAAA,YAAY,YACZ,WAAW,YACX;EAOF,kBAAuB;EAOvB,oBAAyB,QAAQ;EAIjC,qBAA0B,QAAQ;EAIlC,WAAkB,MAAM,eAAa,QAAQ;EAS7C,kBACE,MAAM,YACN,WAAW,eACV"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"key.d.mts","names":[],"sources":["../../../src/wallet/key/key.ts"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"key.d.mts","names":[],"sources":["../../../src/wallet/key/key.ts"],"mappings":";;;;;cAiBa,qBAAqB;mBACf;mBACA;mBACA;;;;;;;EASf,YAAA,YAAY,YACZ,WAAW,YACX;EAOF,kBAAuB;EAOvB,oBAAyB,QAAQ;EAIjC,qBAA0B,QAAQ;EAIlC,WAAkB,MAAM,eAAa,QAAQ;EAS7C,kBACE,MAAM,YACN,WAAW,eACV"}
|
package/dist/wallet/key/key.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import _defineProperty from "../../_virtual/_@oxc-project_runtime@0.143.0/helpers/esm/defineProperty.mjs";
|
|
2
2
|
import "../utility/utility.mjs";
|
|
3
3
|
import "../utility/index.mjs";
|
|
4
4
|
import { Secp256k1, Secp256k1Signature, sha256 } from "@cosmjs/crypto";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"key.mjs","names":[],"sources":["../../../src/wallet/key/key.ts"],"sourcesContent":["import {\n encodeSecp256k1Pubkey, pubkeyToAddress,\n} from \"@cosmjs/amino\";\nimport {\n Secp256k1, Secp256k1Signature, sha256,\n} from \"@cosmjs/crypto\";\n\nimport {\n Signer,\n} from \"../signer.js\";\nimport {\n defaultAddressPrefix,\n} from \"../utility/index.js\";\n\n/**\n * KeySigner implements the logic for the private key signer\n */\nexport class KeySigner implements Signer {\n private readonly privateKey: Uint8Array; // the raw private key\n private readonly publicKey: Uint8Array; // the compressed public key\n private readonly addressPrefix: string; // the address prefix\n\n /**\n * Creates a new {@link KeySigner} instance\n * @param {Uint8Array} privateKey the raw Secp256k1 private key\n * @param {Uint8Array} publicKey the raw Secp256k1 public key\n * @param {string} addressPrefix the address prefix\n */\n constructor(\n privateKey: Uint8Array,\n publicKey: Uint8Array,\n addressPrefix: string = defaultAddressPrefix,\n ) {\n this.privateKey = privateKey;\n this.publicKey = publicKey;\n this.addressPrefix = addressPrefix;\n }\n\n getAddress = async (): Promise<string> => {\n return pubkeyToAddress(\n encodeSecp256k1Pubkey(Secp256k1.compressPubkey(this.publicKey)),\n this.addressPrefix,\n );\n };\n\n getPublicKey = async (): Promise<Uint8Array> => {\n return this.publicKey;\n };\n\n getPrivateKey = async (): Promise<Uint8Array> => {\n return this.privateKey;\n };\n\n signData = async (data: Uint8Array): Promise<Uint8Array> => {\n const signature = await Secp256k1.createSignature(\n sha256(data),\n this.privateKey,\n );\n\n return new Uint8Array([...signature.r(32), ...signature.s(32)]);\n };\n\n verifySignature = async (\n data: Uint8Array,\n signature: Uint8Array,\n ): Promise<boolean> => {\n return Secp256k1.verifySignature(\n Secp256k1Signature.fromFixedLength(signature),\n sha256(data),\n this.publicKey,\n );\n };\n}\n"],"mappings":";;;;;;;;;AAiBA,IAAa,YAAb,MAAyC;;;;;;;CAWvC,YACE,YACA,WACA,gBAAA,KACA;
|
|
1
|
+
{"version":3,"file":"key.mjs","names":[],"sources":["../../../src/wallet/key/key.ts"],"sourcesContent":["import {\n encodeSecp256k1Pubkey, pubkeyToAddress,\n} from \"@cosmjs/amino\";\nimport {\n Secp256k1, Secp256k1Signature, sha256,\n} from \"@cosmjs/crypto\";\n\nimport {\n Signer,\n} from \"../signer.js\";\nimport {\n defaultAddressPrefix,\n} from \"../utility/index.js\";\n\n/**\n * KeySigner implements the logic for the private key signer\n */\nexport class KeySigner implements Signer {\n private readonly privateKey: Uint8Array; // the raw private key\n private readonly publicKey: Uint8Array; // the compressed public key\n private readonly addressPrefix: string; // the address prefix\n\n /**\n * Creates a new {@link KeySigner} instance\n * @param {Uint8Array} privateKey the raw Secp256k1 private key\n * @param {Uint8Array} publicKey the raw Secp256k1 public key\n * @param {string} addressPrefix the address prefix\n */\n constructor(\n privateKey: Uint8Array,\n publicKey: Uint8Array,\n addressPrefix: string = defaultAddressPrefix,\n ) {\n this.privateKey = privateKey;\n this.publicKey = publicKey;\n this.addressPrefix = addressPrefix;\n }\n\n getAddress = async (): Promise<string> => {\n return pubkeyToAddress(\n encodeSecp256k1Pubkey(Secp256k1.compressPubkey(this.publicKey)),\n this.addressPrefix,\n );\n };\n\n getPublicKey = async (): Promise<Uint8Array> => {\n return this.publicKey;\n };\n\n getPrivateKey = async (): Promise<Uint8Array> => {\n return this.privateKey;\n };\n\n signData = async (data: Uint8Array): Promise<Uint8Array> => {\n const signature = await Secp256k1.createSignature(\n sha256(data),\n this.privateKey,\n );\n\n return new Uint8Array([...signature.r(32), ...signature.s(32)]);\n };\n\n verifySignature = async (\n data: Uint8Array,\n signature: Uint8Array,\n ): Promise<boolean> => {\n return Secp256k1.verifySignature(\n Secp256k1Signature.fromFixedLength(signature),\n sha256(data),\n this.publicKey,\n );\n };\n}\n"],"mappings":";;;;;;;;;AAiBA,IAAa,YAAb,MAAyC;;;;;;;CAWvC,YACE,YACA,WACA,gBAAA,KACA;EAde,gBAAA,MAAA,cAAA,KAAA,CAAA;EACA,gBAAA,MAAA,aAAA,KAAA,CAAA;EACA,gBAAA,MAAA,iBAAA,KAAA,CAAA;EAkBjB,gBAAA,MAAA,cAAa,YAA6B;GACxC,OAAO,gBACL,sBAAsB,UAAU,eAAe,KAAK,SAAS,CAAC,GAC9D,KAAK,aACP;EACF,CAAA;EAEA,gBAAA,MAAA,gBAAe,YAAiC;GAC9C,OAAO,KAAK;EACd,CAAA;EAEA,gBAAA,MAAA,iBAAgB,YAAiC;GAC/C,OAAO,KAAK;EACd,CAAA;EAEA,gBAAA,MAAA,YAAW,OAAO,SAA0C;GAC1D,MAAM,YAAY,MAAM,UAAU,gBAChC,OAAO,IAAI,GACX,KAAK,UACP;GAEA,OAAO,IAAI,WAAW,CAAC,GAAG,UAAU,EAAE,EAAE,GAAG,GAAG,UAAU,EAAE,EAAE,CAAC,CAAC;EAChE,CAAA;EAEA,gBAAA,MAAA,mBAAkB,OAChB,MACA,cACqB;GACrB,OAAO,UAAU,gBACf,mBAAmB,gBAAgB,SAAS,GAC5C,OAAO,IAAI,GACX,KAAK,SACP;EACF,CAAA;EAtCE,KAAK,aAAa;EAClB,KAAK,YAAY;EACjB,KAAK,gBAAgB;CACvB;AAoCF"}
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
require("./ledger.cjs");
|
|
1
|
+
const require_ledger = require("./ledger.cjs");
|
|
2
|
+
exports.LedgerSigner = require_ledger.LedgerSigner;
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
import { LedgerSigner } from "./ledger.cjs";
|
|
1
|
+
import { LedgerSigner } from "./ledger.cjs";
|
|
2
|
+
export { LedgerSigner };
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
import { LedgerSigner } from "./ledger.mjs";
|
|
1
|
+
import { LedgerSigner } from "./ledger.mjs";
|
|
2
|
+
export { LedgerSigner };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./ledger.mjs";
|
|
2
|
-
export {};
|
|
1
|
+
import { LedgerSigner } from "./ledger.mjs";
|
|
2
|
+
export { LedgerSigner };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
require("../../_virtual/
|
|
2
|
-
const require_defineProperty = require("../../_virtual/_@oxc-project_runtime@0.122.0/helpers/defineProperty.cjs");
|
|
1
|
+
const require_defineProperty = require("../../_virtual/_@oxc-project_runtime@0.143.0/helpers/esm/defineProperty.cjs");
|
|
3
2
|
const require_utility = require("../utility/utility.cjs");
|
|
4
3
|
require("../utility/index.cjs");
|
|
5
4
|
let _cosmjs_crypto = require("@cosmjs/crypto");
|
|
@@ -16,26 +15,26 @@ var LedgerSigner = class {
|
|
|
16
15
|
* @param {string} addressPrefix the address prefix
|
|
17
16
|
*/
|
|
18
17
|
constructor(connector, accountIndex, addressPrefix = "g") {
|
|
19
|
-
require_defineProperty.
|
|
20
|
-
require_defineProperty.
|
|
21
|
-
require_defineProperty.
|
|
22
|
-
require_defineProperty.
|
|
18
|
+
require_defineProperty.default(this, "connector", void 0);
|
|
19
|
+
require_defineProperty.default(this, "hdPath", void 0);
|
|
20
|
+
require_defineProperty.default(this, "addressPrefix", void 0);
|
|
21
|
+
require_defineProperty.default(this, "getAddress", async () => {
|
|
23
22
|
if (!this.connector) throw new Error("Ledger not connected");
|
|
24
23
|
const compressedPubKey = await this.connector.getPubkey(this.hdPath);
|
|
25
24
|
return (0, _cosmjs_amino.pubkeyToAddress)((0, _cosmjs_amino.encodeSecp256k1Pubkey)(compressedPubKey), this.addressPrefix);
|
|
26
25
|
});
|
|
27
|
-
require_defineProperty.
|
|
26
|
+
require_defineProperty.default(this, "getPublicKey", async () => {
|
|
28
27
|
if (!this.connector) throw new Error("Ledger not connected");
|
|
29
28
|
return this.connector.getPubkey(this.hdPath);
|
|
30
29
|
});
|
|
31
|
-
require_defineProperty.
|
|
30
|
+
require_defineProperty.default(this, "getPrivateKey", async () => {
|
|
32
31
|
throw new Error("Ledger does not support private key exports");
|
|
33
32
|
});
|
|
34
|
-
require_defineProperty.
|
|
33
|
+
require_defineProperty.default(this, "signData", async (data) => {
|
|
35
34
|
if (!this.connector) throw new Error("Ledger not connected");
|
|
36
35
|
return this.connector.sign(data, this.hdPath);
|
|
37
36
|
});
|
|
38
|
-
require_defineProperty.
|
|
37
|
+
require_defineProperty.default(this, "verifySignature", async (data, signature) => {
|
|
39
38
|
const publicKey = await this.getPublicKey();
|
|
40
39
|
return _cosmjs_crypto.Secp256k1.verifySignature(_cosmjs_crypto.Secp256k1Signature.fromFixedLength(signature), (0, _cosmjs_crypto.sha256)(data), publicKey);
|
|
41
40
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger.cjs","names":["Secp256k1","Secp256k1Signature","generateHDPath"],"sources":["../../../src/wallet/ledger/ledger.ts"],"sourcesContent":["import {\n encodeSecp256k1Pubkey, pubkeyToAddress,\n} from \"@cosmjs/amino\";\nimport {\n HdPath, Secp256k1, Secp256k1Signature, sha256,\n} from \"@cosmjs/crypto\";\nimport {\n LedgerConnector,\n} from \"@cosmjs/ledger-amino\";\n\nimport {\n Signer,\n} from \"../signer.js\";\nimport {\n defaultAddressPrefix, generateHDPath,\n} from \"../utility/index.js\";\n\n/**\n * LedgerSigner implements the logic for the Ledger device signer\n */\nexport class LedgerSigner implements Signer {\n private readonly connector: LedgerConnector;\n private readonly hdPath: HdPath;\n private readonly addressPrefix: string;\n\n /**\n * Creates a new Ledger device signer instance\n * @param {LedgerConnector} connector the Ledger connector\n * @param {number} accountIndex the desired account index\n * @param {string} addressPrefix the address prefix\n */\n constructor(\n connector: LedgerConnector,\n accountIndex: number,\n addressPrefix: string = defaultAddressPrefix,\n ) {\n this.connector = connector;\n this.hdPath = generateHDPath(accountIndex);\n this.addressPrefix = addressPrefix;\n }\n\n getAddress = async (): Promise<string> => {\n if (!this.connector) {\n throw new Error(\"Ledger not connected\");\n }\n\n const compressedPubKey: Uint8Array = await this.connector.getPubkey(\n this.hdPath,\n );\n\n return pubkeyToAddress(\n encodeSecp256k1Pubkey(compressedPubKey),\n this.addressPrefix,\n );\n };\n\n getPublicKey = async (): Promise<Uint8Array> => {\n if (!this.connector) {\n throw new Error(\"Ledger not connected\");\n }\n\n return this.connector.getPubkey(this.hdPath);\n };\n\n getPrivateKey = async (): Promise<Uint8Array> => {\n throw new Error(\"Ledger does not support private key exports\");\n };\n\n signData = async (data: Uint8Array): Promise<Uint8Array> => {\n if (!this.connector) {\n throw new Error(\"Ledger not connected\");\n }\n\n return this.connector.sign(data, this.hdPath);\n };\n\n verifySignature = async (\n data: Uint8Array,\n signature: Uint8Array,\n ): Promise<boolean> => {\n const publicKey = await this.getPublicKey();\n\n return Secp256k1.verifySignature(\n Secp256k1Signature.fromFixedLength(signature),\n sha256(data),\n publicKey,\n );\n };\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ledger.cjs","names":["pubkeyToAddress","encodeSecp256k1Pubkey","Secp256k1","Secp256k1Signature","sha256","generateHDPath"],"sources":["../../../src/wallet/ledger/ledger.ts"],"sourcesContent":["import {\n encodeSecp256k1Pubkey, pubkeyToAddress,\n} from \"@cosmjs/amino\";\nimport {\n HdPath, Secp256k1, Secp256k1Signature, sha256,\n} from \"@cosmjs/crypto\";\nimport {\n LedgerConnector,\n} from \"@cosmjs/ledger-amino\";\n\nimport {\n Signer,\n} from \"../signer.js\";\nimport {\n defaultAddressPrefix, generateHDPath,\n} from \"../utility/index.js\";\n\n/**\n * LedgerSigner implements the logic for the Ledger device signer\n */\nexport class LedgerSigner implements Signer {\n private readonly connector: LedgerConnector;\n private readonly hdPath: HdPath;\n private readonly addressPrefix: string;\n\n /**\n * Creates a new Ledger device signer instance\n * @param {LedgerConnector} connector the Ledger connector\n * @param {number} accountIndex the desired account index\n * @param {string} addressPrefix the address prefix\n */\n constructor(\n connector: LedgerConnector,\n accountIndex: number,\n addressPrefix: string = defaultAddressPrefix,\n ) {\n this.connector = connector;\n this.hdPath = generateHDPath(accountIndex);\n this.addressPrefix = addressPrefix;\n }\n\n getAddress = async (): Promise<string> => {\n if (!this.connector) {\n throw new Error(\"Ledger not connected\");\n }\n\n const compressedPubKey: Uint8Array = await this.connector.getPubkey(\n this.hdPath,\n );\n\n return pubkeyToAddress(\n encodeSecp256k1Pubkey(compressedPubKey),\n this.addressPrefix,\n );\n };\n\n getPublicKey = async (): Promise<Uint8Array> => {\n if (!this.connector) {\n throw new Error(\"Ledger not connected\");\n }\n\n return this.connector.getPubkey(this.hdPath);\n };\n\n getPrivateKey = async (): Promise<Uint8Array> => {\n throw new Error(\"Ledger does not support private key exports\");\n };\n\n signData = async (data: Uint8Array): Promise<Uint8Array> => {\n if (!this.connector) {\n throw new Error(\"Ledger not connected\");\n }\n\n return this.connector.sign(data, this.hdPath);\n };\n\n verifySignature = async (\n data: Uint8Array,\n signature: Uint8Array,\n ): Promise<boolean> => {\n const publicKey = await this.getPublicKey();\n\n return Secp256k1.verifySignature(\n Secp256k1Signature.fromFixedLength(signature),\n sha256(data),\n publicKey,\n );\n };\n}\n"],"mappings":";;;;;;;;;AAoBA,IAAa,eAAb,MAA4C;;;;;;;CAW1C,YACE,WACA,cACA,gBAAA,KACA;EAde,uBAAA,QAAA,MAAA,aAAA,KAAA,CAAA;EACA,uBAAA,QAAA,MAAA,UAAA,KAAA,CAAA;EACA,uBAAA,QAAA,MAAA,iBAAA,KAAA,CAAA;EAkBjB,uBAAA,QAAA,MAAA,cAAa,YAA6B;GACxC,IAAI,CAAC,KAAK,WACR,MAAM,IAAI,MAAM,sBAAsB;GAGxC,MAAM,mBAA+B,MAAM,KAAK,UAAU,UACxD,KAAK,MACP;GAEA,QAAA,GAAOA,cAAAA,gBAAAA,EAAAA,GACLC,cAAAA,sBAAAA,CAAsB,gBAAgB,GACtC,KAAK,aACP;EACF,CAAA;EAEA,uBAAA,QAAA,MAAA,gBAAe,YAAiC;GAC9C,IAAI,CAAC,KAAK,WACR,MAAM,IAAI,MAAM,sBAAsB;GAGxC,OAAO,KAAK,UAAU,UAAU,KAAK,MAAM;EAC7C,CAAA;EAEA,uBAAA,QAAA,MAAA,iBAAgB,YAAiC;GAC/C,MAAM,IAAI,MAAM,6CAA6C;EAC/D,CAAA;EAEA,uBAAA,QAAA,MAAA,YAAW,OAAO,SAA0C;GAC1D,IAAI,CAAC,KAAK,WACR,MAAM,IAAI,MAAM,sBAAsB;GAGxC,OAAO,KAAK,UAAU,KAAK,MAAM,KAAK,MAAM;EAC9C,CAAA;EAEA,uBAAA,QAAA,MAAA,mBAAkB,OAChB,MACA,cACqB;GACrB,MAAM,YAAY,MAAM,KAAK,aAAa;GAE1C,OAAOC,eAAAA,UAAU,gBACfC,eAAAA,mBAAmB,gBAAgB,SAAS,IAAA,GAC5CC,eAAAA,OAAAA,CAAO,IAAI,GACX,SACF;EACF,CAAA;EAnDE,KAAK,YAAY;EACjB,KAAK,SAASC,gBAAAA,eAAe,YAAY;EACzC,KAAK,gBAAgB;CACvB;AAiDF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger.d.cts","names":[],"sources":["../../../src/wallet/ledger/ledger.ts"],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"ledger.d.cts","names":[],"sources":["../../../src/wallet/ledger/ledger.ts"],"mappings":";;;;;;cAoBa,wBAAwB;mBAClB;mBACA;mBACA;;;;;;;EASf,YAAA,WAAW,iBACX,sBACA;EAOF,kBAAuB;EAevB,oBAAyB,QAAQ;EAQjC,qBAA0B,QAAQ;EAIlC,WAAkB,MAAM,eAAa,QAAQ;EAQ7C,kBACE,MAAM,YACN,WAAW,eACV"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger.d.mts","names":[],"sources":["../../../src/wallet/ledger/ledger.ts"],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"ledger.d.mts","names":[],"sources":["../../../src/wallet/ledger/ledger.ts"],"mappings":";;;;;;cAoBa,wBAAwB;mBAClB;mBACA;mBACA;;;;;;;EASf,YAAA,WAAW,iBACX,sBACA;EAOF,kBAAuB;EAevB,oBAAyB,QAAQ;EAQjC,qBAA0B,QAAQ;EAIlC,WAAkB,MAAM,eAAa,QAAQ;EAQ7C,kBACE,MAAM,YACN,WAAW,eACV"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import _defineProperty from "../../_virtual/_@oxc-project_runtime@0.143.0/helpers/esm/defineProperty.mjs";
|
|
2
2
|
import { generateHDPath } from "../utility/utility.mjs";
|
|
3
3
|
import "../utility/index.mjs";
|
|
4
4
|
import { Secp256k1, Secp256k1Signature, sha256 } from "@cosmjs/crypto";
|
|
@@ -20,7 +20,8 @@ var LedgerSigner = class {
|
|
|
20
20
|
_defineProperty(this, "addressPrefix", void 0);
|
|
21
21
|
_defineProperty(this, "getAddress", async () => {
|
|
22
22
|
if (!this.connector) throw new Error("Ledger not connected");
|
|
23
|
-
|
|
23
|
+
const compressedPubKey = await this.connector.getPubkey(this.hdPath);
|
|
24
|
+
return pubkeyToAddress(encodeSecp256k1Pubkey(compressedPubKey), this.addressPrefix);
|
|
24
25
|
});
|
|
25
26
|
_defineProperty(this, "getPublicKey", async () => {
|
|
26
27
|
if (!this.connector) throw new Error("Ledger not connected");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledger.mjs","names":[],"sources":["../../../src/wallet/ledger/ledger.ts"],"sourcesContent":["import {\n encodeSecp256k1Pubkey, pubkeyToAddress,\n} from \"@cosmjs/amino\";\nimport {\n HdPath, Secp256k1, Secp256k1Signature, sha256,\n} from \"@cosmjs/crypto\";\nimport {\n LedgerConnector,\n} from \"@cosmjs/ledger-amino\";\n\nimport {\n Signer,\n} from \"../signer.js\";\nimport {\n defaultAddressPrefix, generateHDPath,\n} from \"../utility/index.js\";\n\n/**\n * LedgerSigner implements the logic for the Ledger device signer\n */\nexport class LedgerSigner implements Signer {\n private readonly connector: LedgerConnector;\n private readonly hdPath: HdPath;\n private readonly addressPrefix: string;\n\n /**\n * Creates a new Ledger device signer instance\n * @param {LedgerConnector} connector the Ledger connector\n * @param {number} accountIndex the desired account index\n * @param {string} addressPrefix the address prefix\n */\n constructor(\n connector: LedgerConnector,\n accountIndex: number,\n addressPrefix: string = defaultAddressPrefix,\n ) {\n this.connector = connector;\n this.hdPath = generateHDPath(accountIndex);\n this.addressPrefix = addressPrefix;\n }\n\n getAddress = async (): Promise<string> => {\n if (!this.connector) {\n throw new Error(\"Ledger not connected\");\n }\n\n const compressedPubKey: Uint8Array = await this.connector.getPubkey(\n this.hdPath,\n );\n\n return pubkeyToAddress(\n encodeSecp256k1Pubkey(compressedPubKey),\n this.addressPrefix,\n );\n };\n\n getPublicKey = async (): Promise<Uint8Array> => {\n if (!this.connector) {\n throw new Error(\"Ledger not connected\");\n }\n\n return this.connector.getPubkey(this.hdPath);\n };\n\n getPrivateKey = async (): Promise<Uint8Array> => {\n throw new Error(\"Ledger does not support private key exports\");\n };\n\n signData = async (data: Uint8Array): Promise<Uint8Array> => {\n if (!this.connector) {\n throw new Error(\"Ledger not connected\");\n }\n\n return this.connector.sign(data, this.hdPath);\n };\n\n verifySignature = async (\n data: Uint8Array,\n signature: Uint8Array,\n ): Promise<boolean> => {\n const publicKey = await this.getPublicKey();\n\n return Secp256k1.verifySignature(\n Secp256k1Signature.fromFixedLength(signature),\n sha256(data),\n publicKey,\n );\n };\n}\n"],"mappings":";;;;;;;;;AAoBA,IAAa,eAAb,MAA4C;;;;;;;CAW1C,YACE,WACA,cACA,gBAAA,KACA;
|
|
1
|
+
{"version":3,"file":"ledger.mjs","names":[],"sources":["../../../src/wallet/ledger/ledger.ts"],"sourcesContent":["import {\n encodeSecp256k1Pubkey, pubkeyToAddress,\n} from \"@cosmjs/amino\";\nimport {\n HdPath, Secp256k1, Secp256k1Signature, sha256,\n} from \"@cosmjs/crypto\";\nimport {\n LedgerConnector,\n} from \"@cosmjs/ledger-amino\";\n\nimport {\n Signer,\n} from \"../signer.js\";\nimport {\n defaultAddressPrefix, generateHDPath,\n} from \"../utility/index.js\";\n\n/**\n * LedgerSigner implements the logic for the Ledger device signer\n */\nexport class LedgerSigner implements Signer {\n private readonly connector: LedgerConnector;\n private readonly hdPath: HdPath;\n private readonly addressPrefix: string;\n\n /**\n * Creates a new Ledger device signer instance\n * @param {LedgerConnector} connector the Ledger connector\n * @param {number} accountIndex the desired account index\n * @param {string} addressPrefix the address prefix\n */\n constructor(\n connector: LedgerConnector,\n accountIndex: number,\n addressPrefix: string = defaultAddressPrefix,\n ) {\n this.connector = connector;\n this.hdPath = generateHDPath(accountIndex);\n this.addressPrefix = addressPrefix;\n }\n\n getAddress = async (): Promise<string> => {\n if (!this.connector) {\n throw new Error(\"Ledger not connected\");\n }\n\n const compressedPubKey: Uint8Array = await this.connector.getPubkey(\n this.hdPath,\n );\n\n return pubkeyToAddress(\n encodeSecp256k1Pubkey(compressedPubKey),\n this.addressPrefix,\n );\n };\n\n getPublicKey = async (): Promise<Uint8Array> => {\n if (!this.connector) {\n throw new Error(\"Ledger not connected\");\n }\n\n return this.connector.getPubkey(this.hdPath);\n };\n\n getPrivateKey = async (): Promise<Uint8Array> => {\n throw new Error(\"Ledger does not support private key exports\");\n };\n\n signData = async (data: Uint8Array): Promise<Uint8Array> => {\n if (!this.connector) {\n throw new Error(\"Ledger not connected\");\n }\n\n return this.connector.sign(data, this.hdPath);\n };\n\n verifySignature = async (\n data: Uint8Array,\n signature: Uint8Array,\n ): Promise<boolean> => {\n const publicKey = await this.getPublicKey();\n\n return Secp256k1.verifySignature(\n Secp256k1Signature.fromFixedLength(signature),\n sha256(data),\n publicKey,\n );\n };\n}\n"],"mappings":";;;;;;;;;AAoBA,IAAa,eAAb,MAA4C;;;;;;;CAW1C,YACE,WACA,cACA,gBAAA,KACA;EAde,gBAAA,MAAA,aAAA,KAAA,CAAA;EACA,gBAAA,MAAA,UAAA,KAAA,CAAA;EACA,gBAAA,MAAA,iBAAA,KAAA,CAAA;EAkBjB,gBAAA,MAAA,cAAa,YAA6B;GACxC,IAAI,CAAC,KAAK,WACR,MAAM,IAAI,MAAM,sBAAsB;GAGxC,MAAM,mBAA+B,MAAM,KAAK,UAAU,UACxD,KAAK,MACP;GAEA,OAAO,gBACL,sBAAsB,gBAAgB,GACtC,KAAK,aACP;EACF,CAAA;EAEA,gBAAA,MAAA,gBAAe,YAAiC;GAC9C,IAAI,CAAC,KAAK,WACR,MAAM,IAAI,MAAM,sBAAsB;GAGxC,OAAO,KAAK,UAAU,UAAU,KAAK,MAAM;EAC7C,CAAA;EAEA,gBAAA,MAAA,iBAAgB,YAAiC;GAC/C,MAAM,IAAI,MAAM,6CAA6C;EAC/D,CAAA;EAEA,gBAAA,MAAA,YAAW,OAAO,SAA0C;GAC1D,IAAI,CAAC,KAAK,WACR,MAAM,IAAI,MAAM,sBAAsB;GAGxC,OAAO,KAAK,UAAU,KAAK,MAAM,KAAK,MAAM;EAC9C,CAAA;EAEA,gBAAA,MAAA,mBAAkB,OAChB,MACA,cACqB;GACrB,MAAM,YAAY,MAAM,KAAK,aAAa;GAE1C,OAAO,UAAU,gBACf,mBAAmB,gBAAgB,SAAS,GAC5C,OAAO,IAAI,GACX,SACF;EACF,CAAA;EAnDE,KAAK,YAAY;EACjB,KAAK,SAAS,eAAe,YAAY;EACzC,KAAK,gBAAgB;CACvB;AAiDF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signer.d.cts","names":[],"sources":["../../src/wallet/signer.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"signer.d.cts","names":[],"sources":["../../src/wallet/signer.ts"],"mappings":";;;;;UAIiB;;;;EAIf,cAAc;;;;EAKd,gBAAgB,QAAQ;;;;EAKxB,iBAAiB,QAAQ;;;;;EAMzB,SAAS,MAAM,aAAa,QAAQ;;;;;;EAOpC,gBAAgB,MAAM,YAAY,WAAW,aAAa"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signer.d.mts","names":[],"sources":["../../src/wallet/signer.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"signer.d.mts","names":[],"sources":["../../src/wallet/signer.ts"],"mappings":";;;;;UAIiB;;;;EAIf,cAAc;;;;EAKd,gBAAgB,QAAQ;;;;EAKxB,iBAAiB,QAAQ;;;;;EAMzB,SAAS,MAAM,aAAa,QAAQ;;;;;;EAOpC,gBAAgB,MAAM,YAAY,WAAW,aAAa"}
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import { Secp256k1PubKeyType, TxSignPayload } from "./sign.cjs";
|
|
2
|
-
import { AccountWalletOption, CreateWalletOptions } from "./wallet.cjs";
|
|
2
|
+
import { AccountWalletOption, CreateWalletOptions } from "./wallet.cjs";
|
|
3
|
+
export { AccountWalletOption, CreateWalletOptions, Secp256k1PubKeyType, TxSignPayload };
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import { Secp256k1PubKeyType, TxSignPayload } from "./sign.mjs";
|
|
2
|
-
import { AccountWalletOption, CreateWalletOptions } from "./wallet.mjs";
|
|
2
|
+
import { AccountWalletOption, CreateWalletOptions } from "./wallet.mjs";
|
|
3
|
+
export { AccountWalletOption, CreateWalletOptions, Secp256k1PubKeyType, TxSignPayload };
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import "./sign.mjs";
|
|
1
|
+
import { Secp256k1PubKeyType } from "./sign.mjs";
|
|
2
2
|
import "./wallet.mjs";
|
|
3
|
-
export {};
|
|
3
|
+
export { Secp256k1PubKeyType };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sign.d.cts","names":[],"sources":["../../../src/wallet/types/sign.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"sign.d.cts","names":[],"sources":["../../../src/wallet/types/sign.ts"],"mappings":";;;;;UAIiB;EAEf;EAGA;EAGA;EAEA;IAGE;IAEA;;EASF;EAEA;;cAGW"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sign.d.mts","names":[],"sources":["../../../src/wallet/types/sign.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"sign.d.mts","names":[],"sources":["../../../src/wallet/types/sign.ts"],"mappings":";;;;;UAIiB;EAEf;EAGA;EAGA;EAEA;IAGE;IAEA;;EASF;EAEA;;cAGW"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.d.cts","names":[],"sources":["../../../src/wallet/types/wallet.ts"],"mappings":";UAAiB
|
|
1
|
+
{"version":3,"file":"wallet.d.cts","names":[],"sources":["../../../src/wallet/types/wallet.ts"],"mappings":";UAAiB;EAEf;EAEA;;KAGU,sBAAsB,KAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.d.mts","names":[],"sources":["../../../src/wallet/types/wallet.ts"],"mappings":";UAAiB
|
|
1
|
+
{"version":3,"file":"wallet.d.mts","names":[],"sources":["../../../src/wallet/types/wallet.ts"],"mappings":";UAAiB;EAEf;EAEA;;KAGU,sBAAsB,KAAK"}
|
|
@@ -1 +1,8 @@
|
|
|
1
|
-
require("./utility.cjs");
|
|
1
|
+
const require_utility = require("./utility.cjs");
|
|
2
|
+
exports.defaultAddressPrefix = require_utility.defaultAddressPrefix;
|
|
3
|
+
exports.encodeCharacterSet = require_utility.encodeCharacterSet;
|
|
4
|
+
exports.generateEntropy = require_utility.generateEntropy;
|
|
5
|
+
exports.generateHDPath = require_utility.generateHDPath;
|
|
6
|
+
exports.generateKeyPair = require_utility.generateKeyPair;
|
|
7
|
+
exports.sortedJsonStringify = require_utility.sortedJsonStringify;
|
|
8
|
+
exports.stringToUTF8 = require_utility.stringToUTF8;
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
import { defaultAddressPrefix, encodeCharacterSet, generateEntropy, generateHDPath, generateKeyPair, sortedJsonStringify, stringToUTF8 } from "./utility.cjs";
|
|
1
|
+
import { defaultAddressPrefix, encodeCharacterSet, generateEntropy, generateHDPath, generateKeyPair, sortedJsonStringify, stringToUTF8 } from "./utility.cjs";
|
|
2
|
+
export { defaultAddressPrefix, encodeCharacterSet, generateEntropy, generateHDPath, generateKeyPair, sortedJsonStringify, stringToUTF8 };
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
import { defaultAddressPrefix, encodeCharacterSet, generateEntropy, generateHDPath, generateKeyPair, sortedJsonStringify, stringToUTF8 } from "./utility.mjs";
|
|
1
|
+
import { defaultAddressPrefix, encodeCharacterSet, generateEntropy, generateHDPath, generateKeyPair, sortedJsonStringify, stringToUTF8 } from "./utility.mjs";
|
|
2
|
+
export { defaultAddressPrefix, encodeCharacterSet, generateEntropy, generateHDPath, generateKeyPair, sortedJsonStringify, stringToUTF8 };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./utility.mjs";
|
|
2
|
-
export {};
|
|
1
|
+
import { defaultAddressPrefix, encodeCharacterSet, generateEntropy, generateHDPath, generateKeyPair, sortedJsonStringify, stringToUTF8 } from "./utility.mjs";
|
|
2
|
+
export { defaultAddressPrefix, encodeCharacterSet, generateEntropy, generateHDPath, generateKeyPair, sortedJsonStringify, stringToUTF8 };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const require_runtime = require("../../_virtual/_rolldown/runtime.cjs");
|
|
2
2
|
let _cosmjs_crypto = require("@cosmjs/crypto");
|
|
3
3
|
let crypto = require("crypto");
|
|
4
|
-
crypto = require_runtime.__toESM(crypto);
|
|
4
|
+
crypto = require_runtime.__toESM(crypto, 1);
|
|
5
5
|
//#region src/wallet/utility/utility.ts
|
|
6
6
|
/**
|
|
7
7
|
* Generates the HD path, for the specified index, in the form 'm/44'/118'/0'/0/i',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utility.cjs","names":["Slip10RawIndex","Bip39","EnglishMnemonic","Slip10","Slip10Curve","Secp256k1"],"sources":["../../../src/wallet/utility/utility.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport {\n Bip39,\n EnglishMnemonic,\n HdPath,\n Secp256k1,\n Slip10,\n Slip10Curve,\n Slip10RawIndex,\n} from \"@cosmjs/crypto\";\nimport crypto from \"crypto\";\n\n/**\n * Generates the HD path, for the specified index, in the form 'm/44'/118'/0'/0/i',\n * where 'i' is the account index\n * @param {number} [index=0] the account index\n */\nexport const generateHDPath = (index?: number): HdPath => {\n return [Slip10RawIndex.hardened(44), Slip10RawIndex.hardened(118), Slip10RawIndex.hardened(0), Slip10RawIndex.normal(0), Slip10RawIndex.normal(index ? index : 0)];\n};\n\n/**\n * Generates random entropy of the specified size (in B)\n * @param {number} [size=32] the entropy size in bytes\n */\nexport const generateEntropy = (size?: number): Uint8Array => {\n const array = new Uint8Array(size ? size : 32);\n\n // Generate random data\n crypto.randomFillSync(array);\n\n return array;\n};\n\ninterface keyPair {\n privateKey: Uint8Array\n publicKey: Uint8Array\n}\n\n/**\n * Generates a new Secp256k1 key-pair using\n * the provided English mnemonic and account index\n * @param {string} mnemonic the English mnemonic\n * @param {number} [accountIndex=0] the account index\n */\nexport const generateKeyPair = async (\n mnemonic: string,\n accountIndex?: number,\n): Promise<keyPair> => {\n // Generate the seed\n const seed = await Bip39.mnemonicToSeed(new EnglishMnemonic(mnemonic));\n\n // Derive the private key\n const {\n privkey: privateKey,\n } = Slip10.derivePath(\n Slip10Curve.Secp256k1,\n seed,\n generateHDPath(accountIndex),\n );\n\n // Derive the public key\n const {\n pubkey: publicKey,\n } = await Secp256k1.makeKeypair(privateKey);\n\n return {\n publicKey: publicKey,\n privateKey: privateKey,\n };\n};\n\n// Address prefix for TM2 networks\nexport const defaultAddressPrefix = \"g\";\n\n/**\n * Encodes a string into a Uint8Array\n * @param {string} str the string to be encoded\n */\nexport const stringToUTF8 = (str: string): Uint8Array => {\n return new TextEncoder().encode(str);\n};\n\n/**\n * Escapes <,>,& in string.\n * Golang's json marshaller escapes <,>,& by default.\n * https://cs.opensource.google/go/go/+/refs/tags/go1.20.6:src/encoding/json/encode.go;l=46-53\n */\nexport function encodeCharacterSet(data: string) {\n return data\n .replace(/</g, \"\\\\u003c\")\n .replace(/>/g, \"\\\\u003e\")\n .replace(/&/g, \"\\\\u0026\");\n}\n\nfunction sortedObject(obj: any): any {\n if (typeof obj !== \"object\" || obj === null) {\n return obj;\n }\n if (Array.isArray(obj)) {\n return obj.map(sortedObject);\n }\n const sortedKeys = Object.keys(obj).sort();\n const result: Record<string, any> = {\n };\n // NOTE: Use forEach instead of reduce for performance with large objects eg Wasm code\n sortedKeys.forEach((key) => {\n result[key] = sortedObject(obj[key]);\n });\n return result;\n}\n\n/** Returns a JSON string with objects sorted by key */\n\nexport function sortedJsonStringify(obj: any): string {\n return JSON.stringify(sortedObject(obj));\n}\n"],"mappings":";;;;;;;;;;AAiBA,MAAa,kBAAkB,UAA2B;
|
|
1
|
+
{"version":3,"file":"utility.cjs","names":["Slip10RawIndex","Bip39","EnglishMnemonic","Slip10","Slip10Curve","Secp256k1"],"sources":["../../../src/wallet/utility/utility.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport {\n Bip39,\n EnglishMnemonic,\n HdPath,\n Secp256k1,\n Slip10,\n Slip10Curve,\n Slip10RawIndex,\n} from \"@cosmjs/crypto\";\nimport crypto from \"crypto\";\n\n/**\n * Generates the HD path, for the specified index, in the form 'm/44'/118'/0'/0/i',\n * where 'i' is the account index\n * @param {number} [index=0] the account index\n */\nexport const generateHDPath = (index?: number): HdPath => {\n return [Slip10RawIndex.hardened(44), Slip10RawIndex.hardened(118), Slip10RawIndex.hardened(0), Slip10RawIndex.normal(0), Slip10RawIndex.normal(index ? index : 0)];\n};\n\n/**\n * Generates random entropy of the specified size (in B)\n * @param {number} [size=32] the entropy size in bytes\n */\nexport const generateEntropy = (size?: number): Uint8Array => {\n const array = new Uint8Array(size ? size : 32);\n\n // Generate random data\n crypto.randomFillSync(array);\n\n return array;\n};\n\ninterface keyPair {\n privateKey: Uint8Array\n publicKey: Uint8Array\n}\n\n/**\n * Generates a new Secp256k1 key-pair using\n * the provided English mnemonic and account index\n * @param {string} mnemonic the English mnemonic\n * @param {number} [accountIndex=0] the account index\n */\nexport const generateKeyPair = async (\n mnemonic: string,\n accountIndex?: number,\n): Promise<keyPair> => {\n // Generate the seed\n const seed = await Bip39.mnemonicToSeed(new EnglishMnemonic(mnemonic));\n\n // Derive the private key\n const {\n privkey: privateKey,\n } = Slip10.derivePath(\n Slip10Curve.Secp256k1,\n seed,\n generateHDPath(accountIndex),\n );\n\n // Derive the public key\n const {\n pubkey: publicKey,\n } = await Secp256k1.makeKeypair(privateKey);\n\n return {\n publicKey: publicKey,\n privateKey: privateKey,\n };\n};\n\n// Address prefix for TM2 networks\nexport const defaultAddressPrefix = \"g\";\n\n/**\n * Encodes a string into a Uint8Array\n * @param {string} str the string to be encoded\n */\nexport const stringToUTF8 = (str: string): Uint8Array => {\n return new TextEncoder().encode(str);\n};\n\n/**\n * Escapes <,>,& in string.\n * Golang's json marshaller escapes <,>,& by default.\n * https://cs.opensource.google/go/go/+/refs/tags/go1.20.6:src/encoding/json/encode.go;l=46-53\n */\nexport function encodeCharacterSet(data: string) {\n return data\n .replace(/</g, \"\\\\u003c\")\n .replace(/>/g, \"\\\\u003e\")\n .replace(/&/g, \"\\\\u0026\");\n}\n\nfunction sortedObject(obj: any): any {\n if (typeof obj !== \"object\" || obj === null) {\n return obj;\n }\n if (Array.isArray(obj)) {\n return obj.map(sortedObject);\n }\n const sortedKeys = Object.keys(obj).sort();\n const result: Record<string, any> = {\n };\n // NOTE: Use forEach instead of reduce for performance with large objects eg Wasm code\n sortedKeys.forEach((key) => {\n result[key] = sortedObject(obj[key]);\n });\n return result;\n}\n\n/** Returns a JSON string with objects sorted by key */\n\nexport function sortedJsonStringify(obj: any): string {\n return JSON.stringify(sortedObject(obj));\n}\n"],"mappings":";;;;;;;;;;AAiBA,MAAa,kBAAkB,UAA2B;CACxD,OAAO;EAACA,eAAAA,eAAe,SAAS,EAAE;EAAGA,eAAAA,eAAe,SAAS,GAAG;EAAGA,eAAAA,eAAe,SAAS,CAAC;EAAGA,eAAAA,eAAe,OAAO,CAAC;EAAGA,eAAAA,eAAe,OAAO,QAAQ,QAAQ,CAAC;CAAC;AACnK;;;;;AAMA,MAAa,mBAAmB,SAA8B;CAC5D,MAAM,QAAQ,IAAI,WAAW,OAAO,OAAO,EAAE;CAG7C,OAAA,QAAO,eAAe,KAAK;CAE3B,OAAO;AACT;;;;;;;AAaA,MAAa,kBAAkB,OAC7B,UACA,iBACqB;CAErB,MAAM,OAAO,MAAMC,eAAAA,MAAM,eAAe,IAAIC,eAAAA,gBAAgB,QAAQ,CAAC;CAGrE,MAAM,EACJ,SAAS,eACPC,eAAAA,OAAO,WACTC,eAAAA,YAAY,WACZ,MACA,eAAe,YAAY,CAC7B;CAGA,MAAM,EACJ,QAAQ,cACN,MAAMC,eAAAA,UAAU,YAAY,UAAU;CAE1C,OAAO;EACM;EACC;CACd;AACF;AAGA,MAAa,uBAAuB;;;;;AAMpC,MAAa,gBAAgB,QAA4B;CACvD,OAAO,IAAI,YAAY,CAAC,CAAC,OAAO,GAAG;AACrC;;;;;;AAOA,SAAgB,mBAAmB,MAAc;CAC/C,OAAO,KACJ,QAAQ,MAAM,SAAS,CAAC,CACxB,QAAQ,MAAM,SAAS,CAAC,CACxB,QAAQ,MAAM,SAAS;AAC5B;AAEA,SAAS,aAAa,KAAe;CACnC,IAAI,OAAO,QAAQ,YAAY,QAAQ,MACrC,OAAO;CAET,IAAI,MAAM,QAAQ,GAAG,GACnB,OAAO,IAAI,IAAI,YAAY;CAE7B,MAAM,aAAa,OAAO,KAAK,GAAG,CAAC,CAAC,KAAK;CACzC,MAAM,SAA8B,CACpC;CAEA,WAAW,SAAS,QAAQ;EAC1B,OAAO,OAAO,aAAa,IAAI,IAAI;CACrC,CAAC;CACD,OAAO;AACT;;AAIA,SAAgB,oBAAoB,KAAkB;CACpD,OAAO,KAAK,UAAU,aAAa,GAAG,CAAC;AACzC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utility.d.cts","names":[],"sources":["../../../src/wallet/utility/utility.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"utility.d.cts","names":[],"sources":["../../../src/wallet/utility/utility.ts"],"mappings":";;;;;;;cAiBa,iBAAkB,mBAAiB;;;;;cAQnC,kBAAmB,kBAAgB;UAStC;EACR,YAAY;EACZ,WAAW;;;;;;;;cASA,kBACX,kBACA,0BACC,QAAQ;cAyBE;;;;;cAMA,eAAgB,gBAAc;;;;;;iBAS3B,mBAAmB;;iBA0BnB,oBAAoB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utility.d.mts","names":[],"sources":["../../../src/wallet/utility/utility.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"utility.d.mts","names":[],"sources":["../../../src/wallet/utility/utility.ts"],"mappings":";;;;;;;cAiBa,iBAAkB,mBAAiB;;;;;cAQnC,kBAAmB,kBAAgB;UAStC;EACR,YAAY;EACZ,WAAW;;;;;;;;cASA,kBACX,kBACA,0BACC,QAAQ;cAyBE;;;;;cAMA,eAAgB,gBAAc;;;;;;iBAS3B,mBAAmB;;iBA0BnB,oBAAoB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utility.mjs","names":[],"sources":["../../../src/wallet/utility/utility.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport {\n Bip39,\n EnglishMnemonic,\n HdPath,\n Secp256k1,\n Slip10,\n Slip10Curve,\n Slip10RawIndex,\n} from \"@cosmjs/crypto\";\nimport crypto from \"crypto\";\n\n/**\n * Generates the HD path, for the specified index, in the form 'm/44'/118'/0'/0/i',\n * where 'i' is the account index\n * @param {number} [index=0] the account index\n */\nexport const generateHDPath = (index?: number): HdPath => {\n return [Slip10RawIndex.hardened(44), Slip10RawIndex.hardened(118), Slip10RawIndex.hardened(0), Slip10RawIndex.normal(0), Slip10RawIndex.normal(index ? index : 0)];\n};\n\n/**\n * Generates random entropy of the specified size (in B)\n * @param {number} [size=32] the entropy size in bytes\n */\nexport const generateEntropy = (size?: number): Uint8Array => {\n const array = new Uint8Array(size ? size : 32);\n\n // Generate random data\n crypto.randomFillSync(array);\n\n return array;\n};\n\ninterface keyPair {\n privateKey: Uint8Array\n publicKey: Uint8Array\n}\n\n/**\n * Generates a new Secp256k1 key-pair using\n * the provided English mnemonic and account index\n * @param {string} mnemonic the English mnemonic\n * @param {number} [accountIndex=0] the account index\n */\nexport const generateKeyPair = async (\n mnemonic: string,\n accountIndex?: number,\n): Promise<keyPair> => {\n // Generate the seed\n const seed = await Bip39.mnemonicToSeed(new EnglishMnemonic(mnemonic));\n\n // Derive the private key\n const {\n privkey: privateKey,\n } = Slip10.derivePath(\n Slip10Curve.Secp256k1,\n seed,\n generateHDPath(accountIndex),\n );\n\n // Derive the public key\n const {\n pubkey: publicKey,\n } = await Secp256k1.makeKeypair(privateKey);\n\n return {\n publicKey: publicKey,\n privateKey: privateKey,\n };\n};\n\n// Address prefix for TM2 networks\nexport const defaultAddressPrefix = \"g\";\n\n/**\n * Encodes a string into a Uint8Array\n * @param {string} str the string to be encoded\n */\nexport const stringToUTF8 = (str: string): Uint8Array => {\n return new TextEncoder().encode(str);\n};\n\n/**\n * Escapes <,>,& in string.\n * Golang's json marshaller escapes <,>,& by default.\n * https://cs.opensource.google/go/go/+/refs/tags/go1.20.6:src/encoding/json/encode.go;l=46-53\n */\nexport function encodeCharacterSet(data: string) {\n return data\n .replace(/</g, \"\\\\u003c\")\n .replace(/>/g, \"\\\\u003e\")\n .replace(/&/g, \"\\\\u0026\");\n}\n\nfunction sortedObject(obj: any): any {\n if (typeof obj !== \"object\" || obj === null) {\n return obj;\n }\n if (Array.isArray(obj)) {\n return obj.map(sortedObject);\n }\n const sortedKeys = Object.keys(obj).sort();\n const result: Record<string, any> = {\n };\n // NOTE: Use forEach instead of reduce for performance with large objects eg Wasm code\n sortedKeys.forEach((key) => {\n result[key] = sortedObject(obj[key]);\n });\n return result;\n}\n\n/** Returns a JSON string with objects sorted by key */\n\nexport function sortedJsonStringify(obj: any): string {\n return JSON.stringify(sortedObject(obj));\n}\n"],"mappings":";;;;;;;;AAiBA,MAAa,kBAAkB,UAA2B;
|
|
1
|
+
{"version":3,"file":"utility.mjs","names":[],"sources":["../../../src/wallet/utility/utility.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport {\n Bip39,\n EnglishMnemonic,\n HdPath,\n Secp256k1,\n Slip10,\n Slip10Curve,\n Slip10RawIndex,\n} from \"@cosmjs/crypto\";\nimport crypto from \"crypto\";\n\n/**\n * Generates the HD path, for the specified index, in the form 'm/44'/118'/0'/0/i',\n * where 'i' is the account index\n * @param {number} [index=0] the account index\n */\nexport const generateHDPath = (index?: number): HdPath => {\n return [Slip10RawIndex.hardened(44), Slip10RawIndex.hardened(118), Slip10RawIndex.hardened(0), Slip10RawIndex.normal(0), Slip10RawIndex.normal(index ? index : 0)];\n};\n\n/**\n * Generates random entropy of the specified size (in B)\n * @param {number} [size=32] the entropy size in bytes\n */\nexport const generateEntropy = (size?: number): Uint8Array => {\n const array = new Uint8Array(size ? size : 32);\n\n // Generate random data\n crypto.randomFillSync(array);\n\n return array;\n};\n\ninterface keyPair {\n privateKey: Uint8Array\n publicKey: Uint8Array\n}\n\n/**\n * Generates a new Secp256k1 key-pair using\n * the provided English mnemonic and account index\n * @param {string} mnemonic the English mnemonic\n * @param {number} [accountIndex=0] the account index\n */\nexport const generateKeyPair = async (\n mnemonic: string,\n accountIndex?: number,\n): Promise<keyPair> => {\n // Generate the seed\n const seed = await Bip39.mnemonicToSeed(new EnglishMnemonic(mnemonic));\n\n // Derive the private key\n const {\n privkey: privateKey,\n } = Slip10.derivePath(\n Slip10Curve.Secp256k1,\n seed,\n generateHDPath(accountIndex),\n );\n\n // Derive the public key\n const {\n pubkey: publicKey,\n } = await Secp256k1.makeKeypair(privateKey);\n\n return {\n publicKey: publicKey,\n privateKey: privateKey,\n };\n};\n\n// Address prefix for TM2 networks\nexport const defaultAddressPrefix = \"g\";\n\n/**\n * Encodes a string into a Uint8Array\n * @param {string} str the string to be encoded\n */\nexport const stringToUTF8 = (str: string): Uint8Array => {\n return new TextEncoder().encode(str);\n};\n\n/**\n * Escapes <,>,& in string.\n * Golang's json marshaller escapes <,>,& by default.\n * https://cs.opensource.google/go/go/+/refs/tags/go1.20.6:src/encoding/json/encode.go;l=46-53\n */\nexport function encodeCharacterSet(data: string) {\n return data\n .replace(/</g, \"\\\\u003c\")\n .replace(/>/g, \"\\\\u003e\")\n .replace(/&/g, \"\\\\u0026\");\n}\n\nfunction sortedObject(obj: any): any {\n if (typeof obj !== \"object\" || obj === null) {\n return obj;\n }\n if (Array.isArray(obj)) {\n return obj.map(sortedObject);\n }\n const sortedKeys = Object.keys(obj).sort();\n const result: Record<string, any> = {\n };\n // NOTE: Use forEach instead of reduce for performance with large objects eg Wasm code\n sortedKeys.forEach((key) => {\n result[key] = sortedObject(obj[key]);\n });\n return result;\n}\n\n/** Returns a JSON string with objects sorted by key */\n\nexport function sortedJsonStringify(obj: any): string {\n return JSON.stringify(sortedObject(obj));\n}\n"],"mappings":";;;;;;;;AAiBA,MAAa,kBAAkB,UAA2B;CACxD,OAAO;EAAC,eAAe,SAAS,EAAE;EAAG,eAAe,SAAS,GAAG;EAAG,eAAe,SAAS,CAAC;EAAG,eAAe,OAAO,CAAC;EAAG,eAAe,OAAO,QAAQ,QAAQ,CAAC;CAAC;AACnK;;;;;AAMA,MAAa,mBAAmB,SAA8B;CAC5D,MAAM,QAAQ,IAAI,WAAW,OAAO,OAAO,EAAE;CAG7C,OAAO,eAAe,KAAK;CAE3B,OAAO;AACT;;;;;;;AAaA,MAAa,kBAAkB,OAC7B,UACA,iBACqB;CAErB,MAAM,OAAO,MAAM,MAAM,eAAe,IAAI,gBAAgB,QAAQ,CAAC;CAGrE,MAAM,EACJ,SAAS,eACP,OAAO,WACT,YAAY,WACZ,MACA,eAAe,YAAY,CAC7B;CAGA,MAAM,EACJ,QAAQ,cACN,MAAM,UAAU,YAAY,UAAU;CAE1C,OAAO;EACM;EACC;CACd;AACF;AAGA,MAAa,uBAAuB;;;;;AAMpC,MAAa,gBAAgB,QAA4B;CACvD,OAAO,IAAI,YAAY,CAAC,CAAC,OAAO,GAAG;AACrC;;;;;;AAOA,SAAgB,mBAAmB,MAAc;CAC/C,OAAO,KACJ,QAAQ,MAAM,SAAS,CAAC,CACxB,QAAQ,MAAM,SAAS,CAAC,CACxB,QAAQ,MAAM,SAAS;AAC5B;AAEA,SAAS,aAAa,KAAe;CACnC,IAAI,OAAO,QAAQ,YAAY,QAAQ,MACrC,OAAO;CAET,IAAI,MAAM,QAAQ,GAAG,GACnB,OAAO,IAAI,IAAI,YAAY;CAE7B,MAAM,aAAa,OAAO,KAAK,GAAG,CAAC,CAAC,KAAK;CACzC,MAAM,SAA8B,CACpC;CAEA,WAAW,SAAS,QAAQ;EAC1B,OAAO,OAAO,aAAa,IAAI,IAAI;CACrC,CAAC;CACD,OAAO;AACT;;AAIA,SAAgB,oBAAoB,KAAkB;CACpD,OAAO,KAAK,UAAU,aAAa,GAAG,CAAC;AACzC"}
|