carbon-js-sdk 0.11.2-beta.1 → 0.11.2

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.
@@ -15,7 +15,6 @@ import { CarbonSigner, CarbonWallet, CarbonWalletGenericOpts, MetaMaskWalletOpts
15
15
  export { CarbonTx } from "./util";
16
16
  export { CarbonSigner, CarbonSignerTypes, CarbonWallet, CarbonWalletGenericOpts, CarbonWalletInitOpts } from "./wallet";
17
17
  export * as Carbon from "./codec/carbon-models";
18
- import RainbowKitAccount, { RainbowKitWalletOpts } from "./provider/rainbowKit/RainbowKitAccount";
19
18
  export interface CarbonSDKOpts {
20
19
  network: Network;
21
20
  tmClient: Tendermint37Client;
@@ -115,7 +114,6 @@ declare class CarbonSDK {
115
114
  static instanceWithKeplr(keplr: Keplr, sdkOpts?: CarbonSDKInitOpts, walletOpts?: CarbonWalletGenericOpts): Promise<ConnectedCarbonSDK>;
116
115
  static instanceWithLeap(leap: LeapExtended, sdkOpts?: CarbonSDKInitOpts, walletOpts?: CarbonWalletGenericOpts): Promise<ConnectedCarbonSDK>;
117
116
  static instanceWithMetamask(metamask: MetaMask, sdkOpts?: CarbonSDKInitOpts, walletOpts?: CarbonWalletGenericOpts, metamaskWalletOpts?: MetaMaskWalletOpts): Promise<ConnectedCarbonSDK>;
118
- static instanceWithRainbowKit(rainbowKit: RainbowKitAccount, sdkOpts: CarbonSDKInitOpts | undefined, rainbowKitWalletOpts: RainbowKitWalletOpts, walletOpts?: CarbonWalletGenericOpts): Promise<ConnectedCarbonSDK>;
119
117
  static instanceViewOnly(bech32Address: string, sdkOpts?: CarbonSDKInitOpts, walletOpts?: CarbonWalletGenericOpts): Promise<ConnectedCarbonSDK>;
120
118
  initialize(): Promise<CarbonSDK>;
121
119
  getGasFee(): Promise<GasFee>;
@@ -130,7 +128,6 @@ declare class CarbonSDK {
130
128
  connectWithKeplr(keplr: Keplr, opts?: CarbonWalletGenericOpts): Promise<ConnectedCarbonSDK>;
131
129
  connectWithLeap(leap: LeapExtended, opts?: CarbonWalletGenericOpts): Promise<ConnectedCarbonSDK>;
132
130
  connectWithMetamask(metamask: MetaMask, opts?: CarbonWalletGenericOpts, metamaskWalletOpts?: MetaMaskWalletOpts): Promise<ConnectedCarbonSDK>;
133
- connectWithRainbowKit(rainbowKit: RainbowKitAccount, rainbowKitWalletOpts: RainbowKitWalletOpts, opts?: CarbonWalletGenericOpts): Promise<ConnectedCarbonSDK>;
134
131
  connectViewOnly(bech32Address: string, opts?: CarbonWalletGenericOpts): Promise<ConnectedCarbonSDK>;
135
132
  getConfig(): NetworkConfig;
136
133
  getTokenClient(): TokenClient;
package/lib/CarbonSDK.js CHANGED
@@ -232,12 +232,6 @@ class CarbonSDK {
232
232
  return sdk.connectWithMetamask(metamask, walletOpts, metamaskWalletOpts);
233
233
  });
234
234
  }
235
- static instanceWithRainbowKit(rainbowKit, sdkOpts = DEFAULT_SDK_INIT_OPTS, rainbowKitWalletOpts, walletOpts) {
236
- return __awaiter(this, void 0, void 0, function* () {
237
- const sdk = yield CarbonSDK.instance(sdkOpts);
238
- return sdk.connectWithRainbowKit(rainbowKit, rainbowKitWalletOpts, walletOpts);
239
- });
240
- }
241
235
  static instanceViewOnly(bech32Address, sdkOpts = DEFAULT_SDK_INIT_OPTS, walletOpts) {
242
236
  return __awaiter(this, void 0, void 0, function* () {
243
237
  const sdk = yield CarbonSDK.instance(sdkOpts);
@@ -400,17 +394,6 @@ class CarbonSDK {
400
394
  return this.connect(wallet);
401
395
  });
402
396
  }
403
- connectWithRainbowKit(rainbowKit, rainbowKitWalletOpts, opts) {
404
- return __awaiter(this, void 0, void 0, function* () {
405
- const evmChainId = this.evmChainId;
406
- const addressOptions = {
407
- network: this.networkConfig.network,
408
- bech32Prefix: this.networkConfig.Bech32Prefix,
409
- };
410
- const wallet = wallet_1.CarbonWallet.withRainbowKit(rainbowKit, evmChainId, rainbowKitWalletOpts.publicKeyBase64, addressOptions, rainbowKitWalletOpts.walletProvider, Object.assign(Object.assign({}, opts), { network: this.network, config: this.configOverride }));
411
- return this.connect(wallet);
412
- });
413
- }
414
397
  connectViewOnly(bech32Address, opts) {
415
398
  return __awaiter(this, void 0, void 0, function* () {
416
399
  const wallet = wallet_1.CarbonWallet.withAddress(bech32Address, Object.assign(Object.assign({}, opts), { network: this.network, config: this.configOverride }));
@@ -1,7 +1,6 @@
1
1
  import { PageRequest } from "../codec/cosmos/base/query/v1beta1/pagination";
2
2
  import { StdFee } from "@cosmjs/amino";
3
3
  import BigNumber from "bignumber.js";
4
- import { Blockchain, BlockchainV2, EVMChain as EVMChainV2 } from "../util/blockchain";
5
4
  export declare const DEFAULT_FEE_DENOM = "swth";
6
5
  export declare const DEFAULT_GAS_PRICE: BigNumber;
7
6
  export declare const DEFAULT_GAS: BigNumber;
@@ -13,12 +12,3 @@ export interface GasPriceStep {
13
12
  high: number;
14
13
  }
15
14
  export declare const CARBON_GAS_PRICE: GasPriceStep;
16
- export interface RequestArguments {
17
- method: string;
18
- params?: unknown[] | object;
19
- }
20
- export declare type EVMChain = EVMChainV2;
21
- export interface SyncResult {
22
- blockchain?: Blockchain | BlockchainV2;
23
- chainId?: number;
24
- }
@@ -5,5 +5,3 @@ export * from "./network";
5
5
  export * from "./node";
6
6
  export * from "./token";
7
7
  export * from "./walletProvider";
8
- export * from "./eip6963Provider";
9
- export * from "./web3Config";
@@ -17,5 +17,3 @@ __exportStar(require("./network"), exports);
17
17
  __exportStar(require("./node"), exports);
18
18
  __exportStar(require("./token"), exports);
19
19
  __exportStar(require("./walletProvider"), exports);
20
- __exportStar(require("./eip6963Provider"), exports);
21
- __exportStar(require("./web3Config"), exports);
@@ -5,6 +5,5 @@ export declare enum ProviderAgent {
5
5
  LeapExtension = "leap-extension",
6
6
  MetamaskExtension = "metamask-extension",
7
7
  Metamask = "metamask",
8
- Web3Auth = "web3auth",
9
- Rainbow = "rainbow"
8
+ Web3Auth = "web3auth"
10
9
  }
@@ -11,5 +11,4 @@ var ProviderAgent;
11
11
  // For legacy metamask
12
12
  ProviderAgent["Metamask"] = "metamask";
13
13
  ProviderAgent["Web3Auth"] = "web3auth";
14
- ProviderAgent["Rainbow"] = "rainbow";
15
14
  })(ProviderAgent = exports.ProviderAgent || (exports.ProviderAgent = {}));
package/lib/index.d.ts CHANGED
@@ -4,9 +4,9 @@ export * as Models from "./codec";
4
4
  export * from "./util";
5
5
  export { Blockchain } from "./util/blockchain";
6
6
  export * from "./websocket";
7
- export { AminoTypesMap, SDKProvider, KeplrAccount, KeplrWindow, CosmosLedger, Keplr, ChainInfo, CallContractArgs, MetaMask, NeoLedgerAccount, Zilpay, ZilPayChangeNetworkParam, O3Types, O3Wallet, LeapAccount, Leap, Key, getSigningCosmosClientOptions, AssetList, Chain, LeapExtended, RainbowKitAccount, Eip6963Provider, } from "./provider";
7
+ export { AminoTypesMap, SDKProvider, KeplrAccount, KeplrWindow, CosmosLedger, Keplr, ChainInfo, EVMChain, MetaMaskChangeNetworkParam, CallContractArgs, MetaMaskSyncResult, MetaMask, NeoLedgerAccount, Zilpay, ZilPayChangeNetworkParam, O3Types, O3Wallet, LeapAccount, Leap, Key, getSigningCosmosClientOptions, AssetList, Chain, LeapExtended, } from "./provider";
8
8
  export { default as CarbonSDK } from "./CarbonSDK";
9
- export { ProviderAgent, SupportedEip6963Provider, ChangeNetworkParam as MetaMaskChangeNetworkParam, EVMChain, SyncResult as MetaMaskSyncResult } from "./constant";
9
+ export { ProviderAgent } from "./constant";
10
10
  export * as Insights from "./insights";
11
11
  export * as Hydrogen from "./hydrogen";
12
12
  export { CarbonSigner, DirectCarbonSigner, AminoCarbonSigner, CarbonLedgerSigner, CarbonPrivateKeySigner, CarbonNonSigner } from "./wallet";
package/lib/index.js CHANGED
@@ -25,7 +25,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
25
25
  return (mod && mod.__esModule) ? mod : { "default": mod };
26
26
  };
27
27
  Object.defineProperty(exports, "__esModule", { value: true });
28
- exports.CarbonNonSigner = exports.CarbonPrivateKeySigner = exports.CarbonLedgerSigner = exports.Hydrogen = exports.Insights = exports.SupportedEip6963Provider = exports.ProviderAgent = exports.CarbonSDK = exports.Eip6963Provider = exports.RainbowKitAccount = exports.getSigningCosmosClientOptions = exports.LeapAccount = exports.O3Wallet = exports.O3Types = exports.Zilpay = exports.NeoLedgerAccount = exports.MetaMask = exports.CosmosLedger = exports.KeplrAccount = exports.AminoTypesMap = exports.Blockchain = exports.Models = void 0;
28
+ exports.CarbonNonSigner = exports.CarbonPrivateKeySigner = exports.CarbonLedgerSigner = exports.Hydrogen = exports.Insights = exports.ProviderAgent = exports.CarbonSDK = exports.getSigningCosmosClientOptions = exports.LeapAccount = exports.O3Wallet = exports.O3Types = exports.Zilpay = exports.NeoLedgerAccount = exports.MetaMask = exports.CosmosLedger = exports.KeplrAccount = exports.AminoTypesMap = exports.Blockchain = exports.Models = void 0;
29
29
  __exportStar(require("./CarbonSDK"), exports);
30
30
  __exportStar(require("./modules"), exports);
31
31
  exports.Models = __importStar(require("./codec"));
@@ -44,13 +44,10 @@ Object.defineProperty(exports, "O3Types", { enumerable: true, get: function () {
44
44
  Object.defineProperty(exports, "O3Wallet", { enumerable: true, get: function () { return provider_1.O3Wallet; } });
45
45
  Object.defineProperty(exports, "LeapAccount", { enumerable: true, get: function () { return provider_1.LeapAccount; } });
46
46
  Object.defineProperty(exports, "getSigningCosmosClientOptions", { enumerable: true, get: function () { return provider_1.getSigningCosmosClientOptions; } });
47
- Object.defineProperty(exports, "RainbowKitAccount", { enumerable: true, get: function () { return provider_1.RainbowKitAccount; } });
48
- Object.defineProperty(exports, "Eip6963Provider", { enumerable: true, get: function () { return provider_1.Eip6963Provider; } });
49
47
  var CarbonSDK_1 = require("./CarbonSDK");
50
48
  Object.defineProperty(exports, "CarbonSDK", { enumerable: true, get: function () { return __importDefault(CarbonSDK_1).default; } });
51
49
  var constant_1 = require("./constant");
52
50
  Object.defineProperty(exports, "ProviderAgent", { enumerable: true, get: function () { return constant_1.ProviderAgent; } });
53
- Object.defineProperty(exports, "SupportedEip6963Provider", { enumerable: true, get: function () { return constant_1.SupportedEip6963Provider; } });
54
51
  exports.Insights = __importStar(require("./insights"));
55
52
  exports.Hydrogen = __importStar(require("./hydrogen"));
56
53
  var wallet_1 = require("./wallet");
@@ -123,7 +123,7 @@ class IBCModule extends base_1.default {
123
123
  }
124
124
  getChainInfo(chainName) {
125
125
  return __awaiter(this, void 0, void 0, function* () {
126
- if (!chainName)
126
+ if (!chainName || chainName === "mainnet")
127
127
  return undefined;
128
128
  const chainInfoResponse = yield fetch(`https://raw.githubusercontent.com/chainapsis/keplr-chain-registry/master/cosmos/${chainName}.json`);
129
129
  if (!chainInfoResponse.ok) {
@@ -3,11 +3,8 @@ export { AminoTypesMap } from "./amino";
3
3
  export { ChainInfo, default as KeplrAccount, Keplr, KeplrWindow } from "./keplr";
4
4
  export { default as LeapAccount, Leap, Key, LeapExtended } from "./leap";
5
5
  export { default as CosmosLedger } from "./ledger";
6
- export { CallContractArgs, MetaMask } from "./metamask";
7
- export { EVMChain, SyncResult as MetaMaskSyncResult } from "../constant";
6
+ export { CallContractArgs, EVMChain, MetaMask, MetaMaskChangeNetworkParam, MetaMaskSyncResult } from "./metamask";
8
7
  export { O3Types, O3Wallet } from "./o3";
9
8
  export { default as SDKProvider } from "./sdk";
10
9
  export { Zilpay, ZilPayChangeNetworkParam } from "./zilpay";
11
- export { RainbowKitAccount } from './rainbowKit';
12
- export { Eip6963Provider } from './eip6963Provider';
13
10
  export { getSigningCosmosClientOptions, AssetList, Chain } from "./chainProvider";
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getSigningCosmosClientOptions = exports.Eip6963Provider = exports.RainbowKitAccount = exports.Zilpay = exports.O3Wallet = exports.O3Types = exports.MetaMask = exports.CosmosLedger = exports.LeapAccount = exports.KeplrAccount = exports.AminoTypesMap = exports.NeoLedgerAccount = void 0;
6
+ exports.getSigningCosmosClientOptions = exports.Zilpay = exports.O3Wallet = exports.O3Types = exports.MetaMask = exports.CosmosLedger = exports.LeapAccount = exports.KeplrAccount = exports.AminoTypesMap = exports.NeoLedgerAccount = void 0;
7
7
  var account_1 = require("./account");
8
8
  Object.defineProperty(exports, "NeoLedgerAccount", { enumerable: true, get: function () { return account_1.NeoLedgerAccount; } });
9
9
  var amino_1 = require("./amino");
@@ -21,9 +21,5 @@ Object.defineProperty(exports, "O3Types", { enumerable: true, get: function () {
21
21
  Object.defineProperty(exports, "O3Wallet", { enumerable: true, get: function () { return o3_1.O3Wallet; } });
22
22
  var zilpay_1 = require("./zilpay");
23
23
  Object.defineProperty(exports, "Zilpay", { enumerable: true, get: function () { return zilpay_1.Zilpay; } });
24
- var rainbowKit_1 = require("./rainbowKit");
25
- Object.defineProperty(exports, "RainbowKitAccount", { enumerable: true, get: function () { return rainbowKit_1.RainbowKitAccount; } });
26
- var eip6963Provider_1 = require("./eip6963Provider");
27
- Object.defineProperty(exports, "Eip6963Provider", { enumerable: true, get: function () { return eip6963Provider_1.Eip6963Provider; } });
28
24
  var chainProvider_1 = require("./chainProvider");
29
25
  Object.defineProperty(exports, "getSigningCosmosClientOptions", { enumerable: true, get: function () { return chainProvider_1.getSigningCosmosClientOptions; } });
@@ -65,12 +65,18 @@ class KeplrAccount {
65
65
  throw (error_1.parseEvmError(error));
66
66
  }
67
67
  });
68
+ const signMessage = (address, message) => __awaiter(this, void 0, void 0, function* () {
69
+ const chainId = chainInfo.chainId;
70
+ const { signature } = yield keplr.signArbitrary(chainId, address, message);
71
+ return Buffer.from(signature, 'base64').toString('hex');
72
+ });
68
73
  return {
69
74
  type: wallet_1.CarbonSignerTypes.BrowserInjected,
70
75
  signDirect,
71
76
  signAmino,
72
77
  getAccounts,
73
78
  sendEvmTransaction,
79
+ signMessage,
74
80
  };
75
81
  }
76
82
  static createKeplrSignerAmino(keplr, chainInfo, account) {
@@ -105,11 +111,17 @@ class KeplrAccount {
105
111
  throw (error_1.parseEvmError(error));
106
112
  }
107
113
  });
114
+ const signMessage = (address, message) => __awaiter(this, void 0, void 0, function* () {
115
+ const chainId = chainInfo.chainId;
116
+ const { signature } = yield keplr.signArbitrary(chainId, address, message);
117
+ return Buffer.from(signature, 'base64').toString('hex');
118
+ });
108
119
  return {
109
120
  type: wallet_1.CarbonSignerTypes.BrowserInjected,
110
121
  signAmino,
111
122
  getAccounts,
112
123
  sendEvmTransaction,
124
+ signMessage,
113
125
  };
114
126
  }
115
127
  static queryFeeCurrencies(configProvider) {
@@ -1,5 +1,5 @@
1
1
  import { CarbonSigner } from "../../wallet";
2
- import { Leap } from "@cosmos-kit/leap";
2
+ import { Leap } from "@cosmos-kit/leap-extension";
3
3
  import { AppCurrency, ChainInfo, FeeCurrency } from "@keplr-wallet/types";
4
4
  import SDKProvider from "../sdk";
5
5
  declare class LeapAccount {
@@ -47,12 +47,17 @@ class LeapAccount {
47
47
  const sendEvmTransaction = (api, req) => __awaiter(this, void 0, void 0, function* () {
48
48
  throw new Error("signing not available");
49
49
  });
50
+ const signMessage = (address, message) => __awaiter(this, void 0, void 0, function* () {
51
+ const { signature } = yield leap.signArbitrary(chainId, address, message);
52
+ return Buffer.from(signature, 'base64').toString('hex');
53
+ });
50
54
  return {
51
55
  type: wallet_1.CarbonSignerTypes.BrowserInjected,
52
56
  signDirect,
53
57
  signAmino,
54
58
  getAccounts,
55
59
  sendEvmTransaction,
60
+ signMessage,
56
61
  };
57
62
  }
58
63
  static createLeapSignerAmino(leap, chainId) {
@@ -75,11 +80,16 @@ class LeapAccount {
75
80
  const sendEvmTransaction = (api, req) => __awaiter(this, void 0, void 0, function* () {
76
81
  throw new Error("signing not available");
77
82
  });
83
+ const signMessage = (address, message) => __awaiter(this, void 0, void 0, function* () {
84
+ const { signature } = yield leap.signArbitrary(chainId, address, message);
85
+ return Buffer.from(signature, 'base64').toString('hex');
86
+ });
78
87
  return {
79
88
  type: wallet_1.CarbonSignerTypes.BrowserInjected,
80
89
  signAmino,
81
90
  getAccounts,
82
91
  sendEvmTransaction,
92
+ signMessage,
83
93
  };
84
94
  }
85
95
  static getChainId(configProvider) {
@@ -1,3 +1,3 @@
1
1
  export { default, LeapExtended } from "./LeapAccount";
2
2
  export { Key } from "@cosmos-kit/core";
3
- export { Leap } from "@cosmos-kit/leap";
3
+ export { Leap } from "@cosmos-kit/leap-extension";
@@ -1,27 +1,44 @@
1
- import { EVMChain, Network, RequestArguments, SyncResult } from "../../constant";
2
- import { BlockchainV2, EVMChain as EVMChainV2 } from "../../util/blockchain";
1
+ import { Network } from "../../constant";
2
+ import { Blockchain, BlockchainV2, EVMChain as EVMChainV2 } from "../../util/blockchain";
3
3
  import { ethers } from "ethers";
4
4
  import { CarbonSigner } from "../../wallet";
5
5
  import { CarbonSDK } from "../../index";
6
6
  import { StdFee } from "@cosmjs/stargate";
7
7
  import { AminoMsg } from "@cosmjs/amino";
8
8
  import { SWTHAddressOptions } from "../../util/address";
9
- import { Eip6963Provider } from "../eip6963Provider";
10
- import { ChangeNetworkParam as MetaMaskChangeNetworkParam } from "../../constant";
9
+ export declare type EVMChain = EVMChainV2;
10
+ interface RequestArguments {
11
+ method: string;
12
+ params?: unknown[] | object;
13
+ }
11
14
  interface MetaMaskAPI {
12
15
  isMetaMask: boolean;
13
16
  chainId: string | null;
14
- _state: {
15
- isConnected: boolean;
16
- };
17
+ isConnected: () => boolean;
17
18
  request: (args: RequestArguments) => Promise<unknown>;
18
19
  on: (eventName: string, listener: (...args: unknown[]) => void) => any;
19
20
  }
21
+ export interface MetaMaskChangeNetworkParam {
22
+ chainId: string;
23
+ blockExplorerUrls?: string[];
24
+ chainName?: string;
25
+ iconUrls?: string[];
26
+ nativeCurrency?: {
27
+ name: string;
28
+ symbol: string;
29
+ decimals: number;
30
+ };
31
+ rpcUrls?: string[];
32
+ }
20
33
  export interface CallContractArgs {
21
34
  from?: string;
22
35
  value?: string;
23
36
  data?: string;
24
37
  }
38
+ export interface MetaMaskSyncResult {
39
+ blockchain?: Blockchain | BlockchainV2;
40
+ chainId?: number;
41
+ }
25
42
  export interface StoredMnemonicInfo {
26
43
  mnemonic: string;
27
44
  chain: EVMChainV2;
@@ -32,7 +49,7 @@ export interface StoredMnemonicInfo {
32
49
  /**
33
50
  * TODO: Add docs
34
51
  */
35
- export declare class MetaMask extends Eip6963Provider {
52
+ export declare class MetaMask {
36
53
  readonly network: Network;
37
54
  readonly legacyEip712SignMode: boolean;
38
55
  private blockchain;
@@ -45,10 +62,9 @@ export declare class MetaMask extends Eip6963Provider {
45
62
  private checkProvider;
46
63
  getBlockchain(): BlockchainV2;
47
64
  syncConnectedAccount(): Promise<string>;
48
- syncBlockchain(): Promise<SyncResult>;
65
+ syncBlockchain(): Promise<MetaMaskSyncResult>;
49
66
  getSigner(): Promise<ethers.Signer>;
50
67
  getAPI(): Promise<MetaMaskAPI | null>;
51
- getMetaMaskProvider(): MetaMaskAPI | undefined;
52
68
  getConnectedAPI(): Promise<MetaMaskAPI>;
53
69
  connect(): Promise<MetaMaskAPI>;
54
70
  defaultAccount(): Promise<string>;
@@ -55,8 +55,6 @@ const detect_provider_1 = __importDefault(require("@metamask/detect-provider"));
55
55
  const error_1 = require("./error");
56
56
  const network_1 = require("../../util/network");
57
57
  const provider_1 = require("../../util/provider");
58
- const eip6963Provider_1 = require("../eip6963Provider");
59
- const constant_2 = require("../../constant");
60
58
  const CONTRACT_HASH = {
61
59
  Ethereum: {
62
60
  // use same rinkeby contract for all non-mainnet uses
@@ -116,12 +114,160 @@ const getEncryptMessage = (input) => {
116
114
  .trim()
117
115
  .replace(/^\s+/gm, "");
118
116
  };
117
+ const CarbonEvmNativeCurrency = {
118
+ decimals: 18,
119
+ name: "SWTH",
120
+ symbol: "SWTH",
121
+ };
122
+ const CARBON_EVM_LOCALHOST = {
123
+ chainId: `0x${Number(ethermint_1.parseChainId(constant_1.CarbonEvmChainIDs[constant_1.Network.LocalHost])).toString(16)}`,
124
+ blockExplorerUrls: ["https://evm-scan.carbon.network"],
125
+ chainName: "Carbon EVM Localhost",
126
+ rpcUrls: [`${constant_1.NetworkConfigs[constant_1.Network.LocalHost].evmJsonRpcUrl}`],
127
+ nativeCurrency: CarbonEvmNativeCurrency,
128
+ };
129
+ const CARBON_EVM_DEVNET = {
130
+ chainId: `0x${Number(ethermint_1.parseChainId(constant_1.CarbonEvmChainIDs[constant_1.Network.DevNet])).toString(16)}`,
131
+ blockExplorerUrls: ["https://evm-scan.carbon.network"],
132
+ chainName: "Carbon EVM Devnet",
133
+ rpcUrls: [`${constant_1.NetworkConfigs[constant_1.Network.DevNet].evmJsonRpcUrl}`],
134
+ nativeCurrency: CarbonEvmNativeCurrency,
135
+ };
136
+ const CARBON_EVM_TESTNET = {
137
+ chainId: `0x${Number(ethermint_1.parseChainId(constant_1.CarbonEvmChainIDs[constant_1.Network.TestNet])).toString(16)}`,
138
+ blockExplorerUrls: ["https://evm-scan.carbon.network"],
139
+ chainName: "Carbon EVM Testnet",
140
+ rpcUrls: [`${constant_1.NetworkConfigs[constant_1.Network.TestNet].evmJsonRpcUrl}`],
141
+ nativeCurrency: CarbonEvmNativeCurrency,
142
+ };
143
+ const CARBON_EVM_MAINNET = {
144
+ chainId: `0x${Number(ethermint_1.parseChainId(constant_1.CarbonEvmChainIDs[constant_1.Network.MainNet])).toString(16)}`,
145
+ blockExplorerUrls: ["https://evm-scan.carbon.network"],
146
+ chainName: "Carbon EVM",
147
+ rpcUrls: [`${constant_1.NetworkConfigs[constant_1.Network.MainNet].evmJsonRpcUrl}`],
148
+ nativeCurrency: CarbonEvmNativeCurrency,
149
+ };
150
+ const BSC_MAINNET = {
151
+ chainId: "0x38",
152
+ blockExplorerUrls: ["https://bscscan.com"],
153
+ chainName: "BSC Mainnet",
154
+ rpcUrls: [
155
+ "https://bsc-dataseed2.binance.org/",
156
+ "https://bsc-dataseed3.binance.org/",
157
+ "https://bsc-dataseed4.binance.org/",
158
+ "https://bsc-dataseed1.defibit.io/",
159
+ "https://bsc-dataseed2.defibit.io/",
160
+ "https://bsc-dataseed3.defibit.io/",
161
+ "https://bsc-dataseed4.defibit.io/",
162
+ "https://bsc-dataseed1.ninicoin.io/",
163
+ "https://bsc-dataseed2.ninicoin.io/",
164
+ "https://bsc-dataseed3.ninicoin.io/",
165
+ "https://bsc-dataseed4.ninicoin.io/",
166
+ "https://bsc-dataseed1.binance.org/",
167
+ ],
168
+ nativeCurrency: {
169
+ decimals: 18,
170
+ name: "Binance Coin",
171
+ symbol: "BNB",
172
+ },
173
+ };
174
+ const BSC_TESTNET = {
175
+ chainId: "0x61",
176
+ blockExplorerUrls: ["https://testnet.bscscan.com"],
177
+ chainName: "BSC Testnet",
178
+ rpcUrls: [
179
+ "https://data-seed-prebsc-2-s1.binance.org:8545/",
180
+ "http://data-seed-prebsc-1-s2.binance.org:8545/",
181
+ "http://data-seed-prebsc-2-s2.binance.org:8545/",
182
+ "https://data-seed-prebsc-1-s3.binance.org:8545/",
183
+ "https://data-seed-prebsc-2-s3.binance.org:8545/",
184
+ "https://data-seed-prebsc-1-s1.binance.org:8545/",
185
+ ],
186
+ nativeCurrency: {
187
+ decimals: 18,
188
+ name: "Binance Coin",
189
+ symbol: "BNB",
190
+ },
191
+ };
192
+ const ETH_MAINNET = {
193
+ chainId: "0x1",
194
+ rpcUrls: ["https://mainnet.infura.io/v3/"],
195
+ };
196
+ const ETH_TESTNET = {
197
+ chainId: "0x5",
198
+ rpcUrls: ["https://goerli.infura.io/v3/"],
199
+ };
200
+ const ARBITRUM_MAINNET = {
201
+ chainId: "0xA4B1",
202
+ blockExplorerUrls: ["https://explorer.arbitrum.io"],
203
+ chainName: "Arbitrum One",
204
+ rpcUrls: ["https://arb1.arbitrum.io/rpc"],
205
+ nativeCurrency: {
206
+ decimals: 18,
207
+ name: "Ethereum",
208
+ symbol: "ETH",
209
+ },
210
+ };
211
+ const ARBITRUM_TESTNET = {
212
+ chainId: "0x66EEB",
213
+ blockExplorerUrls: [""],
214
+ chainName: "Arbitrum Testnet",
215
+ rpcUrls: ["https://rinkeby.arbitrum.io/rpc"],
216
+ nativeCurrency: {
217
+ decimals: 18,
218
+ name: "Ethereum",
219
+ symbol: "ETH",
220
+ },
221
+ };
222
+ const POLYGON_MAINNET = {
223
+ chainId: "0x89",
224
+ blockExplorerUrls: ["https://polygonscan.com/"],
225
+ chainName: "Polygon Mainnet",
226
+ rpcUrls: ["https://polygon-rpc.com"],
227
+ nativeCurrency: {
228
+ decimals: 18,
229
+ name: "Matic",
230
+ symbol: "MATIC",
231
+ },
232
+ };
233
+ const POLYGON_TESTNET = {
234
+ chainId: "0x13881",
235
+ blockExplorerUrls: ["https://mumbai.polygonscan.com"],
236
+ chainName: "Polygon Mumbai",
237
+ rpcUrls: ["https://polygon-mumbai.infura.io/v3/4458cf4d1689497b9a38b1d6bbf05e78"],
238
+ nativeCurrency: {
239
+ decimals: 18,
240
+ name: "Matic",
241
+ symbol: "MATIC",
242
+ },
243
+ };
244
+ const OKC_MAINNET = {
245
+ chainId: "0x42",
246
+ blockExplorerUrls: ["https://www.oklink.com/okc"],
247
+ chainName: "OKC Mainnet",
248
+ rpcUrls: ["https://exchainrpc.okex.org"],
249
+ nativeCurrency: {
250
+ decimals: 18,
251
+ name: "OKT",
252
+ symbol: "OKT",
253
+ },
254
+ };
255
+ const OKC_TESTNET = {
256
+ chainId: "0x41",
257
+ blockExplorerUrls: ["https://www.oklink.com/okc-test"],
258
+ chainName: "OKC Testnet",
259
+ rpcUrls: ["https://exchaintestrpc.okex.org"],
260
+ nativeCurrency: {
261
+ decimals: 18,
262
+ name: "OKT",
263
+ symbol: "OKT",
264
+ },
265
+ };
119
266
  /**
120
267
  * TODO: Add docs
121
268
  */
122
- class MetaMask extends eip6963Provider_1.Eip6963Provider {
269
+ class MetaMask {
123
270
  constructor(network, legacyEip712SignMode = false) {
124
- super();
125
271
  this.network = network;
126
272
  this.legacyEip712SignMode = legacyEip712SignMode;
127
273
  this.blockchain = 'Ethereum';
@@ -215,6 +361,9 @@ class MetaMask extends eip6963Provider_1.Eip6963Provider {
215
361
  throw (error_1.parseEvmError(error, index_1.ProviderAgent.MetamaskExtension));
216
362
  }
217
363
  });
364
+ const signMessage = (address, message) => __awaiter(this, void 0, void 0, function* () {
365
+ return metamask.personalSign(address, message);
366
+ });
218
367
  return {
219
368
  type: wallet_1.CarbonSignerTypes.BrowserInjected,
220
369
  legacyEip712SignMode: metamask.legacyEip712SignMode,
@@ -223,6 +372,7 @@ class MetaMask extends eip6963Provider_1.Eip6963Provider {
223
372
  getAccounts,
224
373
  signLegacyEip712,
225
374
  sendEvmTransaction,
375
+ signMessage,
226
376
  };
227
377
  }
228
378
  static getNetworkParams(network, blockchain = 'Ethereum') {
@@ -232,42 +382,42 @@ class MetaMask extends eip6963Provider_1.Eip6963Provider {
232
382
  if (network === constant_1.Network.MainNet) {
233
383
  switch (blockchain) {
234
384
  case 'Binance Smart Chain':
235
- return constant_2.BSC_MAINNET;
385
+ return BSC_MAINNET;
236
386
  case 'Arbitrum':
237
- return constant_2.ARBITRUM_MAINNET;
387
+ return ARBITRUM_MAINNET;
238
388
  case 'Polygon':
239
- return constant_2.POLYGON_MAINNET;
389
+ return POLYGON_MAINNET;
240
390
  case 'OKC':
241
- return constant_2.OKC_MAINNET;
391
+ return OKC_MAINNET;
242
392
  default:
243
393
  // metamask should come with Ethereum configs
244
- return constant_2.ETH_MAINNET;
394
+ return ETH_MAINNET;
245
395
  }
246
396
  }
247
397
  switch (blockchain) {
248
398
  case 'Binance Smart Chain':
249
- return constant_2.BSC_TESTNET;
399
+ return BSC_TESTNET;
250
400
  case 'Arbitrum':
251
- return constant_2.ARBITRUM_TESTNET;
401
+ return ARBITRUM_TESTNET;
252
402
  case 'Polygon':
253
- return constant_2.POLYGON_TESTNET;
403
+ return POLYGON_TESTNET;
254
404
  case 'OKC':
255
- return constant_2.OKC_TESTNET;
405
+ return OKC_TESTNET;
256
406
  default:
257
407
  // metamask should come with Ethereum configs
258
- return constant_2.ETH_TESTNET;
408
+ return ETH_TESTNET;
259
409
  }
260
410
  }
261
411
  static getCarbonEvmNetworkParams(network) {
262
412
  switch (network) {
263
413
  case constant_1.Network.LocalHost:
264
- return constant_2.CARBON_EVM_LOCALHOST;
414
+ return CARBON_EVM_LOCALHOST;
265
415
  case constant_1.Network.DevNet:
266
- return constant_2.CARBON_EVM_DEVNET;
416
+ return CARBON_EVM_DEVNET;
267
417
  case constant_1.Network.TestNet:
268
- return constant_2.CARBON_EVM_TESTNET;
418
+ return CARBON_EVM_TESTNET;
269
419
  default:
270
- return constant_2.CARBON_EVM_MAINNET;
420
+ return CARBON_EVM_MAINNET;
271
421
  }
272
422
  }
273
423
  static getRequiredChainId(network, blockchain = 'Ethereum') {
@@ -321,7 +471,7 @@ class MetaMask extends eip6963Provider_1.Eip6963Provider {
321
471
  }
322
472
  syncBlockchain() {
323
473
  return __awaiter(this, void 0, void 0, function* () {
324
- const metamaskAPI = yield this.getConnectedAPI();
474
+ const metamaskAPI = yield this.getAPI();
325
475
  const chainIdHex = (yield (metamaskAPI === null || metamaskAPI === void 0 ? void 0 : metamaskAPI.request({ method: "eth_chainId" })));
326
476
  const chainId = chainIdHex ? parseInt(chainIdHex, 16) : undefined;
327
477
  const blockchain = blockchain_1.getBlockchainFromChainV2(chainId);
@@ -337,20 +487,20 @@ class MetaMask extends eip6963Provider_1.Eip6963Provider {
337
487
  }
338
488
  getAPI() {
339
489
  return __awaiter(this, void 0, void 0, function* () {
340
- return yield detect_provider_1.default({ mustBeMetaMask: true });
490
+ return yield detect_provider_1.default();
341
491
  });
342
492
  }
343
- getMetaMaskProvider() {
344
- const metamaskProvider = super.getProvider(constant_1.SupportedEip6963Provider.MetaMask);
345
- return metamaskProvider === null || metamaskProvider === void 0 ? void 0 : metamaskProvider.provider;
346
- }
347
493
  getConnectedAPI() {
348
494
  return __awaiter(this, void 0, void 0, function* () {
349
- const metamaskProvider = this.getMetaMaskProvider();
350
- if (!metamaskProvider) {
495
+ const metamaskAPI = yield this.getAPI();
496
+ if (!metamaskAPI) {
351
497
  throw new Error("MetaMask not connected, please check that your extension is enabled");
352
498
  }
353
- return metamaskProvider;
499
+ if (metamaskAPI === null || metamaskAPI === void 0 ? void 0 : metamaskAPI.isConnected()) {
500
+ return metamaskAPI;
501
+ }
502
+ yield metamaskAPI.request({ method: "eth_requestAccounts" });
503
+ return metamaskAPI;
354
504
  });
355
505
  }
356
506
  connect() {
@@ -1 +1 @@
1
- export { CallContractArgs, MetaMask } from "./MetaMask";
1
+ export { EVMChain, MetaMaskChangeNetworkParam, CallContractArgs, MetaMaskSyncResult, MetaMask } from "./MetaMask";
@@ -80,6 +80,9 @@ class O3Wallet {
80
80
  sendEvmTransaction: () => __awaiter(this, void 0, void 0, function* () {
81
81
  throw new Error("signing not available");
82
82
  }),
83
+ signMessage() {
84
+ throw new Error("signing not available");
85
+ },
83
86
  };
84
87
  }
85
88
  connectWallet() {
@@ -23,7 +23,7 @@ export declare class Zilpay {
23
23
  readonly network: Network;
24
24
  private blockchain;
25
25
  static getNetworkParams(network: Network): ZilPayChangeNetworkParam;
26
- static getRequiredChainId(network: Network): 1 | 888 | 333;
26
+ static getRequiredChainId(network: Network): 1 | 333 | 888;
27
27
  constructor(network: Network);
28
28
  getBlockchain(): BlockchainUtils.Blockchain;
29
29
  getSigner(): Promise<Signer>;
@@ -14,3 +14,4 @@ export * as CarbonTx from "./tx";
14
14
  export * as TypeUtils from "./type";
15
15
  export * as GrantUtils from "./grant";
16
16
  export * as AllianceUtils from "./alliance";
17
+ export * as MessageUtils from "./message";
package/lib/util/index.js CHANGED
@@ -19,7 +19,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
19
19
  return result;
20
20
  };
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.AllianceUtils = exports.GrantUtils = exports.TypeUtils = exports.CarbonTx = exports.TransferUtils = exports.TokenUtils = exports.NumberUtils = exports.NetworkUtils = exports.IBCUtils = exports.GovUtils = exports.GenericUtils = exports.FetchUtils = exports.ExternalUtils = exports.BlockchainUtils = exports.APIUtils = exports.AddressUtils = void 0;
22
+ exports.MessageUtils = exports.AllianceUtils = exports.GrantUtils = exports.TypeUtils = exports.CarbonTx = exports.TransferUtils = exports.TokenUtils = exports.NumberUtils = exports.NetworkUtils = exports.IBCUtils = exports.GovUtils = exports.GenericUtils = exports.FetchUtils = exports.ExternalUtils = exports.BlockchainUtils = exports.APIUtils = exports.AddressUtils = void 0;
23
23
  exports.AddressUtils = __importStar(require("./address"));
24
24
  exports.APIUtils = __importStar(require("./api"));
25
25
  exports.BlockchainUtils = __importStar(require("./blockchain"));
@@ -36,3 +36,4 @@ exports.CarbonTx = __importStar(require("./tx"));
36
36
  exports.TypeUtils = __importStar(require("./type"));
37
37
  exports.GrantUtils = __importStar(require("./grant"));
38
38
  exports.AllianceUtils = __importStar(require("./alliance"));
39
+ exports.MessageUtils = __importStar(require("./message"));
@@ -14,16 +14,19 @@ export declare enum CarbonSignerTypes {
14
14
  export interface EvmSigner {
15
15
  readonly sendEvmTransaction: (api: CarbonSDK, req: ethers.providers.TransactionRequest) => Promise<string>;
16
16
  }
17
+ export interface ArbitraryMessageSigner {
18
+ readonly signMessage: (address: string, message: string) => Promise<string>;
19
+ }
17
20
  export interface EIP712Signer extends EvmSigner {
18
21
  legacyEip712SignMode: boolean;
19
22
  readonly signLegacyEip712: (signerAddress: string, signDoc: StdSignDoc) => Promise<LegacyEIP712AminoSignResponse>;
20
23
  }
21
24
  export declare type CarbonSigner = DirectCarbonSigner | AminoCarbonSigner | CarbonEIP712Signer;
22
- export declare type CarbonEIP712Signer = (DirectCarbonSigner | AminoCarbonSigner) & EIP712Signer;
23
- export declare type DirectCarbonSigner = OfflineDirectSigner & EvmSigner & {
25
+ export declare type CarbonEIP712Signer = (DirectCarbonSigner | AminoCarbonSigner) & EIP712Signer & ArbitraryMessageSigner;
26
+ export declare type DirectCarbonSigner = OfflineDirectSigner & EvmSigner & ArbitraryMessageSigner & {
24
27
  type: CarbonSignerTypes;
25
28
  };
26
- export declare type AminoCarbonSigner = OfflineAminoSigner & EvmSigner & {
29
+ export declare type AminoCarbonSigner = OfflineAminoSigner & EvmSigner & ArbitraryMessageSigner & {
27
30
  type: CarbonSignerTypes;
28
31
  };
29
32
  export declare type LegacyEIP712AminoSignResponse = AminoSignResponse & {
@@ -43,12 +46,14 @@ export declare class CarbonPrivateKeySigner implements DirectCarbonSigner, Amino
43
46
  signAmino(signerAddress: string, signDoc: StdSignDoc): Promise<AminoSignResponse>;
44
47
  signDirect(signerAddress: string, signDoc: SignDoc): Promise<DirectSignResponse>;
45
48
  sendEvmTransaction(api: CarbonSDK, req: ethers.providers.TransactionRequest): Promise<string>;
49
+ signMessage(address: string, message: string): Promise<string>;
46
50
  }
47
51
  export declare class CarbonNonSigner implements DirectCarbonSigner {
48
52
  type: CarbonSignerTypes;
49
53
  getAccounts(): Promise<readonly AccountData[]>;
50
54
  signDirect(): Promise<DirectSignResponse>;
51
55
  sendEvmTransaction(api: CarbonSDK, req: ethers.providers.TransactionRequest): Promise<string>;
56
+ signMessage(address: string, message: string): Promise<string>;
52
57
  }
53
58
  export declare class CarbonLedgerSigner implements AminoCarbonSigner {
54
59
  readonly ledger: CosmosLedger;
@@ -58,5 +63,6 @@ export declare class CarbonLedgerSigner implements AminoCarbonSigner {
58
63
  getAccounts(): Promise<readonly AccountData[]>;
59
64
  signAmino(_: string, doc: StdSignDoc): Promise<AminoSignResponse>;
60
65
  sendEvmTransaction(api: CarbonSDK, req: ethers.providers.TransactionRequest): Promise<string>;
66
+ signMessage(_: string, message: string): Promise<string>;
61
67
  constructor(ledger: CosmosLedger);
62
68
  }
@@ -11,6 +11,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.CarbonLedgerSigner = exports.CarbonNonSigner = exports.CarbonPrivateKeySigner = exports.isCarbonEIP712Signer = exports.CarbonSignerTypes = void 0;
13
13
  const generic_1 = require("../util/generic");
14
+ const message_1 = require("../util/message");
14
15
  const amino_1 = require("@cosmjs/amino");
15
16
  const proto_signing_1 = require("@cosmjs/proto-signing");
16
17
  var CarbonSignerTypes;
@@ -67,6 +68,13 @@ class CarbonPrivateKeySigner {
67
68
  throw new Error("signing not available");
68
69
  });
69
70
  }
71
+ signMessage(address, message) {
72
+ return __awaiter(this, void 0, void 0, function* () {
73
+ const aminoWallet = yield this.initAminoWallet();
74
+ const signedDoc = yield aminoWallet.signAmino(address, message_1.constructAdr36SignDoc(address, message));
75
+ return Buffer.from(signedDoc.signature.signature, 'base64').toString('hex');
76
+ });
77
+ }
70
78
  }
71
79
  exports.CarbonPrivateKeySigner = CarbonPrivateKeySigner;
72
80
  class CarbonNonSigner {
@@ -88,6 +96,11 @@ class CarbonNonSigner {
88
96
  throw new Error("signing not available");
89
97
  });
90
98
  }
99
+ signMessage(address, message) {
100
+ return __awaiter(this, void 0, void 0, function* () {
101
+ throw new Error("signing not available");
102
+ });
103
+ }
91
104
  }
92
105
  exports.CarbonNonSigner = CarbonNonSigner;
93
106
  // Uses amino because ledger does not work with protobuf yet
@@ -134,5 +147,15 @@ class CarbonLedgerSigner {
134
147
  throw new Error("signing not available");
135
148
  });
136
149
  }
150
+ signMessage(_, message) {
151
+ return __awaiter(this, void 0, void 0, function* () {
152
+ const account = yield this.retrieveAccount();
153
+ const { pubkey, address } = account;
154
+ const doc = JSON.stringify(message_1.constructAdr36SignDoc(address, message));
155
+ const signBytes = yield this.ledger.sign(doc);
156
+ const { signature } = amino_1.encodeSecp256k1Signature(pubkey, signBytes);
157
+ return Buffer.from(signature, 'base64').toString('hex');
158
+ });
159
+ }
137
160
  }
138
161
  exports.CarbonLedgerSigner = CarbonLedgerSigner;
@@ -2,7 +2,7 @@
2
2
  import { OverrideConfig } from "../CarbonSDK";
3
3
  import { CarbonQueryClient } from "../clients";
4
4
  import GasFee from "../clients/GasFee";
5
- import { Network, NetworkConfig, SupportedEip6963Provider } from "../constant";
5
+ import { Network, NetworkConfig } from "../constant";
6
6
  import { ProviderAgent } from "../constant/walletProvider";
7
7
  import { ChainInfo, CosmosLedger, Keplr, MetaMask } from "../provider";
8
8
  import { CarbonTx } from "../util";
@@ -15,12 +15,11 @@ import { Account, DeliverTxResponse } from "@cosmjs/stargate";
15
15
  import { Tendermint37Client } from "@cosmjs/tendermint-rpc";
16
16
  import { BroadcastTxAsyncResponse, BroadcastTxSyncResponse, TxResponse } from "@cosmjs/tendermint-rpc/build/tendermint37/responses";
17
17
  import { Key as LeapKey } from "@cosmos-kit/core";
18
- import { Leap } from "@cosmos-kit/leap";
18
+ import { Leap } from "@cosmos-kit/leap-extension";
19
19
  import { Key } from "@keplr-wallet/types";
20
20
  import { TxRaw as StargateTxRaw } from "cosmjs-types/cosmos/tx/v1beta1/tx";
21
21
  import { CarbonSigner, CarbonSignerTypes } from "./CarbonSigner";
22
22
  import { CarbonSigningClient } from "./CarbonSigningClient";
23
- import RainbowKitAccount from "../provider/rainbowKit/RainbowKitAccount";
24
23
  export interface CarbonWalletGenericOpts {
25
24
  tmClient?: Tendermint37Client;
26
25
  txDefaultBroadcastMode?: BroadcastTxMode;
@@ -31,7 +30,6 @@ export interface CarbonWalletGenericOpts {
31
30
  disableRetryOnSequenceError?: boolean;
32
31
  triggerMerge?: boolean;
33
32
  gasFee?: GasFee;
34
- isRainbowKit?: boolean;
35
33
  /**
36
34
  * Optional callback that will be called before signing is requested/executed.
37
35
  */
@@ -115,7 +113,6 @@ export declare class CarbonWallet {
115
113
  initialized: boolean;
116
114
  accountInfo?: AccountInfo;
117
115
  disableRetryOnSequenceError: boolean;
118
- isRainbowKit: boolean;
119
116
  providerAgent?: ProviderAgent | string;
120
117
  authorizedMsgs?: string[];
121
118
  authorizedMsgsVersion?: number;
@@ -136,7 +133,6 @@ export declare class CarbonWallet {
136
133
  static withKeplr(keplr: Keplr, chainInfo: ChainInfo, keplrKey: Key, opts?: Omit<CarbonWalletInitOpts, "signer">): CarbonWallet;
137
134
  static withLeap(leap: Leap, chainId: string, leapKey: LeapKey, opts?: Omit<CarbonWalletInitOpts, "signer">): CarbonWallet;
138
135
  static withMetamask(metamask: MetaMask, evmChainId: string, compressedPubKeyBase64: string, addressOptions: SWTHAddressOptions, opts?: Omit<CarbonWalletInitOpts, "signer">): CarbonWallet;
139
- static withRainbowKit(rainbowKit: RainbowKitAccount, evmChainId: string, compressedPubKeyBase64: string, addressOptions: SWTHAddressOptions, walletProvider: SupportedEip6963Provider, opts?: Omit<CarbonWalletInitOpts, "signer">): CarbonWallet;
140
136
  static withAddress(bech32Address: string, opts?: Partial<CarbonWalletInitOpts>): CarbonWallet;
141
137
  initialize(queryClient: CarbonQueryClient, gasFee: GasFee, fallbackConfig?: OverrideConfig | null): Promise<CarbonWallet>;
142
138
  setGrantee(grantee?: Grantee): void;
@@ -189,6 +185,7 @@ export declare class CarbonWallet {
189
185
  isLedgerViaBrowserExtension(): boolean;
190
186
  isPrivateKeySigner(): boolean;
191
187
  isBrowserInjectedSigner(): boolean;
188
+ isNonSigner(): boolean;
192
189
  isSmartWalletEnabled(): boolean;
193
190
  getSmartWalletPrivateKey(blockchain?: SmartWalletBlockchain): Buffer | null;
194
191
  reconnectTmClient(fallbackConfig: OverrideConfig | null): Promise<void>;
@@ -41,13 +41,11 @@ const dayjs_1 = __importDefault(require("dayjs"));
41
41
  const utc_1 = __importDefault(require("dayjs/plugin/utc"));
42
42
  const CarbonSigner_1 = require("./CarbonSigner");
43
43
  const CarbonSigningClient_1 = require("./CarbonSigningClient");
44
- const RainbowKitAccount_1 = __importDefault(require("../provider/rainbowKit/RainbowKitAccount"));
45
44
  dayjs_1.default.extend(utc_1.default);
46
45
  class CarbonWallet {
47
46
  constructor(opts) {
48
- var _a, _b, _c, _d, _e, _f;
47
+ var _a, _b, _c, _d, _e;
49
48
  this.initialized = false;
50
- this.isRainbowKit = false;
51
49
  this.sequenceInvalidated = false;
52
50
  this.isAccountNotFoundError = (error, address) => {
53
51
  var _a;
@@ -78,7 +76,6 @@ class CarbonWallet {
78
76
  this.triggerMerge = (_e = opts.triggerMerge) !== null && _e !== void 0 ? _e : false;
79
77
  this.gasFee = opts.gasFee;
80
78
  this.updateNetwork(network);
81
- this.isRainbowKit = (_f = opts.isRainbowKit) !== null && _f !== void 0 ? _f : false;
82
79
  this.onRequestSign = opts.onRequestSign;
83
80
  this.onSignComplete = opts.onSignComplete;
84
81
  this.onBroadcastTxSuccess = opts.onBroadcastTxSuccess;
@@ -156,11 +153,6 @@ class CarbonWallet {
156
153
  const wallet = CarbonWallet.withSigner(signer, compressedPubKeyBase64, Object.assign({ providerAgent: walletProvider_1.ProviderAgent.MetamaskExtension }, opts));
157
154
  return wallet;
158
155
  }
159
- static withRainbowKit(rainbowKit, evmChainId, compressedPubKeyBase64, addressOptions, walletProvider, opts = {}) {
160
- const signer = RainbowKitAccount_1.default.createRainbowKitSigner(rainbowKit, evmChainId, compressedPubKeyBase64, addressOptions);
161
- const wallet = CarbonWallet.withSigner(signer, compressedPubKeyBase64, Object.assign(Object.assign({}, opts), { providerAgent: walletProvider, isRainbowKit: true }));
162
- return wallet;
163
- }
164
156
  static withAddress(bech32Address, opts = {}) {
165
157
  return new CarbonWallet(Object.assign(Object.assign({}, opts), { bech32Address }));
166
158
  }
@@ -607,6 +599,9 @@ class CarbonWallet {
607
599
  isBrowserInjectedSigner() {
608
600
  return this.isSigner(CarbonSigner_1.CarbonSignerTypes.BrowserInjected);
609
601
  }
602
+ isNonSigner() {
603
+ return this.isSigner(CarbonSigner_1.CarbonSignerTypes.PublicKey);
604
+ }
610
605
  isSmartWalletEnabled() {
611
606
  return !!(this.mnemonic || this.privateKey);
612
607
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "carbon-js-sdk",
3
- "version": "0.11.2-beta.1",
3
+ "version": "0.11.2",
4
4
  "description": "TypeScript SDK for Carbon blockchain",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -41,7 +41,7 @@
41
41
  "@cityofzion/neon-core-next": "npm:@cityofzion/neon-core@^5.0.0",
42
42
  "@cityofzion/neon-js": "^4.9.0",
43
43
  "@cosmjs/stargate": "~0.31.3",
44
- "@cosmos-kit/leap": "^0.13.14",
44
+ "@cosmos-kit/leap": "^0.15.12",
45
45
  "@improbable-eng/grpc-web": "^0.15.0",
46
46
  "@improbable-eng/grpc-web-node-http-transport": "^0.15.0",
47
47
  "@keplr-wallet/types": "^0.11.64",