@coin-voyage/crypto 0.0.7 → 0.0.9
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/dist/evm/base-provider.js +4 -7
- package/dist/evm/base-provider.js.map +1 -1
- package/dist/evm/create-default-evm-config.d.ts +1 -0
- package/dist/evm/create-default-evm-config.js +18 -9
- package/dist/evm/create-default-evm-config.js.map +1 -1
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/index.js +1 -0
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/use-account-disconnect.js +7 -14
- package/dist/hooks/use-account-disconnect.js.map +1 -1
- package/dist/hooks/use-account.d.ts +2 -1
- package/dist/hooks/use-account.js +5 -4
- package/dist/hooks/use-account.js.map +1 -1
- package/dist/hooks/use-combined-wallets.js +1 -2
- package/dist/hooks/use-combined-wallets.js.map +1 -1
- package/dist/hooks/use-connect-callback.d.ts +11 -0
- package/dist/hooks/use-connect-callback.js +96 -0
- package/dist/hooks/use-connect-callback.js.map +1 -0
- package/dist/hooks/use-prepare-transaction.d.ts +2 -2
- package/dist/hooks/use-universal-connect.js +2 -2
- package/dist/hooks/use-universal-connect.js.map +1 -1
- package/dist/types/wallet-connector.d.ts +2 -1
- package/dist/utxo/base-provider.js +8 -11
- package/dist/utxo/base-provider.js.map +1 -1
- package/dist/utxo/create-default-bigmi-config.d.ts +1 -1
- package/dist/utxo/create-default-bigmi-config.js +1 -2
- package/dist/utxo/create-default-bigmi-config.js.map +1 -1
- package/dist/utxo/create-psbt-tx.d.ts +2 -2
- package/dist/utxo/create-psbt-tx.js.map +1 -1
- package/dist/utxo/send-btc.d.ts +1 -2
- package/dist/utxo/send-btc.js +10 -13
- package/dist/utxo/send-btc.js.map +1 -1
- package/dist/utxo/use-utxo-transaction.js +4 -4
- package/dist/utxo/use-utxo-transaction.js.map +1 -1
- package/dist/utxo/utxo-public-client.d.ts +53 -4
- package/dist/utxo/utxo-public-client.js +9 -17
- package/dist/utxo/utxo-public-client.js.map +1 -1
- package/package.json +23 -16
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
2
|
+
import { useMemo } from "react";
|
|
3
3
|
import { WagmiProvider } from "wagmi";
|
|
4
|
-
import { createDefaultEVMConfig
|
|
4
|
+
import { createDefaultEVMConfig } from "./create-default-evm-config";
|
|
5
5
|
export function EVMBaseProvider({ children, config }) {
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
evm.current = createDefaultEVMConfig(config);
|
|
9
|
-
}
|
|
10
|
-
return (_jsx(WagmiProvider, { config: evm.current.config, reconnectOnMount: false, children: children }));
|
|
6
|
+
const evmConfig = useMemo(() => createDefaultEVMConfig(config), [JSON.stringify(config)]);
|
|
7
|
+
return (_jsx(WagmiProvider, { config: evmConfig.config, reconnectOnMount: false, children: children }));
|
|
11
8
|
}
|
|
12
9
|
//# sourceMappingURL=base-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-provider.js","sourceRoot":"","sources":["../../src/evm/base-provider.tsx"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"base-provider.js","sourceRoot":"","sources":["../../src/evm/base-provider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAA0B,MAAM,OAAO,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AACrC,OAAO,EAEL,sBAAsB,EACvB,MAAM,6BAA6B,CAAA;AAEpC,MAAM,UAAU,eAAe,CAAC,EAAE,QAAQ,EAAE,MAAM,EAEhD;IACA,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IACzF,OAAO,CACL,KAAC,aAAa,IAAC,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,gBAAgB,EAAE,KAAK,YAC7D,QAAQ,GACK,CACjB,CAAA;AACH,CAAC"}
|
|
@@ -39,3 +39,4 @@ export interface DefaultWagmiConfigResult {
|
|
|
39
39
|
* };
|
|
40
40
|
*/
|
|
41
41
|
export declare function createDefaultEVMConfig(props?: DefaultWagmiConfigProps): DefaultWagmiConfigResult;
|
|
42
|
+
export declare function getWalletConnectConnector(params?: WalletConnectParameters): import("../lib/connectors/types").CreateConnectorFnExtended;
|
|
@@ -45,15 +45,14 @@ export function createDefaultEVMConfig(props) {
|
|
|
45
45
|
const recentConnectorId = localStorage?.getItem(`wagmi.recentConnectorId`);
|
|
46
46
|
// If WalletConnect is the most recently connected wallet or lazy loading is disabled,
|
|
47
47
|
// add the WalletConnect connector to the beginning of the connectors list
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
connectors.push(walletConnect);
|
|
48
|
+
if (anyWindow) {
|
|
49
|
+
const walletConnect = getWalletConnectConnector(props?.walletConnect);
|
|
50
|
+
if (recentConnectorId?.includes?.("walletConnect") || !props?.lazy) {
|
|
51
|
+
connectors.unshift(walletConnect);
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
connectors.push(walletConnect);
|
|
55
|
+
}
|
|
57
56
|
}
|
|
58
57
|
if (!isWalletInstalled("coinbase")) {
|
|
59
58
|
const coinbase = createCoinbaseConnector(props?.coinbase ?? {
|
|
@@ -85,4 +84,14 @@ export function createDefaultEVMConfig(props) {
|
|
|
85
84
|
config
|
|
86
85
|
};
|
|
87
86
|
}
|
|
87
|
+
let _walletConnectConnector = null;
|
|
88
|
+
export function getWalletConnectConnector(params) {
|
|
89
|
+
if (!_walletConnectConnector) {
|
|
90
|
+
_walletConnectConnector = createWalletConnectConnector({
|
|
91
|
+
...params,
|
|
92
|
+
projectId: params?.projectId ?? "ea6c5b36001c18b96e06128f14c06f40",
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
return _walletConnectConnector;
|
|
96
|
+
}
|
|
88
97
|
//# sourceMappingURL=create-default-evm-config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-default-evm-config.js","sourceRoot":"","sources":["../../src/evm/create-default-evm-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAEzC,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AACpC,OAAO,EACL,IAAI,GAIL,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAA;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAA;AACpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAA;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAA;AAqBpE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,sBAAsB,CACpC,KAA+B;IAE/B,MAAM,UAAU,GAAwB,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,CAAA;IAEtE,MAAM,SAAS,GAAG,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAE,MAAc,CAAC,CAAC,CAAC,SAAS,CAAA;IAC7E,MAAM,YAAY,GAAG,SAAS,EAAE,YAAY,CAAA;IAC5C,wDAAwD;IACxD,MAAM,sBAAsB,GAAG,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,SAAS,CAAA;IAE1E,MAAM,8BAA8B,GAAG,sBAAsB;QAC3D,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,8BAA8B,IAAI,IAAI,CAAC,CAAA;IAE9D,IAAI,sBAAsB,EAAE,CAAC;QAC3B,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC;YACtB,cAAc,EAAE,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;SACxD,CAAC,CAAC,CAAA;IACL,CAAC;IAED,+EAA+E;IAC/E,MAAM,iBAAiB,GAAG,YAAY,EAAE,OAAO,CAAC,yBAAyB,CAAC,CAAA;IAE1E,sFAAsF;IACtF,0EAA0E;IAC1E,
|
|
1
|
+
{"version":3,"file":"create-default-evm-config.js","sourceRoot":"","sources":["../../src/evm/create-default-evm-config.ts"],"names":[],"mappings":"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"}
|
package/dist/hooks/index.d.ts
CHANGED
package/dist/hooks/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from "./use-account";
|
|
2
2
|
export * from "./use-account-disconnect";
|
|
3
3
|
export * from "./use-combined-wallets";
|
|
4
|
+
export * from "./use-connect-callback";
|
|
4
5
|
export * from "./use-prepare-transaction";
|
|
5
6
|
export * from "./use-universal-connect";
|
|
6
7
|
//# sourceMappingURL=index.js.map
|
package/dist/hooks/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AACtC,cAAc,2BAA2B,CAAA;AACzC,cAAc,yBAAyB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,2BAA2B,CAAA;AACzC,cAAc,yBAAyB,CAAA"}
|
|
@@ -1,27 +1,21 @@
|
|
|
1
|
+
import { disconnect as utxoDisconnect } from "@bigmi/client";
|
|
1
2
|
import { useConfig as useBigmiConfig } from "@bigmi/react";
|
|
2
3
|
import { ChainType } from "@coin-voyage/shared/common";
|
|
3
4
|
import { useDisconnectWallet } from "@mysten/dapp-kit";
|
|
4
5
|
import { useWallet } from "@solana/wallet-adapter-react";
|
|
5
|
-
import {
|
|
6
|
-
import { disconnect, getAccount } from "wagmi/actions";
|
|
6
|
+
import { useDisconnect } from "wagmi";
|
|
7
7
|
export const useAccountDisconnect = () => {
|
|
8
8
|
const bigmiConfig = useBigmiConfig();
|
|
9
|
-
const
|
|
9
|
+
const { disconnectAsync } = useDisconnect();
|
|
10
10
|
const { disconnect: solanaDisconnect } = useWallet();
|
|
11
11
|
const { mutateAsync: suiDisconnect } = useDisconnectWallet();
|
|
12
|
-
const handleDisconnect = async (config) => {
|
|
13
|
-
const connectedAccount = getAccount(config);
|
|
14
|
-
if (connectedAccount.connector) {
|
|
15
|
-
await disconnect(config, { connector: connectedAccount.connector });
|
|
16
|
-
}
|
|
17
|
-
};
|
|
18
12
|
return async (account) => {
|
|
19
13
|
switch (account?.chainType) {
|
|
20
14
|
case ChainType.EVM:
|
|
21
|
-
await
|
|
15
|
+
await disconnectAsync();
|
|
22
16
|
break;
|
|
23
17
|
case ChainType.UTXO:
|
|
24
|
-
await
|
|
18
|
+
await utxoDisconnect(bigmiConfig);
|
|
25
19
|
break;
|
|
26
20
|
case ChainType.SOL:
|
|
27
21
|
await solanaDisconnect();
|
|
@@ -30,10 +24,9 @@ export const useAccountDisconnect = () => {
|
|
|
30
24
|
await suiDisconnect();
|
|
31
25
|
break;
|
|
32
26
|
default:
|
|
33
|
-
// disconnect all wallets
|
|
34
27
|
Promise.all([
|
|
35
|
-
|
|
36
|
-
|
|
28
|
+
disconnectAsync(),
|
|
29
|
+
utxoDisconnect(bigmiConfig),
|
|
37
30
|
solanaDisconnect(),
|
|
38
31
|
suiDisconnect(),
|
|
39
32
|
]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-account-disconnect.js","sourceRoot":"","sources":["../../src/hooks/use-account-disconnect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"use-account-disconnect.js","sourceRoot":"","sources":["../../src/hooks/use-account-disconnect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,eAAe,CAAA;AAC5D,OAAO,EAAE,SAAS,IAAI,cAAc,EAAE,MAAM,cAAc,CAAA;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAGrC,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACvC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IACpC,MAAM,EAAE,eAAe,EAAE,GAAG,aAAa,EAAE,CAAA;IAC3C,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,SAAS,EAAE,CAAA;IACpD,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,GAAG,mBAAmB,EAAE,CAAA;IAE5D,OAAO,KAAK,EAAE,OAAiB,EAAE,EAAE;QACjC,QAAQ,OAAO,EAAE,SAAS,EAAE,CAAC;YAC3B,KAAK,SAAS,CAAC,GAAG;gBAChB,MAAM,eAAe,EAAE,CAAA;gBACvB,MAAK;YACP,KAAK,SAAS,CAAC,IAAI;gBACjB,MAAM,cAAc,CAAC,WAAW,CAAC,CAAA;gBACjC,MAAK;YACP,KAAK,SAAS,CAAC,GAAG;gBAChB,MAAM,gBAAgB,EAAE,CAAA;gBACxB,MAAK;YACP,KAAK,SAAS,CAAC,GAAG;gBAChB,MAAM,aAAa,EAAE,CAAA;gBACrB,MAAK;YACP;gBACE,OAAO,CAAC,GAAG,CAAC;oBACV,eAAe,EAAE;oBACjB,cAAc,CAAC,WAAW,CAAC;oBAC3B,gBAAgB,EAAE;oBAClB,aAAa,EAAE;iBAChB,CAAC,CAAA;QACN,CAAC;IACH,CAAC,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Connector as UTXOConnector } from "@bigmi/client";
|
|
1
2
|
import { ChainType } from "@coin-voyage/shared/common";
|
|
2
3
|
import type { Connector } from "wagmi";
|
|
3
4
|
import type { WalletAdapterExtended } from "../lib/connectors/types";
|
|
@@ -17,7 +18,7 @@ export interface AccountBase<CT extends ChainType, ConnectorType = undefined> {
|
|
|
17
18
|
}
|
|
18
19
|
export type EVMAccount = AccountBase<ChainType.EVM, Connector>;
|
|
19
20
|
export type SOLANAAccount = AccountBase<ChainType.SOL, WalletAdapterExtended>;
|
|
20
|
-
export type UTXOAccount = AccountBase<ChainType.UTXO,
|
|
21
|
+
export type UTXOAccount = AccountBase<ChainType.UTXO, UTXOConnector>;
|
|
21
22
|
export type SUIAccount = AccountBase<ChainType.SUI, SuiConnector>;
|
|
22
23
|
export type DefaultAccount = AccountBase<ChainType>;
|
|
23
24
|
export type Account = EVMAccount | SOLANAAccount | UTXOAccount | SUIAccount | DefaultAccount;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useConfig as useBigmiConfig } from "@bigmi/react";
|
|
1
|
+
import { useConfig as useBigmiConfig, useAccount as useBtcAccount } from "@bigmi/react";
|
|
2
2
|
import { ChainId, ChainType } from "@coin-voyage/shared/common";
|
|
3
3
|
import { useCurrentAccount, useCurrentWallet } from "@mysten/dapp-kit";
|
|
4
4
|
import { useWallet } from "@solana/wallet-adapter-react";
|
|
@@ -20,7 +20,9 @@ const defaultAccount = {
|
|
|
20
20
|
*/
|
|
21
21
|
export const useAccount = (args) => {
|
|
22
22
|
const bigmiConfig = useBigmiConfig();
|
|
23
|
-
const bigmiAccount =
|
|
23
|
+
const bigmiAccount = useBtcAccount({
|
|
24
|
+
config: bigmiConfig,
|
|
25
|
+
});
|
|
24
26
|
const wagmiAccount = useAccountInternal();
|
|
25
27
|
const { wallet } = useWallet();
|
|
26
28
|
const suiWallet = useCurrentWallet();
|
|
@@ -28,7 +30,6 @@ export const useAccount = (args) => {
|
|
|
28
30
|
const lastConnectedAccount = args?.selectedWallet
|
|
29
31
|
? getConnector(args?.selectedWallet.connectors, args?.chainType)
|
|
30
32
|
: undefined;
|
|
31
|
-
// biome-ignore lint/correctness/useExhaustiveDependencies:
|
|
32
33
|
return useMemo(() => {
|
|
33
34
|
const solana = wallet?.adapter.publicKey
|
|
34
35
|
? {
|
|
@@ -73,7 +74,7 @@ export const useAccount = (args) => {
|
|
|
73
74
|
const evm = { ...wagmiAccount, chainType: ChainType.EVM };
|
|
74
75
|
const utxo = { ...bigmiAccount, chainType: ChainType.UTXO };
|
|
75
76
|
const accounts = [evm, solana, sui, utxo];
|
|
76
|
-
const connectedAccounts = accounts.filter((account) => account.isConnected
|
|
77
|
+
const connectedAccounts = accounts.filter((account) => account.isConnected);
|
|
77
78
|
// If a chainType argument is provided, attempt to find a connected account with the matching chainType.
|
|
78
79
|
// If no matching account is found, fallback to the default account.
|
|
79
80
|
// If no chainType argument, selectedAccount should be used.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-account.js","sourceRoot":"","sources":["../../src/hooks/use-account.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-account.js","sourceRoot":"","sources":["../../src/hooks/use-account.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,IAAI,cAAc,EAAE,UAAU,IAAI,aAAa,EAAE,MAAM,cAAc,CAAA;AACvF,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAE/B,OAAO,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,OAAO,CAAA;AAExD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AA2CrD,MAAM,cAAc,GAA2B;IAC7C,SAAS,EAAE,SAAS,CAAC,GAAG;IACxB,WAAW,EAAE,KAAK;IAClB,YAAY,EAAE,KAAK;IACnB,cAAc,EAAE,KAAK;IACrB,cAAc,EAAE,IAAI;IACpB,MAAM,EAAE,cAAc;CACvB,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAqB,EAAiB,EAAE;IACjE,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IACpC,MAAM,YAAY,GAAG,aAAa,CAAC;QACjC,MAAM,EAAE,WAAW;KACpB,CAAC,CAAA;IACF,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAA;IACzC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAAA;IAC9B,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAA;IACpC,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAA;IAEtC,MAAM,oBAAoB,GAAG,IAAI,EAAE,cAAc;QAC/C,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,SAAS,CAAC;QAChE,CAAC,CAAC,SAAS,CAAA;IAEb,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,MAAM,MAAM,GAAY,MAAM,EAAE,OAAO,CAAC,SAAS;YAC/C,CAAC,CAAC;gBACA,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE;gBAC7C,OAAO,EAAE,OAAO,CAAC,GAAG;gBACpB,SAAS,EAAE,SAAS,CAAC,GAAG;gBACxB,SAAS,EAAE,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;gBACpE,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC;gBAC/C,YAAY,EAAE,KAAK;gBACnB,cAAc,EAAE,KAAK;gBACrB,cAAc,EAAE,CAAC,MAAM;gBACvB,MAAM,EAAE,WAAW;aACpB;YACD,CAAC,CAAC;gBACA,SAAS,EAAE,SAAS,CAAC,GAAG;gBACxB,WAAW,EAAE,KAAK;gBAClB,YAAY,EAAE,KAAK;gBACnB,cAAc,EAAE,KAAK;gBACrB,cAAc,EAAE,IAAI;gBACpB,MAAM,EAAE,cAAc;aACvB,CAAA;QACH,MAAM,GAAG,GAAY,UAAU;YAC7B,CAAC,CAAC;gBACA,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,OAAO,EAAE,OAAO,CAAC,GAAG;gBACpB,SAAS,EAAE,SAAS,CAAC,GAAG;gBACxB,SAAS,EAAE,SAAS,CAAC,aAAa,IAAI,SAAS;gBAC/C,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,gBAAgB,KAAK,WAAW,CAAC;gBAChE,YAAY,EAAE,KAAK;gBACnB,cAAc,EAAE,KAAK;gBACrB,cAAc,EAAE,CAAC,SAAS;gBAC1B,MAAM,EAAE,WAAW;aACpB;YACD,CAAC,CAAC;gBACA,SAAS,EAAE,SAAS,CAAC,GAAG;gBACxB,WAAW,EAAE,KAAK;gBAClB,YAAY,EAAE,KAAK;gBACnB,cAAc,EAAE,KAAK;gBACrB,cAAc,EAAE,IAAI;gBACpB,MAAM,EAAE,cAAc;aACvB,CAAA;QACH,MAAM,GAAG,GAAY,EAAE,GAAG,YAAY,EAAE,SAAS,EAAE,SAAS,CAAC,GAAG,EAAE,CAAA;QAClE,MAAM,IAAI,GAAY,EAAE,GAAG,YAAY,EAAE,SAAS,EAAE,SAAS,CAAC,IAAI,EAAE,CAAA;QACpE,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;QACzC,MAAM,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QAE3E,wGAAwG;QACxG,oEAAoE;QACpE,4DAA4D;QAC5D,MAAM,wBAAwB,GAAG,IAAI,EAAE,SAAS;YAC9C,CAAC,CAAC,iBAAiB,CAAC,IAAI,CACtB,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,KAAK,IAAI,EAAE,SAAS,CACnD,IAAI,cAAc;YACnB,CAAC,CAAC,SAAS,CAAA;QAEb,4GAA4G;QAC5G,4EAA4E;QAC5E,qFAAqF;QACrF,MAAM,eAAe,GAAG,oBAAoB;YAC1C,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;gBACnC,MAAM,gBAAgB,GACnB,oBAAkC,EAAE,EAAE;oBACtC,OAAO,CAAC,SAAuB,EAAE,EAAE,CAAA;gBACtC,MAAM,kBAAkB,GACtB,CAAE,oBAAkC,EAAE,EAAE;oBACvC,oBAA8C,EAAE,IAAI;wBACrD,OAAO,CAAC,SAAS,EAAE,IAAI,CAAA;gBACzB,OAAO,gBAAgB,IAAI,kBAAkB,CAAA;YAC/C,CAAC,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC;YAC1B,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAA;QAExB,OAAO;YACL,OAAO,EAAE,wBAAwB,IAAI,eAAe,IAAI,cAAc;YACtE,gDAAgD;YAChD,QAAQ,EAAE,iBAAiB;SAC5B,CAAA;IACH,CAAC,EAAE;QACD,MAAM,EAAE,OAAO,CAAC,SAAS;QACzB,YAAY,CAAC,SAAS,EAAE,GAAG;QAC3B,YAAY,CAAC,SAAS,EAAE,EAAE;QAC1B,YAAY,CAAC,MAAM;QACnB,YAAY,CAAC,OAAO;QACpB,YAAY,CAAC,OAAO;QACpB,YAAY,CAAC,SAAS,EAAE,GAAG;QAC3B,YAAY,CAAC,SAAS,EAAE,EAAE;QAC1B,YAAY,CAAC,MAAM;QACnB,YAAY,CAAC,OAAO;QACpB,YAAY,CAAC,OAAO;QACpB,IAAI,EAAE,SAAS;QACf,oBAAoB;KACrB,CAAC,CAAA;AACJ,CAAC,CAAA"}
|
|
@@ -12,8 +12,7 @@ const normalizeName = (name) => name.split(" ")[0].toLowerCase().trim();
|
|
|
12
12
|
const combineWalletLists = (utxoConnectorList, evmConnectorList, solanaWalletList, suiWalletList) => {
|
|
13
13
|
const walletMap = new Map();
|
|
14
14
|
utxoConnectorList.forEach((utxo) => {
|
|
15
|
-
const utxoName = utxo
|
|
16
|
-
utxo?.name;
|
|
15
|
+
const utxoName = utxo.name;
|
|
17
16
|
const normalizedName = normalizeName(utxoName);
|
|
18
17
|
const existing = walletMap.get(normalizedName) || {
|
|
19
18
|
id: utxo.id,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-combined-wallets.js","sourceRoot":"","sources":["../../src/hooks/use-combined-wallets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,cAAc,EAAE,MAAM,cAAc,CAAA;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAE9D,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAGjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAA;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAA;
|
|
1
|
+
{"version":3,"file":"use-combined-wallets.js","sourceRoot":"","sources":["../../src/hooks/use-combined-wallets.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ChainType } from "@coin-voyage/shared/common";
|
|
2
|
+
export type useConnectCallbackProps = {
|
|
3
|
+
onConnect?: ({ address, chainId, connectorId, type }: {
|
|
4
|
+
address: string;
|
|
5
|
+
chainId?: number;
|
|
6
|
+
connectorId?: string;
|
|
7
|
+
type: ChainType;
|
|
8
|
+
}) => void;
|
|
9
|
+
onDisconnect?: () => void;
|
|
10
|
+
};
|
|
11
|
+
export declare const useConnectCallback: ({ onConnect, onDisconnect }: useConnectCallbackProps) => void;
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { watchAccount } from "@bigmi/client";
|
|
2
|
+
import { useConfig as useBigmiConfig } from "@bigmi/react";
|
|
3
|
+
import { ChainType } from "@coin-voyage/shared/common";
|
|
4
|
+
import { useCurrentAccount, useCurrentWallet } from "@mysten/dapp-kit";
|
|
5
|
+
import { useWallet } from "@solana/wallet-adapter-react";
|
|
6
|
+
import { useEffect, useState } from "react";
|
|
7
|
+
import { useAccount, useAccountEffect } from "wagmi";
|
|
8
|
+
export const useConnectCallback = ({ onConnect, onDisconnect }) => {
|
|
9
|
+
const { status, address, chainId, connector } = useAccount();
|
|
10
|
+
const [activeEthAccount, setActiveEthAccount] = useState(null);
|
|
11
|
+
useEffect(() => {
|
|
12
|
+
if (address && activeEthAccount !== null && activeEthAccount !== address) {
|
|
13
|
+
onConnect?.({
|
|
14
|
+
address,
|
|
15
|
+
chainId,
|
|
16
|
+
connectorId: connector?.id,
|
|
17
|
+
type: ChainType.EVM,
|
|
18
|
+
});
|
|
19
|
+
setActiveEthAccount(address);
|
|
20
|
+
}
|
|
21
|
+
}, [address, status]);
|
|
22
|
+
useAccountEffect({
|
|
23
|
+
onConnect: ({ address, connector, isReconnected, chainId }) => {
|
|
24
|
+
if (!isReconnected) {
|
|
25
|
+
onConnect?.({
|
|
26
|
+
address,
|
|
27
|
+
chainId,
|
|
28
|
+
connectorId: connector.id,
|
|
29
|
+
type: ChainType.EVM,
|
|
30
|
+
});
|
|
31
|
+
setActiveEthAccount(address);
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
onDisconnect: () => {
|
|
35
|
+
setActiveEthAccount(null);
|
|
36
|
+
onDisconnect?.();
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
const [activeUTXOAccount, setActiveUTXOAccount] = useState(null);
|
|
40
|
+
const utxoConfig = useBigmiConfig();
|
|
41
|
+
watchAccount(utxoConfig, {
|
|
42
|
+
onChange: ({ address, connector, isDisconnected, chainId, status }) => {
|
|
43
|
+
if (isDisconnected) {
|
|
44
|
+
setActiveUTXOAccount(null);
|
|
45
|
+
onDisconnect?.();
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
if (address && status === "connected" && activeUTXOAccount !== address) {
|
|
49
|
+
setActiveUTXOAccount(address);
|
|
50
|
+
onConnect?.({
|
|
51
|
+
address: address,
|
|
52
|
+
chainId: chainId,
|
|
53
|
+
connectorId: connector?.id,
|
|
54
|
+
type: ChainType.UTXO,
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
});
|
|
59
|
+
const account = useCurrentAccount();
|
|
60
|
+
const wallet = useCurrentWallet();
|
|
61
|
+
const [activeSuiAccount, setSuiActiveAccount] = useState(account);
|
|
62
|
+
useEffect(() => {
|
|
63
|
+
if (activeSuiAccount === null && account) {
|
|
64
|
+
onConnect?.({
|
|
65
|
+
address: account?.address,
|
|
66
|
+
connectorId: wallet?.currentWallet?.id,
|
|
67
|
+
type: ChainType.SUI,
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
else if (activeSuiAccount && account == null) {
|
|
71
|
+
onDisconnect?.();
|
|
72
|
+
}
|
|
73
|
+
if (account != activeSuiAccount) {
|
|
74
|
+
setSuiActiveAccount(account);
|
|
75
|
+
}
|
|
76
|
+
}, [account]);
|
|
77
|
+
const { connected, publicKey, wallet: solWallet } = useWallet();
|
|
78
|
+
const [activeSolAccount, setActiveSolAccount] = useState(null);
|
|
79
|
+
useEffect(() => {
|
|
80
|
+
if (publicKey && connected && activeSolAccount !== publicKey) {
|
|
81
|
+
if (activeSolAccount !== publicKey) {
|
|
82
|
+
onConnect?.({
|
|
83
|
+
address: publicKey.toString(),
|
|
84
|
+
connectorId: solWallet?.adapter.name,
|
|
85
|
+
type: ChainType.SOL,
|
|
86
|
+
});
|
|
87
|
+
setActiveSolAccount(publicKey);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
if (activeSolAccount !== null && !connected && publicKey === null) {
|
|
91
|
+
setActiveSolAccount(null);
|
|
92
|
+
onDisconnect?.();
|
|
93
|
+
}
|
|
94
|
+
}, [publicKey, connected, solWallet?.adapter.name, activeSolAccount, onConnect, onDisconnect]);
|
|
95
|
+
};
|
|
96
|
+
//# sourceMappingURL=use-connect-callback.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-connect-callback.js","sourceRoot":"","sources":["../../src/hooks/use-connect-callback.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { PaymentDetails } from "@coin-voyage/shared/api";
|
|
2
2
|
import { ChainType } from "@coin-voyage/shared/common";
|
|
3
|
-
export declare function usePrepareTransaction(chainType?: ChainType):
|
|
3
|
+
export declare function usePrepareTransaction(chainType?: ChainType): {
|
|
4
4
|
execute: (paymentDetails: PaymentDetails) => Promise<string | undefined>;
|
|
5
|
-
}
|
|
5
|
+
} | undefined;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useConfig as useBigmiConfig } from "@bigmi/react";
|
|
1
|
+
import { useConfig as useBigmiConfig, useConnect as useUTXOConnect } from "@bigmi/react";
|
|
2
2
|
import { ChainType } from "@coin-voyage/shared/common";
|
|
3
3
|
import { useConnectWallet } from "@mysten/dapp-kit";
|
|
4
4
|
import { useWallet } from "@solana/wallet-adapter-react";
|
|
@@ -33,7 +33,7 @@ export const useUniversalConnect = (props) => {
|
|
|
33
33
|
},
|
|
34
34
|
},
|
|
35
35
|
});
|
|
36
|
-
const { connectAsync: utxoConnectAsync } =
|
|
36
|
+
const { connectAsync: utxoConnectAsync } = useUTXOConnect({
|
|
37
37
|
config: utxoConfig,
|
|
38
38
|
mutation: {
|
|
39
39
|
...props,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-universal-connect.js","sourceRoot":"","sources":["../../src/hooks/use-universal-connect.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-universal-connect.js","sourceRoot":"","sources":["../../src/hooks/use-universal-connect.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { WalletWithRequiredFeatures } from "@mysten/wallet-standard";
|
|
2
2
|
import type { Connector } from "wagmi";
|
|
3
|
+
import type { Connector as UTXOConnector } from "@bigmi/client";
|
|
3
4
|
import type { CreateConnectorFnExtended, WalletAdapterExtended } from "../lib/connectors/types";
|
|
4
5
|
export type SuiConnector = WalletWithRequiredFeatures;
|
|
5
|
-
export type WalletConnector = Connector | WalletAdapterExtended | CreateConnectorFnExtended | SuiConnector;
|
|
6
|
+
export type WalletConnector = Connector | UTXOConnector | WalletAdapterExtended | CreateConnectorFnExtended | SuiConnector;
|
|
@@ -1,17 +1,14 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { BigmiProvider } from "@bigmi/react";
|
|
3
|
-
import {
|
|
3
|
+
import { useMemo } from "react";
|
|
4
4
|
import { createDefaultBigmiConfig } from "./create-default-bigmi-config";
|
|
5
5
|
export function UTXOBaseProvider({ children, config }) {
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
});
|
|
14
|
-
}
|
|
15
|
-
return (_jsx(BigmiProvider, { config: bigmi.current.config, reconnectOnMount: false, children: children }));
|
|
6
|
+
const utxoConfig = useMemo(() => createDefaultBigmiConfig({
|
|
7
|
+
bigmiConfig: {
|
|
8
|
+
...config,
|
|
9
|
+
multiInjectedProviderDiscovery: false,
|
|
10
|
+
},
|
|
11
|
+
}), [JSON.stringify(config)]);
|
|
12
|
+
return (_jsx(BigmiProvider, { config: utxoConfig.config, reconnectOnMount: false, children: children }));
|
|
16
13
|
}
|
|
17
14
|
//# sourceMappingURL=base-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-provider.js","sourceRoot":"","sources":["../../src/utxo/base-provider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAA0B,
|
|
1
|
+
{"version":3,"file":"base-provider.js","sourceRoot":"","sources":["../../src/utxo/base-provider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAA0B,OAAO,EAAE,MAAM,OAAO,CAAA;AACvD,OAAO,EAAE,wBAAwB,EAA2B,MAAM,+BAA+B,CAAA;AAEjG,MAAM,UAAU,gBAAgB,CAAC,EAAE,QAAQ,EAAE,MAAM,EAEjD;IACA,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,wBAAwB,CAAC;QACxD,WAAW,EAAE;YACX,GAAG,MAAM;YACT,8BAA8B,EAAE,KAAK;SACtC;KACF,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAE7B,OAAO,CACL,KAAC,aAAa,IAAC,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,gBAAgB,EAAE,KAAK,YAC9D,QAAQ,GACK,CACjB,CAAA;AACH,CAAC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { createConfig, leather, okx, onekey, unisat, xverse } from "@bigmi/client";
|
|
2
|
-
import { bitcoin } from "@bigmi/core";
|
|
2
|
+
import { bitcoin, createClient, http } from "@bigmi/core";
|
|
3
3
|
import { ChainId } from "@coin-voyage/shared/common";
|
|
4
|
-
import { createClient, http } from "viem";
|
|
5
4
|
/**
|
|
6
5
|
* Creates default Bigmi config that can be later synced (via useSyncBigmiConfig) with chains fetched from LI.FI API.
|
|
7
6
|
* @param props Properties to setup connectors. {@link DefaultBigmiConfigProps}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-default-bigmi-config.js","sourceRoot":"","sources":["../../src/utxo/create-default-bigmi-config.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"create-default-bigmi-config.js","sourceRoot":"","sources":["../../src/utxo/create-default-bigmi-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,YAAY,EAAqB,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAC7G,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAmBpD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,wBAAwB,CACtC,QAAiC;IAC/B,WAAW,EAAE,EAAE,8BAA8B,EAAE,KAAK,EAAE;CACvD;IAED,MAAM,UAAU,GAAwB;QACtC,qCAAqC;QACrC,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;QAChC,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;QAChC,kCAAkC;QAClC,GAAG,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;QAC7B,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;QACjC,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;QAChC,GAAG,CAAC,KAAK,EAAE,UAAU,IAAI,EAAE,CAAC;KAC7B,CAAA;IAED,MAAM,MAAM,GAAG,YAAY,CAAC;QAC1B,MAAM,EAAE,CAAC,OAAO,CAAC;QACjB,UAAU;QACV,MAAM,CAAC,EAAE,KAAK,EAAE;YACd,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;QACnD,CAAC;QACD,GAAG,KAAK,EAAE,WAAW;KACtB,CAAC,CAAA;IAEF,OAAO;QACL,MAAM;QACN,UAAU;KACX,CAAA;AACH,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Account } from '@bigmi/core';
|
|
2
2
|
import * as btc from '@scure/btc-signer';
|
|
3
|
-
export declare function createPsbtTx(fromAddress:
|
|
3
|
+
export declare function createPsbtTx(fromAddress: Account, toAddress: string, amountSats: number): Promise<btc.Transaction>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-psbt-tx.js","sourceRoot":"","sources":["../../src/utxo/create-psbt-tx.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"create-psbt-tx.js","sourceRoot":"","sources":["../../src/utxo/create-psbt-tx.ts"],"names":[],"mappings":"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"}
|
package/dist/utxo/send-btc.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { GetConnectionsReturnType } from "wagmi/actions";
|
|
2
1
|
declare global {
|
|
3
2
|
interface Window {
|
|
4
3
|
LeatherProvider?: any;
|
|
@@ -20,4 +19,4 @@ declare global {
|
|
|
20
19
|
};
|
|
21
20
|
}
|
|
22
21
|
}
|
|
23
|
-
export declare const sendBtc: (recipient: string, amount: bigint,
|
|
22
|
+
export declare const sendBtc: (recipient: string, amount: bigint, connector: string) => Promise<string | undefined>;
|
package/dist/utxo/send-btc.js
CHANGED
|
@@ -5,47 +5,44 @@ import { withTimeout } from "viem";
|
|
|
5
5
|
import { UTXOConnectorId } from "../types/utxo-connector-id";
|
|
6
6
|
import { createPsbtTx } from "./create-psbt-tx";
|
|
7
7
|
import { getUTXOPublicClient } from "./utxo-public-client";
|
|
8
|
-
export const sendBtc = async (recipient, amount,
|
|
9
|
-
|
|
10
|
-
if (connector?.id === UTXOConnectorId.LEATHER) {
|
|
8
|
+
export const sendBtc = async (recipient, amount, connector) => {
|
|
9
|
+
if (connector === UTXOConnectorId.LEATHER) {
|
|
11
10
|
return sendBtcLeather({
|
|
12
11
|
address: recipient,
|
|
13
12
|
amount: String(amount),
|
|
14
13
|
});
|
|
15
14
|
}
|
|
16
|
-
if (connector
|
|
15
|
+
if (connector === UTXOConnectorId.UNISAT) {
|
|
17
16
|
return sendBtcUniSat({
|
|
18
17
|
address: recipient,
|
|
19
18
|
amount: Number(amount),
|
|
20
19
|
});
|
|
21
20
|
}
|
|
22
|
-
if (connector
|
|
21
|
+
if (connector === UTXOConnectorId.ONEKEY) {
|
|
23
22
|
return sendBtcOneKey({
|
|
24
23
|
address: recipient,
|
|
25
24
|
amount: Number(amount)
|
|
26
25
|
});
|
|
27
26
|
}
|
|
28
|
-
if (connector
|
|
27
|
+
if (connector === UTXOConnectorId.XVERSE) {
|
|
29
28
|
return sendBtcXverse({
|
|
30
29
|
address: recipient,
|
|
31
30
|
amount: Number(amount)
|
|
32
31
|
});
|
|
33
32
|
}
|
|
34
|
-
if (connector
|
|
33
|
+
if (connector === UTXOConnectorId.PHANTOM_BTC) {
|
|
35
34
|
return sendBtcPhantom({
|
|
36
35
|
address: recipient,
|
|
37
36
|
amount: Number(amount)
|
|
38
|
-
}
|
|
39
|
-
chainId: ChainId.BTC
|
|
40
|
-
}));
|
|
37
|
+
});
|
|
41
38
|
}
|
|
42
|
-
// if (connector
|
|
39
|
+
// if (connector === UTXOConnectorId.CTRL) {
|
|
43
40
|
// return sendBtcCtrl({
|
|
44
41
|
// address: recipient,
|
|
45
42
|
// amount: Number(amount),
|
|
46
43
|
// });
|
|
47
44
|
// }
|
|
48
|
-
if (connector
|
|
45
|
+
if (connector === UTXOConnectorId.OKEX) {
|
|
49
46
|
return sendBtcOkex({
|
|
50
47
|
address: recipient,
|
|
51
48
|
amount: Number(amount)
|
|
@@ -103,7 +100,7 @@ async function sendBtcXverse(recipient) {
|
|
|
103
100
|
}
|
|
104
101
|
return await sendViaProvider(recipient, window.XverseProviders.BitcoinProvider);
|
|
105
102
|
}
|
|
106
|
-
async function sendBtcPhantom(recipient
|
|
103
|
+
async function sendBtcPhantom(recipient) {
|
|
107
104
|
if (!window?.phantom?.bitcoin?.isPhantom) {
|
|
108
105
|
console.error("Phantom Wallet is not installed or accessible.");
|
|
109
106
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send-btc.js","sourceRoot":"","sources":["../../src/utxo/send-btc.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"send-btc.js","sourceRoot":"","sources":["../../src/utxo/send-btc.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { useConfig } from "@bigmi/react";
|
|
2
|
-
import {
|
|
2
|
+
import { getConnectorClient } from "@bigmi/client";
|
|
3
3
|
import { sendBtc } from "./send-btc";
|
|
4
4
|
export function useUTXOTransaction() {
|
|
5
5
|
const config = useConfig();
|
|
6
6
|
const execute = async (paymentDetails) => {
|
|
7
|
-
const
|
|
8
|
-
if (!
|
|
7
|
+
const connector = await getConnectorClient(config);
|
|
8
|
+
if (!connector.key) {
|
|
9
9
|
throw new Error("No connection found");
|
|
10
10
|
}
|
|
11
11
|
const recipient = paymentDetails.deposit_address;
|
|
12
12
|
const amount = BigInt(paymentDetails.source_amount.raw_amount);
|
|
13
|
-
const txhash = await sendBtc(recipient, amount,
|
|
13
|
+
const txhash = await sendBtc(recipient, amount, connector.type);
|
|
14
14
|
if (!txhash) {
|
|
15
15
|
throw new Error("Failed to send BTC");
|
|
16
16
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-utxo-transaction.js","sourceRoot":"","sources":["../../src/utxo/use-utxo-transaction.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"use-utxo-transaction.js","sourceRoot":"","sources":["../../src/utxo/use-utxo-transaction.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,MAAM,UAAU,kBAAkB;IAG9B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAE1B,MAAM,OAAO,GAAG,KAAK,EAAE,cAA8B,EAAmB,EAAE;QACtE,MAAM,SAAS,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,CAAA;QAClD,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;QAC1C,CAAC;QAED,MAAM,SAAS,GAAG,cAAc,CAAC,eAAe,CAAA;QAChD,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QAE9D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;QAC/D,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;QACzC,CAAC;QACD,OAAO,MAAM,CAAA;IACjB,CAAC,CAAA;IACD,OAAO,EAAE,OAAO,EAAE,CAAA;AACtB,CAAC"}
|
|
@@ -1,9 +1,58 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import type { UTXOAPISchema } from '@bigmi/core';
|
|
3
|
-
import { type Chain, type Client, type FallbackTransport, type HttpTransport } from 'viem';
|
|
1
|
+
import { Chain, Client, FallbackTransport, HttpTransport, PublicActions, WalletActions } from '@bigmi/core';
|
|
4
2
|
/**
|
|
5
3
|
* Get an instance of a provider for a specific chain
|
|
6
4
|
* @param chainId - Id of the chain the provider is for
|
|
7
5
|
* @returns The public client for the given chain
|
|
8
6
|
*/
|
|
9
|
-
export declare const getUTXOPublicClient: (chainId: number) => Promise<Client<FallbackTransport<readonly HttpTransport[]>, Chain, undefined,
|
|
7
|
+
export declare const getUTXOPublicClient: (chainId: number) => Promise<Client<FallbackTransport<readonly HttpTransport[]>, Chain, undefined, [{
|
|
8
|
+
Method: "getblockcount";
|
|
9
|
+
Parameters: [];
|
|
10
|
+
ReturnType: number;
|
|
11
|
+
}, {
|
|
12
|
+
Method: "getblockhash";
|
|
13
|
+
Parameters: [number];
|
|
14
|
+
ReturnType: string;
|
|
15
|
+
}, {
|
|
16
|
+
Method: "getblock";
|
|
17
|
+
Parameters: [string, number];
|
|
18
|
+
ReturnType: string;
|
|
19
|
+
}, {
|
|
20
|
+
Method: "getblockstats";
|
|
21
|
+
Parameters: [string | number, Array<import("@bigmi/core").BlockStatsKeys>?];
|
|
22
|
+
ReturnType: import("@bigmi/core").BlockStats;
|
|
23
|
+
}, {
|
|
24
|
+
Method: "sendrawtransaction";
|
|
25
|
+
Parameters: [string, number?];
|
|
26
|
+
ReturnType: string;
|
|
27
|
+
}, {
|
|
28
|
+
Method: "getrawtransaction";
|
|
29
|
+
Parameters: [string, boolean, string?];
|
|
30
|
+
ReturnType: import("@bigmi/core").UTXOTransaction;
|
|
31
|
+
}, {
|
|
32
|
+
Method: "getBalance";
|
|
33
|
+
Parameters: {
|
|
34
|
+
address: string;
|
|
35
|
+
};
|
|
36
|
+
ReturnType: bigint;
|
|
37
|
+
}, {
|
|
38
|
+
Method: "getTransactions";
|
|
39
|
+
Parameters: {
|
|
40
|
+
address: string;
|
|
41
|
+
offset?: number;
|
|
42
|
+
limit?: number;
|
|
43
|
+
lastBlock?: string;
|
|
44
|
+
afterTxId?: string;
|
|
45
|
+
};
|
|
46
|
+
ReturnType: {
|
|
47
|
+
transactions: Array<Partial<import("@bigmi/core").UTXOTransaction>>;
|
|
48
|
+
total: number;
|
|
49
|
+
hasMore?: boolean;
|
|
50
|
+
};
|
|
51
|
+
}, {
|
|
52
|
+
Method: "getUTXOs";
|
|
53
|
+
Parameters: {
|
|
54
|
+
address: string;
|
|
55
|
+
minValue?: number;
|
|
56
|
+
};
|
|
57
|
+
ReturnType: Array<import("@bigmi/core/dist/esm/types/transaction").UTXO>;
|
|
58
|
+
}], PublicActions & WalletActions>>;
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import { bitcoin,
|
|
2
|
-
import { utxo } from '@bigmi/core';
|
|
3
|
-
import { createClient, fallback, rpcSchema, } from 'viem';
|
|
1
|
+
import { ankr, bitcoin, blockchair, blockcypher, createClient, fallback, mempool, publicActions, rpcSchema, walletActions } from '@bigmi/core';
|
|
4
2
|
// cached providers
|
|
5
3
|
const publicClients = {};
|
|
6
4
|
/**
|
|
@@ -14,21 +12,15 @@ export const getUTXOPublicClient = async (chainId) => {
|
|
|
14
12
|
chain: bitcoin,
|
|
15
13
|
rpcSchema: rpcSchema(),
|
|
16
14
|
transport: fallback([
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
utxo('https://rpc.ankr.com/http/btc_blockbook/api/v2', {
|
|
22
|
-
key: 'ankr',
|
|
23
|
-
}),
|
|
24
|
-
utxo('https://api.blockcypher.com/v1/btc/main', {
|
|
25
|
-
key: 'blockcypher',
|
|
26
|
-
}),
|
|
27
|
-
utxo('https://mempool.space/api', {
|
|
28
|
-
key: 'mempool',
|
|
29
|
-
}),
|
|
15
|
+
blockchair(),
|
|
16
|
+
blockcypher(),
|
|
17
|
+
mempool(),
|
|
18
|
+
ankr()
|
|
30
19
|
]),
|
|
31
|
-
|
|
20
|
+
pollingInterval: 10000,
|
|
21
|
+
})
|
|
22
|
+
.extend(publicActions)
|
|
23
|
+
.extend(walletActions);
|
|
32
24
|
publicClients[chainId] = client;
|
|
33
25
|
}
|
|
34
26
|
if (!publicClients[chainId]) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utxo-public-client.js","sourceRoot":"","sources":["../../src/utxo/utxo-public-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"utxo-public-client.js","sourceRoot":"","sources":["../../src/utxo/utxo-public-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAiB,YAAY,EAAE,QAAQ,EAAoC,OAAO,EAAE,aAAa,EAAiB,SAAS,EAAE,aAAa,EAAiB,MAAM,aAAa,CAAA;AAE9O,mBAAmB;AACnB,MAAM,aAAa,GASf,EAAE,CAAA;AAEN;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;IAC3D,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,SAAS,EAAc;YAClC,SAAS,EAAE,QAAQ,CAAC;gBAClB,UAAU,EAAE;gBACZ,WAAW,EAAE;gBACb,OAAO,EAAE;gBACT,IAAI,EAAE;aACP,CAAC;YACF,eAAe,EAAE,KAAM;SACxB,CAAC;aACC,MAAM,CAAC,aAAa,CAAC;aACrB,MAAM,CAAC,aAAa,CAAC,CAAA;QACxB,aAAa,CAAC,OAAO,CAAC,GAAG,MAAM,CAAA;IACjC,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,0CAA0C,OAAO,EAAE,CAAC,CAAA;IACtE,CAAC;IAED,OAAO,aAAa,CAAC,OAAO,CAAC,CAAA;AAC/B,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@coin-voyage/crypto",
|
|
3
3
|
"description": "Crypto utilities for Coin Voyage",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.9",
|
|
5
5
|
"private": false,
|
|
6
6
|
"sideEffects": false,
|
|
7
|
+
"author": "Lars <lars@coinvoyage.io>",
|
|
8
|
+
"homepage": "https://coinvoyage.io",
|
|
7
9
|
"exports": {
|
|
8
10
|
"./lib/config/*": "./dist/lib/config/*.js",
|
|
9
11
|
"./lib/connectors/*": "./dist/lib/connectors/*.js",
|
|
@@ -27,39 +29,44 @@
|
|
|
27
29
|
}
|
|
28
30
|
},
|
|
29
31
|
"dependencies": {
|
|
30
|
-
"@bigmi/client": "0.1
|
|
31
|
-
"@bigmi/core": "0.1
|
|
32
|
+
"@bigmi/client": "0.3.1",
|
|
33
|
+
"@bigmi/core": "0.3.1",
|
|
32
34
|
"@noble/secp256k1": "1.7.1",
|
|
33
35
|
"@scure/base": "1.1.1",
|
|
34
36
|
"@scure/btc-signer": "1.6.0",
|
|
35
37
|
"bitcoinjs-lib": "6.1.7",
|
|
36
38
|
"bitcoinjs-message": "^2.2.0",
|
|
37
39
|
"bitcoin-address-validation": "^2.2.3",
|
|
38
|
-
"@mysten/dapp-kit": "0.14.48",
|
|
39
40
|
"@mysten/sui": "1.21.0",
|
|
40
41
|
"@mysten/wallet-standard": "0.13.24",
|
|
41
|
-
"@solana/spl-token": "0.4.
|
|
42
|
-
"@solana/wallet-adapter-base": "0.9.
|
|
43
|
-
"viem": "2.
|
|
44
|
-
"
|
|
45
|
-
"@coin-voyage/shared": "0.0.5"
|
|
42
|
+
"@solana/spl-token": "0.4.13",
|
|
43
|
+
"@solana/wallet-adapter-base": "0.9.26",
|
|
44
|
+
"viem": "2.30.6",
|
|
45
|
+
"@coin-voyage/shared": "0.0.6"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
48
|
"@types/elliptic": "6.4.18"
|
|
49
49
|
},
|
|
50
50
|
"peerDependencies": {
|
|
51
|
-
"@bigmi/react": "0.1
|
|
52
|
-
"
|
|
53
|
-
"react": "
|
|
54
|
-
"
|
|
51
|
+
"@bigmi/react": ">=0.3.1",
|
|
52
|
+
"react": "^18 || ^19",
|
|
53
|
+
"react-dom": "^18 || ^19",
|
|
54
|
+
"@mysten/dapp-kit": "^0.14.48",
|
|
55
55
|
"@solana/wallet-adapter-react": "^0.15.35",
|
|
56
|
-
"@solana/web3.js": "^1.98.0"
|
|
56
|
+
"@solana/web3.js": "^1.98.0",
|
|
57
|
+
"wagmi": "^2.15.5"
|
|
58
|
+
},
|
|
59
|
+
"optionalDependencies": {
|
|
60
|
+
"@mysten/dapp-kit": "0.14.48",
|
|
61
|
+
"@solana/wallet-adapter-react": "0.15.35",
|
|
62
|
+
"@solana/web3.js": "1.98.0",
|
|
63
|
+
"wagmi": "2.15.5"
|
|
57
64
|
},
|
|
58
65
|
"scripts": {
|
|
59
66
|
"watch": "tsc -w -p ./tsconfig.json",
|
|
60
67
|
"build": "tsc --build --force",
|
|
61
|
-
"
|
|
62
|
-
"
|
|
68
|
+
"clean": "rm -rf dist tsconfig.tsbuildinfo",
|
|
69
|
+
"release:build": "pnpm clean && pnpm build",
|
|
63
70
|
"type-check": "tsc --noEmit",
|
|
64
71
|
"test": "vitest run"
|
|
65
72
|
}
|