@prohetamine/redstone 0.0.1
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/PhArrowCircleDown-BR-zH4LC.js +14 -0
- package/dist/PhArrowCircleDown-Sb38khBy.mjs +73 -0
- package/dist/PhArrowClockwise-BE5j9P0Z.mjs +73 -0
- package/dist/PhArrowClockwise-BRaehQGe.js +14 -0
- package/dist/PhArrowDown-B_WmmmY9.js +14 -0
- package/dist/PhArrowDown-CFEyR2dR.mjs +73 -0
- package/dist/PhArrowLeft-CYfU7NZj.mjs +73 -0
- package/dist/PhArrowLeft-CkEd70hm.js +14 -0
- package/dist/PhArrowRight-C07Qkx86.js +14 -0
- package/dist/PhArrowRight-EermNu0V.mjs +73 -0
- package/dist/PhArrowSquareOut-BjTBfzOP.js +14 -0
- package/dist/PhArrowSquareOut-DZwTtw54.mjs +73 -0
- package/dist/PhArrowUp-DB4CCSss.js +14 -0
- package/dist/PhArrowUp-xTpLFQkg.mjs +73 -0
- package/dist/PhArrowUpRight-CQbvn6NO.mjs +73 -0
- package/dist/PhArrowUpRight-GpCIMsAh.js +14 -0
- package/dist/PhArrowsClockwise-BgcIUg-Z.js +14 -0
- package/dist/PhArrowsClockwise-DnUYZTVx.mjs +73 -0
- package/dist/PhArrowsDownUp-C8KXUqtu.js +14 -0
- package/dist/PhArrowsDownUp-DgoprEe2.mjs +73 -0
- package/dist/PhArrowsLeftRight-CahChzCj.js +14 -0
- package/dist/PhArrowsLeftRight-FD4AZiLh.mjs +73 -0
- package/dist/PhBank-DIqIL4x_.js +14 -0
- package/dist/PhBank-DbQOQ9zJ.mjs +73 -0
- package/dist/PhBrowser-BCBXK2IM.mjs +73 -0
- package/dist/PhBrowser-laCKtn7T.js +14 -0
- package/dist/PhCaretDown-CnjP-QjZ.mjs +73 -0
- package/dist/PhCaretDown-DDe42xDU.js +14 -0
- package/dist/PhCaretLeft-Cskc5OY9.js +14 -0
- package/dist/PhCaretLeft-DkuXxjf_.mjs +73 -0
- package/dist/PhCaretRight-CBWpghxt.mjs +73 -0
- package/dist/PhCaretRight-DNgI5w_B.js +14 -0
- package/dist/PhCaretUp-CQ-OztBV.mjs +73 -0
- package/dist/PhCaretUp-CUZ4g_Me.js +14 -0
- package/dist/PhCheck-BVV_Dwfo.js +14 -0
- package/dist/PhCheck-t515emYS.mjs +73 -0
- package/dist/PhCircleHalf-BuQTmrKW.mjs +73 -0
- package/dist/PhCircleHalf-DDC7rige.js +14 -0
- package/dist/PhClock-BqynEKWl.js +14 -0
- package/dist/PhClock-D6XkTmM_.mjs +73 -0
- package/dist/PhCompass-2QeeX5Ad.mjs +73 -0
- package/dist/PhCompass-BsuJwXAE.js +14 -0
- package/dist/PhCopy-CO34-_xD.mjs +73 -0
- package/dist/PhCopy-MVqtRS6X.js +14 -0
- package/dist/PhCreditCard-Dq4kdjCw.js +14 -0
- package/dist/PhCreditCard-bfnqYflD.mjs +73 -0
- package/dist/PhCurrencyDollar-6k8UWxal.js +14 -0
- package/dist/PhCurrencyDollar-BekVYPtC.mjs +73 -0
- package/dist/PhDesktop-BkNzf3rT.mjs +73 -0
- package/dist/PhDesktop-CfsXQ0vC.js +14 -0
- package/dist/PhDeviceMobile-BT3Mg_b0.mjs +73 -0
- package/dist/PhDeviceMobile-BnrrDrwf.js +14 -0
- package/dist/PhDotsThree-6LRvhAcL.js +14 -0
- package/dist/PhDotsThree-kpf2OKxJ.mjs +73 -0
- package/dist/PhEnvelope-CHsfC2e0.js +14 -0
- package/dist/PhEnvelope-UFKpKtwf.mjs +73 -0
- package/dist/PhFunnelSimple-CdAqSIhK.mjs +73 -0
- package/dist/PhFunnelSimple-JAk7X9Wo.js +14 -0
- package/dist/PhGlobe-B3RYXl8h.mjs +73 -0
- package/dist/PhGlobe-Tfs4MfpG.js +14 -0
- package/dist/PhIdentificationCard-Dqmd6eY1.js +14 -0
- package/dist/PhIdentificationCard-rSq59Czm.mjs +73 -0
- package/dist/PhImage-aEryzfCi.js +14 -0
- package/dist/PhImage-ynsEnFd_.mjs +73 -0
- package/dist/PhInfo-B7lsWl6m.mjs +73 -0
- package/dist/PhInfo-D6oUrWpA.js +14 -0
- package/dist/PhLightbulb-FQDaMMqu.mjs +73 -0
- package/dist/PhLightbulb-qbEduhPa.js +14 -0
- package/dist/PhMagnifyingGlass-COdRH2k5.js +14 -0
- package/dist/PhMagnifyingGlass-_NXk13-0.mjs +73 -0
- package/dist/PhPaperPlaneRight-BYi7SorW.mjs +73 -0
- package/dist/PhPaperPlaneRight-DrpVAQOZ.js +14 -0
- package/dist/PhPlus-25KQTPHG.mjs +73 -0
- package/dist/PhPlus-BhUXef08.js +14 -0
- package/dist/PhPower-BKl7gzsB.mjs +73 -0
- package/dist/PhPower-BNJf1AGQ.js +14 -0
- package/dist/PhPuzzlePiece-BkZeF8CX.js +14 -0
- package/dist/PhPuzzlePiece-BqUI4GRs.mjs +73 -0
- package/dist/PhQrCode-C-tqZKPP.mjs +73 -0
- package/dist/PhQrCode-C0v0iXQN.js +14 -0
- package/dist/PhQuestion-BBAiRWgt.js +14 -0
- package/dist/PhQuestion-CtYvffyD.mjs +73 -0
- package/dist/PhQuestionMark-BNbtL2yx.mjs +73 -0
- package/dist/PhQuestionMark-BvGUBZ1h.js +14 -0
- package/dist/PhSealCheck-B0TEqWpq.mjs +73 -0
- package/dist/PhSealCheck-BwNkuF7G.js +14 -0
- package/dist/PhSignOut-C1rMSNaS.js +14 -0
- package/dist/PhSignOut-HX2_BVsD.mjs +73 -0
- package/dist/PhSpinner-CoDYLYOX.mjs +73 -0
- package/dist/PhSpinner-nmsGWDQl.js +14 -0
- package/dist/PhTrash-CALlKx3e.js +14 -0
- package/dist/PhTrash-DeQHS8ZP.mjs +73 -0
- package/dist/PhUser-CA0e5OPI.js +14 -0
- package/dist/PhUser-Cy5EY3vX.mjs +73 -0
- package/dist/PhVault-DdXjVOO9.mjs +73 -0
- package/dist/PhVault-DqxV75cz.js +14 -0
- package/dist/PhWallet-CeQrfGYc.mjs +73 -0
- package/dist/PhWallet-CyCuEs2U.js +14 -0
- package/dist/PhWarning-BKaHv_wT.mjs +73 -0
- package/dist/PhWarning-C7oj86bY.js +14 -0
- package/dist/PhWarningCircle-8MWw-QgE.mjs +73 -0
- package/dist/PhWarningCircle-CrNPXGj4.js +14 -0
- package/dist/PhX-9lsrXjyl.js +14 -0
- package/dist/PhX-DgXr_Fb0.mjs +73 -0
- package/dist/ReownAuthentication-Bfv31LzI.mjs +274 -0
- package/dist/ReownAuthentication-d8aYgGOq.js +5 -0
- package/dist/SwapController-4lzoYsYr.js +1 -0
- package/dist/SwapController-DjzUWRyQ.mjs +462 -0
- package/dist/ccip-CvwbEhki.js +1 -0
- package/dist/ccip-TuO68NeE.mjs +150 -0
- package/dist/data-capture-BwdjH2vc.mjs +489 -0
- package/dist/data-capture-xVUNZJ2T.js +242 -0
- package/dist/email-BCZObJCY.js +90 -0
- package/dist/email-m-wo60fN.mjs +338 -0
- package/dist/embedded-wallet-CGSri-4g.js +410 -0
- package/dist/embedded-wallet-DdZmv5qP.mjs +808 -0
- package/dist/features-BJ8kNaE8.js +1 -0
- package/dist/features-CJ34oImB.mjs +6 -0
- package/dist/index-4lfXeo30.js +132 -0
- package/dist/index-B6Mg114Z.mjs +69182 -0
- package/dist/index-BX7gAgT3.mjs +35 -0
- package/dist/index-BYQqNbCe.js +1 -0
- package/dist/index-BmdHwtJo.js +1 -0
- package/dist/index-BvUx3ULC.js +78 -0
- package/dist/index-CD-QGO70.mjs +196 -0
- package/dist/index-CJtXfdoM.mjs +29621 -0
- package/dist/index-CMzdgE-y.mjs +215 -0
- package/dist/index-CjZQCcwG.js +7203 -0
- package/dist/index-D7VuOaCI.js +19 -0
- package/dist/index-DV7SQwgn.mjs +2688 -0
- package/dist/index-DVf4BnNh.mjs +352 -0
- package/dist/index-DhN9vL4k.js +138 -0
- package/dist/index-DvllakY0.mjs +274 -0
- package/dist/index-Ho06VKh2.mjs +151 -0
- package/dist/index-a8mS2Eh1.js +1062 -0
- package/dist/index-aamBi9Tu.js +1 -0
- package/dist/index.cjs.js +1 -0
- package/dist/index.es.js +14 -0
- package/dist/onramp-DLlhSPQg.js +422 -0
- package/dist/onramp-k-EAEepC.mjs +842 -0
- package/dist/parseSignature-D1tZHglo.js +16 -0
- package/dist/parseSignature-DM0lwcDr.mjs +8883 -0
- package/dist/pay-with-exchange---G2M1Ag.js +280 -0
- package/dist/pay-with-exchange-CFIcUXUe.mjs +512 -0
- package/dist/property-Bd8U3_QP.mjs +618 -0
- package/dist/property-DissjCbZ.js +27 -0
- package/dist/receive-B9LCljO6.mjs +228 -0
- package/dist/receive-E8H6GDOX.js +131 -0
- package/dist/send-B-AooLph.js +554 -0
- package/dist/send-DZd_xhsd.mjs +1155 -0
- package/dist/socials-ChWFLEFe.mjs +611 -0
- package/dist/socials-YSUYSh8o.js +250 -0
- package/dist/swaps-DpR9W9Ld.js +1050 -0
- package/dist/swaps-Du7-Ui_V.mjs +1752 -0
- package/dist/transactions-DhsK5-QJ.mjs +35 -0
- package/dist/transactions-VPsz2OLe.js +16 -0
- package/dist/w3m-modal-DhomfjKU.js +891 -0
- package/dist/w3m-modal-KuYD-zqQ.mjs +1759 -0
- package/package.json +51 -0
- package/readme.md +1 -0
|
@@ -0,0 +1,274 @@
|
|
|
1
|
+
import { ca as g, cm as w, cn as y, co as A, c6 as k, cp as u, cb as N, cq as m } from "./index-B6Mg114Z.mjs";
|
|
2
|
+
class p {
|
|
3
|
+
constructor(e) {
|
|
4
|
+
this.getNonce = e.getNonce;
|
|
5
|
+
}
|
|
6
|
+
async createMessage(e) {
|
|
7
|
+
const t = {
|
|
8
|
+
accountAddress: e.accountAddress,
|
|
9
|
+
chainId: e.chainId,
|
|
10
|
+
version: "1",
|
|
11
|
+
domain: typeof document > "u" ? "Unknown Domain" : document.location.host,
|
|
12
|
+
uri: typeof document > "u" ? "Unknown URI" : document.location.href,
|
|
13
|
+
resources: this.resources,
|
|
14
|
+
nonce: await this.getNonce(e),
|
|
15
|
+
issuedAt: this.stringifyDate(/* @__PURE__ */ new Date()),
|
|
16
|
+
statement: void 0,
|
|
17
|
+
expirationTime: void 0,
|
|
18
|
+
notBefore: void 0
|
|
19
|
+
};
|
|
20
|
+
return Object.assign(t, {
|
|
21
|
+
toString: () => this.stringify(t)
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
stringify(e) {
|
|
25
|
+
var s;
|
|
26
|
+
const t = this.getNetworkName(e.chainId);
|
|
27
|
+
return [
|
|
28
|
+
`${e.domain} wants you to sign in with your ${t} account:`,
|
|
29
|
+
e.accountAddress,
|
|
30
|
+
e.statement ? `
|
|
31
|
+
${e.statement}
|
|
32
|
+
` : "",
|
|
33
|
+
`URI: ${e.uri}`,
|
|
34
|
+
`Version: ${e.version}`,
|
|
35
|
+
`Chain ID: ${e.chainId}`,
|
|
36
|
+
`Nonce: ${e.nonce}`,
|
|
37
|
+
e.issuedAt && `Issued At: ${e.issuedAt}`,
|
|
38
|
+
e.expirationTime && `Expiration Time: ${e.expirationTime}`,
|
|
39
|
+
e.notBefore && `Not Before: ${e.notBefore}`,
|
|
40
|
+
e.requestId && `Request ID: ${e.requestId}`,
|
|
41
|
+
((s = e.resources) == null ? void 0 : s.length) && e.resources.reduce((n, o) => `${n}
|
|
42
|
+
- ${o}`, "Resources:")
|
|
43
|
+
].filter((n) => typeof n == "string").join(`
|
|
44
|
+
`).trim();
|
|
45
|
+
}
|
|
46
|
+
getNetworkName(e) {
|
|
47
|
+
const t = g.getAllRequestedCaipNetworks();
|
|
48
|
+
return w.getNetworkNameByCaipNetworkId(t, e);
|
|
49
|
+
}
|
|
50
|
+
stringifyDate(e) {
|
|
51
|
+
return e.toISOString();
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
class E {
|
|
55
|
+
constructor(e = {}) {
|
|
56
|
+
this.otpUuid = null, this.listeners = {
|
|
57
|
+
sessionChanged: []
|
|
58
|
+
}, this.localAuthStorageKey = e.localAuthStorageKey || y.SIWX_AUTH_TOKEN, this.localNonceStorageKey = e.localNonceStorageKey || y.SIWX_NONCE_TOKEN, this.required = e.required ?? !0, this.messenger = new p({
|
|
59
|
+
getNonce: this.getNonce.bind(this)
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
async createMessage(e) {
|
|
63
|
+
return this.messenger.createMessage(e);
|
|
64
|
+
}
|
|
65
|
+
async addSession(e) {
|
|
66
|
+
const t = await this.request({
|
|
67
|
+
method: "POST",
|
|
68
|
+
key: "authenticate",
|
|
69
|
+
body: {
|
|
70
|
+
data: e.data,
|
|
71
|
+
message: e.message,
|
|
72
|
+
signature: e.signature,
|
|
73
|
+
clientId: this.getClientId(),
|
|
74
|
+
walletInfo: this.getWalletInfo()
|
|
75
|
+
},
|
|
76
|
+
headers: ["nonce", "otp"]
|
|
77
|
+
});
|
|
78
|
+
this.setStorageToken(t.token, this.localAuthStorageKey), this.emit("sessionChanged", e), this.setAppKitAccountUser(I(t.token)), this.otpUuid = null;
|
|
79
|
+
}
|
|
80
|
+
async getSessions(e, t) {
|
|
81
|
+
try {
|
|
82
|
+
if (!this.getStorageToken(this.localAuthStorageKey))
|
|
83
|
+
return [];
|
|
84
|
+
const s = await this.request({
|
|
85
|
+
method: "GET",
|
|
86
|
+
key: "me",
|
|
87
|
+
query: {},
|
|
88
|
+
headers: ["auth"]
|
|
89
|
+
});
|
|
90
|
+
if (!s)
|
|
91
|
+
return [];
|
|
92
|
+
const n = s.address.toLowerCase() === t.toLowerCase(), o = s.caip2Network === e;
|
|
93
|
+
if (!n || !o)
|
|
94
|
+
return [];
|
|
95
|
+
const r = {
|
|
96
|
+
data: {
|
|
97
|
+
accountAddress: s.address,
|
|
98
|
+
chainId: s.caip2Network
|
|
99
|
+
},
|
|
100
|
+
message: "",
|
|
101
|
+
signature: ""
|
|
102
|
+
};
|
|
103
|
+
return this.emit("sessionChanged", r), this.setAppKitAccountUser(s), [r];
|
|
104
|
+
} catch {
|
|
105
|
+
return [];
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
async revokeSession(e, t) {
|
|
109
|
+
return Promise.resolve(this.clearStorageTokens());
|
|
110
|
+
}
|
|
111
|
+
async setSessions(e) {
|
|
112
|
+
if (e.length === 0)
|
|
113
|
+
this.clearStorageTokens();
|
|
114
|
+
else {
|
|
115
|
+
const t = e.find((s) => {
|
|
116
|
+
var n;
|
|
117
|
+
return s.data.chainId === ((n = A()) == null ? void 0 : n.caipNetworkId);
|
|
118
|
+
}) || e[0];
|
|
119
|
+
await this.addSession(t);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
getRequired() {
|
|
123
|
+
return this.required;
|
|
124
|
+
}
|
|
125
|
+
async getSessionAccount() {
|
|
126
|
+
if (!this.getStorageToken(this.localAuthStorageKey))
|
|
127
|
+
throw new Error("Not authenticated");
|
|
128
|
+
return this.request({
|
|
129
|
+
method: "GET",
|
|
130
|
+
key: "me",
|
|
131
|
+
body: void 0,
|
|
132
|
+
query: {
|
|
133
|
+
includeAppKitAccount: !0
|
|
134
|
+
},
|
|
135
|
+
headers: ["auth"]
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
async setSessionAccountMetadata(e = null) {
|
|
139
|
+
if (!this.getStorageToken(this.localAuthStorageKey))
|
|
140
|
+
throw new Error("Not authenticated");
|
|
141
|
+
return this.request({
|
|
142
|
+
method: "PUT",
|
|
143
|
+
key: "account-metadata",
|
|
144
|
+
body: { metadata: e },
|
|
145
|
+
headers: ["auth"]
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
on(e, t) {
|
|
149
|
+
return this.listeners[e].push(t), () => {
|
|
150
|
+
this.listeners[e] = this.listeners[e].filter((s) => s !== t);
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
removeAllListeners() {
|
|
154
|
+
Object.keys(this.listeners).forEach((t) => {
|
|
155
|
+
this.listeners[t] = [];
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
async requestEmailOtp({ email: e, account: t }) {
|
|
159
|
+
const s = await this.request({
|
|
160
|
+
method: "POST",
|
|
161
|
+
key: "otp",
|
|
162
|
+
body: { email: e, account: t }
|
|
163
|
+
});
|
|
164
|
+
return this.otpUuid = s.uuid, this.messenger.resources = [`email:${e}`], s;
|
|
165
|
+
}
|
|
166
|
+
confirmEmailOtp({ code: e }) {
|
|
167
|
+
return this.request({
|
|
168
|
+
method: "PUT",
|
|
169
|
+
key: "otp",
|
|
170
|
+
body: { code: e },
|
|
171
|
+
headers: ["otp"]
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
async request({ method: e, key: t, query: s, body: n, headers: o }) {
|
|
175
|
+
var f;
|
|
176
|
+
const { projectId: r, st: h, sv: S } = this.getSDKProperties(), a = new URL(`${k.W3M_API_URL}/auth/v1/${String(t)}`);
|
|
177
|
+
a.searchParams.set("projectId", r), a.searchParams.set("st", h), a.searchParams.set("sv", S), s && Object.entries(s).forEach(([i, l]) => a.searchParams.set(i, String(l)));
|
|
178
|
+
const c = await fetch(a, {
|
|
179
|
+
method: e,
|
|
180
|
+
body: n ? JSON.stringify(n) : void 0,
|
|
181
|
+
headers: Array.isArray(o) ? o.reduce((i, l) => {
|
|
182
|
+
switch (l) {
|
|
183
|
+
case "nonce":
|
|
184
|
+
i["x-nonce-jwt"] = `Bearer ${this.getStorageToken(this.localNonceStorageKey)}`;
|
|
185
|
+
break;
|
|
186
|
+
case "auth":
|
|
187
|
+
i.Authorization = `Bearer ${this.getStorageToken(this.localAuthStorageKey)}`;
|
|
188
|
+
break;
|
|
189
|
+
case "otp":
|
|
190
|
+
this.otpUuid && (i["x-otp"] = this.otpUuid);
|
|
191
|
+
break;
|
|
192
|
+
}
|
|
193
|
+
return i;
|
|
194
|
+
}, {}) : void 0
|
|
195
|
+
});
|
|
196
|
+
if (!c.ok)
|
|
197
|
+
throw new Error(await c.text());
|
|
198
|
+
return (f = c.headers.get("content-type")) != null && f.includes("application/json") ? c.json() : null;
|
|
199
|
+
}
|
|
200
|
+
getStorageToken(e) {
|
|
201
|
+
return u.getItem(e);
|
|
202
|
+
}
|
|
203
|
+
setStorageToken(e, t) {
|
|
204
|
+
u.setItem(t, e);
|
|
205
|
+
}
|
|
206
|
+
clearStorageTokens() {
|
|
207
|
+
this.otpUuid = null, u.removeItem(this.localAuthStorageKey), u.removeItem(this.localNonceStorageKey), this.emit("sessionChanged", void 0);
|
|
208
|
+
}
|
|
209
|
+
async getNonce() {
|
|
210
|
+
const { nonce: e, token: t } = await this.request({
|
|
211
|
+
method: "GET",
|
|
212
|
+
key: "nonce"
|
|
213
|
+
});
|
|
214
|
+
return this.setStorageToken(t, this.localNonceStorageKey), e;
|
|
215
|
+
}
|
|
216
|
+
getClientId() {
|
|
217
|
+
return N.state.clientId;
|
|
218
|
+
}
|
|
219
|
+
getWalletInfo() {
|
|
220
|
+
var o;
|
|
221
|
+
const e = (o = g.getAccountData()) == null ? void 0 : o.connectedWalletInfo;
|
|
222
|
+
if (!e)
|
|
223
|
+
return;
|
|
224
|
+
if ("social" in e && "identifier" in e) {
|
|
225
|
+
const r = e.social, h = e.identifier;
|
|
226
|
+
return { type: "social", social: r, identifier: h };
|
|
227
|
+
}
|
|
228
|
+
const { name: t, icon: s } = e;
|
|
229
|
+
let n = "unknown";
|
|
230
|
+
switch (e.type) {
|
|
231
|
+
case "EXTERNAL":
|
|
232
|
+
case "INJECTED":
|
|
233
|
+
case "ANNOUNCED":
|
|
234
|
+
n = "extension";
|
|
235
|
+
break;
|
|
236
|
+
case "WALLET_CONNECT":
|
|
237
|
+
n = "walletconnect";
|
|
238
|
+
break;
|
|
239
|
+
default:
|
|
240
|
+
n = "unknown";
|
|
241
|
+
}
|
|
242
|
+
return {
|
|
243
|
+
type: n,
|
|
244
|
+
name: t,
|
|
245
|
+
icon: s
|
|
246
|
+
};
|
|
247
|
+
}
|
|
248
|
+
getSDKProperties() {
|
|
249
|
+
return m._getSdkProperties();
|
|
250
|
+
}
|
|
251
|
+
emit(e, t) {
|
|
252
|
+
this.listeners[e].forEach((s) => s(t));
|
|
253
|
+
}
|
|
254
|
+
setAppKitAccountUser(e) {
|
|
255
|
+
const { email: t } = e;
|
|
256
|
+
t && Object.values(k.CHAIN).forEach((s) => {
|
|
257
|
+
g.setAccountProp("user", { email: t }, s);
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
function I(d) {
|
|
262
|
+
const e = d.split(".");
|
|
263
|
+
if (e.length !== 3)
|
|
264
|
+
throw new Error("Invalid token");
|
|
265
|
+
const t = e[1];
|
|
266
|
+
if (typeof t != "string")
|
|
267
|
+
throw new Error("Invalid token");
|
|
268
|
+
const s = t.replace(/-/gu, "+").replace(/_/gu, "/"), n = s.padEnd(s.length + (4 - s.length % 4) % 4, "=");
|
|
269
|
+
return JSON.parse(atob(n));
|
|
270
|
+
}
|
|
271
|
+
export {
|
|
272
|
+
E as R,
|
|
273
|
+
p as a
|
|
274
|
+
};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";const s=require("./index-CjZQCcwG.js");class f{constructor(e){this.getNonce=e.getNonce}async createMessage(e){const t={accountAddress:e.accountAddress,chainId:e.chainId,version:"1",domain:typeof document>"u"?"Unknown Domain":document.location.host,uri:typeof document>"u"?"Unknown URI":document.location.href,resources:this.resources,nonce:await this.getNonce(e),issuedAt:this.stringifyDate(new Date),statement:void 0,expirationTime:void 0,notBefore:void 0};return Object.assign(t,{toString:()=>this.stringify(t)})}stringify(e){var n;const t=this.getNetworkName(e.chainId);return[`${e.domain} wants you to sign in with your ${t} account:`,e.accountAddress,e.statement?`
|
|
2
|
+
${e.statement}
|
|
3
|
+
`:"",`URI: ${e.uri}`,`Version: ${e.version}`,`Chain ID: ${e.chainId}`,`Nonce: ${e.nonce}`,e.issuedAt&&`Issued At: ${e.issuedAt}`,e.expirationTime&&`Expiration Time: ${e.expirationTime}`,e.notBefore&&`Not Before: ${e.notBefore}`,e.requestId&&`Request ID: ${e.requestId}`,((n=e.resources)==null?void 0:n.length)&&e.resources.reduce((o,r)=>`${o}
|
|
4
|
+
- ${r}`,"Resources:")].filter(o=>typeof o=="string").join(`
|
|
5
|
+
`).trim()}getNetworkName(e){const t=s.ChainController.getAllRequestedCaipNetworks();return s.NetworkUtil.getNetworkNameByCaipNetworkId(t,e)}stringifyDate(e){return e.toISOString()}}class S{constructor(e={}){this.otpUuid=null,this.listeners={sessionChanged:[]},this.localAuthStorageKey=e.localAuthStorageKey||s.SafeLocalStorageKeys.SIWX_AUTH_TOKEN,this.localNonceStorageKey=e.localNonceStorageKey||s.SafeLocalStorageKeys.SIWX_NONCE_TOKEN,this.required=e.required??!0,this.messenger=new f({getNonce:this.getNonce.bind(this)})}async createMessage(e){return this.messenger.createMessage(e)}async addSession(e){const t=await this.request({method:"POST",key:"authenticate",body:{data:e.data,message:e.message,signature:e.signature,clientId:this.getClientId(),walletInfo:this.getWalletInfo()},headers:["nonce","otp"]});this.setStorageToken(t.token,this.localAuthStorageKey),this.emit("sessionChanged",e),this.setAppKitAccountUser(w(t.token)),this.otpUuid=null}async getSessions(e,t){try{if(!this.getStorageToken(this.localAuthStorageKey))return[];const n=await this.request({method:"GET",key:"me",query:{},headers:["auth"]});if(!n)return[];const o=n.address.toLowerCase()===t.toLowerCase(),r=n.caip2Network===e;if(!o||!r)return[];const i={data:{accountAddress:n.address,chainId:n.caip2Network},message:"",signature:""};return this.emit("sessionChanged",i),this.setAppKitAccountUser(n),[i]}catch{return[]}}async revokeSession(e,t){return Promise.resolve(this.clearStorageTokens())}async setSessions(e){if(e.length===0)this.clearStorageTokens();else{const t=e.find(n=>{var o;return n.data.chainId===((o=s.getActiveCaipNetwork())==null?void 0:o.caipNetworkId)})||e[0];await this.addSession(t)}}getRequired(){return this.required}async getSessionAccount(){if(!this.getStorageToken(this.localAuthStorageKey))throw new Error("Not authenticated");return this.request({method:"GET",key:"me",body:void 0,query:{includeAppKitAccount:!0},headers:["auth"]})}async setSessionAccountMetadata(e=null){if(!this.getStorageToken(this.localAuthStorageKey))throw new Error("Not authenticated");return this.request({method:"PUT",key:"account-metadata",body:{metadata:e},headers:["auth"]})}on(e,t){return this.listeners[e].push(t),()=>{this.listeners[e]=this.listeners[e].filter(n=>n!==t)}}removeAllListeners(){Object.keys(this.listeners).forEach(t=>{this.listeners[t]=[]})}async requestEmailOtp({email:e,account:t}){const n=await this.request({method:"POST",key:"otp",body:{email:e,account:t}});return this.otpUuid=n.uuid,this.messenger.resources=[`email:${e}`],n}confirmEmailOtp({code:e}){return this.request({method:"PUT",key:"otp",body:{code:e},headers:["otp"]})}async request({method:e,key:t,query:n,body:o,headers:r}){var g;const{projectId:i,st:h,sv:y}=this.getSDKProperties(),c=new URL(`${s.ConstantsUtil.W3M_API_URL}/auth/v1/${String(t)}`);c.searchParams.set("projectId",i),c.searchParams.set("st",h),c.searchParams.set("sv",y),n&&Object.entries(n).forEach(([a,l])=>c.searchParams.set(a,String(l)));const u=await fetch(c,{method:e,body:o?JSON.stringify(o):void 0,headers:Array.isArray(r)?r.reduce((a,l)=>{switch(l){case"nonce":a["x-nonce-jwt"]=`Bearer ${this.getStorageToken(this.localNonceStorageKey)}`;break;case"auth":a.Authorization=`Bearer ${this.getStorageToken(this.localAuthStorageKey)}`;break;case"otp":this.otpUuid&&(a["x-otp"]=this.otpUuid);break}return a},{}):void 0});if(!u.ok)throw new Error(await u.text());return(g=u.headers.get("content-type"))!=null&&g.includes("application/json")?u.json():null}getStorageToken(e){return s.SafeLocalStorage.getItem(e)}setStorageToken(e,t){s.SafeLocalStorage.setItem(t,e)}clearStorageTokens(){this.otpUuid=null,s.SafeLocalStorage.removeItem(this.localAuthStorageKey),s.SafeLocalStorage.removeItem(this.localNonceStorageKey),this.emit("sessionChanged",void 0)}async getNonce(){const{nonce:e,token:t}=await this.request({method:"GET",key:"nonce"});return this.setStorageToken(t,this.localNonceStorageKey),e}getClientId(){return s.BlockchainApiController.state.clientId}getWalletInfo(){var r;const e=(r=s.ChainController.getAccountData())==null?void 0:r.connectedWalletInfo;if(!e)return;if("social"in e&&"identifier"in e){const i=e.social,h=e.identifier;return{type:"social",social:i,identifier:h}}const{name:t,icon:n}=e;let o="unknown";switch(e.type){case"EXTERNAL":case"INJECTED":case"ANNOUNCED":o="extension";break;case"WALLET_CONNECT":o="walletconnect";break;default:o="unknown"}return{type:o,name:t,icon:n}}getSDKProperties(){return s.ApiController._getSdkProperties()}emit(e,t){this.listeners[e].forEach(n=>n(t))}setAppKitAccountUser(e){const{email:t}=e;t&&Object.values(s.ConstantsUtil.CHAIN).forEach(n=>{s.ChainController.setAccountProp("user",{email:t},n)})}}function w(d){const e=d.split(".");if(e.length!==3)throw new Error("Invalid token");const t=e[1];if(typeof t!="string")throw new Error("Invalid token");const n=t.replace(/-/gu,"+").replace(/_/gu,"/"),o=n.padEnd(n.length+(4-n.length%4)%4,"=");return JSON.parse(atob(o))}exports.ReownAuthentication=S;exports.ReownAuthenticationMessenger=f;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const o=require("./index-CjZQCcwG.js"),A={getGasPriceInEther(n,r){const t=r*n;return Number(t)/1e18},getGasPriceInUSD(n,r,t){const s=A.getGasPriceInEther(r,t);return o.NumberUtil.bigNumber(n).times(s).toNumber()},getPriceImpact({sourceTokenAmount:n,sourceTokenPriceInUSD:r,toTokenPriceInUSD:t,toTokenAmount:s}){const l=o.NumberUtil.bigNumber(n).times(r),i=o.NumberUtil.bigNumber(s).times(t);return l.minus(i).div(l).times(100).toNumber()},getMaxSlippage(n,r){const t=o.NumberUtil.bigNumber(n).div(100);return o.NumberUtil.multiply(r,t).toNumber()},getProviderFee(n,r=.0085){return o.NumberUtil.bigNumber(n).times(r).toString()},isInsufficientNetworkTokenForGas(n,r){const t=r||"0";return o.NumberUtil.bigNumber(n).eq(0)?!0:o.NumberUtil.bigNumber(o.NumberUtil.bigNumber(t)).gt(n)},isInsufficientSourceTokenForSwap(n,r,t){var i,d;const s=(d=(i=t==null?void 0:t.find(k=>k.address===r))==null?void 0:i.quantity)==null?void 0:d.numeric;return o.NumberUtil.bigNumber(s||"0").lt(n)}},N=15e4,y=6,T={initializing:!1,initialized:!1,loadingPrices:!1,loadingQuote:!1,loadingApprovalTransaction:!1,loadingBuildTransaction:!1,loadingTransaction:!1,switchingTokens:!1,fetchError:!1,approvalTransaction:void 0,swapTransaction:void 0,transactionError:void 0,sourceToken:void 0,sourceTokenAmount:"",sourceTokenPriceInUSD:0,toToken:void 0,toTokenAmount:"",toTokenPriceInUSD:0,networkPrice:"0",networkBalanceInUSD:"0",networkTokenSymbol:"",inputError:void 0,slippage:o.ConstantsUtil$1.CONVERT_SLIPPAGE_TOLERANCE,tokens:void 0,popularTokens:void 0,suggestedTokens:void 0,foundTokens:void 0,myTokensWithBalance:void 0,tokensPriceMap:{},gasFee:"0",gasPriceInUSD:0,priceImpact:void 0,maxSlippage:void 0,providerFee:void 0},e=o.proxy({...T}),h={state:e,subscribe(n){return o.subscribe(e,()=>n(e))},subscribeKey(n,r){return o.subscribeKey(e,n,r)},getParams(){var c,u,p,g,w,f,S,C,P;const n=o.ChainController.state.activeChain,r=((c=o.ChainController.getAccountData(n))==null?void 0:c.caipAddress)??o.ChainController.state.activeCaipAddress,t=o.CoreHelperUtil.getPlainAddress(r),s=o.getActiveNetworkTokenAddress(),l=o.ConnectorController.getConnectorId(o.ChainController.state.activeChain);if(!t)throw new Error("No address found to swap the tokens from.");const i=!((u=e.toToken)!=null&&u.address)||!((p=e.toToken)!=null&&p.decimals),d=!((g=e.sourceToken)!=null&&g.address)||!((w=e.sourceToken)!=null&&w.decimals)||!o.NumberUtil.bigNumber(e.sourceTokenAmount).gt(0),k=!e.sourceTokenAmount;return{networkAddress:s,fromAddress:t,fromCaipAddress:r,sourceTokenAddress:(f=e.sourceToken)==null?void 0:f.address,toTokenAddress:(S=e.toToken)==null?void 0:S.address,toTokenAmount:e.toTokenAmount,toTokenDecimals:(C=e.toToken)==null?void 0:C.decimals,sourceTokenAmount:e.sourceTokenAmount,sourceTokenDecimals:(P=e.sourceToken)==null?void 0:P.decimals,invalidToToken:i,invalidSourceToken:d,invalidSourceTokenAmount:k,availableToSwap:r&&!i&&!d&&!k,isAuthConnector:l===o.ConstantsUtil.CONNECTOR_ID.AUTH}},async setSourceToken(n){if(!n){e.sourceToken=n,e.sourceTokenAmount="",e.sourceTokenPriceInUSD=0;return}e.sourceToken=n,await a.setTokenPrice(n.address,"sourceToken")},setSourceTokenAmount(n){e.sourceTokenAmount=n},async setToToken(n){if(!n){e.toToken=n,e.toTokenAmount="",e.toTokenPriceInUSD=0;return}e.toToken=n,await a.setTokenPrice(n.address,"toToken")},setToTokenAmount(n){e.toTokenAmount=n?o.NumberUtil.toFixed(n,y):""},async setTokenPrice(n,r){let t=e.tokensPriceMap[n]||0;t||(e.loadingPrices=!0,t=await a.getAddressPrice(n)),r==="sourceToken"?e.sourceTokenPriceInUSD=t:r==="toToken"&&(e.toTokenPriceInUSD=t),e.loadingPrices&&(e.loadingPrices=!1),a.getParams().availableToSwap&&!e.switchingTokens&&a.swapTokens()},async switchTokens(){if(!(e.initializing||!e.initialized||e.switchingTokens)){e.switchingTokens=!0;try{const n=e.toToken?{...e.toToken}:void 0,r=e.sourceToken?{...e.sourceToken}:void 0,t=n&&e.toTokenAmount===""?"1":e.toTokenAmount;a.setSourceTokenAmount(t),a.setToTokenAmount(""),await a.setSourceToken(n),await a.setToToken(r),e.switchingTokens=!1,a.swapTokens()}catch(n){throw e.switchingTokens=!1,n}}},resetState(){e.myTokensWithBalance=T.myTokensWithBalance,e.tokensPriceMap=T.tokensPriceMap,e.initialized=T.initialized,e.initializing=T.initializing,e.switchingTokens=T.switchingTokens,e.sourceToken=T.sourceToken,e.sourceTokenAmount=T.sourceTokenAmount,e.sourceTokenPriceInUSD=T.sourceTokenPriceInUSD,e.toToken=T.toToken,e.toTokenAmount=T.toTokenAmount,e.toTokenPriceInUSD=T.toTokenPriceInUSD,e.networkPrice=T.networkPrice,e.networkTokenSymbol=T.networkTokenSymbol,e.networkBalanceInUSD=T.networkBalanceInUSD,e.inputError=T.inputError},resetValues(){var t;const{networkAddress:n}=a.getParams(),r=(t=e.tokens)==null?void 0:t.find(s=>s.address===n);a.setSourceToken(r),a.setToToken(void 0)},getApprovalLoadingState(){return e.loadingApprovalTransaction},clearError(){e.transactionError=void 0},async initializeState(){if(!e.initializing){if(e.initializing=!0,!e.initialized)try{await a.fetchTokens(),e.initialized=!0}catch{e.initialized=!1,o.SnackController.showError("Failed to initialize swap"),o.RouterController.goBack()}e.initializing=!1}},async fetchTokens(){var t;const{networkAddress:n}=a.getParams();await a.getNetworkTokenPrice(),await a.getMyTokensWithBalance();const r=(t=e.myTokensWithBalance)==null?void 0:t.find(s=>s.address===n);r&&(e.networkTokenSymbol=r.symbol,a.setSourceToken(r),a.setSourceTokenAmount("0"))},async getTokenList(){var r,t;const n=(r=o.ChainController.state.activeCaipNetwork)==null?void 0:r.caipNetworkId;if(!(e.caipNetworkId===n&&e.tokens))try{e.tokensLoading=!0;const s=await o.SwapApiUtil.getTokenList(n);e.tokens=s,e.caipNetworkId=n,e.popularTokens=s.sort((c,u)=>c.symbol<u.symbol?-1:c.symbol>u.symbol?1:0);const i=(n&&((t=o.ConstantsUtil$1.SUGGESTED_TOKENS_BY_CHAIN)==null?void 0:t[n])||[]).map(c=>s.find(u=>u.symbol===c)).filter(c=>!!c),k=(o.ConstantsUtil$1.SWAP_SUGGESTED_TOKENS||[]).map(c=>s.find(u=>u.symbol===c)).filter(c=>!!c).filter(c=>!i.some(u=>u.address===c.address));e.suggestedTokens=[...i,...k]}catch{e.tokens=[],e.popularTokens=[],e.suggestedTokens=[]}finally{e.tokensLoading=!1}},async getAddressPrice(n){var c,u;const r=e.tokensPriceMap[n];if(r)return r;const t=await o.BlockchainApiController.fetchTokenPrice({addresses:[n]}),s=(t==null?void 0:t.fungibles)||[],l=[...e.tokens||[],...e.myTokensWithBalance||[]],i=(c=l==null?void 0:l.find(p=>p.address===n))==null?void 0:c.symbol,d=((u=s.find(p=>p.symbol.toLowerCase()===(i==null?void 0:i.toLowerCase())))==null?void 0:u.price)||0,k=parseFloat(d.toString());return e.tokensPriceMap[n]=k,k},async getNetworkTokenPrice(){var l;const{networkAddress:n}=a.getParams(),t=(l=(await o.BlockchainApiController.fetchTokenPrice({addresses:[n]}).catch(()=>(o.SnackController.showError("Failed to fetch network token price"),{fungibles:[]}))).fungibles)==null?void 0:l[0],s=(t==null?void 0:t.price.toString())||"0";e.tokensPriceMap[n]=parseFloat(s),e.networkTokenSymbol=(t==null?void 0:t.symbol)||"",e.networkPrice=s},async getMyTokensWithBalance(n){var s;const r=await o.BalanceUtil.getMyTokensWithBalance({forceUpdate:n,caipNetwork:o.ChainController.state.activeCaipNetwork,address:(s=o.ChainController.getAccountData())==null?void 0:s.address}),t=o.SwapApiUtil.mapBalancesToSwapTokens(r);t&&(await a.getInitialGasPrice(),a.setBalances(t))},setBalances(n){const{networkAddress:r}=a.getParams(),t=o.ChainController.state.activeCaipNetwork;if(!t)return;const s=n.find(l=>l.address===r);n.forEach(l=>{e.tokensPriceMap[l.address]=l.price||0}),e.myTokensWithBalance=n.filter(l=>l.address.startsWith(t.caipNetworkId)),e.networkBalanceInUSD=s?o.NumberUtil.multiply(s.quantity.numeric,s.price).toString():"0"},async getInitialGasPrice(){var r,t;const n=await o.SwapApiUtil.fetchGasPrice();if(!n)return{gasPrice:null,gasPriceInUSD:null};switch((t=(r=o.ChainController.state)==null?void 0:r.activeCaipNetwork)==null?void 0:t.chainNamespace){case o.ConstantsUtil.CHAIN.SOLANA:return e.gasFee=n.standard??"0",e.gasPriceInUSD=o.NumberUtil.multiply(n.standard,e.networkPrice).div(1e9).toNumber(),{gasPrice:BigInt(e.gasFee),gasPriceInUSD:Number(e.gasPriceInUSD)};case o.ConstantsUtil.CHAIN.EVM:default:const s=n.standard??"0",l=BigInt(s),i=BigInt(N),d=A.getGasPriceInUSD(e.networkPrice,i,l);return e.gasFee=s,e.gasPriceInUSD=d,{gasPrice:l,gasPriceInUSD:d}}},async swapTokens(){var i,d,k;const n=(i=o.ChainController.getAccountData())==null?void 0:i.address,r=e.sourceToken,t=e.toToken,s=o.NumberUtil.bigNumber(e.sourceTokenAmount).gt(0);if(s||a.setToTokenAmount(""),!t||!r||e.loadingPrices||!s||!n)return;e.loadingQuote=!0;const l=o.NumberUtil.bigNumber(e.sourceTokenAmount).times(10**r.decimals).round(0).toFixed(0);try{const c=await o.BlockchainApiController.fetchSwapQuote({userAddress:n,from:r.address,to:t.address,gasPrice:e.gasFee,amount:l.toString()});e.loadingQuote=!1;const u=(k=(d=c==null?void 0:c.quotes)==null?void 0:d[0])==null?void 0:k.toAmount;if(!u){o.AlertController.open({displayMessage:"Incorrect amount",debugMessage:"Please enter a valid amount"},"error");return}const p=o.NumberUtil.bigNumber(u).div(10**t.decimals).toString();a.setToTokenAmount(p),a.hasInsufficientToken(e.sourceTokenAmount,r.address)?e.inputError="Insufficient balance":(e.inputError=void 0,a.setTransactionDetails())}catch(c){const u=await o.SwapApiUtil.handleSwapError(c);e.loadingQuote=!1,e.inputError=u||"Insufficient balance"}},async getTransaction(){const{fromCaipAddress:n,availableToSwap:r}=a.getParams(),t=e.sourceToken,s=e.toToken;if(!(!n||!r||!t||!s||e.loadingQuote))try{e.loadingBuildTransaction=!0;const l=await o.SwapApiUtil.fetchSwapAllowance({userAddress:n,tokenAddress:t.address,sourceTokenAmount:e.sourceTokenAmount,sourceTokenDecimals:t.decimals});let i;return l?i=await a.createSwapTransaction():i=await a.createAllowanceTransaction(),e.loadingBuildTransaction=!1,e.fetchError=!1,i}catch{o.RouterController.goBack(),o.SnackController.showError("Failed to check allowance"),e.loadingBuildTransaction=!1,e.approvalTransaction=void 0,e.swapTransaction=void 0,e.fetchError=!0;return}},async createAllowanceTransaction(){const{fromCaipAddress:n,sourceTokenAddress:r,toTokenAddress:t}=a.getParams();if(!(!n||!t)){if(!r)throw new Error("createAllowanceTransaction - No source token address found.");try{const s=await o.BlockchainApiController.generateApproveCalldata({from:r,to:t,userAddress:n}),l=o.CoreHelperUtil.getPlainAddress(s.tx.from);if(!l)throw new Error("SwapController:createAllowanceTransaction - address is required");const i={data:s.tx.data,to:l,gasPrice:BigInt(s.tx.eip155.gasPrice),value:BigInt(s.tx.value),toAmount:e.toTokenAmount};return e.swapTransaction=void 0,e.approvalTransaction={data:i.data,to:i.to,gasPrice:i.gasPrice,value:i.value,toAmount:i.toAmount},{data:i.data,to:i.to,gasPrice:i.gasPrice,value:i.value,toAmount:i.toAmount}}catch{o.RouterController.goBack(),o.SnackController.showError("Failed to create approval transaction"),e.approvalTransaction=void 0,e.swapTransaction=void 0,e.fetchError=!0;return}}},async createSwapTransaction(){var d;const{networkAddress:n,fromCaipAddress:r,sourceTokenAmount:t}=a.getParams(),s=e.sourceToken,l=e.toToken;if(!r||!t||!s||!l)return;const i=(d=o.ConnectionController.parseUnits(t,s.decimals))==null?void 0:d.toString();try{const k=await o.BlockchainApiController.generateSwapCalldata({userAddress:r,from:s.address,to:l.address,amount:i,disableEstimate:!0}),c=s.address===n,u=BigInt(k.tx.eip155.gas),p=BigInt(k.tx.eip155.gasPrice),g=o.CoreHelperUtil.getPlainAddress(k.tx.to);if(!g)throw new Error("SwapController:createSwapTransaction - address is required");const w={data:k.tx.data,to:g,gas:u,gasPrice:p,value:BigInt(c?i??"0":"0"),toAmount:e.toTokenAmount};return e.gasPriceInUSD=A.getGasPriceInUSD(e.networkPrice,u,p),e.approvalTransaction=void 0,e.swapTransaction=w,w}catch{o.RouterController.goBack(),o.SnackController.showError("Failed to create transaction"),e.approvalTransaction=void 0,e.swapTransaction=void 0,e.fetchError=!0;return}},onEmbeddedWalletApprovalSuccess(){o.SnackController.showLoading("Approve limit increase in your wallet"),o.RouterController.replace("SwapPreview")},async sendTransactionForApproval(n){var l,i,d;const{fromAddress:r,isAuthConnector:t}=a.getParams();e.loadingApprovalTransaction=!0,t?o.RouterController.pushTransactionStack({onSuccess:a.onEmbeddedWalletApprovalSuccess}):o.SnackController.showLoading("Approve limit increase in your wallet");try{await o.ConnectionController.sendTransaction({address:r,to:n.to,data:n.data,value:n.value,chainNamespace:o.ConstantsUtil.CHAIN.EVM}),await a.swapTokens(),await a.getTransaction(),e.approvalTransaction=void 0,e.loadingApprovalTransaction=!1}catch(k){const c=k;e.transactionError=c==null?void 0:c.displayMessage,e.loadingApprovalTransaction=!1,o.SnackController.showError((c==null?void 0:c.displayMessage)||"Transaction error"),o.EventsController.sendEvent({type:"track",event:"SWAP_APPROVAL_ERROR",properties:{message:(c==null?void 0:c.displayMessage)||(c==null?void 0:c.message)||"Unknown",network:((l=o.ChainController.state.activeCaipNetwork)==null?void 0:l.caipNetworkId)||"",swapFromToken:((i=a.state.sourceToken)==null?void 0:i.symbol)||"",swapToToken:((d=a.state.toToken)==null?void 0:d.symbol)||"",swapFromAmount:a.state.sourceTokenAmount||"",swapToAmount:a.state.toTokenAmount||"",isSmartAccount:o.getPreferredAccountType(o.ConstantsUtil.CHAIN.EVM)===o.W3mFrameRpcConstants.ACCOUNT_TYPES.SMART_ACCOUNT}})}},async sendTransactionForSwap(n){var d,k,c,u,p,g,w,f,S,C,P,b;if(!n)return;const{fromAddress:r,toTokenAmount:t,isAuthConnector:s}=a.getParams();e.loadingTransaction=!0;const l=`Swapping ${(d=e.sourceToken)==null?void 0:d.symbol} to ${o.NumberUtil.formatNumberToLocalString(t,3)} ${(k=e.toToken)==null?void 0:k.symbol}`,i=`Swapped ${(c=e.sourceToken)==null?void 0:c.symbol} to ${o.NumberUtil.formatNumberToLocalString(t,3)} ${(u=e.toToken)==null?void 0:u.symbol}`;s?o.RouterController.pushTransactionStack({onSuccess(){o.RouterController.replace("Account"),o.SnackController.showLoading(l),h.resetState()}}):o.SnackController.showLoading("Confirm transaction in your wallet");try{const I=[(p=e.sourceToken)==null?void 0:p.address,(g=e.toToken)==null?void 0:g.address].join(","),m=await o.ConnectionController.sendTransaction({address:r,to:n.to,data:n.data,value:n.value,chainNamespace:o.ConstantsUtil.CHAIN.EVM});return e.loadingTransaction=!1,o.SnackController.showSuccess(i),o.EventsController.sendEvent({type:"track",event:"SWAP_SUCCESS",properties:{network:((w=o.ChainController.state.activeCaipNetwork)==null?void 0:w.caipNetworkId)||"",swapFromToken:((f=a.state.sourceToken)==null?void 0:f.symbol)||"",swapToToken:((S=a.state.toToken)==null?void 0:S.symbol)||"",swapFromAmount:a.state.sourceTokenAmount||"",swapToAmount:a.state.toTokenAmount||"",isSmartAccount:o.getPreferredAccountType(o.ConstantsUtil.CHAIN.EVM)===o.W3mFrameRpcConstants.ACCOUNT_TYPES.SMART_ACCOUNT}}),h.resetState(),s||o.RouterController.replace("Account"),h.getMyTokensWithBalance(I),m}catch(I){const m=I;e.transactionError=m==null?void 0:m.displayMessage,e.loadingTransaction=!1,o.SnackController.showError((m==null?void 0:m.displayMessage)||"Transaction error"),o.EventsController.sendEvent({type:"track",event:"SWAP_ERROR",properties:{message:(m==null?void 0:m.displayMessage)||(m==null?void 0:m.message)||"Unknown",network:((C=o.ChainController.state.activeCaipNetwork)==null?void 0:C.caipNetworkId)||"",swapFromToken:((P=a.state.sourceToken)==null?void 0:P.symbol)||"",swapToToken:((b=a.state.toToken)==null?void 0:b.symbol)||"",swapFromAmount:a.state.sourceTokenAmount||"",swapToAmount:a.state.toTokenAmount||"",isSmartAccount:o.getPreferredAccountType(o.ConstantsUtil.CHAIN.EVM)===o.W3mFrameRpcConstants.ACCOUNT_TYPES.SMART_ACCOUNT}});return}},hasInsufficientToken(n,r){return A.isInsufficientSourceTokenForSwap(n,r,e.myTokensWithBalance)},setTransactionDetails(){const{toTokenAddress:n,toTokenDecimals:r}=a.getParams();!n||!r||(e.gasPriceInUSD=A.getGasPriceInUSD(e.networkPrice,BigInt(e.gasFee),BigInt(N)),e.priceImpact=A.getPriceImpact({sourceTokenAmount:e.sourceTokenAmount,sourceTokenPriceInUSD:e.sourceTokenPriceInUSD,toTokenPriceInUSD:e.toTokenPriceInUSD,toTokenAmount:e.toTokenAmount}),e.maxSlippage=A.getMaxSlippage(e.slippage,e.toTokenAmount),e.providerFee=A.getProviderFee(e.sourceTokenAmount))}},a=o.withErrorBoundary(h);exports.SwapController=a;
|