@0xsquid/react-hooks 7.4.1 → 7.5.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/dist/core/connectors/xrpl/WalletConnect.d.ts +62 -0
- package/dist/core/connectors/xrpl/WalletConnect.js +181 -0
- package/dist/core/connectors/xrpl/WalletConnect.js.map +1 -0
- package/dist/core/constants.d.ts +7 -0
- package/dist/core/constants.js +7 -0
- package/dist/core/constants.js.map +1 -1
- package/dist/core/providers/BitcoinProvider.d.ts +0 -1
- package/dist/core/providers/BitcoinProvider.js.map +1 -1
- package/dist/core/providers/EvmProvider.d.ts +0 -1
- package/dist/core/providers/EvmProvider.js.map +1 -1
- package/dist/core/providers/SolanaProvider.d.ts +0 -1
- package/dist/core/providers/SolanaProvider.js.map +1 -1
- package/dist/core/providers/SuiProvider.d.ts +0 -1
- package/dist/core/providers/SuiProvider.js.map +1 -1
- package/dist/core/providers/XrplProvider.d.ts +2 -0
- package/dist/core/providers/XrplProvider.js.map +1 -1
- package/dist/core/types/error.d.ts +1 -2
- package/dist/core/types/error.js.map +1 -1
- package/dist/core/types/wallet.d.ts +3 -3
- package/dist/core/types/wallet.js +1 -0
- package/dist/core/types/wallet.js.map +1 -1
- package/dist/core/types/xrpl.d.ts +17 -0
- package/dist/core/types/xrpl.js +12 -0
- package/dist/core/types/xrpl.js.map +1 -1
- package/dist/core/wagmiConfig.js +12 -4
- package/dist/core/wagmiConfig.js.map +1 -1
- package/dist/core/wallets.d.ts +2 -1
- package/dist/core/wallets.js +27 -11
- package/dist/core/wallets.js.map +1 -1
- package/dist/hooks/bitcoin/useBitcoin.js +0 -1
- package/dist/hooks/bitcoin/useBitcoin.js.map +1 -1
- package/dist/hooks/evm/useEvm.js +0 -1
- package/dist/hooks/evm/useEvm.js.map +1 -1
- package/dist/hooks/solana/useSolana.js +0 -1
- package/dist/hooks/solana/useSolana.js.map +1 -1
- package/dist/hooks/sui/useSui.js +0 -1
- package/dist/hooks/sui/useSui.js.map +1 -1
- package/dist/hooks/wallet/useAutoConnect.js +3 -1
- package/dist/hooks/wallet/useAutoConnect.js.map +1 -1
- package/dist/hooks/wallet/useMultiChainWallet.d.ts +0 -12
- package/dist/hooks/wallet/useWallet.d.ts +0 -13
- package/dist/hooks/wallet/useWallet.js +5 -20
- package/dist/hooks/wallet/useWallet.js.map +1 -1
- package/dist/hooks/wallet/useWallets.js +4 -4
- package/dist/hooks/wallet/useWallets.js.map +1 -1
- package/dist/hooks/xrpl/useXrpl.js +34 -0
- package/dist/hooks/xrpl/useXrpl.js.map +1 -1
- package/dist/hooks/xrpl/useXrplWallets.d.ts +0 -2
- package/dist/hooks/xrpl/useXrplWallets.js +6 -2
- package/dist/hooks/xrpl/useXrplWallets.js.map +1 -1
- package/dist/services/external/xrplRpcClient.d.ts +2 -2
- package/dist/services/internal/errorService.js +15 -13
- package/dist/services/internal/errorService.js.map +1 -1
- package/dist/services/internal/sendTransaction.js.map +1 -1
- package/dist/services/internal/walletService.d.ts +1 -1
- package/dist/services/internal/walletService.js +1 -3
- package/dist/services/internal/walletService.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { WalletConnectModal } from "@walletconnect/modal";
|
|
2
|
+
import type { CoreTypes, SessionTypes } from "@walletconnect/types";
|
|
3
|
+
import UniversalProvider from "@walletconnect/universal-provider";
|
|
4
|
+
import { XrplConnector, XrplEvents, XrplNetwork, XrplTransaction, XrplTxStatus } from "../../../core/types/xrpl";
|
|
5
|
+
interface XrplWalletConnectProps {
|
|
6
|
+
projectId: string;
|
|
7
|
+
metadata?: CoreTypes.Metadata;
|
|
8
|
+
}
|
|
9
|
+
export declare class XrplWalletConnect implements XrplConnector {
|
|
10
|
+
provider: UniversalProvider | null;
|
|
11
|
+
session: SessionTypes.Struct | null;
|
|
12
|
+
modal: WalletConnectModal | null;
|
|
13
|
+
metadata: XrplWalletConnectProps["metadata"];
|
|
14
|
+
projectId: XrplWalletConnectProps["projectId"];
|
|
15
|
+
readonly listeners: {
|
|
16
|
+
[E in keyof XrplEvents]?: Array<(event: XrplEvents[E]) => void>;
|
|
17
|
+
};
|
|
18
|
+
constructor({ projectId, metadata }: XrplWalletConnectProps);
|
|
19
|
+
private validateInitialized;
|
|
20
|
+
/**
|
|
21
|
+
* Sets up providers and event listeners, must be called before connecting
|
|
22
|
+
*
|
|
23
|
+
* - initializes WalletConnect UniversalProvider
|
|
24
|
+
* - initializes WalletConnectModal
|
|
25
|
+
* - attaches event listeners
|
|
26
|
+
*/
|
|
27
|
+
initialize(): Promise<void>;
|
|
28
|
+
/**
|
|
29
|
+
* Initializes WalletConnect and silently connects to the last session if it exists
|
|
30
|
+
*/
|
|
31
|
+
autoConnect(): Promise<string | null>;
|
|
32
|
+
/**
|
|
33
|
+
* Initializes WalletConnect and prompts the user to connect to a new session
|
|
34
|
+
*/
|
|
35
|
+
connect(): Promise<string>;
|
|
36
|
+
/**
|
|
37
|
+
* Disconnects from the current session
|
|
38
|
+
*/
|
|
39
|
+
disconnect(): Promise<void>;
|
|
40
|
+
/**
|
|
41
|
+
* Prompts the user to sign and submit a transaction
|
|
42
|
+
*/
|
|
43
|
+
signAndSubmit({ network, tx, }: {
|
|
44
|
+
network: XrplNetwork;
|
|
45
|
+
tx: XrplTransaction;
|
|
46
|
+
}): Promise<{
|
|
47
|
+
hash: any;
|
|
48
|
+
status: XrplTxStatus;
|
|
49
|
+
}>;
|
|
50
|
+
/**
|
|
51
|
+
* Maps the given network to the WalletConnect chain ID format
|
|
52
|
+
*/
|
|
53
|
+
private getWcChainId;
|
|
54
|
+
/**
|
|
55
|
+
* Stores the provided session and returns the user's address
|
|
56
|
+
*/
|
|
57
|
+
onSessionConnected(session: SessionTypes.Struct): Promise<string>;
|
|
58
|
+
on<E extends keyof XrplEvents>(event: E, listener: (event: XrplEvents[E]) => void): () => void;
|
|
59
|
+
private emit;
|
|
60
|
+
private off;
|
|
61
|
+
}
|
|
62
|
+
export {};
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import { WalletConnectModal } from "@walletconnect/modal";
|
|
2
|
+
import UniversalProvider from "@walletconnect/universal-provider";
|
|
3
|
+
import { getSdkError } from "@walletconnect/utils";
|
|
4
|
+
import { XRPL_METHOD, XrplCAIP2ChainId, XrplNetwork, XrplTxStatus, } from "../../../core/types/xrpl";
|
|
5
|
+
import { isXrplAddressValid } from "../../../services/internal/xrplService";
|
|
6
|
+
const chains = [XrplCAIP2ChainId.MAINNET, XrplCAIP2ChainId.TESTNET];
|
|
7
|
+
export class XrplWalletConnect {
|
|
8
|
+
provider = null;
|
|
9
|
+
session = null;
|
|
10
|
+
modal = null;
|
|
11
|
+
metadata;
|
|
12
|
+
projectId;
|
|
13
|
+
listeners = {};
|
|
14
|
+
constructor({ projectId, metadata }) {
|
|
15
|
+
this.metadata = metadata;
|
|
16
|
+
this.projectId = projectId;
|
|
17
|
+
}
|
|
18
|
+
validateInitialized() {
|
|
19
|
+
if (!this.provider) {
|
|
20
|
+
throw new Error("Provider is not initialized");
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Sets up providers and event listeners, must be called before connecting
|
|
25
|
+
*
|
|
26
|
+
* - initializes WalletConnect UniversalProvider
|
|
27
|
+
* - initializes WalletConnectModal
|
|
28
|
+
* - attaches event listeners
|
|
29
|
+
*/
|
|
30
|
+
async initialize() {
|
|
31
|
+
if (this.provider)
|
|
32
|
+
return;
|
|
33
|
+
this.provider = await UniversalProvider.init({
|
|
34
|
+
projectId: this.projectId,
|
|
35
|
+
// logger: "debug",
|
|
36
|
+
metadata: this.metadata,
|
|
37
|
+
// We need to specify a custom storage prefix to avoid conflicts with Wagmi's walletConnect instance
|
|
38
|
+
// https://docs.reown.com/walletkit/web/usage#core-instance-sharing
|
|
39
|
+
customStoragePrefix: "squid-xrpl",
|
|
40
|
+
});
|
|
41
|
+
this.provider.client.on("session_delete", () => {
|
|
42
|
+
this.emit("disconnect", undefined);
|
|
43
|
+
});
|
|
44
|
+
this.modal = new WalletConnectModal({
|
|
45
|
+
projectId: this.projectId,
|
|
46
|
+
chains,
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Initializes WalletConnect and silently connects to the last session if it exists
|
|
51
|
+
*/
|
|
52
|
+
async autoConnect() {
|
|
53
|
+
await this.initialize();
|
|
54
|
+
this.validateInitialized();
|
|
55
|
+
const sessions = this.provider.client.session.getAll();
|
|
56
|
+
if (sessions.length === 0) {
|
|
57
|
+
this.emit("disconnect", undefined);
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
const lastKeyIndex = sessions.length - 1;
|
|
61
|
+
const lastSession = sessions[lastKeyIndex];
|
|
62
|
+
return this.onSessionConnected(lastSession);
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Initializes WalletConnect and prompts the user to connect to a new session
|
|
66
|
+
*/
|
|
67
|
+
async connect() {
|
|
68
|
+
await this.initialize();
|
|
69
|
+
this.validateInitialized();
|
|
70
|
+
const { uri, approval } = await this.provider.client.connect({
|
|
71
|
+
requiredNamespaces: {
|
|
72
|
+
xrpl: {
|
|
73
|
+
chains: [XrplCAIP2ChainId.MAINNET],
|
|
74
|
+
methods: [XRPL_METHOD.SIGN_TRANSACTION],
|
|
75
|
+
events: ["accountsChanged"],
|
|
76
|
+
},
|
|
77
|
+
},
|
|
78
|
+
});
|
|
79
|
+
let modalClosed = () => { };
|
|
80
|
+
const modalClosedPromise = new Promise((_, reject) => {
|
|
81
|
+
modalClosed = reject;
|
|
82
|
+
});
|
|
83
|
+
let unsubscribe = () => { };
|
|
84
|
+
if (uri) {
|
|
85
|
+
this.modal.openModal({ uri });
|
|
86
|
+
unsubscribe = this.modal.subscribeModal((state) => {
|
|
87
|
+
if (state.open === false) {
|
|
88
|
+
// propagate the error by rejecting the promise
|
|
89
|
+
// to avoid connect() from running forever
|
|
90
|
+
modalClosed(new Error("User closed the modal"));
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
const session = await Promise.race([approval(), modalClosedPromise]);
|
|
95
|
+
const address = await this.onSessionConnected(session);
|
|
96
|
+
unsubscribe();
|
|
97
|
+
this.modal.closeModal();
|
|
98
|
+
return address;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Disconnects from the current session
|
|
102
|
+
*/
|
|
103
|
+
async disconnect() {
|
|
104
|
+
if (!this.session)
|
|
105
|
+
throw new Error("Session is not connected");
|
|
106
|
+
this.validateInitialized();
|
|
107
|
+
this.provider.client.disconnect({
|
|
108
|
+
topic: this.session.topic,
|
|
109
|
+
reason: getSdkError("USER_DISCONNECTED"),
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Prompts the user to sign and submit a transaction
|
|
114
|
+
*/
|
|
115
|
+
async signAndSubmit({ network, tx, }) {
|
|
116
|
+
if (!this.session)
|
|
117
|
+
throw new Error("Session is not connected");
|
|
118
|
+
this.validateInitialized();
|
|
119
|
+
const result = await this.provider.client.request({
|
|
120
|
+
chainId: this.getWcChainId(network),
|
|
121
|
+
topic: this.session.topic,
|
|
122
|
+
request: {
|
|
123
|
+
method: XRPL_METHOD.SIGN_TRANSACTION,
|
|
124
|
+
params: {
|
|
125
|
+
tx_json: tx,
|
|
126
|
+
autofill: true,
|
|
127
|
+
submit: true,
|
|
128
|
+
},
|
|
129
|
+
},
|
|
130
|
+
});
|
|
131
|
+
const { hash } = result.tx_json;
|
|
132
|
+
if (!hash) {
|
|
133
|
+
throw new Error("Invalid transaction hash");
|
|
134
|
+
}
|
|
135
|
+
return {
|
|
136
|
+
hash,
|
|
137
|
+
// Wallet side handles submitting and validating the transaction
|
|
138
|
+
status: XrplTxStatus.SUCCESS,
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Maps the given network to the WalletConnect chain ID format
|
|
143
|
+
*/
|
|
144
|
+
getWcChainId(network) {
|
|
145
|
+
switch (network) {
|
|
146
|
+
case XrplNetwork.MAINNET:
|
|
147
|
+
return XrplCAIP2ChainId.MAINNET;
|
|
148
|
+
case XrplNetwork.TESTNET:
|
|
149
|
+
return XrplCAIP2ChainId.TESTNET;
|
|
150
|
+
default:
|
|
151
|
+
throw new Error(`Network ${network} is not supported`);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Stores the provided session and returns the user's address
|
|
156
|
+
*/
|
|
157
|
+
async onSessionConnected(session) {
|
|
158
|
+
this.session = session;
|
|
159
|
+
const allNamespaceAccounts = Object.values(session.namespaces).flatMap((namespace) => namespace.accounts);
|
|
160
|
+
const [firstAccount] = allNamespaceAccounts;
|
|
161
|
+
const address = firstAccount?.split(":")?.at(-1);
|
|
162
|
+
if (address && isXrplAddressValid(address)) {
|
|
163
|
+
return address;
|
|
164
|
+
}
|
|
165
|
+
throw new Error("No address found in session");
|
|
166
|
+
}
|
|
167
|
+
on(event, listener) {
|
|
168
|
+
if (this.listeners[event])
|
|
169
|
+
this.listeners[event]?.push(listener);
|
|
170
|
+
else
|
|
171
|
+
this.listeners[event] = [listener];
|
|
172
|
+
return () => this.off(event, listener);
|
|
173
|
+
}
|
|
174
|
+
emit(event, args) {
|
|
175
|
+
this.listeners[event]?.forEach((listener) => listener.apply(null, [args]));
|
|
176
|
+
}
|
|
177
|
+
off(event, listener) {
|
|
178
|
+
this.listeners[event] = this.listeners[event]?.filter((existingListener) => listener !== existingListener);
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
//# sourceMappingURL=WalletConnect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WalletConnect.js","sourceRoot":"","sources":["../../../../src/core/connectors/xrpl/WalletConnect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,iBAAiB,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EACL,WAAW,EACX,gBAAgB,EAGhB,WAAW,EAEX,YAAY,GACb,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAO5E,MAAM,MAAM,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAEpE,MAAM,OAAO,iBAAiB;IAC5B,QAAQ,GAA6B,IAAI,CAAC;IAE1C,OAAO,GAA+B,IAAI,CAAC;IAE3C,KAAK,GAA8B,IAAI,CAAC;IAExC,QAAQ,CAAqC;IAE7C,SAAS,CAAsC;IAEtC,SAAS,GAEd,EAAE,CAAC;IAEP,YAAY,EAAE,SAAS,EAAE,QAAQ,EAA0B;QACzD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAEO,mBAAmB;QAIzB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;SAChD;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAE1B,IAAI,CAAC,QAAQ,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC;YAC3C,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,mBAAmB;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,oGAAoG;YACpG,mEAAmE;YACnE,mBAAmB,EAAE,YAAY;SAClC,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,gBAAgB,EAAE,GAAG,EAAE;YAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,GAAG,IAAI,kBAAkB,CAAC;YAClC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM;SACP,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW;QACf,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxB,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAE3B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACvD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YACzB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;YACnC,OAAO,IAAI,CAAC;SACb;QAED,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QACzC,MAAM,WAAW,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;QAE3C,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxB,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAE3B,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;YAC3D,kBAAkB,EAAE;gBAClB,IAAI,EAAE;oBACJ,MAAM,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC;oBAClC,OAAO,EAAE,CAAC,WAAW,CAAC,gBAAgB,CAAC;oBACvC,MAAM,EAAE,CAAC,iBAAiB,CAAC;iBAC5B;aACF;SACF,CAAC,CAAC;QAEH,IAAI,WAAW,GAA2B,GAAG,EAAE,GAAE,CAAC,CAAC;QACnD,MAAM,kBAAkB,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;YAC1D,WAAW,GAAG,MAAM,CAAC;QACvB,CAAC,CAAC,CAAC;QAEH,IAAI,WAAW,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;QAE3B,IAAI,GAAG,EAAE;YACP,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;YAE9B,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,KAAK,EAAE,EAAE;gBAChD,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE;oBACxB,+CAA+C;oBAC/C,0CAA0C;oBAC1C,WAAW,CAAC,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC;iBACjD;YACH,CAAC,CAAC,CAAC;SACJ;QAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC;QAErE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAEvD,WAAW,EAAE,CAAC;QACd,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;QAExB,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAE/D,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAE3B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC;YAC9B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;YACzB,MAAM,EAAE,WAAW,CAAC,mBAAmB,CAAC;SACzC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,EAClB,OAAO,EACP,EAAE,GAIH;QACC,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAE/D,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAE3B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAE9C;YACD,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;YACnC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;YACzB,OAAO,EAAE;gBACP,MAAM,EAAE,WAAW,CAAC,gBAAgB;gBACpC,MAAM,EAAE;oBACN,OAAO,EAAE,EAAE;oBACX,QAAQ,EAAE,IAAI;oBACd,MAAM,EAAE,IAAI;iBACb;aACF;SACF,CAAC,CAAC;QAEH,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC;QAEhC,IAAI,CAAC,IAAI,EAAE;YACT,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;SAC7C;QAED,OAAO;YACL,IAAI;YACJ,gEAAgE;YAChE,MAAM,EAAE,YAAY,CAAC,OAAO;SAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,YAAY,CAAC,OAAoB;QACvC,QAAQ,OAAO,EAAE;YACf,KAAK,WAAW,CAAC,OAAO;gBACtB,OAAO,gBAAgB,CAAC,OAAO,CAAC;YAClC,KAAK,WAAW,CAAC,OAAO;gBACtB,OAAO,gBAAgB,CAAC,OAAO,CAAC;YAClC;gBACE,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,mBAAmB,CAAC,CAAC;SAC1D;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CAAC,OAA4B;QACnD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CACpE,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAClC,CAAC;QAEF,MAAM,CAAC,YAAY,CAAC,GAAG,oBAAoB,CAAC;QAE5C,MAAM,OAAO,GAAG,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAEjD,IAAI,OAAO,IAAI,kBAAkB,CAAC,OAAO,CAAC,EAAE;YAC1C,OAAO,OAAO,CAAC;SAChB;QAED,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IAED,EAAE,CACA,KAAQ,EACR,QAAwC;QAExC,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;;YAC5D,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACzC,CAAC;IAEO,IAAI,CACV,KAAQ,EACR,IAAmB;QAEnB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7E,CAAC;IAEO,GAAG,CACT,KAAQ,EACR,QAAwC;QAExC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,CACnD,CAAC,gBAAgB,EAAE,EAAE,CAAC,QAAQ,KAAK,gBAAgB,CACpD,CAAC;IACJ,CAAC;CACF"}
|
package/dist/core/constants.d.ts
CHANGED
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
import { ChainType } from "@0xsquid/squid-types";
|
|
2
2
|
import type { AppConfig, SlippageOption } from "./types/config";
|
|
3
|
+
export declare const WALLETCONNECT_PROJECT_ID = "db6a4f6ff58e4172b2fd52f01360bc49";
|
|
3
4
|
export declare const DEFAULT_LOCALE = "en-US";
|
|
5
|
+
export declare const SQUID_METADATA: {
|
|
6
|
+
name: string;
|
|
7
|
+
url: string;
|
|
8
|
+
icon: string;
|
|
9
|
+
description: string;
|
|
10
|
+
};
|
|
4
11
|
export declare const chainTypeToZeroAddressMap: Record<ChainType, string>;
|
|
5
12
|
export declare const nativeEvmTokenAddress = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
|
|
6
13
|
export declare const nativeCosmosTokenAddress = "uosmo";
|
package/dist/core/constants.js
CHANGED
|
@@ -2,7 +2,14 @@
|
|
|
2
2
|
import { ChainType } from "@0xsquid/squid-types";
|
|
3
3
|
import { zeroAddress as evmZeroAddress } from "viem";
|
|
4
4
|
import { squidApiBaseUrl } from "./externalLinks";
|
|
5
|
+
export const WALLETCONNECT_PROJECT_ID = "db6a4f6ff58e4172b2fd52f01360bc49";
|
|
5
6
|
export const DEFAULT_LOCALE = "en-US";
|
|
7
|
+
export const SQUID_METADATA = {
|
|
8
|
+
name: "Squid",
|
|
9
|
+
url: "https://app.squidrouter.com",
|
|
10
|
+
icon: "https://squidrouter.com/favicon.ico",
|
|
11
|
+
description: "Swap, send, and bridge across chains.",
|
|
12
|
+
};
|
|
6
13
|
const btcZeroAddress = "bc1qcdyjau30xhw26h2egcfklwyyyskafhp9x8qtg2";
|
|
7
14
|
const cosmosZeroAddress = "osmo1awrua7e2kj69d7vn5qt5tccrhavmj9xa6y8hhu";
|
|
8
15
|
const solanaZeroAddress = "AuF3k2X5CsXJiXo7YKL5jxDG3gmf9MjaVK8hqt7Kfes1";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/core/constants.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,WAAW,IAAI,cAAc,EAAE,MAAM,MAAM,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAGlD,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/core/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,6 @@ export interface IBitcoinContextData {
|
|
|
7
7
|
connectBitcoin: UseMutationResult<ConnectWalletResult<ChainType.BTC>, unknown, {
|
|
8
8
|
wallet: BitcoinWallet;
|
|
9
9
|
}, unknown>;
|
|
10
|
-
isConnected: boolean;
|
|
11
10
|
signer: BitcoinConnector | undefined;
|
|
12
11
|
}
|
|
13
12
|
export declare const BitcoinContext: React.Context<IBitcoinContextData | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BitcoinProvider.js","sourceRoot":"","sources":["../../../src/core/providers/BitcoinProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"BitcoinProvider.js","sourceRoot":"","sources":["../../../src/core/providers/BitcoinProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAgB5D,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CACzC,SAAS,CACV,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAA4C,CAAC,EACvE,QAAQ,GACT,EAAE,EAAE;IACH,MAAM,cAAc,GAAG,UAAU,EAAE,CAAC;IAEpC,OAAO,CACL,oBAAC,cAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,cAAc,IAC3C,QAAQ,CACe,CAC3B,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAwB,EAAE;IACzD,MAAM,OAAO,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IAC3C,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;KAC5E;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EvmProvider.js","sourceRoot":"","sources":["../../../src/core/providers/EvmProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"EvmProvider.js","sourceRoot":"","sources":["../../../src/core/providers/EvmProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAmBhD,MAAM,CAAC,MAAM,UAAU,GAAG,aAAa,CAA8B,SAAS,CAAC,CAAC;AAEhF,MAAM,CAAC,MAAM,WAAW,GAA4C,CAAC,EACnE,QAAQ,GACT,EAAE,EAAE;IACH,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC;IAE5B,OAAO,CACL,oBAAC,UAAU,CAAC,QAAQ,IAAC,KAAK,EAAE,UAAU,IAAG,QAAQ,CAAuB,CACzE,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,GAAoB,EAAE;IACjD,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;IACvC,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;KACpE;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolanaProvider.js","sourceRoot":"","sources":["../../../src/core/providers/SolanaProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAa,UAAU,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"SolanaProvider.js","sourceRoot":"","sources":["../../../src/core/providers/SolanaProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAa,UAAU,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAmBzD,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CACxC,SAAS,CACV,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAsC,CAAC,EAChE,QAAQ,GACT,EAAE,EAAE;IACH,MAAM,UAAU,GAAG,SAAS,EAAE,CAAC;IAE/B,OAAO,CACL,oBAAC,aAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,UAAU,IACtC,QAAQ,CACc,CAC1B,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAuB,EAAE;IACvD,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;IAC1C,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;KAC1E;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SuiProvider.js","sourceRoot":"","sources":["../../../src/core/providers/SuiProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"SuiProvider.js","sourceRoot":"","sources":["../../../src/core/providers/SuiProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAmBhD,MAAM,CAAC,MAAM,UAAU,GAAG,aAAa,CAA8B,SAAS,CAAC,CAAC;AAEhF,MAAM,CAAC,MAAM,WAAW,GAA4C,CAAC,EACnE,QAAQ,GACT,EAAE,EAAE;IACH,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC;IAE5B,OAAO,CACL,oBAAC,UAAU,CAAC,QAAQ,IAAC,KAAK,EAAE,UAAU,IAAG,QAAQ,CAAuB,CACzE,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,GAAoB,EAAE;IACjD,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;IACvC,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;KACpE;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC"}
|
|
@@ -7,6 +7,8 @@ export interface IXrplContextData {
|
|
|
7
7
|
connectXrpl: UseMutationResult<ConnectWalletResult<ChainType.XRPL>, unknown, {
|
|
8
8
|
wallet: XrplWallet;
|
|
9
9
|
}, unknown>;
|
|
10
|
+
disconnectXrpl: () => Promise<void>;
|
|
11
|
+
autoConnectXrpl: () => Promise<void>;
|
|
10
12
|
signer: XrplConnector | undefined;
|
|
11
13
|
wallets: XrplWallet[];
|
|
12
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XrplProvider.js","sourceRoot":"","sources":["../../../src/core/providers/XrplProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAa,UAAU,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"XrplProvider.js","sourceRoot":"","sources":["../../../src/core/providers/XrplProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAa,UAAU,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAmBnD,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CACtC,SAAS,CACV,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAsC,CAAC,EAC9D,QAAQ,GACT,EAAE,EAAE;IACH,MAAM,WAAW,GAAG,OAAO,EAAE,CAAC;IAE9B,OAAO,CACL,oBAAC,WAAW,CAAC,QAAQ,IAAC,KAAK,EAAE,WAAW,IAAG,QAAQ,CAAwB,CAC5E,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAqB,EAAE;IACnD,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACxC,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;KACtE;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../../src/core/types/error.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,oBAKX;AALD,WAAY,oBAAoB;IAC9B,uFAAgB,CAAA;IAChB,mFAAc,CAAA;IACd,qEAAO,CAAA;IACP,qEAAO,CAAA;AACT,CAAC,EALW,oBAAoB,KAApB,oBAAoB,QAK/B;
|
|
1
|
+
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../../src/core/types/error.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,oBAKX;AALD,WAAY,oBAAoB;IAC9B,uFAAgB,CAAA;IAChB,mFAAc,CAAA;IACd,qEAAO,CAAA;IACP,qEAAO,CAAA;AACT,CAAC,EALW,oBAAoB,KAApB,oBAAoB,QAK/B;AAqCD,MAAM,CAAN,IAAY,oBAEX;AAFD,WAAY,oBAAoB;IAC9B,uDAA+B,CAAA;AACjC,CAAC,EAFW,oBAAoB,KAApB,oBAAoB,QAE/B;AAED,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF"}
|
|
@@ -18,9 +18,10 @@ export declare enum WindowWalletFlag {
|
|
|
18
18
|
XrpLedgerMetamaskSnap = "xrpl-metamask-snap",
|
|
19
19
|
Crossmark = "xrpl.crossmark",
|
|
20
20
|
XamanXApp = "xaman-xapp",
|
|
21
|
-
XamanQr = "xaman-qr"
|
|
21
|
+
XamanQr = "xaman-qr",
|
|
22
|
+
XrplWalletConnect = "xrpl-wallet-connect"
|
|
22
23
|
}
|
|
23
|
-
export type ConnectorID = "metamask" | "coinbase" | "walletConnect" | "blockchaindotcom" | "keplr" | "cosmostation" | "leap" | "ctrl" | "bitget" | "coin98" | "rabby" | "okx" | "injected" | "zerion" | "deficonnect" | "trustwallet" | "exodus" | "rainbow" | "phantom" | "backpack" | "unisat" | "xrpl-metamask-snap" | "crossmark" | "xaman-xapp" | "xaman-qr" | "brave" | "tokenpocket" | "nightly" | "cryptodotcom";
|
|
24
|
+
export type ConnectorID = "metamask" | "coinbase" | "walletConnect" | "blockchaindotcom" | "keplr" | "cosmostation" | "leap" | "ctrl" | "bitget" | "coin98" | "rabby" | "okx" | "injected" | "zerion" | "deficonnect" | "trustwallet" | "exodus" | "rainbow" | "phantom" | "backpack" | "unisat" | "xrpl-metamask-snap" | "crossmark" | "xaman-xapp" | "xaman-qr" | "xrpl-wallet-connect" | "brave" | "tokenpocket" | "nightly" | "cryptodotcom";
|
|
24
25
|
export type EvmWallet = Wallet & {
|
|
25
26
|
type: ChainType.EVM;
|
|
26
27
|
connector: EvmConnector;
|
|
@@ -66,7 +67,6 @@ export type Wallet = {
|
|
|
66
67
|
connectorName: string;
|
|
67
68
|
icon: string | undefined;
|
|
68
69
|
windowFlag: WindowWalletFlag;
|
|
69
|
-
canSwitchWallets?: boolean;
|
|
70
70
|
isMobile?: boolean;
|
|
71
71
|
isQrWallet?: boolean;
|
|
72
72
|
isInstalled?: () => boolean;
|
|
@@ -11,5 +11,6 @@ export var WindowWalletFlag;
|
|
|
11
11
|
WindowWalletFlag["Crossmark"] = "xrpl.crossmark";
|
|
12
12
|
WindowWalletFlag["XamanXApp"] = "xaman-xapp";
|
|
13
13
|
WindowWalletFlag["XamanQr"] = "xaman-qr";
|
|
14
|
+
WindowWalletFlag["XrplWalletConnect"] = "xrpl-wallet-connect";
|
|
14
15
|
})(WindowWalletFlag || (WindowWalletFlag = {}));
|
|
15
16
|
//# sourceMappingURL=wallet.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../src/core/types/wallet.ts"],"names":[],"mappings":"AAYA,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../src/core/types/wallet.ts"],"names":[],"mappings":"AAYA,MAAM,CAAN,IAAY,gBAaX;AAbD,WAAY,gBAAgB;IAC1B,iDAA6B,CAAA;IAC7B,mCAAe,CAAA;IACf,iCAAa,CAAA;IACb,gCAAY,CAAA;IACZ,uCAAmB,CAAA;IACnB,qCAAiB,CAAA;IACjB,yCAAqB,CAAA;IACrB,gEAA4C,CAAA;IAC5C,gDAA4B,CAAA;IAC5B,4CAAwB,CAAA;IACxB,wCAAoB,CAAA;IACpB,6DAAyC,CAAA;AAC3C,CAAC,EAbW,gBAAgB,KAAhB,gBAAgB,QAa3B"}
|
|
@@ -30,6 +30,10 @@ export declare enum XrplNetwork {
|
|
|
30
30
|
MAINNET = 0,
|
|
31
31
|
TESTNET = 1
|
|
32
32
|
}
|
|
33
|
+
export type XrplEvents = {
|
|
34
|
+
disconnect: undefined;
|
|
35
|
+
};
|
|
36
|
+
export type XrplConnectorOnMethod = <E extends keyof XrplEvents>(event: E, listener: (event: XrplEvents[E]) => void) => () => void;
|
|
33
37
|
export interface XrplConnector {
|
|
34
38
|
connect: () => Promise<string>;
|
|
35
39
|
signAndSubmit: (_: {
|
|
@@ -41,6 +45,9 @@ export interface XrplConnector {
|
|
|
41
45
|
}>;
|
|
42
46
|
cancelConnect?: () => void;
|
|
43
47
|
cancelSignAndSubmit?: () => void;
|
|
48
|
+
on?: XrplConnectorOnMethod;
|
|
49
|
+
autoConnect?: () => Promise<string | null>;
|
|
50
|
+
disconnect?: () => Promise<void>;
|
|
44
51
|
}
|
|
45
52
|
export interface XrplTokenBalance {
|
|
46
53
|
address: string;
|
|
@@ -67,4 +74,14 @@ export declare enum XamanXrplNetwork {
|
|
|
67
74
|
TESTNET = "TESTNET",
|
|
68
75
|
DEVNET = "DEVNET"
|
|
69
76
|
}
|
|
77
|
+
/**
|
|
78
|
+
* @see https://chainagnostic.org/CAIPs/caip-2
|
|
79
|
+
*/
|
|
80
|
+
export declare enum XrplCAIP2ChainId {
|
|
81
|
+
MAINNET = "xrpl:0",
|
|
82
|
+
TESTNET = "xrpl:1"
|
|
83
|
+
}
|
|
84
|
+
export declare enum XRPL_METHOD {
|
|
85
|
+
SIGN_TRANSACTION = "xrpl_signTransaction"
|
|
86
|
+
}
|
|
70
87
|
export {};
|
package/dist/core/types/xrpl.js
CHANGED
|
@@ -17,4 +17,16 @@ export var XamanXrplNetwork;
|
|
|
17
17
|
XamanXrplNetwork["TESTNET"] = "TESTNET";
|
|
18
18
|
XamanXrplNetwork["DEVNET"] = "DEVNET";
|
|
19
19
|
})(XamanXrplNetwork || (XamanXrplNetwork = {}));
|
|
20
|
+
/**
|
|
21
|
+
* @see https://chainagnostic.org/CAIPs/caip-2
|
|
22
|
+
*/
|
|
23
|
+
export var XrplCAIP2ChainId;
|
|
24
|
+
(function (XrplCAIP2ChainId) {
|
|
25
|
+
XrplCAIP2ChainId["MAINNET"] = "xrpl:0";
|
|
26
|
+
XrplCAIP2ChainId["TESTNET"] = "xrpl:1";
|
|
27
|
+
})(XrplCAIP2ChainId || (XrplCAIP2ChainId = {}));
|
|
28
|
+
export var XRPL_METHOD;
|
|
29
|
+
(function (XRPL_METHOD) {
|
|
30
|
+
XRPL_METHOD["SIGN_TRANSACTION"] = "xrpl_signTransaction";
|
|
31
|
+
})(XRPL_METHOD || (XRPL_METHOD = {}));
|
|
20
32
|
//# sourceMappingURL=xrpl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xrpl.js","sourceRoot":"","sources":["../../../src/core/types/xrpl.ts"],"names":[],"mappings":"AAiCA,MAAM,CAAN,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,mDAAO,CAAA;IACP,mDAAO,CAAA;AACT,CAAC,EAHW,WAAW,KAAX,WAAW,QAGtB;
|
|
1
|
+
{"version":3,"file":"xrpl.js","sourceRoot":"","sources":["../../../src/core/types/xrpl.ts"],"names":[],"mappings":"AAiCA,MAAM,CAAN,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,mDAAO,CAAA;IACP,mDAAO,CAAA;AACT,CAAC,EAHW,WAAW,KAAX,WAAW,QAGtB;AAuCD;;;GAGG;AACH,MAAM,CAAN,IAAY,YAEX;AAFD,WAAY,YAAY;IACtB,sCAAsB,CAAA;AACxB,CAAC,EAFW,YAAY,KAAZ,YAAY,QAEvB;AAED,MAAM,CAAN,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,uCAAmB,CAAA;IACnB,uCAAmB,CAAA;IACnB,qCAAiB,CAAA;AACnB,CAAC,EAJW,gBAAgB,KAAhB,gBAAgB,QAI3B;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,sCAAkB,CAAA;IAClB,sCAAkB,CAAA;AACpB,CAAC,EAHW,gBAAgB,KAAhB,gBAAgB,QAG3B;AAED,MAAM,CAAN,IAAY,WAEX;AAFD,WAAY,WAAW;IACrB,wDAAyC,CAAA;AAC3C,CAAC,EAFW,WAAW,KAAX,WAAW,QAEtB"}
|
package/dist/core/wagmiConfig.js
CHANGED
|
@@ -3,7 +3,7 @@ import { BrowserProvider, JsonRpcSigner } from "ethers";
|
|
|
3
3
|
import { defineChain, } from "viem";
|
|
4
4
|
import { createConfig, http } from "wagmi";
|
|
5
5
|
import { coinbaseWallet, injected, metaMask, safe, walletConnect, } from "wagmi/connectors";
|
|
6
|
-
|
|
6
|
+
import { SQUID_METADATA, WALLETCONNECT_PROJECT_ID } from "./constants";
|
|
7
7
|
export const createWagmiConfig = (squidChains) => {
|
|
8
8
|
const filteredEvmChains = squidChains.filter((chain) => chain.chainType === ChainType.EVM);
|
|
9
9
|
if (filteredEvmChains.length === 0) {
|
|
@@ -41,15 +41,23 @@ export const createWagmiConfig = (squidChains) => {
|
|
|
41
41
|
}),
|
|
42
42
|
metaMask({
|
|
43
43
|
dappMetadata: {
|
|
44
|
-
name:
|
|
45
|
-
url:
|
|
44
|
+
name: SQUID_METADATA.name,
|
|
45
|
+
url: SQUID_METADATA.url,
|
|
46
|
+
iconUrl: SQUID_METADATA.icon,
|
|
46
47
|
},
|
|
47
48
|
}),
|
|
48
49
|
coinbaseWallet({
|
|
49
|
-
appName:
|
|
50
|
+
appName: SQUID_METADATA.name,
|
|
51
|
+
appLogoUrl: SQUID_METADATA.icon,
|
|
50
52
|
}),
|
|
51
53
|
walletConnect({
|
|
52
54
|
projectId: WALLETCONNECT_PROJECT_ID,
|
|
55
|
+
metadata: {
|
|
56
|
+
url: SQUID_METADATA.url,
|
|
57
|
+
name: SQUID_METADATA.name,
|
|
58
|
+
icons: [SQUID_METADATA.icon],
|
|
59
|
+
description: SQUID_METADATA.description,
|
|
60
|
+
},
|
|
53
61
|
}),
|
|
54
62
|
],
|
|
55
63
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wagmiConfig.js","sourceRoot":"","sources":["../../src/core/wagmiConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EACL,WAAW,GAKZ,MAAM,MAAM,CAAC;AACd,OAAO,EAAU,YAAY,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EACL,cAAc,EACd,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,aAAa,GACd,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"wagmiConfig.js","sourceRoot":"","sources":["../../src/core/wagmiConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EACL,WAAW,GAKZ,MAAM,MAAM,CAAC;AACd,OAAO,EAAU,YAAY,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EACL,cAAc,EACd,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,aAAa,GACd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAEvE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,WAAwB,EAAU,EAAE;IACpE,MAAM,iBAAiB,GAAG,WAAW,CAAC,MAAM,CAC1C,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,GAAG,CAC7C,CAAC;IAEF,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE;QAClC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;KACnD;IAED,MAAM,WAAW,GAAY,iBAAiB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QAC3D,OAAO,WAAW,CAAC;YACjB,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;YACzB,IAAI,EAAE,KAAK,CAAC,WAAW;YACvB,cAAc,EAAE;gBACd,IAAI,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI;gBAC/B,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM;gBACnC,QAAQ,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ;aACxC;YACD,OAAO,EAAE;gBACP,MAAM,EAAE;oBACN,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC;iBAClB;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC;iBAClB;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,YAAY,CAAC;QAClB,MAAM,EAAE,WAAkC;QAC1C,UAAU,EAAE,MAAM,CAAC,WAAW,CAC5B,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;YACzB,KAAK,CAAC,EAAE;YACR,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACzC,CAAC,CACH;QAED,UAAU,EAAE;YACV,QAAQ,EAAE;YACV,IAAI,CAAC;gBACH,cAAc,EAAE,CAAC,kBAAkB,CAAC;aACrC,CAAC;YACF,QAAQ,CAAC;gBACP,YAAY,EAAE;oBACZ,IAAI,EAAE,cAAc,CAAC,IAAI;oBACzB,GAAG,EAAE,cAAc,CAAC,GAAG;oBACvB,OAAO,EAAE,cAAc,CAAC,IAAI;iBAC7B;aACF,CAAC;YACF,cAAc,CAAC;gBACb,OAAO,EAAE,cAAc,CAAC,IAAI;gBAC5B,UAAU,EAAE,cAAc,CAAC,IAAI;aAChC,CAAC;YACF,aAAa,CAAC;gBACZ,SAAS,EAAE,wBAAwB;gBACnC,QAAQ,EAAE;oBACR,GAAG,EAAE,cAAc,CAAC,GAAG;oBACvB,IAAI,EAAE,cAAc,CAAC,IAAI;oBACzB,KAAK,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC;oBAC5B,WAAW,EAAE,cAAc,CAAC,WAAW;iBACxC;aACF,CAAC;SACH;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,wBAAwB;AACxB,uCAAuC;AACvC,MAAM,UAAU,cAAc,CAAC,MAAyC;IACtE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;IAC7C,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,EAAE;QACpC,OAAO,SAAS,CAAC;KAClB;IACD,MAAM,OAAO,GAAG;QACd,OAAO,EAAE,KAAK,CAAC,EAAE;QACjB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,UAAU,EAAE,KAAK,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO;KAClD,CAAC;IACF,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5D,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/dist/core/wallets.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ConnectorID } from "./types";
|
|
2
|
-
import { Wallet } from "./types/wallet";
|
|
2
|
+
import { Wallet, XrplWallet } from "./types/wallet";
|
|
3
3
|
export declare const walletIconBaseUrl = "https://raw.githubusercontent.com/0xsquid/assets/main/images/webp128/wallets";
|
|
4
|
+
export declare const xrplWallets: XrplWallet[];
|
|
4
5
|
export declare const multiChainWallets: Wallet[];
|
|
5
6
|
export declare const singleChainWallets: Wallet[];
|
|
6
7
|
export declare const walletStoreLinks: {
|