@hot-labs/kit 1.5.3 → 1.6.0
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/.github/workflows/release.yml +1 -1
- package/README.md +5 -5
- package/build/HotBridgeWithdrawal.d.ts +10 -0
- package/build/HotBridgeWithdrawal.js +80 -0
- package/build/HotBridgeWithdrawal.js.map +1 -0
- package/build/{HotConnector.d.ts → HotKit.d.ts} +9 -5
- package/build/{HotConnector.js → HotKit.js} +14 -11
- package/build/HotKit.js.map +1 -0
- package/build/activity.d.ts +8 -12
- package/build/activity.js +16 -67
- package/build/activity.js.map +1 -1
- package/build/core/Intents.d.ts +6 -9
- package/build/core/Intents.js +28 -29
- package/build/core/Intents.js.map +1 -1
- package/build/core/OmniConnector.d.ts +3 -3
- package/build/core/OmniConnector.js +13 -13
- package/build/core/OmniConnector.js.map +1 -1
- package/build/core/OmniWallet.d.ts +3 -2
- package/build/core/OmniWallet.js +5 -5
- package/build/core/OmniWallet.js.map +1 -1
- package/build/core/chains.d.ts +2 -1
- package/build/core/chains.js +2 -1
- package/build/core/chains.js.map +1 -1
- package/build/core/exchange.d.ts +6 -9
- package/build/core/exchange.js +19 -81
- package/build/core/exchange.js.map +1 -1
- package/build/core/pendings.d.ts +32 -0
- package/build/core/pendings.js +143 -0
- package/build/core/pendings.js.map +1 -0
- package/build/core/telemetry.d.ts +3 -3
- package/build/core/telemetry.js +4 -4
- package/build/core/telemetry.js.map +1 -1
- package/build/cosmos/connector.d.ts +2 -2
- package/build/cosmos/connector.js +2 -2
- package/build/cosmos/connector.js.map +1 -1
- package/build/cosmos/index.d.ts +2 -2
- package/build/cosmos/index.js +1 -1
- package/build/cosmos/index.js.map +1 -1
- package/build/defaults.d.ts +1 -1
- package/build/evm/connector.d.ts +4 -4
- package/build/evm/connector.js +2 -2
- package/build/evm/connector.js.map +1 -1
- package/build/evm/index.d.ts +2 -2
- package/build/evm/index.js +1 -1
- package/build/evm/index.js.map +1 -1
- package/build/hocraft/connector.d.ts +3 -3
- package/build/hocraft/connector.js +7 -7
- package/build/hocraft/connector.js.map +1 -1
- package/build/hocraft/index.d.ts +2 -2
- package/build/hocraft/index.js +1 -1
- package/build/hocraft/index.js.map +1 -1
- package/build/hot-wallet/google.d.ts +2 -2
- package/build/hot-wallet/google.js +5 -5
- package/build/hot-wallet/google.js.map +1 -1
- package/build/hot-wallet/index.d.ts +2 -2
- package/build/hot-wallet/index.js +1 -1
- package/build/hot-wallet/index.js.map +1 -1
- package/build/index.d.ts +3 -2
- package/build/index.js +4 -2
- package/build/index.js.map +1 -1
- package/build/near/connector.d.ts +3 -3
- package/build/near/connector.js +4 -4
- package/build/near/connector.js.map +1 -1
- package/build/near/index.d.ts +2 -2
- package/build/near/index.js +1 -1
- package/build/near/index.js.map +1 -1
- package/build/solana/connector.d.ts +4 -4
- package/build/solana/connector.js +2 -2
- package/build/solana/connector.js.map +1 -1
- package/build/solana/index.d.ts +2 -2
- package/build/solana/index.js +1 -1
- package/build/solana/index.js.map +1 -1
- package/build/stellar/connector.d.ts +2 -2
- package/build/stellar/connector.js +3 -3
- package/build/stellar/connector.js.map +1 -1
- package/build/stellar/index.d.ts +2 -2
- package/build/stellar/index.js +1 -1
- package/build/stellar/index.js.map +1 -1
- package/build/storage.d.ts +10 -0
- package/build/storage.js +56 -0
- package/build/storage.js.map +1 -1
- package/build/ton/connector.d.ts +2 -2
- package/build/ton/connector.js +3 -3
- package/build/ton/connector.js.map +1 -1
- package/build/ton/index.d.ts +2 -2
- package/build/ton/index.js +1 -1
- package/build/ton/index.js.map +1 -1
- package/build/tron/connector.d.ts +2 -2
- package/build/tron/connector.js +2 -2
- package/build/tron/connector.js.map +1 -1
- package/build/tron/index.d.ts +2 -2
- package/build/tron/index.js +1 -1
- package/build/tron/index.js.map +1 -1
- package/build/ui/Popup.d.ts +2 -1
- package/build/ui/Popup.js +3 -3
- package/build/ui/Popup.js.map +1 -1
- package/build/ui/bridge/Bridge.d.ts +11 -3
- package/build/ui/bridge/Bridge.js +45 -47
- package/build/ui/bridge/Bridge.js.map +1 -1
- package/build/ui/bridge/SelectRecipient.d.ts +3 -3
- package/build/ui/bridge/SelectRecipient.js +2 -2
- package/build/ui/bridge/SelectSender.d.ts +3 -3
- package/build/ui/bridge/SelectSender.js +5 -5
- package/build/ui/bridge/SelectSender.js.map +1 -1
- package/build/ui/bridge/SelectToken.d.ts +3 -3
- package/build/ui/bridge/SelectToken.js +12 -12
- package/build/ui/bridge/TokenCard.d.ts +10 -8
- package/build/ui/bridge/TokenCard.js +3 -3
- package/build/ui/bridge/TokenCard.js.map +1 -1
- package/build/ui/connect/AuthPopup.d.ts +8 -1
- package/build/ui/connect/AuthPopup.js +2 -20
- package/build/ui/connect/AuthPopup.js.map +1 -1
- package/build/ui/connect/ConnectWallet.d.ts +3 -3
- package/build/ui/connect/ConnectWallet.js +3 -3
- package/build/ui/connect/PrimaryWallet.d.ts +3 -3
- package/build/ui/connect/PrimaryWallet.js +2 -2
- package/build/ui/connect/PrimaryWallet.js.map +1 -1
- package/build/ui/connect/WalletPicker.d.ts +1 -1
- package/build/ui/connect/WalletPicker.js +1 -0
- package/build/ui/connect/WalletPicker.js.map +1 -1
- package/build/ui/icons/copy.d.ts +1 -0
- package/build/ui/icons/copy.js +5 -0
- package/build/ui/icons/copy.js.map +1 -0
- package/build/ui/icons/warning.d.ts +1 -0
- package/build/ui/icons/warning.js +5 -0
- package/build/ui/icons/warning.js.map +1 -0
- package/build/ui/index.d.ts +12 -0
- package/build/ui/index.js +12 -0
- package/build/ui/index.js.map +1 -0
- package/build/ui/profile/DepositFlow.d.ts +8 -0
- package/build/ui/profile/DepositFlow.js +13 -0
- package/build/ui/profile/DepositFlow.js.map +1 -0
- package/build/ui/profile/DepositQR.d.ts +4 -2
- package/build/ui/profile/DepositQR.js +51 -22
- package/build/ui/profile/DepositQR.js.map +1 -1
- package/build/ui/profile/Payment.d.ts +6 -9
- package/build/ui/profile/Payment.js +36 -28
- package/build/ui/profile/Payment.js.map +1 -1
- package/build/ui/profile/Profile.d.ts +3 -3
- package/build/ui/profile/Profile.js +17 -52
- package/build/ui/profile/Profile.js.map +1 -1
- package/build/ui/router.d.ts +14 -15
- package/build/ui/router.js +37 -16
- package/build/ui/router.js.map +1 -1
- package/build/ui/styles.js +3 -0
- package/build/ui/styles.js.map +1 -1
- package/build/ui/toast/index.d.ts +42 -0
- package/build/ui/toast/index.js +165 -0
- package/build/ui/toast/index.js.map +1 -0
- package/build/ui/uikit/button.js +1 -1
- package/build/ui/uikit/checkbox.d.ts +8 -0
- package/build/ui/uikit/checkbox.js +39 -0
- package/build/ui/uikit/checkbox.js.map +1 -0
- package/build/ui/uikit/text.js +27 -27
- package/package.json +3 -2
- package/src/HotBridgeWithdrawal.ts +80 -0
- package/src/{HotConnector.ts → HotKit.ts} +17 -13
- package/src/activity.ts +22 -69
- package/src/core/Intents.ts +22 -36
- package/src/core/OmniConnector.ts +12 -12
- package/src/core/OmniWallet.ts +6 -6
- package/src/core/chains.ts +2 -1
- package/src/core/exchange.ts +22 -80
- package/src/core/pendings.ts +151 -0
- package/src/core/telemetry.ts +3 -3
- package/src/cosmos/connector.ts +3 -3
- package/src/cosmos/index.ts +3 -3
- package/src/evm/connector.ts +3 -3
- package/src/evm/index.ts +2 -2
- package/src/hocraft/connector.ts +6 -6
- package/src/hocraft/index.ts +2 -2
- package/src/hot-wallet/google.ts +6 -6
- package/src/hot-wallet/index.ts +2 -2
- package/src/index.ts +5 -2
- package/src/near/connector.ts +3 -3
- package/src/near/index.ts +2 -2
- package/src/solana/connector.ts +3 -3
- package/src/solana/index.ts +2 -2
- package/src/stellar/connector.ts +4 -4
- package/src/stellar/index.ts +2 -2
- package/src/storage.ts +69 -0
- package/src/ton/connector.ts +4 -4
- package/src/ton/index.ts +2 -2
- package/src/tron/connector.ts +3 -3
- package/src/tron/index.ts +2 -2
- package/src/ui/Popup.tsx +4 -3
- package/src/ui/bridge/Bridge.tsx +64 -61
- package/src/ui/bridge/SelectRecipient.tsx +4 -4
- package/src/ui/bridge/SelectSender.tsx +8 -8
- package/src/ui/bridge/SelectToken.tsx +14 -14
- package/src/ui/bridge/TokenCard.tsx +31 -24
- package/src/ui/connect/AuthPopup.tsx +1 -24
- package/src/ui/connect/ConnectWallet.tsx +5 -5
- package/src/ui/connect/PrimaryWallet.tsx +3 -3
- package/src/ui/connect/WalletPicker.tsx +6 -0
- package/src/ui/icons/copy.tsx +8 -0
- package/src/ui/icons/warning.tsx +10 -0
- package/src/ui/index.ts +14 -0
- package/src/ui/profile/DepositFlow.tsx +27 -0
- package/src/ui/profile/DepositQR.tsx +83 -46
- package/src/ui/profile/Payment.tsx +67 -37
- package/src/ui/profile/Profile.tsx +39 -68
- package/src/ui/router.tsx +48 -21
- package/src/ui/styles.ts +3 -0
- package/src/ui/toast/index.tsx +238 -0
- package/src/ui/uikit/button.tsx +1 -1
- package/src/ui/uikit/checkbox.tsx +60 -0
- package/src/ui/uikit/text.tsx +27 -27
- package/build/HotConnector.js.map +0 -1
- package/build/ui/uikit/Toast.d.ts +0 -4
- package/build/ui/uikit/Toast.js +0 -33
- package/build/ui/uikit/Toast.js.map +0 -1
- package/src/ui/uikit/Toast.tsx +0 -45
- package/vite.config.ts +0 -17
package/README.md
CHANGED
|
@@ -18,7 +18,7 @@ Also supported: Passkey accounts and Google Auth via HOT MPC Network
|
|
|
18
18
|
|
|
19
19
|
## Installation: Setup Vite Node polyfills and React plugins
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
kit require you to install node polyfills and react to work, for vite you need to complete the following extra steps:
|
|
22
22
|
|
|
23
23
|
`npm install vite-plugin-node-polyfills @vitejs/plugin-react`
|
|
24
24
|
|
|
@@ -37,10 +37,10 @@ export default defineConfig({
|
|
|
37
37
|
## Getting started
|
|
38
38
|
|
|
39
39
|
```ts
|
|
40
|
-
import {
|
|
40
|
+
import { HotKit } from "@hot-labs/kit";
|
|
41
41
|
import { defaultConnectors } from "@hot-labs/kit/defaults";
|
|
42
42
|
|
|
43
|
-
const
|
|
43
|
+
const kit = new HotKit({
|
|
44
44
|
connectors: defaultConnectors,
|
|
45
45
|
apiKey: "Get on https://pay.hot-labs.org/admin/api-keys for free",
|
|
46
46
|
|
|
@@ -56,8 +56,8 @@ const connector = new HotConnector({
|
|
|
56
56
|
},
|
|
57
57
|
});
|
|
58
58
|
|
|
59
|
-
|
|
60
|
-
|
|
59
|
+
kit.onConnect(({ wallet }) => {});
|
|
60
|
+
kit.onDisconnect(({ wallet }) => {});
|
|
61
61
|
```
|
|
62
62
|
|
|
63
63
|
## Server side usage
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { WithdrawArgsWithPending } from "@hot-labs/omni-sdk";
|
|
2
|
+
import type { HotKit } from "./HotKit";
|
|
3
|
+
import { ActivityController } from "./core/pendings";
|
|
4
|
+
export declare class HotBridgeWithdrawal extends ActivityController {
|
|
5
|
+
readonly args: WithdrawArgsWithPending;
|
|
6
|
+
readonly kit: HotKit;
|
|
7
|
+
actionText: string;
|
|
8
|
+
constructor(args: WithdrawArgsWithPending, kit: HotKit);
|
|
9
|
+
action(): Promise<void>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { runInAction } from "mobx";
|
|
2
|
+
import { hex } from "@scure/base";
|
|
3
|
+
import { chains, Network, WalletType } from "./core/chains";
|
|
4
|
+
import { ActivityController } from "./core/pendings";
|
|
5
|
+
import { tokens } from "./core/tokens";
|
|
6
|
+
export class HotBridgeWithdrawal extends ActivityController {
|
|
7
|
+
args;
|
|
8
|
+
kit;
|
|
9
|
+
actionText = "Withdraw";
|
|
10
|
+
constructor(args, kit) {
|
|
11
|
+
super();
|
|
12
|
+
this.args = args;
|
|
13
|
+
this.kit = kit;
|
|
14
|
+
this.preview = tokens.get(this.args.token, this.args.chain);
|
|
15
|
+
this.title = `${this.preview.float(this.args.amount)} ${this.preview.symbol}`;
|
|
16
|
+
this.subtitle = new Date(this.args.timestamp).toLocaleString();
|
|
17
|
+
}
|
|
18
|
+
async action() {
|
|
19
|
+
try {
|
|
20
|
+
if (this.status === "pending")
|
|
21
|
+
return;
|
|
22
|
+
runInAction(() => (this.status = "pending"));
|
|
23
|
+
if (this.args.chain === Network.Stellar) {
|
|
24
|
+
if (!this.kit.stellar)
|
|
25
|
+
throw new Error("Stellar wallet not connected");
|
|
26
|
+
await this.kit.exchange.bridge.stellar.withdraw({
|
|
27
|
+
sendTransaction: (tx) => this.kit.stellar.sendTransaction(tx),
|
|
28
|
+
sender: this.kit.stellar.address,
|
|
29
|
+
...this.args,
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
if (this.args.chain === Network.Solana) {
|
|
33
|
+
if (!this.kit.solana)
|
|
34
|
+
throw new Error("Solana wallet not connected");
|
|
35
|
+
const solana = await this.kit.exchange.bridge.solana();
|
|
36
|
+
await solana.withdraw({
|
|
37
|
+
sendTransaction: (tx) => this.kit.solana.sendTransaction(tx),
|
|
38
|
+
sender: this.kit.solana.address,
|
|
39
|
+
...this.args,
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
if (this.args.chain === Network.Ton || this.args.chain === Network.OmniTon) {
|
|
43
|
+
if (!this.kit.ton)
|
|
44
|
+
throw new Error("Ton wallet not connected");
|
|
45
|
+
await this.kit.exchange.bridge.ton.withdraw({
|
|
46
|
+
sendTransaction: (tx) => this.kit.ton.sendTransaction(tx),
|
|
47
|
+
refundAddress: this.kit.ton.address,
|
|
48
|
+
...this.args,
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
if (chains.get(this.args.chain).type === WalletType.EVM) {
|
|
52
|
+
if (!this.kit.evm)
|
|
53
|
+
throw new Error("EVM wallet not connected");
|
|
54
|
+
await this.kit.exchange.bridge.evm.withdraw({
|
|
55
|
+
sendTransaction: (tx) => this.kit.evm.sendTransaction(tx),
|
|
56
|
+
...this.args,
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
if (this.args.chain === Network.Gonka) {
|
|
60
|
+
if (!this.kit.cosmos)
|
|
61
|
+
throw new Error("Gonka wallet not connected");
|
|
62
|
+
const cosmos = await this.kit.exchange.bridge.cosmos();
|
|
63
|
+
await cosmos.withdraw({
|
|
64
|
+
sendTransaction: (tx) => this.kit.cosmos.sendTransaction(tx),
|
|
65
|
+
senderPublicKey: hex.decode(this.kit.cosmos.publicKey),
|
|
66
|
+
sender: this.kit.cosmos.address,
|
|
67
|
+
...this.args,
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
await this.kit.exchange.bridge.clearPendingWithdrawals([this.args]).catch(() => { });
|
|
71
|
+
}
|
|
72
|
+
finally {
|
|
73
|
+
runInAction(() => (this.status = "success"));
|
|
74
|
+
const wallet = this.kit.wallets.find((w) => w.type === chains.get(this.args.chain).type);
|
|
75
|
+
if (wallet)
|
|
76
|
+
this.kit.activity.fetchPendingWithdrawalsByChain(this.args.chain, wallet);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=HotBridgeWithdrawal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HotBridgeWithdrawal.js","sourceRoot":"","sources":["../src/HotBridgeWithdrawal.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,14 +12,16 @@ import type SolanaWallet from "./solana/wallet";
|
|
|
12
12
|
import type StellarWallet from "./stellar/wallet";
|
|
13
13
|
import type TonWallet from "./ton/wallet";
|
|
14
14
|
import type TronWallet from "./tron/wallet";
|
|
15
|
-
import
|
|
15
|
+
import * as Router from "./ui/router";
|
|
16
|
+
import { ToastManager } from "./ui/toast";
|
|
16
17
|
import { DataStorage } from "./storage";
|
|
18
|
+
import { OmniConnector } from "./core/OmniConnector";
|
|
17
19
|
import { Activity } from "./activity";
|
|
18
|
-
interface
|
|
20
|
+
interface HotKitOptions {
|
|
19
21
|
apiKey: string;
|
|
20
22
|
storage?: DataStorage;
|
|
21
23
|
chains?: Record<number, ChainConfig>;
|
|
22
|
-
connectors?: (((
|
|
24
|
+
connectors?: (((kit: HotKit) => Promise<OmniConnector>) | null | undefined)[];
|
|
23
25
|
walletConnect?: {
|
|
24
26
|
projectId?: string;
|
|
25
27
|
metadata?: {
|
|
@@ -30,11 +32,13 @@ interface HotConnectorOptions {
|
|
|
30
32
|
};
|
|
31
33
|
};
|
|
32
34
|
}
|
|
33
|
-
export declare class
|
|
35
|
+
export declare class HotKit {
|
|
34
36
|
storage: DataStorage;
|
|
35
37
|
connectors: OmniConnector[];
|
|
36
38
|
telemetry: Telemetry;
|
|
37
39
|
exchange: Exchange;
|
|
40
|
+
toast: ToastManager;
|
|
41
|
+
router: typeof Router;
|
|
38
42
|
activity: Activity;
|
|
39
43
|
version: string;
|
|
40
44
|
private events;
|
|
@@ -48,7 +52,7 @@ export declare class HotConnector {
|
|
|
48
52
|
icons: string[];
|
|
49
53
|
};
|
|
50
54
|
};
|
|
51
|
-
constructor(options?:
|
|
55
|
+
constructor(options?: HotKitOptions);
|
|
52
56
|
setOmniChainBranding(branding: {
|
|
53
57
|
name: string;
|
|
54
58
|
icon: string;
|
|
@@ -11,15 +11,18 @@ import { tokens } from "./core/tokens";
|
|
|
11
11
|
import { api } from "./core/api";
|
|
12
12
|
import { rpc } from "./near/rpc";
|
|
13
13
|
import { defaultConnectors } from "./defaults";
|
|
14
|
-
import
|
|
15
|
-
import {
|
|
14
|
+
import * as Router from "./ui/router";
|
|
15
|
+
import { ToastManager } from "./ui/toast";
|
|
16
16
|
import { LocalStorage } from "./storage";
|
|
17
|
+
import { ConnectorType } from "./core/OmniConnector";
|
|
17
18
|
import { Activity } from "./activity";
|
|
18
|
-
export class
|
|
19
|
+
export class HotKit {
|
|
19
20
|
storage;
|
|
20
21
|
connectors = [];
|
|
21
22
|
telemetry;
|
|
22
23
|
exchange;
|
|
24
|
+
toast = new ToastManager();
|
|
25
|
+
router = Router;
|
|
23
26
|
activity;
|
|
24
27
|
version = packageJson.version;
|
|
25
28
|
events = new EventEmitter();
|
|
@@ -44,7 +47,7 @@ export class HotConnector {
|
|
|
44
47
|
this.storage = options?.storage ?? new LocalStorage();
|
|
45
48
|
this.telemetry = new Telemetry(this);
|
|
46
49
|
this.activity = new Activity(this);
|
|
47
|
-
this.exchange = new Exchange();
|
|
50
|
+
this.exchange = new Exchange(this);
|
|
48
51
|
const connectors = [];
|
|
49
52
|
const configConnectors = options?.connectors || defaultConnectors;
|
|
50
53
|
const tasks = configConnectors.map(async (initConnector, index) => {
|
|
@@ -245,7 +248,7 @@ export class HotConnector {
|
|
|
245
248
|
const bBalance = omniToken.float(this.balance(b, omniToken));
|
|
246
249
|
return bBalance - aBalance;
|
|
247
250
|
})[0];
|
|
248
|
-
return openBridge(this, {
|
|
251
|
+
return this.router.openBridge(this, {
|
|
249
252
|
mobileFullscreen: true,
|
|
250
253
|
recipient: recipient,
|
|
251
254
|
to: originalToken,
|
|
@@ -260,7 +263,7 @@ export class HotConnector {
|
|
|
260
263
|
const orig = tokensList.find((t) => t.chain === omni.originalChain && t.address === omni.originalAddress);
|
|
261
264
|
const sender = this.wallets.find((t) => t.type === orig.type);
|
|
262
265
|
const recipient = Recipient.fromWallet(this.wallets.find((w) => !!w.omniAddress));
|
|
263
|
-
return openBridge(this, {
|
|
266
|
+
return this.router.openBridge(this, {
|
|
264
267
|
mobileFullscreen: true,
|
|
265
268
|
sender: sender,
|
|
266
269
|
type: "exactOut",
|
|
@@ -272,18 +275,18 @@ export class HotConnector {
|
|
|
272
275
|
});
|
|
273
276
|
}
|
|
274
277
|
async openBridge() {
|
|
275
|
-
await openBridge(this);
|
|
278
|
+
await this.router.openBridge(this);
|
|
276
279
|
}
|
|
277
280
|
async openProfile() {
|
|
278
|
-
openProfile(this);
|
|
281
|
+
this.router.openProfile(this);
|
|
279
282
|
}
|
|
280
283
|
async connect(type) {
|
|
281
284
|
if (!type)
|
|
282
|
-
return await openConnector(this);
|
|
285
|
+
return await this.router.openConnector(this);
|
|
283
286
|
const connector = this.connectors.find((t) => t.type === ConnectorType.WALLET && t.walletTypes.includes(type));
|
|
284
287
|
if (!connector)
|
|
285
288
|
throw new Error("Connector not found");
|
|
286
|
-
return await openWalletPicker(connector);
|
|
289
|
+
return await this.router.openWalletPicker(connector);
|
|
287
290
|
}
|
|
288
291
|
async disconnect(wallet) {
|
|
289
292
|
const connector = this.connectors.find((t) => {
|
|
@@ -296,4 +299,4 @@ export class HotConnector {
|
|
|
296
299
|
await connector.disconnect();
|
|
297
300
|
}
|
|
298
301
|
}
|
|
299
|
-
//# sourceMappingURL=
|
|
302
|
+
//# sourceMappingURL=HotKit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HotKit.js","sourceRoot":"","sources":["../src/HotKit.ts"],"names":[],"mappings":"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"}
|
package/build/activity.d.ts
CHANGED
|
@@ -1,18 +1,14 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BridgePending } from "./core/pendings";
|
|
2
2
|
import { OmniWallet } from "./core/OmniWallet";
|
|
3
|
-
import {
|
|
3
|
+
import type { HotKit } from "./HotKit";
|
|
4
|
+
import { HotBridgeWithdrawal } from "./HotBridgeWithdrawal";
|
|
4
5
|
export declare class Activity {
|
|
5
6
|
private readonly kit;
|
|
6
|
-
withdrawals: Record<number,
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
loading?: boolean;
|
|
12
|
-
})[];
|
|
13
|
-
finishWithdrawal(withdrawal: WithdrawArgsWithPending & {
|
|
14
|
-
loading?: boolean;
|
|
15
|
-
}): Promise<void>;
|
|
7
|
+
withdrawals: Record<number, HotBridgeWithdrawal[]>;
|
|
8
|
+
bridgePending: BridgePending[];
|
|
9
|
+
constructor(kit: HotKit);
|
|
10
|
+
get activityList(): (BridgePending | HotBridgeWithdrawal)[];
|
|
11
|
+
addBridgePending(bridgePending: BridgePending): void;
|
|
16
12
|
fetchPendingWithdrawalsByWallet(wallet: OmniWallet): Promise<void>;
|
|
17
13
|
fetchPendingWithdrawalsByChain(chain: number, wallet: OmniWallet): Promise<void>;
|
|
18
14
|
}
|
package/build/activity.js
CHANGED
|
@@ -1,77 +1,26 @@
|
|
|
1
|
-
import { computed, makeObservable, observable, runInAction } from "mobx";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { action, computed, makeObservable, observable, runInAction } from "mobx";
|
|
2
|
+
import { chains, WalletType } from "./core/chains";
|
|
3
|
+
import { HotBridgeWithdrawal } from "./HotBridgeWithdrawal";
|
|
4
4
|
export class Activity {
|
|
5
5
|
kit;
|
|
6
6
|
withdrawals = {};
|
|
7
|
+
bridgePending = [];
|
|
7
8
|
constructor(kit) {
|
|
8
9
|
this.kit = kit;
|
|
9
|
-
makeObservable(this, {
|
|
10
|
+
makeObservable(this, {
|
|
11
|
+
withdrawals: observable,
|
|
12
|
+
bridgePending: observable,
|
|
13
|
+
activityList: computed,
|
|
14
|
+
addBridgePending: action,
|
|
15
|
+
});
|
|
10
16
|
kit.onConnect(({ wallet }) => this.fetchPendingWithdrawalsByWallet(wallet));
|
|
11
17
|
}
|
|
12
|
-
get
|
|
13
|
-
return Object.values(this.withdrawals).flat();
|
|
18
|
+
get activityList() {
|
|
19
|
+
return [...this.bridgePending, ...Object.values(this.withdrawals).flat()];
|
|
14
20
|
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
return;
|
|
19
|
-
runInAction(() => (withdrawal.loading = true));
|
|
20
|
-
if (withdrawal.chain === Network.Stellar) {
|
|
21
|
-
if (!this.kit.stellar)
|
|
22
|
-
throw new Error("Stellar wallet not connected");
|
|
23
|
-
await this.kit.exchange.bridge.stellar.withdraw({
|
|
24
|
-
sendTransaction: (tx) => this.kit.stellar.sendTransaction(tx),
|
|
25
|
-
sender: this.kit.stellar.address,
|
|
26
|
-
...withdrawal,
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
if (withdrawal.chain === Network.Solana) {
|
|
30
|
-
if (!this.kit.solana)
|
|
31
|
-
throw new Error("Solana wallet not connected");
|
|
32
|
-
const solana = await this.kit.exchange.bridge.solana();
|
|
33
|
-
await solana.withdraw({
|
|
34
|
-
sendTransaction: (tx) => this.kit.solana.sendTransaction(tx),
|
|
35
|
-
sender: this.kit.solana.address,
|
|
36
|
-
...withdrawal,
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
if (withdrawal.chain === Network.Ton || withdrawal.chain === Network.OmniTon) {
|
|
40
|
-
if (!this.kit.ton)
|
|
41
|
-
throw new Error("Ton wallet not connected");
|
|
42
|
-
await this.kit.exchange.bridge.ton.withdraw({
|
|
43
|
-
sendTransaction: (tx) => this.kit.ton.sendTransaction(tx),
|
|
44
|
-
refundAddress: this.kit.ton.address,
|
|
45
|
-
...withdrawal,
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
if (chains.get(withdrawal.chain).type === WalletType.EVM) {
|
|
49
|
-
if (!this.kit.evm)
|
|
50
|
-
throw new Error("EVM wallet not connected");
|
|
51
|
-
await this.kit.exchange.bridge.evm.withdraw({
|
|
52
|
-
sendTransaction: (tx) => this.kit.evm.sendTransaction(tx),
|
|
53
|
-
...withdrawal,
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
if (withdrawal.chain === Network.Gonka) {
|
|
57
|
-
if (!this.kit.cosmos)
|
|
58
|
-
throw new Error("Gonka wallet not connected");
|
|
59
|
-
const cosmos = await this.kit.exchange.bridge.cosmos();
|
|
60
|
-
await cosmos.withdraw({
|
|
61
|
-
sendTransaction: (tx) => this.kit.cosmos.sendTransaction(tx),
|
|
62
|
-
senderPublicKey: hex.decode(this.kit.cosmos.publicKey),
|
|
63
|
-
sender: this.kit.cosmos.address,
|
|
64
|
-
...withdrawal,
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
await this.kit.exchange.bridge.clearPendingWithdrawals([withdrawal]).catch(() => { });
|
|
68
|
-
}
|
|
69
|
-
finally {
|
|
70
|
-
runInAction(() => (withdrawal.loading = false));
|
|
71
|
-
const wallet = this.kit.wallets.find((w) => w.type === chains.get(withdrawal.chain).type);
|
|
72
|
-
if (wallet)
|
|
73
|
-
this.fetchPendingWithdrawalsByChain(withdrawal.chain, wallet);
|
|
74
|
-
}
|
|
21
|
+
addBridgePending(bridgePending) {
|
|
22
|
+
this.bridgePending.push(bridgePending);
|
|
23
|
+
// this.kit.storage.set(`activity:bridgePendings`, JSON.stringify(this.bridgePending.map((t) => t.serialize())));
|
|
75
24
|
}
|
|
76
25
|
async fetchPendingWithdrawalsByWallet(wallet) {
|
|
77
26
|
if (wallet.type === WalletType.NEAR)
|
|
@@ -83,7 +32,7 @@ export class Activity {
|
|
|
83
32
|
}
|
|
84
33
|
async fetchPendingWithdrawalsByChain(chain, wallet) {
|
|
85
34
|
const pendings = await this.kit.exchange.bridge.getPendingWithdrawalsWithStatus(chain, wallet.address);
|
|
86
|
-
runInAction(() => (this.withdrawals[chain] = pendings.filter((t) => !t.completed)));
|
|
35
|
+
runInAction(() => (this.withdrawals[chain] = pendings.filter((t) => !t.completed).map((t) => new HotBridgeWithdrawal(t, this.kit))));
|
|
87
36
|
}
|
|
88
37
|
}
|
|
89
38
|
//# sourceMappingURL=activity.js.map
|
package/build/activity.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activity.js","sourceRoot":"","sources":["../src/activity.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"activity.js","sourceRoot":"","sources":["../src/activity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAEjF,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAKnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,OAAO,QAAQ;IAIU;IAH7B,WAAW,GAA0C,EAAE,CAAC;IACxD,aAAa,GAAoB,EAAE,CAAC;IAEpC,YAA6B,GAAW;QAAX,QAAG,GAAH,GAAG,CAAQ;QACtC,cAAc,CAAC,IAAI,EAAE;YACnB,WAAW,EAAE,UAAU;YACvB,aAAa,EAAE,UAAU;YACzB,YAAY,EAAE,QAAQ;YACtB,gBAAgB,EAAE,MAAM;SACzB,CAAC,CAAC;QAEH,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,YAAY;QACd,OAAO,CAAC,GAAG,IAAI,CAAC,aAAa,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,gBAAgB,CAAC,aAA4B;QAC3C,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACvC,iHAAiH;IACnH,CAAC;IAED,KAAK,CAAC,+BAA+B,CAAC,MAAkB;QACtD,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI;YAAE,OAAO;QAC5C,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,QAAQ;YAAE,OAAO;QAChD,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;QAC1G,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,8BAA8B,CAAC,KAAa,EAAE,MAAkB;QACpE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,+BAA+B,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACvG,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,mBAAmB,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACvI,CAAC;CACF"}
|
package/build/core/Intents.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { HotKit } from "../HotKit";
|
|
2
2
|
import type { OmniWallet } from "./OmniWallet";
|
|
3
3
|
import type { Intent, Commitment } from "./types";
|
|
4
|
-
import
|
|
4
|
+
import { BridgePending } from "./pendings";
|
|
5
5
|
import { OmniToken } from "./chains";
|
|
6
6
|
export declare const TGAS = 1000000000000n;
|
|
7
7
|
export declare class Intents {
|
|
8
|
-
readonly
|
|
9
|
-
constructor(
|
|
8
|
+
readonly kit?: HotKit | undefined;
|
|
9
|
+
constructor(kit?: HotKit | undefined);
|
|
10
10
|
static builder(signer?: OmniWallet): Intents;
|
|
11
11
|
signedHashes: string[];
|
|
12
12
|
commitments: Commitment[];
|
|
@@ -76,14 +76,11 @@ export declare class Intents {
|
|
|
76
76
|
sign(): Promise<Commitment>;
|
|
77
77
|
simulate(): Promise<any>;
|
|
78
78
|
setupSigner(): Promise<OmniWallet>;
|
|
79
|
-
openSignFlow({ title, allowedTokens, excludedTokens, onConfirm
|
|
79
|
+
openSignFlow({ title, allowedTokens, excludedTokens, onConfirm }: {
|
|
80
80
|
title?: string;
|
|
81
81
|
allowedTokens?: string[];
|
|
82
82
|
excludedTokens?: string[];
|
|
83
|
-
onConfirm: (
|
|
84
|
-
depositQoute?: BridgeReview;
|
|
85
|
-
processing?: () => Promise<BridgeReview>;
|
|
86
|
-
}) => Promise<void>;
|
|
83
|
+
onConfirm: (pending?: BridgePending) => Promise<void>;
|
|
87
84
|
}): Promise<void>;
|
|
88
85
|
depositAndExecute({ title, message, allowedTokens, excludedTokens, serverSideProcessing, payload, }?: {
|
|
89
86
|
title?: string;
|
package/build/core/Intents.js
CHANGED
|
@@ -6,9 +6,9 @@ import { tokens } from "./tokens";
|
|
|
6
6
|
import { api } from "./api";
|
|
7
7
|
export const TGAS = 1000000000000n;
|
|
8
8
|
export class Intents {
|
|
9
|
-
|
|
10
|
-
constructor(
|
|
11
|
-
this.
|
|
9
|
+
kit;
|
|
10
|
+
constructor(kit) {
|
|
11
|
+
this.kit = kit;
|
|
12
12
|
}
|
|
13
13
|
static builder(signer) {
|
|
14
14
|
return new Intents().attachWallet(signer);
|
|
@@ -53,7 +53,7 @@ export class Intents {
|
|
|
53
53
|
amount,
|
|
54
54
|
token,
|
|
55
55
|
}).depositAndExecute({
|
|
56
|
-
title: `Pay ${this.
|
|
56
|
+
title: `Pay ${this.kit?.omni(token).readable(amount)} ${this.kit?.omni(token).symbol}`,
|
|
57
57
|
serverSideProcessing: true,
|
|
58
58
|
payload: { email },
|
|
59
59
|
});
|
|
@@ -335,38 +335,36 @@ export class Intents {
|
|
|
335
335
|
async setupSigner() {
|
|
336
336
|
if (typeof window === "undefined")
|
|
337
337
|
throw "Setup signer is only available in browser";
|
|
338
|
-
if (!this.
|
|
339
|
-
throw new Error("No
|
|
338
|
+
if (!this.kit)
|
|
339
|
+
throw new Error("No kit attached");
|
|
340
340
|
if (this.signer)
|
|
341
341
|
return this.signer;
|
|
342
|
-
if (this.
|
|
343
|
-
this.signer = this.
|
|
342
|
+
if (this.kit.priorityWallet) {
|
|
343
|
+
this.signer = this.kit.priorityWallet;
|
|
344
344
|
return this.signer;
|
|
345
345
|
}
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
await openConnectPrimaryWallet(this.wibe3);
|
|
346
|
+
if (this.kit.wallets.length > 0)
|
|
347
|
+
await this.kit.router.openConnectPrimaryWallet(this.kit);
|
|
349
348
|
else
|
|
350
|
-
await openConnector(this.
|
|
351
|
-
if (this.
|
|
349
|
+
await this.kit.router.openConnector(this.kit);
|
|
350
|
+
if (this.kit.priorityWallet == undefined)
|
|
352
351
|
throw new Error("No signer attached");
|
|
353
|
-
this.signer = this.
|
|
352
|
+
this.signer = this.kit.priorityWallet;
|
|
354
353
|
return this.signer;
|
|
355
354
|
}
|
|
356
|
-
async openSignFlow({ title, allowedTokens, excludedTokens, onConfirm
|
|
355
|
+
async openSignFlow({ title, allowedTokens, excludedTokens, onConfirm }) {
|
|
357
356
|
if (typeof window === "undefined")
|
|
358
357
|
throw "Open sign flow is only available in browser";
|
|
359
|
-
if (!this.
|
|
360
|
-
throw "Attach
|
|
358
|
+
if (!this.kit)
|
|
359
|
+
throw "Attach kit";
|
|
361
360
|
if (!this.signer)
|
|
362
361
|
throw "Attach signer";
|
|
363
362
|
// TODO: Handle multiple payables
|
|
364
363
|
const payableToken = tokens.get(Array.from(this.need.keys())[0]);
|
|
365
364
|
const payableAmount = this.need.get(payableToken.omniAddress) || 0n;
|
|
366
|
-
const balance = await this.
|
|
365
|
+
const balance = await this.kit.fetchToken(payableToken, this.signer);
|
|
367
366
|
const prepaidAmount = formatter.bigIntMin(payableAmount, balance);
|
|
368
|
-
|
|
369
|
-
return await openPayment(this.wibe3, {
|
|
367
|
+
return await this.kit.router.openPayment(this.kit, {
|
|
370
368
|
onConfirm,
|
|
371
369
|
needAmount: payableAmount - prepaidAmount,
|
|
372
370
|
allowedTokens,
|
|
@@ -387,16 +385,18 @@ export class Intents {
|
|
|
387
385
|
title,
|
|
388
386
|
allowedTokens,
|
|
389
387
|
excludedTokens,
|
|
390
|
-
onConfirm: async (
|
|
388
|
+
onConfirm: async (pending) => {
|
|
389
|
+
if (pending)
|
|
390
|
+
this.kit?.activity.addBridgePending(pending);
|
|
391
391
|
if (!serverSideProcessing)
|
|
392
392
|
return;
|
|
393
393
|
let depositAddress;
|
|
394
|
-
if (
|
|
395
|
-
await processing?.();
|
|
396
|
-
else if (
|
|
397
|
-
await processing?.();
|
|
394
|
+
if (pending?.review?.qoute === "deposit")
|
|
395
|
+
await pending?.processing?.();
|
|
396
|
+
else if (pending?.review?.qoute === "withdraw")
|
|
397
|
+
await pending?.processing?.();
|
|
398
398
|
else
|
|
399
|
-
depositAddress =
|
|
399
|
+
depositAddress = pending?.review?.qoute?.depositAddress;
|
|
400
400
|
await api.yieldIntentCall({
|
|
401
401
|
depositAddress: depositAddress,
|
|
402
402
|
commitment: this.commitments[0],
|
|
@@ -406,12 +406,11 @@ export class Intents {
|
|
|
406
406
|
});
|
|
407
407
|
if (serverSideProcessing)
|
|
408
408
|
return;
|
|
409
|
-
const
|
|
410
|
-
const close = openToast(message || "Executing payment");
|
|
409
|
+
const close = this.kit?.toast.pending(message || "Executing payment");
|
|
411
410
|
const payableToken = tokens.get(Array.from(this.need.keys())[0]);
|
|
412
411
|
const payableAmount = this.need.get(payableToken.omniAddress) || 0n;
|
|
413
412
|
await this.signer?.waitUntilOmniBalance({ [payableToken.omniAddress]: payableAmount });
|
|
414
|
-
await this.execute().finally(() => close());
|
|
413
|
+
await this.execute().finally(() => close?.dismiss());
|
|
415
414
|
}
|
|
416
415
|
async execute() {
|
|
417
416
|
if (this.unsignedCommitment != null)
|