@nexus-cross/crossx-sdk-core 2.2.3-beta.4 → 2.2.3
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/adapters/confirmation/BrowserConfirmationAdapter.d.ts.map +1 -1
- package/dist/crossx.global +49 -38
- package/dist/index.cjs +47 -36
- package/dist/index.js +256 -230
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -82,7 +82,7 @@ const tt = {
|
|
|
82
82
|
rpcUrl: "https://saigon-testnet.roninchain.com/rpc",
|
|
83
83
|
testnet: !0
|
|
84
84
|
}
|
|
85
|
-
},
|
|
85
|
+
}, xo = Object.fromEntries(
|
|
86
86
|
Object.entries(tt).map(([s, e]) => [s, e.caipId])
|
|
87
87
|
), us = new Map(
|
|
88
88
|
Object.values(tt).map((s) => [s.caipId, s])
|
|
@@ -1406,7 +1406,7 @@ function qe(s, e, r, t = At) {
|
|
|
1406
1406
|
return;
|
|
1407
1407
|
}
|
|
1408
1408
|
}
|
|
1409
|
-
function
|
|
1409
|
+
function Os(s) {
|
|
1410
1410
|
const e = s.startsWith("0x") ? s.slice(2) : s;
|
|
1411
1411
|
if (!/^[0-9a-fA-F]+$/.test(e))
|
|
1412
1412
|
throw new f(
|
|
@@ -1419,7 +1419,7 @@ function Cs(s) {
|
|
|
1419
1419
|
`서명 길이가 유효하지 않습니다: ${Wt} hex 문자(65 바이트) 예상, 현재 ${e.length}`
|
|
1420
1420
|
);
|
|
1421
1421
|
}
|
|
1422
|
-
function
|
|
1422
|
+
function Cs(s) {
|
|
1423
1423
|
const e = s.startsWith("0x") ? s.slice(2) : s;
|
|
1424
1424
|
if (!/^[0-9a-fA-F]+$/.test(e))
|
|
1425
1425
|
throw new f(
|
|
@@ -3174,7 +3174,7 @@ const ke = class ke extends ys {
|
|
|
3174
3174
|
n.address
|
|
3175
3175
|
)
|
|
3176
3176
|
});
|
|
3177
|
-
return
|
|
3177
|
+
return Os(i.signature), {
|
|
3178
3178
|
chainId: e,
|
|
3179
3179
|
signature: i.signature,
|
|
3180
3180
|
address: n.address
|
|
@@ -3252,7 +3252,7 @@ const ke = class ke extends ys {
|
|
|
3252
3252
|
a
|
|
3253
3253
|
)
|
|
3254
3254
|
});
|
|
3255
|
-
return
|
|
3255
|
+
return Cs(o.signature), {
|
|
3256
3256
|
chainId: e,
|
|
3257
3257
|
signedTx: o.signature,
|
|
3258
3258
|
txHash: o.txHash ?? ""
|
|
@@ -4543,29 +4543,29 @@ function Jt(s, e) {
|
|
|
4543
4543
|
throw new Error("invert: does not exist");
|
|
4544
4544
|
return le(n, e);
|
|
4545
4545
|
}
|
|
4546
|
-
function
|
|
4546
|
+
function Ot(s, e, r) {
|
|
4547
4547
|
if (!s.eql(s.sqr(e), r))
|
|
4548
4548
|
throw new Error("Cannot find square root");
|
|
4549
4549
|
}
|
|
4550
|
-
function
|
|
4550
|
+
function Or(s, e) {
|
|
4551
4551
|
const r = (s.ORDER + re) / Tr, t = s.pow(e, r);
|
|
4552
|
-
return
|
|
4552
|
+
return Ot(s, t, e), t;
|
|
4553
4553
|
}
|
|
4554
4554
|
function En(s, e) {
|
|
4555
4555
|
const r = (s.ORDER - kr) / Rr, t = s.mul(e, Re), n = s.pow(t, r), i = s.mul(e, n), o = s.mul(s.mul(i, Re), n), a = s.mul(i, s.sub(o, s.ONE));
|
|
4556
|
-
return
|
|
4556
|
+
return Ot(s, a, e), a;
|
|
4557
4557
|
}
|
|
4558
4558
|
function An(s) {
|
|
4559
|
-
const e = st(s), r =
|
|
4559
|
+
const e = st(s), r = Cr(s), t = r(e, e.neg(e.ONE)), n = r(e, t), i = r(e, e.neg(t)), o = (s + vn) / Nr;
|
|
4560
4560
|
return (a, c) => {
|
|
4561
4561
|
let l = a.pow(c, o), u = a.mul(l, t);
|
|
4562
4562
|
const p = a.mul(l, n), g = a.mul(l, i), _ = a.eql(a.sqr(u), c), x = a.eql(a.sqr(p), c);
|
|
4563
4563
|
l = a.cmov(l, u, _), u = a.cmov(g, p, x);
|
|
4564
4564
|
const y = a.eql(a.sqr(u), c), v = a.cmov(l, u, y);
|
|
4565
|
-
return
|
|
4565
|
+
return Ot(a, v, c), v;
|
|
4566
4566
|
};
|
|
4567
4567
|
}
|
|
4568
|
-
function
|
|
4568
|
+
function Cr(s) {
|
|
4569
4569
|
if (s < Ir)
|
|
4570
4570
|
throw new Error("sqrt is not defined for small field");
|
|
4571
4571
|
let e = s - re, r = 0;
|
|
@@ -4577,7 +4577,7 @@ function Or(s) {
|
|
|
4577
4577
|
if (t++ > 1e3)
|
|
4578
4578
|
throw new Error("Cannot find square root: probably non-prime P");
|
|
4579
4579
|
if (r === 1)
|
|
4580
|
-
return
|
|
4580
|
+
return Or;
|
|
4581
4581
|
let i = n.pow(t, e);
|
|
4582
4582
|
const o = (e + re) / Re;
|
|
4583
4583
|
return function(c, l) {
|
|
@@ -4600,7 +4600,7 @@ function Or(s) {
|
|
|
4600
4600
|
};
|
|
4601
4601
|
}
|
|
4602
4602
|
function In(s) {
|
|
4603
|
-
return s % Tr === Ir ?
|
|
4603
|
+
return s % Tr === Ir ? Or : s % Rr === kr ? En : s % Nr === Sn ? An(s) : Cr(s);
|
|
4604
4604
|
}
|
|
4605
4605
|
const Tn = [
|
|
4606
4606
|
"create",
|
|
@@ -4656,7 +4656,7 @@ function Nn(s, e) {
|
|
|
4656
4656
|
const r = e !== void 0 ? e : s.toString(2).length, t = Math.ceil(r / 8);
|
|
4657
4657
|
return { nBitLength: r, nByteLength: t };
|
|
4658
4658
|
}
|
|
4659
|
-
class
|
|
4659
|
+
class On {
|
|
4660
4660
|
constructor(e, r = {}) {
|
|
4661
4661
|
P(this, "ORDER");
|
|
4662
4662
|
P(this, "BITS");
|
|
@@ -4769,7 +4769,7 @@ class Cn {
|
|
|
4769
4769
|
}
|
|
4770
4770
|
}
|
|
4771
4771
|
function st(s, e = {}) {
|
|
4772
|
-
return new
|
|
4772
|
+
return new On(s, e);
|
|
4773
4773
|
}
|
|
4774
4774
|
function Lr(s) {
|
|
4775
4775
|
if (typeof s != "bigint")
|
|
@@ -4781,7 +4781,7 @@ function Dr(s) {
|
|
|
4781
4781
|
const e = Lr(s);
|
|
4782
4782
|
return e + Math.ceil(e / 2);
|
|
4783
4783
|
}
|
|
4784
|
-
function
|
|
4784
|
+
function Cn(s, e, r = !1) {
|
|
4785
4785
|
X(s);
|
|
4786
4786
|
const t = s.length, n = Lr(e), i = Dr(e);
|
|
4787
4787
|
if (t < 16 || t < i || t > 1024)
|
|
@@ -5132,37 +5132,37 @@ function Un(s, e = {}) {
|
|
|
5132
5132
|
throw new Error("compression is not supported: Field does not have .isOdd()");
|
|
5133
5133
|
}
|
|
5134
5134
|
function p(H, m, w) {
|
|
5135
|
-
const { x: T, y:
|
|
5135
|
+
const { x: T, y: O } = m.toAffine(), F = t.toBytes(T);
|
|
5136
5136
|
if (Je(w, "isCompressed"), w) {
|
|
5137
5137
|
u();
|
|
5138
|
-
const $ = !t.isOdd(
|
|
5138
|
+
const $ = !t.isOdd(O);
|
|
5139
5139
|
return Se(Hr($), F);
|
|
5140
5140
|
} else
|
|
5141
|
-
return Se(Uint8Array.of(4), F, t.toBytes(
|
|
5141
|
+
return Se(Uint8Array.of(4), F, t.toBytes(O));
|
|
5142
5142
|
}
|
|
5143
5143
|
function g(H) {
|
|
5144
5144
|
X(H, void 0, "Point");
|
|
5145
|
-
const { publicKey: m, publicKeyUncompressed: w } = l, T = H.length,
|
|
5146
|
-
if (T === m && (
|
|
5145
|
+
const { publicKey: m, publicKeyUncompressed: w } = l, T = H.length, O = H[0], F = H.subarray(1);
|
|
5146
|
+
if (T === m && (O === 2 || O === 3)) {
|
|
5147
5147
|
const $ = t.fromBytes(F);
|
|
5148
5148
|
if (!t.isValid($))
|
|
5149
5149
|
throw new Error("bad point: is not on curve, wrong x");
|
|
5150
5150
|
const M = y($);
|
|
5151
|
-
let
|
|
5151
|
+
let C;
|
|
5152
5152
|
try {
|
|
5153
|
-
|
|
5153
|
+
C = t.sqrt(M);
|
|
5154
5154
|
} catch (E) {
|
|
5155
5155
|
const N = E instanceof Error ? ": " + E.message : "";
|
|
5156
5156
|
throw new Error("bad point: is not on curve, sqrt error" + N);
|
|
5157
5157
|
}
|
|
5158
5158
|
u();
|
|
5159
|
-
const W = t.isOdd(
|
|
5160
|
-
return (
|
|
5161
|
-
} else if (T === w &&
|
|
5162
|
-
const $ = t.BYTES, M = t.fromBytes(F.subarray(0, $)),
|
|
5163
|
-
if (!v(M,
|
|
5159
|
+
const W = t.isOdd(C);
|
|
5160
|
+
return (O & 1) === 1 !== W && (C = t.neg(C)), { x: $, y: C };
|
|
5161
|
+
} else if (T === w && O === 4) {
|
|
5162
|
+
const $ = t.BYTES, M = t.fromBytes(F.subarray(0, $)), C = t.fromBytes(F.subarray($, $ * 2));
|
|
5163
|
+
if (!v(M, C))
|
|
5164
5164
|
throw new Error("bad point: is not on curve");
|
|
5165
|
-
return { x: M, y:
|
|
5165
|
+
return { x: M, y: C };
|
|
5166
5166
|
} else
|
|
5167
5167
|
throw new Error(`bad point: got length ${T}, expected compressed=${m} or uncompressed=${w}`);
|
|
5168
5168
|
}
|
|
@@ -5195,15 +5195,15 @@ function Un(s, e = {}) {
|
|
|
5195
5195
|
return Bn(H, c.basises, n.ORDER);
|
|
5196
5196
|
}
|
|
5197
5197
|
const z = Xt((H, m) => {
|
|
5198
|
-
const { X: w, Y: T, Z:
|
|
5199
|
-
if (t.eql(
|
|
5198
|
+
const { X: w, Y: T, Z: O } = H;
|
|
5199
|
+
if (t.eql(O, t.ONE))
|
|
5200
5200
|
return { x: w, y: T };
|
|
5201
5201
|
const F = H.is0();
|
|
5202
|
-
m == null && (m = F ? t.ONE : t.inv(
|
|
5203
|
-
const $ = t.mul(w, m), M = t.mul(T, m),
|
|
5202
|
+
m == null && (m = F ? t.ONE : t.inv(O));
|
|
5203
|
+
const $ = t.mul(w, m), M = t.mul(T, m), C = t.mul(O, m);
|
|
5204
5204
|
if (F)
|
|
5205
5205
|
return { x: t.ZERO, y: t.ZERO };
|
|
5206
|
-
if (!t.eql(
|
|
5206
|
+
if (!t.eql(C, t.ONE))
|
|
5207
5207
|
throw new Error("invZ was invalid");
|
|
5208
5208
|
return { x: $, y: M };
|
|
5209
5209
|
}), Q = Xt((H) => {
|
|
@@ -5221,8 +5221,8 @@ function Un(s, e = {}) {
|
|
|
5221
5221
|
throw new Error("bad point: not in prime-order subgroup");
|
|
5222
5222
|
return !0;
|
|
5223
5223
|
});
|
|
5224
|
-
function q(H, m, w, T,
|
|
5225
|
-
return w = new J(t.mul(w.X, H), w.Y, w.Z), m = Ze(T, m), w = Ze(
|
|
5224
|
+
function q(H, m, w, T, O) {
|
|
5225
|
+
return w = new J(t.mul(w.X, H), w.Y, w.Z), m = Ze(T, m), w = Ze(O, w), m.add(w);
|
|
5226
5226
|
}
|
|
5227
5227
|
const B = class B {
|
|
5228
5228
|
/** Does NOT validate if the point is valid. Use `.assertValidity()`. */
|
|
@@ -5280,8 +5280,8 @@ function Un(s, e = {}) {
|
|
|
5280
5280
|
/** Compare one point to another. */
|
|
5281
5281
|
equals(m) {
|
|
5282
5282
|
L(m);
|
|
5283
|
-
const { X: w, Y: T, Z:
|
|
5284
|
-
return
|
|
5283
|
+
const { X: w, Y: T, Z: O } = this, { X: F, Y: $, Z: M } = m, C = t.eql(t.mul(w, M), t.mul(F, O)), W = t.eql(t.mul(T, M), t.mul($, O));
|
|
5284
|
+
return C && W;
|
|
5285
5285
|
}
|
|
5286
5286
|
/** Flips point to one corresponding to (x, -y) in Affine coordinates. */
|
|
5287
5287
|
negate() {
|
|
@@ -5292,9 +5292,9 @@ function Un(s, e = {}) {
|
|
|
5292
5292
|
// https://eprint.iacr.org/2015/1060, algorithm 3
|
|
5293
5293
|
// Cost: 8M + 3S + 3*a + 2*b3 + 15add.
|
|
5294
5294
|
double() {
|
|
5295
|
-
const { a: m, b: w } = i, T = t.mul(w, je), { X:
|
|
5296
|
-
let M = t.ZERO,
|
|
5297
|
-
return I = t.add(I, I), W = t.mul(
|
|
5295
|
+
const { a: m, b: w } = i, T = t.mul(w, je), { X: O, Y: F, Z: $ } = this;
|
|
5296
|
+
let M = t.ZERO, C = t.ZERO, W = t.ZERO, b = t.mul(O, O), E = t.mul(F, F), N = t.mul($, $), I = t.mul(O, F);
|
|
5297
|
+
return I = t.add(I, I), W = t.mul(O, $), W = t.add(W, W), M = t.mul(m, W), C = t.mul(T, N), C = t.add(M, C), M = t.sub(E, C), C = t.add(E, C), C = t.mul(M, C), M = t.mul(I, M), W = t.mul(T, W), N = t.mul(m, N), I = t.sub(b, N), I = t.mul(m, I), I = t.add(I, W), W = t.add(b, b), b = t.add(W, b), b = t.add(b, N), b = t.mul(b, I), C = t.add(C, b), N = t.mul(F, $), N = t.add(N, N), b = t.mul(N, I), M = t.sub(M, b), W = t.mul(N, E), W = t.add(W, W), W = t.add(W, W), new B(M, C, W);
|
|
5298
5298
|
}
|
|
5299
5299
|
// Renes-Costello-Batina exception-free addition formula.
|
|
5300
5300
|
// There is 30% faster Jacobian formula, but it is not complete.
|
|
@@ -5302,13 +5302,13 @@ function Un(s, e = {}) {
|
|
|
5302
5302
|
// Cost: 12M + 0S + 3*a + 3*b3 + 23add.
|
|
5303
5303
|
add(m) {
|
|
5304
5304
|
L(m);
|
|
5305
|
-
const { X: w, Y: T, Z:
|
|
5306
|
-
let
|
|
5305
|
+
const { X: w, Y: T, Z: O } = this, { X: F, Y: $, Z: M } = m;
|
|
5306
|
+
let C = t.ZERO, W = t.ZERO, b = t.ZERO;
|
|
5307
5307
|
const E = i.a, N = t.mul(i.b, je);
|
|
5308
|
-
let I = t.mul(w, F), U = t.mul(T, $), K = t.mul(
|
|
5309
|
-
j = t.mul(j, V), V = t.add(I, U), j = t.sub(j, V), V = t.add(w,
|
|
5308
|
+
let I = t.mul(w, F), U = t.mul(T, $), K = t.mul(O, M), j = t.add(w, T), V = t.add(F, $);
|
|
5309
|
+
j = t.mul(j, V), V = t.add(I, U), j = t.sub(j, V), V = t.add(w, O);
|
|
5310
5310
|
let Y = t.add(F, M);
|
|
5311
|
-
return V = t.mul(V, Y), Y = t.add(I, K), V = t.sub(V, Y), Y = t.add(T,
|
|
5311
|
+
return V = t.mul(V, Y), Y = t.add(I, K), V = t.sub(V, Y), Y = t.add(T, O), C = t.add($, M), Y = t.mul(Y, C), C = t.add(U, K), Y = t.sub(Y, C), b = t.mul(E, V), C = t.mul(N, K), b = t.add(C, b), C = t.sub(U, b), b = t.add(U, b), W = t.mul(C, b), U = t.add(I, I), U = t.add(U, I), K = t.mul(E, K), V = t.mul(N, V), U = t.add(U, K), K = t.sub(I, K), K = t.mul(E, K), V = t.add(V, K), I = t.mul(U, V), W = t.add(W, I), I = t.mul(Y, V), C = t.mul(j, C), C = t.sub(C, I), I = t.mul(j, U), b = t.mul(Y, b), b = t.add(b, I), new B(C, W, b);
|
|
5312
5312
|
}
|
|
5313
5313
|
subtract(m) {
|
|
5314
5314
|
return this.add(m.negate());
|
|
@@ -5329,16 +5329,16 @@ function Un(s, e = {}) {
|
|
|
5329
5329
|
const { endo: w } = e;
|
|
5330
5330
|
if (!n.isValidNot0(m))
|
|
5331
5331
|
throw new Error("invalid scalar: out of range");
|
|
5332
|
-
let T,
|
|
5332
|
+
let T, O;
|
|
5333
5333
|
const F = ($) => G.cached(this, $, (M) => Qt(B, M));
|
|
5334
5334
|
if (w) {
|
|
5335
|
-
const { k1neg: $, k1: M, k2neg:
|
|
5336
|
-
|
|
5335
|
+
const { k1neg: $, k1: M, k2neg: C, k2: W } = D(m), { p: b, f: E } = F(M), { p: N, f: I } = F(W);
|
|
5336
|
+
O = E.add(I), T = q(w.beta, b, N, $, C);
|
|
5337
5337
|
} else {
|
|
5338
5338
|
const { p: $, f: M } = F(m);
|
|
5339
|
-
T = $,
|
|
5339
|
+
T = $, O = M;
|
|
5340
5340
|
}
|
|
5341
|
-
return Qt(B, [T,
|
|
5341
|
+
return Qt(B, [T, O])[0];
|
|
5342
5342
|
}
|
|
5343
5343
|
/**
|
|
5344
5344
|
* Non-constant-time multiplication. Uses double-and-add algorithm.
|
|
@@ -5356,8 +5356,8 @@ function Un(s, e = {}) {
|
|
|
5356
5356
|
if (G.hasCache(this))
|
|
5357
5357
|
return this.multiply(m);
|
|
5358
5358
|
if (w) {
|
|
5359
|
-
const { k1neg:
|
|
5360
|
-
return q(w.beta,
|
|
5359
|
+
const { k1neg: O, k1: F, k2neg: $, k2: M } = D(m), { p1: C, p2: W } = Ln(B, T, F, M);
|
|
5360
|
+
return q(w.beta, C, W, O, $);
|
|
5361
5361
|
} else
|
|
5362
5362
|
return G.unsafe(T, m);
|
|
5363
5363
|
}
|
|
@@ -5435,7 +5435,7 @@ function Hn(s, e = {}) {
|
|
|
5435
5435
|
}
|
|
5436
5436
|
}
|
|
5437
5437
|
function a(_ = t(n.seed)) {
|
|
5438
|
-
return
|
|
5438
|
+
return Cn(X(_, n.seed, "seed"), r.ORDER);
|
|
5439
5439
|
}
|
|
5440
5440
|
function c(_, x = !0) {
|
|
5441
5441
|
return s.BASE.multiply(r.fromBytes(_)).toBytes(x);
|
|
@@ -5491,31 +5491,31 @@ function Wn(s, e, r = {}) {
|
|
|
5491
5491
|
}
|
|
5492
5492
|
function k(m, w) {
|
|
5493
5493
|
yt(w);
|
|
5494
|
-
const T = _.signature,
|
|
5495
|
-
return X(m,
|
|
5494
|
+
const T = _.signature, O = w === "compact" ? T : w === "recovered" ? T + 1 : void 0;
|
|
5495
|
+
return X(m, O);
|
|
5496
5496
|
}
|
|
5497
5497
|
class L {
|
|
5498
|
-
constructor(w, T,
|
|
5498
|
+
constructor(w, T, O) {
|
|
5499
5499
|
P(this, "r");
|
|
5500
5500
|
P(this, "s");
|
|
5501
5501
|
P(this, "recovery");
|
|
5502
|
-
if (this.r = A("r", w), this.s = A("s", T),
|
|
5503
|
-
if (R(), ![0, 1, 2, 3].includes(
|
|
5502
|
+
if (this.r = A("r", w), this.s = A("s", T), O != null) {
|
|
5503
|
+
if (R(), ![0, 1, 2, 3].includes(O))
|
|
5504
5504
|
throw new Error("invalid recovery id");
|
|
5505
|
-
this.recovery =
|
|
5505
|
+
this.recovery = O;
|
|
5506
5506
|
}
|
|
5507
5507
|
Object.freeze(this);
|
|
5508
5508
|
}
|
|
5509
5509
|
static fromBytes(w, T = x.format) {
|
|
5510
5510
|
k(w, T);
|
|
5511
|
-
let
|
|
5511
|
+
let O;
|
|
5512
5512
|
if (T === "der") {
|
|
5513
|
-
const { r:
|
|
5514
|
-
return new L(
|
|
5513
|
+
const { r: C, s: W } = ve.toSig(X(w));
|
|
5514
|
+
return new L(C, W);
|
|
5515
5515
|
}
|
|
5516
|
-
T === "recovered" && (
|
|
5516
|
+
T === "recovered" && (O = w[0], T = "compact", w = w.subarray(1));
|
|
5517
5517
|
const F = _.signature / 2, $ = w.subarray(0, F), M = w.subarray(F, F * 2);
|
|
5518
|
-
return new L(o.fromBytes($), o.fromBytes(M),
|
|
5518
|
+
return new L(o.fromBytes($), o.fromBytes(M), O);
|
|
5519
5519
|
}
|
|
5520
5520
|
static fromHex(w, T) {
|
|
5521
5521
|
return this.fromBytes(Xe(w), T);
|
|
@@ -5530,10 +5530,10 @@ function Wn(s, e, r = {}) {
|
|
|
5530
5530
|
return new L(this.r, this.s, w);
|
|
5531
5531
|
}
|
|
5532
5532
|
recoverPublicKey(w) {
|
|
5533
|
-
const { r: T, s:
|
|
5533
|
+
const { r: T, s: O } = this, F = this.assertRecovery(), $ = F === 2 || F === 3 ? T + a : T;
|
|
5534
5534
|
if (!i.isValid($))
|
|
5535
5535
|
throw new Error("invalid recovery id: sig.r+curve.n != R.x");
|
|
5536
|
-
const M = i.toBytes($),
|
|
5536
|
+
const M = i.toBytes($), C = s.fromBytes(Se(Hr((F & 1) === 0), M)), W = o.inv($), b = z(X(w, void 0, "msgHash")), E = o.create(-b * W), N = o.create(O * W), I = s.BASE.multiplyUnsafe(E).add(C.multiplyUnsafe(N));
|
|
5537
5537
|
if (I.is0())
|
|
5538
5538
|
throw new Error("invalid recovery: point at infinify");
|
|
5539
5539
|
return I.assertValidity(), I;
|
|
@@ -5545,7 +5545,7 @@ function Wn(s, e, r = {}) {
|
|
|
5545
5545
|
toBytes(w = x.format) {
|
|
5546
5546
|
if (yt(w), w === "der")
|
|
5547
5547
|
return Xe(ve.hexFromSig(this));
|
|
5548
|
-
const { r: T, s:
|
|
5548
|
+
const { r: T, s: O } = this, F = o.toBytes(T), $ = o.toBytes(O);
|
|
5549
5549
|
return w === "recovered" ? (R(), Se(Uint8Array.of(this.assertRecovery()), F, $)) : Se(F, $);
|
|
5550
5550
|
}
|
|
5551
5551
|
toHex(w) {
|
|
@@ -5555,8 +5555,8 @@ function Wn(s, e, r = {}) {
|
|
|
5555
5555
|
const D = r.bits2int || function(w) {
|
|
5556
5556
|
if (w.length > 8192)
|
|
5557
5557
|
throw new Error("input is too large");
|
|
5558
|
-
const T = rt(w),
|
|
5559
|
-
return
|
|
5558
|
+
const T = rt(w), O = w.length * 8 - c;
|
|
5559
|
+
return O > 0 ? T >> BigInt(O) : T;
|
|
5560
5560
|
}, z = r.bits2int_modN || function(w) {
|
|
5561
5561
|
return o.create(D(w));
|
|
5562
5562
|
}, Q = Rt(c);
|
|
@@ -5567,12 +5567,12 @@ function Wn(s, e, r = {}) {
|
|
|
5567
5567
|
return X(m, void 0, "message"), w ? X(e(m), void 0, "prehashed message") : m;
|
|
5568
5568
|
}
|
|
5569
5569
|
function te(m, w, T) {
|
|
5570
|
-
const { lowS:
|
|
5570
|
+
const { lowS: O, prehash: F, extraEntropy: $ } = ht(T, x);
|
|
5571
5571
|
m = J(m, F);
|
|
5572
|
-
const M = z(m),
|
|
5573
|
-
if (!o.isValidNot0(
|
|
5572
|
+
const M = z(m), C = o.fromBytes(w);
|
|
5573
|
+
if (!o.isValidNot0(C))
|
|
5574
5574
|
throw new Error("invalid private key");
|
|
5575
|
-
const W = [q(
|
|
5575
|
+
const W = [q(C), q(M)];
|
|
5576
5576
|
if ($ != null && $ !== !1) {
|
|
5577
5577
|
const I = $ === !0 ? t(_.secretKey) : $;
|
|
5578
5578
|
W.push(X(I, void 0, "extraEntropy"));
|
|
@@ -5585,38 +5585,38 @@ function Wn(s, e, r = {}) {
|
|
|
5585
5585
|
const K = o.inv(U), j = s.BASE.multiply(U).toAffine(), V = o.create(j.x);
|
|
5586
5586
|
if (V === ge)
|
|
5587
5587
|
return;
|
|
5588
|
-
const Y = o.create(K * o.create(E + V *
|
|
5588
|
+
const Y = o.create(K * o.create(E + V * C));
|
|
5589
5589
|
if (Y === ge)
|
|
5590
5590
|
return;
|
|
5591
5591
|
let Ee = (j.x === V ? 0 : 2) | Number(j.y & De), Dt = Y;
|
|
5592
|
-
return
|
|
5592
|
+
return O && v(Y) && (Dt = o.neg(Y), Ee ^= 1), new L(V, Dt, y ? void 0 : Ee);
|
|
5593
5593
|
}
|
|
5594
5594
|
return { seed: b, k2sig: N };
|
|
5595
5595
|
}
|
|
5596
5596
|
function G(m, w, T = {}) {
|
|
5597
|
-
const { seed:
|
|
5598
|
-
return bn(e.outputLen, o.BYTES, n)(
|
|
5597
|
+
const { seed: O, k2sig: F } = te(m, w, T);
|
|
5598
|
+
return bn(e.outputLen, o.BYTES, n)(O, F).toBytes(T.format);
|
|
5599
5599
|
}
|
|
5600
|
-
function B(m, w, T,
|
|
5601
|
-
const { lowS: F, prehash: $, format: M } = ht(
|
|
5600
|
+
function B(m, w, T, O = {}) {
|
|
5601
|
+
const { lowS: F, prehash: $, format: M } = ht(O, x);
|
|
5602
5602
|
if (T = X(T, void 0, "publicKey"), w = J(w, $), !It(m)) {
|
|
5603
|
-
const
|
|
5604
|
-
throw new Error("verify expects Uint8Array signature" +
|
|
5603
|
+
const C = m instanceof L ? ", use sig.toBytes()" : "";
|
|
5604
|
+
throw new Error("verify expects Uint8Array signature" + C);
|
|
5605
5605
|
}
|
|
5606
5606
|
k(m, M);
|
|
5607
5607
|
try {
|
|
5608
|
-
const
|
|
5609
|
-
if (F &&
|
|
5608
|
+
const C = L.fromBytes(m, M), W = s.fromBytes(T);
|
|
5609
|
+
if (F && C.hasHighS())
|
|
5610
5610
|
return !1;
|
|
5611
|
-
const { r: b, s: E } =
|
|
5611
|
+
const { r: b, s: E } = C, N = z(w), I = o.inv(E), U = o.create(N * I), K = o.create(b * I), j = s.BASE.multiplyUnsafe(U).add(W.multiplyUnsafe(K));
|
|
5612
5612
|
return j.is0() ? !1 : o.create(j.x) === b;
|
|
5613
5613
|
} catch {
|
|
5614
5614
|
return !1;
|
|
5615
5615
|
}
|
|
5616
5616
|
}
|
|
5617
5617
|
function H(m, w, T = {}) {
|
|
5618
|
-
const { prehash:
|
|
5619
|
-
return w = J(w,
|
|
5618
|
+
const { prehash: O } = ht(T, x);
|
|
5619
|
+
return w = J(w, O), L.fromBytes(m, "recovered").recoverPublicKey(w).toBytes();
|
|
5620
5620
|
}
|
|
5621
5621
|
return Object.freeze({
|
|
5622
5622
|
keygen: l,
|
|
@@ -5633,7 +5633,7 @@ function Wn(s, e, r = {}) {
|
|
|
5633
5633
|
});
|
|
5634
5634
|
}
|
|
5635
5635
|
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
|
5636
|
-
const
|
|
5636
|
+
const Ct = {
|
|
5637
5637
|
p: BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),
|
|
5638
5638
|
n: BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),
|
|
5639
5639
|
h: BigInt(1),
|
|
@@ -5649,12 +5649,12 @@ const Ot = {
|
|
|
5649
5649
|
]
|
|
5650
5650
|
}, nr = /* @__PURE__ */ BigInt(2);
|
|
5651
5651
|
function qn(s) {
|
|
5652
|
-
const e =
|
|
5652
|
+
const e = Ct.p, r = BigInt(3), t = BigInt(6), n = BigInt(11), i = BigInt(22), o = BigInt(23), a = BigInt(44), c = BigInt(88), l = s * s * s % e, u = l * l * s % e, p = oe(u, r, e) * u % e, g = oe(p, r, e) * u % e, _ = oe(g, nr, e) * l % e, x = oe(_, n, e) * _ % e, y = oe(x, i, e) * x % e, v = oe(y, a, e) * y % e, A = oe(v, c, e) * v % e, R = oe(A, a, e) * y % e, k = oe(R, r, e) * u % e, L = oe(k, o, e) * x % e, D = oe(L, t, e) * l % e, z = oe(D, nr, e);
|
|
5653
5653
|
if (!bt.eql(bt.sqr(z), s))
|
|
5654
5654
|
throw new Error("Cannot find square root");
|
|
5655
5655
|
return z;
|
|
5656
5656
|
}
|
|
5657
|
-
const bt = st(
|
|
5657
|
+
const bt = st(Ct.p, { sqrt: qn }), Kn = /* @__PURE__ */ Un(Ct, {
|
|
5658
5658
|
Fp: bt,
|
|
5659
5659
|
endo: Gn
|
|
5660
5660
|
}), Vn = /* @__PURE__ */ Wn(Kn, gn), zn = BigInt(0), Fe = BigInt(1), jn = BigInt(2), Yn = BigInt(7), Xn = BigInt(256), Jn = BigInt(113), Gr = [], qr = [], Kr = [];
|
|
@@ -6037,8 +6037,8 @@ class Ie {
|
|
|
6037
6037
|
return;
|
|
6038
6038
|
}
|
|
6039
6039
|
const m = { token: B, email: H }, w = (T) => {
|
|
6040
|
-
Ie.verifyIdTokenNonce(T, l).then(() => r(m)).catch((
|
|
6041
|
-
d.error("[CROSSx] nonce 검증 실패:",
|
|
6040
|
+
Ie.verifyIdTokenNonce(T, l).then(() => r(m)).catch((O) => {
|
|
6041
|
+
d.error("[CROSSx] nonce 검증 실패:", O), t(O instanceof Error ? O : new Error("nonce verification failed"));
|
|
6042
6042
|
});
|
|
6043
6043
|
};
|
|
6044
6044
|
G ? G.split(".").length === 3 ? w(G) : te ? w(te) : (d.warn(
|
|
@@ -6050,7 +6050,7 @@ class Ie {
|
|
|
6050
6050
|
});
|
|
6051
6051
|
}
|
|
6052
6052
|
}
|
|
6053
|
-
const Ue = "crossx_wallet_data",
|
|
6053
|
+
const Ue = "crossx_wallet_data", Oe = "crossx_mock_pin_hash";
|
|
6054
6054
|
class li {
|
|
6055
6055
|
constructor(e, r) {
|
|
6056
6056
|
this.storage = e, this.pinStore = r ?? null;
|
|
@@ -6080,7 +6080,7 @@ class li {
|
|
|
6080
6080
|
};
|
|
6081
6081
|
await this.storage.set(Ue, n);
|
|
6082
6082
|
const i = (r = this.pinStore) == null ? void 0 : r.get();
|
|
6083
|
-
return i && (await this.storage.set(
|
|
6083
|
+
return i && (await this.storage.set(Oe, i), d.log("[Mock] 지갑 생성 — PIN 저장됨")), n;
|
|
6084
6084
|
} catch (t) {
|
|
6085
6085
|
throw new f(h.WALLET_CREATION_FAILED, "지갑 생성에 실패했습니다", t);
|
|
6086
6086
|
}
|
|
@@ -6122,8 +6122,8 @@ class li {
|
|
|
6122
6122
|
var t;
|
|
6123
6123
|
if (d.log("[Mock] verifyPin"), this.pinScenario === "wrong")
|
|
6124
6124
|
return !1;
|
|
6125
|
-
const r = await this.storage.get(
|
|
6126
|
-
return r && r !== e ? !1 : (r || await this.storage.set(
|
|
6125
|
+
const r = await this.storage.get(Oe);
|
|
6126
|
+
return r && r !== e ? !1 : (r || await this.storage.set(Oe, e), (t = this.pinStore) == null || t.set(e), d.log("[Mock] verifyPin → 성공"), !0);
|
|
6127
6127
|
}
|
|
6128
6128
|
/**
|
|
6129
6129
|
* POST /mnemonic/change-password 모킹
|
|
@@ -6133,10 +6133,10 @@ class li {
|
|
|
6133
6133
|
var i;
|
|
6134
6134
|
if (d.log("[Mock] changePin"), this.pinScenario === "wrong")
|
|
6135
6135
|
throw new f(h.PIN_WRONG, "Incorrect PIN.");
|
|
6136
|
-
const t = (i = this.pinStore) == null ? void 0 : i.get(), n = await this.storage.get(
|
|
6136
|
+
const t = (i = this.pinStore) == null ? void 0 : i.get(), n = await this.storage.get(Oe);
|
|
6137
6137
|
if (n && t && n !== t)
|
|
6138
6138
|
throw new f(h.PIN_WRONG, "Incorrect PIN.");
|
|
6139
|
-
await this.storage.set(
|
|
6139
|
+
await this.storage.set(Oe, r), d.log("[Mock] changePin 완료");
|
|
6140
6140
|
}
|
|
6141
6141
|
async migrateWallet(e, r) {
|
|
6142
6142
|
var i;
|
|
@@ -6169,7 +6169,7 @@ class li {
|
|
|
6169
6169
|
};
|
|
6170
6170
|
await this.storage.set(Ue, t);
|
|
6171
6171
|
const n = (i = this.pinStore) == null ? void 0 : i.get();
|
|
6172
|
-
return n && (await this.storage.set(
|
|
6172
|
+
return n && (await this.storage.set(Oe, n), d.log("[Mock] 마이그레이션 — PIN 저장됨")), t;
|
|
6173
6173
|
}
|
|
6174
6174
|
/**
|
|
6175
6175
|
* POST /mnemonic/share-c 모킹
|
|
@@ -8366,7 +8366,18 @@ button.__crossx-connect-other-block:active {
|
|
|
8366
8366
|
}
|
|
8367
8367
|
/* ── Mobile bottom sheet ───────────────────────────────────── */
|
|
8368
8368
|
@media (max-width: 480px) {
|
|
8369
|
-
#${ee} {
|
|
8369
|
+
#${ee} {
|
|
8370
|
+
align-items: flex-end;
|
|
8371
|
+
/*
|
|
8372
|
+
* iOS Safari 는 soft keyboard 가 떠도 layout viewport 를 축소시키지 않아
|
|
8373
|
+
* \`position: fixed; inset: 0\` 인 overlay 의 하단 docking card 가 키보드에
|
|
8374
|
+
* 가려집니다. mountOverlay 의 visualViewport listener 가 매 resize 마다
|
|
8375
|
+
* layoutH - visualBottom 을 \`--cx-keyboard-inset\` 으로 publish 하므로,
|
|
8376
|
+
* 여기서 padding-bottom 으로 받아 카드 정렬축을 키보드 위로 끌어올립니다.
|
|
8377
|
+
* 키보드 닫히면 inset=0 으로 자동 복귀.
|
|
8378
|
+
*/
|
|
8379
|
+
padding-bottom: var(--cx-keyboard-inset, 0px);
|
|
8380
|
+
}
|
|
8370
8381
|
.__crossx-safe-area-fill {
|
|
8371
8382
|
display: block;
|
|
8372
8383
|
position: fixed;
|
|
@@ -9118,37 +9129,52 @@ function pi() {
|
|
|
9118
9129
|
function ce(s) {
|
|
9119
9130
|
const e = s.querySelector(".__crossx-card");
|
|
9120
9131
|
if (e) {
|
|
9121
|
-
const
|
|
9122
|
-
if (
|
|
9123
|
-
const
|
|
9124
|
-
s.style.setProperty("--cx-bg",
|
|
9125
|
-
const
|
|
9126
|
-
|
|
9132
|
+
const a = (e.getAttribute("style") ?? "").match(/--cx-bg:\s*([^;]+)/);
|
|
9133
|
+
if (a) {
|
|
9134
|
+
const c = a[1].trim();
|
|
9135
|
+
s.style.setProperty("--cx-bg", c);
|
|
9136
|
+
const l = document.createElement("div");
|
|
9137
|
+
l.className = "__crossx-safe-area-fill", l.style.background = c, s.appendChild(l);
|
|
9127
9138
|
}
|
|
9128
9139
|
}
|
|
9129
|
-
const r = (
|
|
9130
|
-
for (const
|
|
9131
|
-
s.addEventListener(
|
|
9140
|
+
const r = (o) => o.stopPropagation();
|
|
9141
|
+
for (const o of ["pointerdown", "pointerup", "mousedown", "mouseup", "click"])
|
|
9142
|
+
s.addEventListener(o, r);
|
|
9132
9143
|
s.setAttribute("data-vaul-no-drag", "");
|
|
9133
|
-
for (const
|
|
9134
|
-
s.addEventListener(
|
|
9135
|
-
s.addEventListener("touchmove", (
|
|
9136
|
-
|
|
9137
|
-
let
|
|
9138
|
-
for (;
|
|
9139
|
-
const
|
|
9140
|
-
if ((
|
|
9144
|
+
for (const o of ["touchstart", "touchend"])
|
|
9145
|
+
s.addEventListener(o, r);
|
|
9146
|
+
s.addEventListener("touchmove", (o) => {
|
|
9147
|
+
o.stopPropagation();
|
|
9148
|
+
let a = o.target;
|
|
9149
|
+
for (; a && a !== s; ) {
|
|
9150
|
+
const c = window.getComputedStyle(a);
|
|
9151
|
+
if ((c.overflowY === "auto" || c.overflowY === "scroll") && a.scrollHeight > a.clientHeight)
|
|
9141
9152
|
return;
|
|
9142
|
-
|
|
9153
|
+
a = a.parentElement;
|
|
9143
9154
|
}
|
|
9144
|
-
|
|
9155
|
+
o.preventDefault();
|
|
9145
9156
|
}, { passive: !1 });
|
|
9146
|
-
const t = pi(), n = s.remove.bind(s);
|
|
9157
|
+
const t = pi(), n = _i(s), i = s.remove.bind(s);
|
|
9147
9158
|
s.remove = () => {
|
|
9148
|
-
t(),
|
|
9159
|
+
n(), t(), i();
|
|
9149
9160
|
}, document.body.appendChild(s);
|
|
9150
9161
|
}
|
|
9151
9162
|
function _i(s) {
|
|
9163
|
+
if (typeof window > "u") return () => {
|
|
9164
|
+
};
|
|
9165
|
+
const e = window.visualViewport;
|
|
9166
|
+
if (!e) return () => {
|
|
9167
|
+
};
|
|
9168
|
+
let r = -1;
|
|
9169
|
+
const t = () => {
|
|
9170
|
+
const n = window.innerHeight, i = e.offsetTop + e.height, o = Math.max(0, Math.round(n - i));
|
|
9171
|
+
o !== r && (r = o, s.style.setProperty("--cx-keyboard-inset", `${o}px`));
|
|
9172
|
+
};
|
|
9173
|
+
return t(), e.addEventListener("resize", t), e.addEventListener("scroll", t), () => {
|
|
9174
|
+
e.removeEventListener("resize", t), e.removeEventListener("scroll", t), s.style.removeProperty("--cx-keyboard-inset");
|
|
9175
|
+
};
|
|
9176
|
+
}
|
|
9177
|
+
function fi(s) {
|
|
9152
9178
|
const e = Array.from(s.querySelectorAll(".__crossx-amount-tip"));
|
|
9153
9179
|
if (!e.length) return;
|
|
9154
9180
|
const r = document.createElement("div");
|
|
@@ -9172,9 +9198,9 @@ function _i(s) {
|
|
|
9172
9198
|
o.target.closest(".__crossx-amount-tip") || i();
|
|
9173
9199
|
}, { passive: !0 });
|
|
9174
9200
|
}
|
|
9175
|
-
const
|
|
9176
|
-
function
|
|
9177
|
-
if (
|
|
9201
|
+
const gi = () => /iPad|iPhone|iPod/.test(navigator.userAgent) || navigator.platform === "MacIntel" && navigator.maxTouchPoints > 1;
|
|
9202
|
+
function Ce() {
|
|
9203
|
+
if (gi()) {
|
|
9178
9204
|
const e = window.scrollY;
|
|
9179
9205
|
return document.body.style.position = "fixed", document.body.style.top = `-${e}px`, document.body.style.left = "0", document.body.style.right = "0", () => {
|
|
9180
9206
|
document.body.style.position = "", document.body.style.top = "", document.body.style.left = "", document.body.style.right = "", window.scrollTo(0, e);
|
|
@@ -9249,18 +9275,18 @@ function pt(s) {
|
|
|
9249
9275
|
return s;
|
|
9250
9276
|
}
|
|
9251
9277
|
}
|
|
9252
|
-
function
|
|
9278
|
+
function xi(s) {
|
|
9253
9279
|
try {
|
|
9254
9280
|
return BigInt(s).toLocaleString();
|
|
9255
9281
|
} catch {
|
|
9256
9282
|
return s;
|
|
9257
9283
|
}
|
|
9258
9284
|
}
|
|
9259
|
-
function
|
|
9285
|
+
function wi(s, e) {
|
|
9260
9286
|
const { gasLimit: r, gasPrice: t, maxFeePerGas: n, maxPriorityFeePerGas: i, nativeSymbol: o = "ETH", nativeDecimals: a = 18 } = s;
|
|
9261
9287
|
if (!r) return null;
|
|
9262
9288
|
try {
|
|
9263
|
-
const c = BigInt(r), l =
|
|
9289
|
+
const c = BigInt(r), l = xi(r);
|
|
9264
9290
|
if (n) {
|
|
9265
9291
|
const u = c * BigInt(n);
|
|
9266
9292
|
return {
|
|
@@ -9292,7 +9318,7 @@ function xi(s, e) {
|
|
|
9292
9318
|
}
|
|
9293
9319
|
}
|
|
9294
9320
|
function Yr(s, e, r) {
|
|
9295
|
-
const t =
|
|
9321
|
+
const t = wi(s, e);
|
|
9296
9322
|
if (!t) return Z((r == null ? void 0 : r.label_estimated_fee) ?? "Estimated fee", "<span>—</span>");
|
|
9297
9323
|
let n = Z((r == null ? void 0 : r.label_est_tx_fee) ?? "Est. Tx Fee", `<span>${t.estTxFee}</span>`);
|
|
9298
9324
|
return t.isDynamic ? (t.maxPriorityFeeGwei !== void 0 && (n += Z((r == null ? void 0 : r.label_max_priority_fee) ?? "Max Priority Fee", `<span>${t.maxPriorityFeeGwei} Gwei</span>`)), t.maxFeeGwei !== void 0 && (n += Z((r == null ? void 0 : r.label_max_gas_fee) ?? "Max Gas Fee", `<span>${t.maxFeeGwei} Gwei</span>`))) : t.gasPriceGwei !== void 0 && (n += Z((r == null ? void 0 : r.label_gas_price) ?? "Gas Price", `<span>${t.gasPriceGwei} Gwei</span>`)), t.gasLimitFormatted && (n += Z((r == null ? void 0 : r.label_gas_limit) ?? "Gas Limit", `<span>${t.gasLimitFormatted}</span>`)), n;
|
|
@@ -9303,16 +9329,16 @@ const we = `<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="
|
|
|
9303
9329
|
</svg>`, ne = `<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round">
|
|
9304
9330
|
<line x1="18" y1="6" x2="6" y2="18"/>
|
|
9305
9331
|
<line x1="6" y1="6" x2="18" y2="18"/>
|
|
9306
|
-
</svg>`,
|
|
9332
|
+
</svg>`, mi = `<svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
9307
9333
|
<circle cx="20" cy="20" r="20" fill="#00D5AA"/>
|
|
9308
9334
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.3225 2.85742L23.7249 6.25982V11.8301L28.1175 7.43757L32.9292 12.2493L28.5806 16.5979H20.3225C18.4435 16.5979 16.9201 18.1212 16.9201 20.0003C16.9201 21.8794 18.4434 23.4027 20.3225 23.4027H28.5372L32.9293 27.7948L28.1176 32.6066L23.7249 28.2139V33.7407L20.3225 37.1431L16.9201 33.7407V28.2584L12.5719 32.6066L7.76022 27.7948L12.1524 23.4027H6.58209L3.17969 20.0003L6.58209 16.5979H12.1089L7.76035 12.2493L12.5721 7.43757L16.9201 11.7857V6.25982L20.3225 2.85742Z" fill="#121212"/>
|
|
9309
|
-
</svg>`,
|
|
9310
|
-
[He.MetaMask]:
|
|
9311
|
-
[He.Binance]:
|
|
9312
|
-
[He.CROSSx]:
|
|
9313
|
-
}, Xr = '<path d="M22.6667 11.8333V10.1667C22.6667 9.2475 21.9192 8.5 21.0001 8.5H10.1667C8.78841 8.5 7.66675 9.62167 7.66675 11V21C7.66675 22.8342 9.16175 23.5 10.1667 23.5H22.6667C23.5859 23.5 24.3334 22.7525 24.3334 21.8333V13.5C24.3334 12.5808 23.5859 11.8333 22.6667 11.8333ZM21.0001 19.3333H19.3334V16H21.0001V19.3333ZM10.1667 11.8333C9.95218 11.8237 9.74959 11.7317 9.60114 11.5765C9.4527 11.4213 9.36986 11.2148 9.36986 11C9.36986 10.7852 9.4527 10.5787 9.60114 10.4235C9.74959 10.2683 9.95218 10.1763 10.1667 10.1667H21.0001V11.8333H10.1667Z"/>', Lt = `<svg width="20" height="20" viewBox="0 0 32 32" fill="currentColor" xmlns="http://www.w3.org/2000/svg">${Xr}</svg>`,
|
|
9335
|
+
</svg>`, yi = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 318.6 318.6" aria-hidden="true"><style>.st1,.st6{fill:#e4761b;stroke:#e4761b;stroke-linecap:round;stroke-linejoin:round}.st6{fill:#f6851b;stroke:#f6851b}</style><path fill="#e2761b" stroke="#e2761b" stroke-linecap="round" stroke-linejoin="round" d="m274.1 35.5-99.5 73.9L193 65.8z"/><path d="m44.4 35.5 98.7 74.6-17.5-44.3zm193.9 171.3-26.5 40.6 56.7 15.6 16.3-55.3zm-204.4.9L50.1 263l56.7-15.6-26.5-40.6z" class="st1"/><path d="m103.6 138.2-15.8 23.9 56.3 2.5-2-60.5zm111.3 0-39-34.8-1.3 61.2 56.2-2.5zM106.8 247.4l33.8-16.5-29.2-22.8zm71.1-16.5 33.9 16.5-4.7-39.3z" class="st1"/><path fill="#d7c1b3" stroke="#d7c1b3" stroke-linecap="round" stroke-linejoin="round" d="m211.8 247.4-33.9-16.5 2.7 22.1-.3 9.3zm-105 0 31.5 14.9-.2-9.3 2.5-22.1z"/><path fill="#233447" stroke="#233447" stroke-linecap="round" stroke-linejoin="round" d="m138.8 193.5-28.2-8.3 19.9-9.1zm40.9 0 8.3-17.4 20 9.1z"/><path fill="#cd6116" stroke="#cd6116" stroke-linecap="round" stroke-linejoin="round" d="m106.8 247.4 4.8-40.6-31.3.9zM207 206.8l4.8 40.6 26.5-39.7zm23.8-44.7-56.2 2.5 5.2 28.9 8.3-17.4 20 9.1zm-120.2 23.1 20-9.1 8.2 17.4 5.3-28.9-56.3-2.5z"/><path fill="#e4751f" stroke="#e4751f" stroke-linecap="round" stroke-linejoin="round" d="m87.8 162.1 23.6 46-.8-22.9zm120.3 23.1-1 22.9 23.7-46zm-64-20.6-5.3 28.9 6.6 34.1 1.5-44.9zm30.5 0-2.7 18 1.2 45 6.7-34.1z"/><path d="m179.8 193.5-6.7 34.1 4.8 3.3 29.2-22.8 1-22.9zm-69.2-8.3.8 22.9 29.2 22.8 4.8-3.3-6.6-34.1z" class="st6"/><path fill="#c0ad9e" stroke="#c0ad9e" stroke-linecap="round" stroke-linejoin="round" d="m180.3 262.3.3-9.3-2.5-2.2h-37.7l-2.3 2.2.2 9.3-31.5-14.9 11 9 22.3 15.5h38.3l22.4-15.5 11-9z"/><path fill="#161616" stroke="#161616" stroke-linecap="round" stroke-linejoin="round" d="m177.9 230.9-4.8-3.3h-27.7l-4.8 3.3-2.5 22.1 2.3-2.2h37.7l2.5 2.2z"/><path fill="#763d16" stroke="#763d16" stroke-linecap="round" stroke-linejoin="round" d="m278.3 114.2 8.5-40.8-12.7-37.9-96.2 71.4 37 31.3 52.3 15.3 11.6-13.5-5-3.6 8-7.3-6.2-4.8 8-6.1zM31.8 73.4l8.5 40.8-5.4 4 8 6.1-6.1 4.8 8 7.3-5 3.6 11.5 13.5 52.3-15.3 37-31.3-96.2-71.4z"/><path d="m267.2 153.5-52.3-15.3 15.9 23.9-23.7 46 31.2-.4h46.5zm-163.6-15.3-52.3 15.3-17.4 54.2h46.4l31.1.4-23.6-46zm71 26.4 3.3-57.7 15.2-41.1h-67.5l15 41.1 3.5 57.7 1.2 18.2.1 44.8h27.7l.2-44.8z" class="st6"/></svg>', bi = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 126.611 126.611" aria-hidden="true"><polygon fill="#F3BA2F" points="38.171,53.203 62.759,28.616 87.36,53.216 101.667,38.909 62.759,0 23.864,38.896 "/><rect x="3.644" y="53.188" transform="matrix(0.7071 0.7071 -0.7071 0.7071 48.7933 8.8106)" fill="#F3BA2F" width="20.233" height="20.234"/><polygon fill="#F3BA2F" points="38.171,73.408 62.759,97.995 87.359,73.396 101.674,87.695 101.667,87.703 62.759,126.611 23.863,87.716 23.843,87.696 "/><rect x="101.64" y="53.189" transform="matrix(-0.7071 0.7071 -0.7071 -0.7071 235.5457 29.0503)" fill="#F3BA2F" width="20.234" height="20.233"/><polygon fill="#F3BA2F" points="77.271,63.298 77.277,63.298 62.759,48.78 52.03,59.509 52.029,59.509 50.797,60.742 48.254,63.285 48.254,63.285 48.234,63.305 48.254,63.326 62.759,77.831 77.277,63.313 77.284,63.305 "/></svg>', vi = '<svg width="16" height="16" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"><circle cx="20" cy="20" r="20" fill="#00D5AA"/><path fill-rule="evenodd" clip-rule="evenodd" d="M20.3225 2.85742L23.7249 6.25982V11.8301L28.1175 7.43757L32.9292 12.2493L28.5806 16.5979H20.3225C18.4435 16.5979 16.9201 18.1212 16.9201 20.0003C16.9201 21.8794 18.4434 23.4027 20.3225 23.4027H28.5372L32.9293 27.7948L28.1176 32.6066L23.7249 28.2139V33.7407L20.3225 37.1431L16.9201 33.7407V28.2584L12.5719 32.6066L7.76022 27.7948L12.1524 23.4027H6.58209L3.17969 20.0003L6.58209 16.5979H12.1089L7.76035 12.2493L12.5721 7.43757L16.9201 11.7857V6.25982L20.3225 2.85742Z" fill="#121212"/></svg>', Si = {
|
|
9336
|
+
[He.MetaMask]: yi,
|
|
9337
|
+
[He.Binance]: bi,
|
|
9338
|
+
[He.CROSSx]: vi
|
|
9339
|
+
}, Xr = '<path d="M22.6667 11.8333V10.1667C22.6667 9.2475 21.9192 8.5 21.0001 8.5H10.1667C8.78841 8.5 7.66675 9.62167 7.66675 11V21C7.66675 22.8342 9.16175 23.5 10.1667 23.5H22.6667C23.5859 23.5 24.3334 22.7525 24.3334 21.8333V13.5C24.3334 12.5808 23.5859 11.8333 22.6667 11.8333ZM21.0001 19.3333H19.3334V16H21.0001V19.3333ZM10.1667 11.8333C9.95218 11.8237 9.74959 11.7317 9.60114 11.5765C9.4527 11.4213 9.36986 11.2148 9.36986 11C9.36986 10.7852 9.4527 10.5787 9.60114 10.4235C9.74959 10.2683 9.95218 10.1763 10.1667 10.1667H21.0001V11.8333H10.1667Z"/>', Lt = `<svg width="20" height="20" viewBox="0 0 32 32" fill="currentColor" xmlns="http://www.w3.org/2000/svg">${Xr}</svg>`, Ei = `<svg width="24" height="24" viewBox="0 0 24 24" fill="none">
|
|
9314
9340
|
<path d="M12 0C18.6274 0 24 5.37258 24 12C23.9999 18.6273 18.6274 24 12 24C5.37264 24 9.89594e-05 18.6273 0 12C0 5.37258 5.37258 0 12 0ZM10.875 15.127V17.377H13.125V15.127H10.875ZM10.875 6.62207V13.627H13.125V6.62207H10.875Z" fill="var(--cx-error)"/>
|
|
9315
|
-
</svg>`,
|
|
9341
|
+
</svg>`, Ai = `<svg width="24" height="24" viewBox="0 0 24 24" fill="none">
|
|
9316
9342
|
<circle cx="12" cy="12" r="12" fill="var(--cx-error)"/>
|
|
9317
9343
|
<circle cx="12" cy="12" r="5.5" stroke="white" stroke-width="1.5"/>
|
|
9318
9344
|
<path d="M12 9.5v3l2 1.5" stroke="white" stroke-width="1.5" stroke-linecap="round"/>
|
|
@@ -9350,7 +9376,7 @@ function Z(s, e) {
|
|
|
9350
9376
|
<div class="__crossx-row-value">${e}</div>
|
|
9351
9377
|
</div>`;
|
|
9352
9378
|
}
|
|
9353
|
-
function
|
|
9379
|
+
function Ii(s, e, r, t) {
|
|
9354
9380
|
const n = e, i = s.nativeSymbol ?? "ETH", o = s.nativeDecimals ?? 18, a = nt(s.dappName), c = s.to ? `<span class="__crossx-addr-text">${de(s.to)}</span>
|
|
9355
9381
|
<button class="__crossx-copy-btn" data-copy="${S(s.to)}" title="Copy address">${we}</button>` : "<span>—</span>", l = Yr(s, r, t), u = zr(s.value, i, o, r), p = u ? Z((t == null ? void 0 : t.label_value) ?? "Value", `<span>${u}</span>`) : "", g = s.data ?? "0x", _ = document.createElement("div");
|
|
9356
9382
|
return _.id = ee, _.innerHTML = `
|
|
@@ -9391,7 +9417,7 @@ function Ai(s, e, r, t) {
|
|
|
9391
9417
|
</div>
|
|
9392
9418
|
`, _;
|
|
9393
9419
|
}
|
|
9394
|
-
function
|
|
9420
|
+
function Ti(s, e, r, t) {
|
|
9395
9421
|
const n = e, i = s.nativeSymbol ?? "ETH", o = s.nativeDecimals ?? 18, a = nt(s.dappName), c = s.to ? `<span class="__crossx-addr-text">${de(s.to)}</span>
|
|
9396
9422
|
<button class="__crossx-copy-btn" data-copy="${S(s.to)}" title="Copy address">${we}</button>` : "<span>—</span>", l = Yr(s, r, t), p = zr(s.value, i, o, r) ?? "—", g = document.createElement("div");
|
|
9397
9423
|
return g.id = ee, g.innerHTML = `
|
|
@@ -9433,10 +9459,10 @@ function nt(s) {
|
|
|
9433
9459
|
function S(s) {
|
|
9434
9460
|
return s.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
9435
9461
|
}
|
|
9436
|
-
function
|
|
9462
|
+
function ki(s) {
|
|
9437
9463
|
return typeof s == "string" && /^0x[0-9a-fA-F]{40}$/i.test(s);
|
|
9438
9464
|
}
|
|
9439
|
-
function
|
|
9465
|
+
function Ri(s) {
|
|
9440
9466
|
if (typeof s == "string") return S(s);
|
|
9441
9467
|
if (typeof s == "number" || typeof s == "bigint" || typeof s == "boolean") return String(s);
|
|
9442
9468
|
try {
|
|
@@ -9445,25 +9471,25 @@ function ki(s) {
|
|
|
9445
9471
|
return String(s);
|
|
9446
9472
|
}
|
|
9447
9473
|
}
|
|
9448
|
-
function
|
|
9474
|
+
function Ni(s) {
|
|
9449
9475
|
return s.includes(":") ? s.split(":")[1] ?? s : s;
|
|
9450
9476
|
}
|
|
9451
|
-
function
|
|
9477
|
+
function Oi(s) {
|
|
9452
9478
|
return `https://www.crossscan.io/address/${s}?tab=txs`;
|
|
9453
9479
|
}
|
|
9454
9480
|
function Ci(s, e) {
|
|
9455
|
-
return `https://explorer.crosstoken.io/${
|
|
9481
|
+
return `https://explorer.crosstoken.io/${Ni(s)}/tx/${e}`;
|
|
9456
9482
|
}
|
|
9457
9483
|
function Jr(s, e) {
|
|
9458
9484
|
return `<a class="__crossx-addr-text __crossx-row-link" href="${S(e)}" target="_blank" rel="noopener noreferrer">${S(s)}</a>`;
|
|
9459
9485
|
}
|
|
9460
9486
|
function Qe(s) {
|
|
9461
|
-
return Jr(de(s),
|
|
9487
|
+
return Jr(de(s), Oi(s));
|
|
9462
9488
|
}
|
|
9463
9489
|
function Zr(s, e) {
|
|
9464
9490
|
return Jr(de(e), Ci(s, e));
|
|
9465
9491
|
}
|
|
9466
|
-
function
|
|
9492
|
+
function Pi(s, e, r) {
|
|
9467
9493
|
const t = Z(
|
|
9468
9494
|
(r == null ? void 0 : r.label_from) ?? "From",
|
|
9469
9495
|
`${Qe(s.from)}
|
|
@@ -9495,7 +9521,7 @@ function Oi(s, e, r) {
|
|
|
9495
9521
|
</div>
|
|
9496
9522
|
`, l;
|
|
9497
9523
|
}
|
|
9498
|
-
function
|
|
9524
|
+
function Li(s, e, r) {
|
|
9499
9525
|
const t = document.createElement("div");
|
|
9500
9526
|
return t.id = ee, t.innerHTML = `
|
|
9501
9527
|
<div class="__crossx-card __crossx-card--migration" style="${ie(e)}" role="dialog" aria-modal="true" aria-labelledby="__crossx-ttl">
|
|
@@ -9512,10 +9538,10 @@ function Pi(s, e, r) {
|
|
|
9512
9538
|
</div>
|
|
9513
9539
|
`, t;
|
|
9514
9540
|
}
|
|
9515
|
-
function
|
|
9541
|
+
function Di(s, e, r, t) {
|
|
9516
9542
|
const n = e.status !== "reverted" && e.status !== "timeout", i = e.status === "timeout", o = s.querySelector("#__crossx-ttl"), a = s.querySelector(".__crossx-header");
|
|
9517
9543
|
if (o) {
|
|
9518
|
-
const y = i ?
|
|
9544
|
+
const y = i ? Ai : n ? "" : Ei, v = i ? (t == null ? void 0 : t.tx_timeout) ?? "Transaction timeout" : n ? (t == null ? void 0 : t.tx_success) ?? "Transaction complete" : (t == null ? void 0 : t.tx_failed) ?? "Transaction failed";
|
|
9519
9545
|
y ? (o.style.display = "flex", o.style.alignItems = "center", o.style.gap = "8px", o.innerHTML = `${y}<span>${S(v)}</span>`) : o.textContent = v;
|
|
9520
9546
|
}
|
|
9521
9547
|
if (a && !s.querySelector("#__crossx-close-btn")) {
|
|
@@ -9551,7 +9577,7 @@ function Li(s, e, r, t) {
|
|
|
9551
9577
|
});
|
|
9552
9578
|
});
|
|
9553
9579
|
}
|
|
9554
|
-
function
|
|
9580
|
+
function $i(s, e, r) {
|
|
9555
9581
|
const t = e, n = nt(s.dappName), i = S(s.message), o = document.createElement("div");
|
|
9556
9582
|
return o.id = ee, o.innerHTML = `
|
|
9557
9583
|
<div class="__crossx-card __crossx-card--migration __crossx-card--sign-msg" style="${ie(t)}" role="dialog" aria-modal="true" aria-labelledby="__crossx-ttl">
|
|
@@ -9583,7 +9609,7 @@ function Di(s, e, r) {
|
|
|
9583
9609
|
</div>
|
|
9584
9610
|
`, o;
|
|
9585
9611
|
}
|
|
9586
|
-
function
|
|
9612
|
+
function Bi(s, e, r) {
|
|
9587
9613
|
const t = e, n = nt(s.dappName);
|
|
9588
9614
|
let i = {};
|
|
9589
9615
|
if (typeof s.typedData == "string")
|
|
@@ -9599,7 +9625,7 @@ function $i(s, e, r) {
|
|
|
9599
9625
|
<span class="__crossx-td-value">${S(o)}</span>
|
|
9600
9626
|
</div>`;
|
|
9601
9627
|
for (const [u, p] of Object.entries(a)) {
|
|
9602
|
-
const g =
|
|
9628
|
+
const g = Ri(p), x = ki(p) ? `<span class="__crossx-addr-text">${de(p)}</span>
|
|
9603
9629
|
<button class="__crossx-copy-btn" data-copy="${S(String(p))}" title="Copy">${we}</button>` : `<span>${g}</span>`;
|
|
9604
9630
|
c += `
|
|
9605
9631
|
<div class="__crossx-td-row">
|
|
@@ -9638,28 +9664,28 @@ function $i(s, e, r) {
|
|
|
9638
9664
|
</div>
|
|
9639
9665
|
`, l;
|
|
9640
9666
|
}
|
|
9641
|
-
const
|
|
9667
|
+
const Mi = `<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round">
|
|
9642
9668
|
<line x1="12" y1="5" x2="12" y2="19"/>
|
|
9643
9669
|
<line x1="5" y1="12" x2="19" y2="12"/>
|
|
9644
|
-
</svg>`,
|
|
9670
|
+
</svg>`, Fi = '<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="12" r="12" fill="var(--cx-primary, #019d92)"/><path d="M7.5 12.5L10.5 15.5L16.5 8.5" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>';
|
|
9645
9671
|
function Qr(s) {
|
|
9646
9672
|
return s.name || `Account ${s.index + 1}`;
|
|
9647
9673
|
}
|
|
9648
|
-
function
|
|
9674
|
+
function Ui() {
|
|
9649
9675
|
return `<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"><rect width="32" height="32" rx="16" fill="#121212" fill-opacity="0.1"/><g fill="#121212" fill-opacity="0.5">${Xr}</g></svg>`;
|
|
9650
9676
|
}
|
|
9651
|
-
const
|
|
9652
|
-
function
|
|
9677
|
+
const Hi = fr().portraitBaseUrl;
|
|
9678
|
+
function Wi(s, e) {
|
|
9653
9679
|
const r = e.replace("#", "");
|
|
9654
|
-
return `${
|
|
9680
|
+
return `${Hi}/portrait/evm/${s}.png?size=256&bg=${r}`;
|
|
9655
9681
|
}
|
|
9656
9682
|
function es(s, e, r) {
|
|
9657
|
-
const t =
|
|
9683
|
+
const t = Wi(s, r), i = Ui().replace(/"/g, """);
|
|
9658
9684
|
return `<span class="__crossx-wallet-avatar"><img class="__crossx-wallet-avatar-img" src="${t}" alt="" onerror="this.style.display='none';this.nextElementSibling.innerHTML='${i}';this.nextElementSibling.style.display='flex';"><span class="__crossx-wallet-avatar-fallback"></span></span>`;
|
|
9659
9685
|
}
|
|
9660
|
-
function
|
|
9686
|
+
function Gi(s, e, r, t) {
|
|
9661
9687
|
const n = r == null ? void 0 : r.toLowerCase(), i = s.map((a) => {
|
|
9662
|
-
const c = n && a.address.toLowerCase() === n, l = c ? " __crossx-wallet-item--selected" : "", u = c ? `<span class="__crossx-wallet-selected">${S((t == null ? void 0 : t.wallet_selector_selected) ?? "Selected")}</span><span class="__crossx-wallet-check">${
|
|
9688
|
+
const c = n && a.address.toLowerCase() === n, l = c ? " __crossx-wallet-item--selected" : "", u = c ? `<span class="__crossx-wallet-selected">${S((t == null ? void 0 : t.wallet_selector_selected) ?? "Selected")}</span><span class="__crossx-wallet-check">${Fi}</span>` : "";
|
|
9663
9689
|
return `<button class="__crossx-wallet-item${l}" data-wallet-index="${a.index}" data-wallet-address="${S(a.address)}">
|
|
9664
9690
|
${es(a.address, a.index, e.bg)}<span class="__crossx-wallet-info"><span class="__crossx-wallet-idx">${S(Qr(a))}</span><span class="__crossx-wallet-addr">${de(a.address)}</span></span>${u}
|
|
9665
9691
|
</button>`;
|
|
@@ -9688,7 +9714,7 @@ function Wi(s, e, r, t) {
|
|
|
9688
9714
|
${i}
|
|
9689
9715
|
</div>
|
|
9690
9716
|
<button class="__crossx-wallet-add" id="__crossx-add-wallet-btn" type="button">
|
|
9691
|
-
<span class="__crossx-wallet-add-icon">${
|
|
9717
|
+
<span class="__crossx-wallet-add-icon">${Mi}</span>
|
|
9692
9718
|
<span class="__crossx-wallet-add-label">${S((t == null ? void 0 : t.wallet_selector_add_button) ?? "add a wallet")}</span>
|
|
9693
9719
|
</button>
|
|
9694
9720
|
<p class="__crossx-wallet-add-error" id="__crossx-add-wallet-error" role="alert" aria-live="polite" hidden></p>
|
|
@@ -9698,22 +9724,22 @@ function Wi(s, e, r, t) {
|
|
|
9698
9724
|
</div>
|
|
9699
9725
|
`, o;
|
|
9700
9726
|
}
|
|
9701
|
-
const
|
|
9727
|
+
const qi = `<svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
9702
9728
|
<path d="M26.693 21.193c-.028-3.168 2.587-4.712 2.706-4.786-1.477-2.16-3.77-2.454-4.58-2.484-1.944-.197-3.804 1.148-4.793 1.148-.992 0-2.52-1.12-4.147-1.09-2.13.032-4.1 1.239-5.198 3.133-2.222 3.855-.569 9.562 1.593 12.69 1.061 1.535 2.318 3.258 3.975 3.196 1.6-.064 2.2-1.03 4.133-1.03 1.928 0 2.48 1.03 4.172.997 1.72-.03 2.806-1.56 3.862-3.1 1.211-1.779 1.713-3.495 1.74-3.583-.037-.017-3.427-1.316-3.463-5.09z" fill="currentColor"/>
|
|
9703
9729
|
<path d="M23.527 11.876c.877-1.065 1.471-2.545 1.31-4.024-1.266.053-2.807.845-3.718 1.907-.813.946-1.53 2.468-1.34 3.915 1.41.107 2.852-.716 3.748-1.798z" fill="currentColor"/>
|
|
9704
|
-
</svg>`,
|
|
9730
|
+
</svg>`, Ki = `<svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
9705
9731
|
<path d="M38.06 20.44c0-1.34-.12-2.63-.34-3.87H20.5v7.32h9.84c-.42 2.28-1.71 4.21-3.65 5.51v4.57h5.91c3.46-3.19 5.46-7.88 5.46-13.53z" fill="#4285F4"/>
|
|
9706
9732
|
<path d="M20.5 38.5c4.94 0 9.09-1.64 12.12-4.44l-5.91-4.57c-1.64 1.1-3.73 1.75-6.21 1.75-4.77 0-8.82-3.22-10.26-7.55H4.16v4.72A18.49 18.49 0 0 0 20.5 38.5z" fill="#34A853"/>
|
|
9707
9733
|
<path d="M10.24 23.69A11.16 11.16 0 0 1 9.66 20c0-1.28.22-2.52.58-3.69v-4.72H4.16A18.49 18.49 0 0 0 2 20c0 2.97.71 5.78 1.97 8.28l6.27-4.59z" fill="#FBBC05"/>
|
|
9708
9734
|
<path d="M20.5 8.76c2.69 0 5.1.92 7 2.73l5.24-5.24C29.58 3.36 25.43 1.5 20.5 1.5A18.49 18.49 0 0 0 4.16 11.59l6.08 4.72C11.68 11.98 15.73 8.76 20.5 8.76z" fill="#EA4335"/>
|
|
9709
9735
|
</svg>`;
|
|
9710
|
-
function
|
|
9736
|
+
function Vi(s) {
|
|
9711
9737
|
const e = ls(s);
|
|
9712
|
-
return `<span class="__crossx-connect-other-wallet-desc-part"><span class="__crossx-connect-other-wallet-icon" aria-hidden="true">${
|
|
9738
|
+
return `<span class="__crossx-connect-other-wallet-desc-part"><span class="__crossx-connect-other-wallet-icon" aria-hidden="true">${Si[s] ?? ""}</span><span class="__crossx-connect-other-wallet-name">${S(e)}</span></span>`;
|
|
9713
9739
|
}
|
|
9714
|
-
function
|
|
9740
|
+
function zi(s) {
|
|
9715
9741
|
if (s.length === 0) return "";
|
|
9716
|
-
const e = (n) =>
|
|
9742
|
+
const e = (n) => Vi(s[n]), r = "Supported wallets include ";
|
|
9717
9743
|
if (s.length === 1)
|
|
9718
9744
|
return `${r}${e(0)}.`;
|
|
9719
9745
|
if (s.length === 2)
|
|
@@ -9723,7 +9749,7 @@ function Vi(s) {
|
|
|
9723
9749
|
const t = s.length - 3;
|
|
9724
9750
|
return `${r}${e(0)}, ${e(1)}, ${e(2)}, and ${t} more.`;
|
|
9725
9751
|
}
|
|
9726
|
-
function
|
|
9752
|
+
function ji(s, e = [], r) {
|
|
9727
9753
|
const t = s, n = S(String(e[0])), i = S((r == null ? void 0 : r.login_selector_or) ?? "or"), o = e.length > 0 ? `
|
|
9728
9754
|
<div class="__crossx-login-or-divider">
|
|
9729
9755
|
<hr><span>${i}</span><hr>
|
|
@@ -9731,7 +9757,7 @@ function zi(s, e = [], r) {
|
|
|
9731
9757
|
<button type="button" class="__crossx-connect-other-block" id="__crossx-connect-other-wallet-btn" data-wallet-id="${n}" aria-labelledby="__crossx-connect-other-heading">
|
|
9732
9758
|
<span class="__crossx-connect-other-text">
|
|
9733
9759
|
<span class="__crossx-connect-other-title" id="__crossx-connect-other-heading">${S((r == null ? void 0 : r.login_selector_connect_other_wallets) ?? "Connect with Other Wallets")}</span>
|
|
9734
|
-
<span class="__crossx-connect-other-desc __crossx-connect-other-summary">${
|
|
9760
|
+
<span class="__crossx-connect-other-desc __crossx-connect-other-summary">${zi(e)}</span>
|
|
9735
9761
|
</span>
|
|
9736
9762
|
</button>` : "", a = document.createElement("div");
|
|
9737
9763
|
return a.id = ee, a.innerHTML = `
|
|
@@ -9747,11 +9773,11 @@ function zi(s, e = [], r) {
|
|
|
9747
9773
|
<div class="__crossx-body">
|
|
9748
9774
|
<div class="__crossx-login-btn-row">
|
|
9749
9775
|
<button class="__crossx-login-btn" id="__crossx-apple-btn" type="button">
|
|
9750
|
-
<span class="__crossx-login-icon" style="color:var(--cx-value);">${
|
|
9776
|
+
<span class="__crossx-login-icon" style="color:var(--cx-value);">${qi}</span>
|
|
9751
9777
|
<span class="__crossx-login-btn-label">${S((r == null ? void 0 : r.login_selector_apple) ?? "Sign in with Apple")}</span>
|
|
9752
9778
|
</button>
|
|
9753
9779
|
<button class="__crossx-login-btn" id="__crossx-google-btn" type="button">
|
|
9754
|
-
<span class="__crossx-login-icon">${
|
|
9780
|
+
<span class="__crossx-login-icon">${Ki}</span>
|
|
9755
9781
|
<span class="__crossx-login-btn-label">${S((r == null ? void 0 : r.login_selector_google) ?? "Sign in with Google")}</span>
|
|
9756
9782
|
</button>
|
|
9757
9783
|
</div>${o}
|
|
@@ -9762,7 +9788,7 @@ function zi(s, e = [], r) {
|
|
|
9762
9788
|
</div>
|
|
9763
9789
|
`, a;
|
|
9764
9790
|
}
|
|
9765
|
-
function
|
|
9791
|
+
function Yi(s, e) {
|
|
9766
9792
|
const r = s, t = document.createElement("div");
|
|
9767
9793
|
t.id = ee;
|
|
9768
9794
|
const n = S(e.message).replace(/\n/g, "<br>"), i = e.email ? `<div class="__crossx-session-account-card">
|
|
@@ -9790,7 +9816,7 @@ function ji(s, e) {
|
|
|
9790
9816
|
</div>
|
|
9791
9817
|
`, t;
|
|
9792
9818
|
}
|
|
9793
|
-
function
|
|
9819
|
+
function Xi(s, e = !0) {
|
|
9794
9820
|
const r = s, t = e ? `<button class="__crossx-close" id="__crossx-close-btn" aria-label="Close">${ne}</button>` : "", n = e ? '<button class="__crossx-skip-btn" id="__crossx-skip-btn">Skip for Now</button>' : "", i = document.createElement("div");
|
|
9795
9821
|
return i.id = ee, i.innerHTML = `
|
|
9796
9822
|
<div class="__crossx-card __crossx-card--migration" style="${ie(r)}" role="dialog" aria-modal="true" aria-labelledby="__crossx-ttl">
|
|
@@ -9806,7 +9832,7 @@ function Yi(s, e = !0) {
|
|
|
9806
9832
|
<p class="__crossx-mig-info-desc">It safely restores and integrates all your previous assets. Simply verify your PIN to get started.</p>
|
|
9807
9833
|
</div>
|
|
9808
9834
|
<button class="__crossx-recover-btn" id="__crossx-recover-btn">
|
|
9809
|
-
<span class="__crossx-recover-icon">${
|
|
9835
|
+
<span class="__crossx-recover-icon">${mi}</span>
|
|
9810
9836
|
<span class="__crossx-recover-label">Import from Social Backup</span>
|
|
9811
9837
|
</button>
|
|
9812
9838
|
${n}
|
|
@@ -9814,7 +9840,7 @@ function Yi(s, e = !0) {
|
|
|
9814
9840
|
</div>
|
|
9815
9841
|
`, i;
|
|
9816
9842
|
}
|
|
9817
|
-
function
|
|
9843
|
+
function Ji(s, e) {
|
|
9818
9844
|
const r = s, { errorMessage: t, attemptCount: n, maxAttempts: i = 5 } = e ?? {}, o = !!t, a = o ? " --error" : "", c = n != null && n > 0 ? `<p class="__crossx-pin-attempt">${n}/${i}</p>` : "", l = n != null && n >= 3 ? '<p class="__crossx-pin-warning">Your account will be locked after further failures.</p>' : "", u = o ? `<p class="__crossx-pin-error-text">${t}</p>` : "", p = document.createElement("div");
|
|
9819
9845
|
return p.id = ee, p.innerHTML = `
|
|
9820
9846
|
<div class="__crossx-card __crossx-card--migration" style="${ie(r)}" role="dialog" aria-modal="true" aria-labelledby="__crossx-ttl">
|
|
@@ -9838,12 +9864,12 @@ function Xi(s, e) {
|
|
|
9838
9864
|
</div>
|
|
9839
9865
|
`, p;
|
|
9840
9866
|
}
|
|
9841
|
-
function
|
|
9867
|
+
function Zi(s) {
|
|
9842
9868
|
const e = new Date(s), r = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], t = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], n = r[e.getDay()], i = t[e.getMonth()], o = e.getDate(), a = String(e.getHours()).padStart(2, "0"), c = String(e.getMinutes()).padStart(2, "0");
|
|
9843
9869
|
return `${n}, ${i} ${o} ${a}:${c}`;
|
|
9844
9870
|
}
|
|
9845
|
-
function
|
|
9846
|
-
const t = s, n = e <= 0, i = n ? null : Date.now() + e * 1e3, o = i ?
|
|
9871
|
+
function Qi(s, e, r) {
|
|
9872
|
+
const t = s, n = e <= 0, i = n ? null : Date.now() + e * 1e3, o = i ? Zi(i) : null, a = document.createElement("div");
|
|
9847
9873
|
return a.id = ee, a.innerHTML = `
|
|
9848
9874
|
<div class="__crossx-card __crossx-card--migration" style="${ie(t)}" role="dialog" aria-modal="true" aria-labelledby="__crossx-ttl">
|
|
9849
9875
|
<div class="__crossx-header">
|
|
@@ -9873,10 +9899,10 @@ function Zi(s, e, r) {
|
|
|
9873
9899
|
return () => clearInterval(p);
|
|
9874
9900
|
} };
|
|
9875
9901
|
}
|
|
9876
|
-
function
|
|
9902
|
+
function eo(s) {
|
|
9877
9903
|
const r = [s.check1, s.check2].map((t, n) => `
|
|
9878
9904
|
<div class="__crossx-pw-notice-item" data-check-index="${n}" role="checkbox" aria-checked="false" tabindex="0">
|
|
9879
|
-
<div class="__crossx-pw-notice-check" id="__crossx-notice-check-${n}">${
|
|
9905
|
+
<div class="__crossx-pw-notice-check" id="__crossx-notice-check-${n}">${no}</div>
|
|
9880
9906
|
<span class="__crossx-pw-notice-item-text">${S(t)}</span>
|
|
9881
9907
|
</div>
|
|
9882
9908
|
`).join("");
|
|
@@ -9891,7 +9917,7 @@ function Qi(s) {
|
|
|
9891
9917
|
<div class="__crossx-pw-fields __crossx-pw-fields--notice">
|
|
9892
9918
|
<div class="__crossx-pw-notice-header">
|
|
9893
9919
|
<div class="__crossx-pw-notice-title-row">
|
|
9894
|
-
<span class="__crossx-pw-notice-icon">${
|
|
9920
|
+
<span class="__crossx-pw-notice-icon">${io}</span>
|
|
9895
9921
|
<p class="__crossx-pw-notice-title">${S(s.noticeTitle)}</p>
|
|
9896
9922
|
</div>
|
|
9897
9923
|
<p class="__crossx-pw-notice-desc">${S(s.noticeDesc)}</p>
|
|
@@ -9939,7 +9965,7 @@ function _t(s) {
|
|
|
9939
9965
|
<div class="__crossx-pin6-numpad-row">
|
|
9940
9966
|
<button type="button" class="__crossx-pin6-numpad-key --empty" aria-hidden="true"></button>
|
|
9941
9967
|
<button type="button" class="__crossx-pin6-numpad-key${_}" data-key="0">0</button>
|
|
9942
|
-
<button type="button" class="__crossx-pin6-numpad-key --delete${_}" data-key="backspace" aria-label="Delete">${
|
|
9968
|
+
<button type="button" class="__crossx-pin6-numpad-key --delete${_}" data-key="backspace" aria-label="Delete">${so}</button>
|
|
9943
9969
|
</div>
|
|
9944
9970
|
</div>`;
|
|
9945
9971
|
return `
|
|
@@ -9973,19 +9999,19 @@ function hr(s, e) {
|
|
|
9973
9999
|
</div>
|
|
9974
10000
|
`, r;
|
|
9975
10001
|
}
|
|
9976
|
-
function
|
|
10002
|
+
function to(s, e) {
|
|
9977
10003
|
if (s.length !== 6) return e.tooShort;
|
|
9978
10004
|
if (!/^\d+$/.test(s)) return e.numbersOnly;
|
|
9979
10005
|
if (/(.)\1{2}/.test(s)) return e.repeatingDigit;
|
|
9980
10006
|
const r = s.split("").map(Number), t = r.every((i, o) => o === 0 || i === (r[o - 1] + 1) % 10), n = r.every((i, o) => o === 0 || i === (r[o - 1] + 9) % 10);
|
|
9981
10007
|
return t || n ? e.sequential : s[0] !== s[1] && s === s.slice(0, 2).repeat(3) ? e.alternatingPattern : null;
|
|
9982
10008
|
}
|
|
9983
|
-
function
|
|
10009
|
+
function ro(s) {
|
|
9984
10010
|
const e = Math.max(0, Math.ceil(s / 1e3)), r = Math.floor(e / 3600), t = Math.floor(e % 3600 / 60), n = e % 60;
|
|
9985
10011
|
return r > 0 ? `${r}h ${String(t).padStart(2, "0")}m` : `${String(t).padStart(2, "0")}:${String(n).padStart(2, "0")}`;
|
|
9986
10012
|
}
|
|
9987
10013
|
function ft(s, e, r, t, n, i, o) {
|
|
9988
|
-
var
|
|
10014
|
+
var C, W;
|
|
9989
10015
|
let a = !!(i && i > Date.now()), c = !1;
|
|
9990
10016
|
const l = () => Array.from(s.querySelectorAll(".__crossx-pin6-box")), u = () => s.querySelector("#__crossx-pin6-boxes"), p = () => s.querySelector("#__crossx-pin6-error"), g = () => s.querySelector("#__crossx-pin6-lock-msg"), _ = () => s.querySelector("#__crossx-pin6-lock-countdown"), x = () => s.querySelector(".__crossx-pin6-body"), y = "●", v = (b, E) => {
|
|
9991
10017
|
b.dataset.digit = E, b.value = y;
|
|
@@ -10042,7 +10068,7 @@ function ft(s, e, r, t, n, i, o) {
|
|
|
10042
10068
|
var I;
|
|
10043
10069
|
(I = l()[0]) == null || I.focus(), D();
|
|
10044
10070
|
}, 50);
|
|
10045
|
-
},
|
|
10071
|
+
}, O = (b) => {
|
|
10046
10072
|
var K;
|
|
10047
10073
|
Q(!0), l().forEach(A), z();
|
|
10048
10074
|
const E = p();
|
|
@@ -10058,7 +10084,7 @@ function ft(s, e, r, t, n, i, o) {
|
|
|
10058
10084
|
j <= 0 ? (clearInterval(I), Q(!1), (Y = g()) == null || Y.remove(), E && (E.textContent = ""), z(), setTimeout(() => {
|
|
10059
10085
|
var Ee;
|
|
10060
10086
|
return (Ee = l()[0]) == null ? void 0 : Ee.focus();
|
|
10061
|
-
}, 50)) : V && (V.textContent = ` ${
|
|
10087
|
+
}, 50)) : V && (V.textContent = ` ${ro(j)}`);
|
|
10062
10088
|
}, I = setInterval(N, 1e3);
|
|
10063
10089
|
N();
|
|
10064
10090
|
const U = new MutationObserver(() => {
|
|
@@ -10075,7 +10101,7 @@ function ft(s, e, r, t, n, i, o) {
|
|
|
10075
10101
|
try {
|
|
10076
10102
|
if (n) {
|
|
10077
10103
|
const E = await n(b);
|
|
10078
|
-
E.ok ? e(b) : E.lockExpiresAt ? (w(),
|
|
10104
|
+
E.ok ? e(b) : E.lockExpiresAt ? (w(), O(E.lockExpiresAt)) : (T(E.error ?? "Incorrect PIN. Please try again."), E.attemptCount != null && E.maxAttempts != null ? (B(te()), m(E.attemptCount, E.maxAttempts)) : (H(), w()));
|
|
10079
10105
|
} else
|
|
10080
10106
|
e(b);
|
|
10081
10107
|
} catch (E) {
|
|
@@ -10087,7 +10113,7 @@ function ft(s, e, r, t, n, i, o) {
|
|
|
10087
10113
|
}
|
|
10088
10114
|
}
|
|
10089
10115
|
};
|
|
10090
|
-
i && i > Date.now() ?
|
|
10116
|
+
i && i > Date.now() ? O(i) : setTimeout(() => {
|
|
10091
10117
|
var b;
|
|
10092
10118
|
return (b = l()[0]) == null ? void 0 : b.focus();
|
|
10093
10119
|
}, 100);
|
|
@@ -10096,7 +10122,7 @@ function ft(s, e, r, t, n, i, o) {
|
|
|
10096
10122
|
const b = l(), E = b.find((N) => !R(N)) ?? b[b.length - 1];
|
|
10097
10123
|
E == null || E.focus();
|
|
10098
10124
|
};
|
|
10099
|
-
(
|
|
10125
|
+
(C = u()) == null || C.addEventListener("click", (b) => {
|
|
10100
10126
|
b.target.classList.contains("__crossx-pin6-box") || $();
|
|
10101
10127
|
}), (W = x()) == null || W.addEventListener("click", (b) => {
|
|
10102
10128
|
const E = b.target;
|
|
@@ -10159,18 +10185,18 @@ function ft(s, e, r, t, n, i, o) {
|
|
|
10159
10185
|
}), M.addEventListener("pointercancel", E), M.addEventListener("pointerleave", E, !0), D(), i && i > Date.now() && z();
|
|
10160
10186
|
}
|
|
10161
10187
|
}
|
|
10162
|
-
const
|
|
10188
|
+
const so = `<svg width="22" height="17" viewBox="0 0 22 17" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
10163
10189
|
<path d="M7.36 0.5H19.5C20.6046 0.5 21.5 1.39543 21.5 2.5V14.5C21.5 15.6046 20.6046 16.5 19.5 16.5H7.36C6.76 16.5 6.19 16.24 5.8 15.79L0.94 10.02C0.35 9.32 0.35 8.3 0.94 7.6L5.8 1.71C6.19 1.26 6.76 0.5 7.36 0.5Z" stroke="currentColor" stroke-width="1.2" fill="none"/>
|
|
10164
10190
|
<line x1="10" y1="5.5" x2="16" y2="11.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"/>
|
|
10165
10191
|
<line x1="16" y1="5.5" x2="10" y2="11.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"/>
|
|
10166
10192
|
</svg>`, ts = `<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
10167
10193
|
<path d="M14.5 8.5H14V6.5C14 4.015 11.985 2 9.5 2C7.015 2 5 4.015 5 6.5V8.5H4.5C3.672 8.5 3 9.172 3 10V16.5C3 17.328 3.672 18 4.5 18H14.5C15.328 18 16 17.328 16 16.5V10C16 9.172 15.328 8.5 14.5 8.5ZM10.5 13.415V15C10.5 15.276 10.276 15.5 10 15.5H9C8.724 15.5 8.5 15.276 8.5 15V13.415C8.187 13.196 8 12.847 8 12.5C8 11.672 8.672 11 9.5 11C10.328 11 11 11.672 11 12.5C11 12.847 10.813 13.196 10.5 13.415ZM12.5 8.5H6.5V6.5C6.5 4.843 7.843 3.5 9.5 3.5C11.157 3.5 12.5 4.843 12.5 6.5V8.5Z" fill="currentColor"/>
|
|
10168
|
-
</svg>`,
|
|
10194
|
+
</svg>`, no = `<svg width="11" height="9" viewBox="0 0 11 9" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
10169
10195
|
<path d="M1 4.5L4 7.5L10 1" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
10170
|
-
</svg>`,
|
|
10196
|
+
</svg>`, io = `<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
10171
10197
|
<path d="M12 0C18.6274 0 24 5.37258 24 12C23.9999 18.6273 18.6274 24 12 24C5.37264 24 9.89594e-05 18.6273 0 12C0 5.37258 5.37258 0 12 0ZM10.875 15.127V17.377H13.125V15.127H10.875ZM10.875 6.62207V13.627H13.125V6.62207H10.875Z" fill="currentColor"/>
|
|
10172
10198
|
</svg>`;
|
|
10173
|
-
function
|
|
10199
|
+
function oo(s, e, r) {
|
|
10174
10200
|
var i;
|
|
10175
10201
|
const t = s.querySelectorAll(".__crossx-pin-input");
|
|
10176
10202
|
t.forEach((o, a) => {
|
|
@@ -10203,7 +10229,7 @@ function io(s, e, r) {
|
|
|
10203
10229
|
}
|
|
10204
10230
|
}), (i = t[0]) == null || i.focus();
|
|
10205
10231
|
}
|
|
10206
|
-
class
|
|
10232
|
+
class ao {
|
|
10207
10233
|
constructor(e = "light", r, t = At, n) {
|
|
10208
10234
|
this.theme = e, this.overrides = r, this.tokens = dr(e, r), this.displayDecimals = t, this.pinKeyboard = n;
|
|
10209
10235
|
}
|
|
@@ -10248,7 +10274,7 @@ class oo {
|
|
|
10248
10274
|
return new Promise((n, i) => {
|
|
10249
10275
|
var R;
|
|
10250
10276
|
ae();
|
|
10251
|
-
const o = [...e], a =
|
|
10277
|
+
const o = [...e], a = Gi(o, this.tokens, t, this.messages), c = Ce();
|
|
10252
10278
|
ce(a);
|
|
10253
10279
|
let l = !1;
|
|
10254
10280
|
const u = () => {
|
|
@@ -10325,7 +10351,7 @@ class oo {
|
|
|
10325
10351
|
return new Promise((n) => {
|
|
10326
10352
|
var g, _, x, y;
|
|
10327
10353
|
ae();
|
|
10328
|
-
const i =
|
|
10354
|
+
const i = ji(this.tokens, r, this.messages), o = Ce();
|
|
10329
10355
|
ce(i);
|
|
10330
10356
|
const a = () => {
|
|
10331
10357
|
i.remove(), o();
|
|
@@ -10354,14 +10380,14 @@ class oo {
|
|
|
10354
10380
|
return new Promise((r) => {
|
|
10355
10381
|
var u, p, g;
|
|
10356
10382
|
ae();
|
|
10357
|
-
const t = this.messages, n =
|
|
10383
|
+
const t = this.messages, n = Yi(this.tokens, {
|
|
10358
10384
|
title: e.title,
|
|
10359
10385
|
message: e.message,
|
|
10360
10386
|
email: e.email,
|
|
10361
10387
|
accountLabel: (t == null ? void 0 : t.session_alert_account_label) ?? "Account",
|
|
10362
10388
|
signOutLabel: (t == null ? void 0 : t.session_alert_sign_out_button) ?? "Sign out",
|
|
10363
10389
|
signInAgainLabel: (t == null ? void 0 : t.session_alert_sign_in_again_button) ?? "Sign in again"
|
|
10364
|
-
}), i =
|
|
10390
|
+
}), i = Ce();
|
|
10365
10391
|
ce(n);
|
|
10366
10392
|
let o = !1;
|
|
10367
10393
|
const a = () => {
|
|
@@ -10384,7 +10410,7 @@ class oo {
|
|
|
10384
10410
|
return new Promise((t) => {
|
|
10385
10411
|
var a, c, l;
|
|
10386
10412
|
ae();
|
|
10387
|
-
const n =
|
|
10413
|
+
const n = Xi(this.tokens, r);
|
|
10388
10414
|
ce(n);
|
|
10389
10415
|
const i = () => n.remove(), o = () => {
|
|
10390
10416
|
i(), t("recover");
|
|
@@ -10430,7 +10456,7 @@ class oo {
|
|
|
10430
10456
|
}, o = {
|
|
10431
10457
|
title: (t == null ? void 0 : t.pin_setup_confirm_title) ?? "Confirm PIN",
|
|
10432
10458
|
headerSubtitle: (t == null ? void 0 : t.pin_setup_confirm_subtitle) ?? "Enter your PIN again to confirm."
|
|
10433
|
-
}, a = hr(this.tokens,
|
|
10459
|
+
}, a = hr(this.tokens, eo(n)), c = Ce();
|
|
10434
10460
|
ce(a);
|
|
10435
10461
|
let l = !1;
|
|
10436
10462
|
const u = () => {
|
|
@@ -10461,7 +10487,7 @@ class oo {
|
|
|
10461
10487
|
subtitle: i.subtitle,
|
|
10462
10488
|
errorMessage: R
|
|
10463
10489
|
}), this.applyPinKeyboardMode(_), (k = _.querySelector("#__crossx-close-btn")) == null || k.addEventListener("click", g), ft(_, (L) => {
|
|
10464
|
-
const D =
|
|
10490
|
+
const D = to(L, x);
|
|
10465
10491
|
D ? v(D) : y(L);
|
|
10466
10492
|
}, g);
|
|
10467
10493
|
};
|
|
@@ -10528,7 +10554,7 @@ class oo {
|
|
|
10528
10554
|
attemptCount: e == null ? void 0 : e.attemptCount,
|
|
10529
10555
|
maxAttempts: e == null ? void 0 : e.maxAttempts
|
|
10530
10556
|
})
|
|
10531
|
-
), u =
|
|
10557
|
+
), u = Ce();
|
|
10532
10558
|
ce(l);
|
|
10533
10559
|
let p = !1;
|
|
10534
10560
|
const g = () => {
|
|
@@ -10556,14 +10582,14 @@ class oo {
|
|
|
10556
10582
|
return new Promise((r) => {
|
|
10557
10583
|
var c;
|
|
10558
10584
|
ae();
|
|
10559
|
-
const t =
|
|
10585
|
+
const t = Ji(this.tokens, e);
|
|
10560
10586
|
ce(t);
|
|
10561
10587
|
const n = () => t.remove(), i = (l) => {
|
|
10562
10588
|
n(), r(l);
|
|
10563
10589
|
}, o = () => {
|
|
10564
10590
|
n(), r(null);
|
|
10565
10591
|
}, a = t.querySelector(".__crossx-card");
|
|
10566
|
-
a && this.applyPinKeyboardMode(a),
|
|
10592
|
+
a && this.applyPinKeyboardMode(a), oo(t, i, o), (c = t.querySelector("#__crossx-close-btn")) == null || c.addEventListener("click", o), t.addEventListener("click", (l) => {
|
|
10567
10593
|
l.target === t && o();
|
|
10568
10594
|
});
|
|
10569
10595
|
});
|
|
@@ -10578,7 +10604,7 @@ class oo {
|
|
|
10578
10604
|
return new Promise((t) => {
|
|
10579
10605
|
var l;
|
|
10580
10606
|
ae();
|
|
10581
|
-
const { overlay: n, startCountdown: i } =
|
|
10607
|
+
const { overlay: n, startCountdown: i } = Qi(this.tokens, e, r);
|
|
10582
10608
|
ce(n);
|
|
10583
10609
|
const o = () => {
|
|
10584
10610
|
c(), n.remove();
|
|
@@ -10598,7 +10624,7 @@ class oo {
|
|
|
10598
10624
|
return new Promise((r) => {
|
|
10599
10625
|
var a, c;
|
|
10600
10626
|
ae();
|
|
10601
|
-
const t =
|
|
10627
|
+
const t = Pi(e, this.tokens, this.messages);
|
|
10602
10628
|
ce(t);
|
|
10603
10629
|
const n = () => t.remove(), i = () => {
|
|
10604
10630
|
n(), r();
|
|
@@ -10627,7 +10653,7 @@ class oo {
|
|
|
10627
10653
|
showTransactionProgress(e, r) {
|
|
10628
10654
|
return new Promise((t) => {
|
|
10629
10655
|
ae();
|
|
10630
|
-
const n =
|
|
10656
|
+
const n = Li(e, this.tokens, this.messages);
|
|
10631
10657
|
ce(n);
|
|
10632
10658
|
const i = () => n.remove();
|
|
10633
10659
|
let o = !1;
|
|
@@ -10644,7 +10670,7 @@ class oo {
|
|
|
10644
10670
|
document.addEventListener("keydown", l);
|
|
10645
10671
|
};
|
|
10646
10672
|
r.then((l) => {
|
|
10647
|
-
o || (
|
|
10673
|
+
o || (Di(n, l, this.tokens, this.messages), c());
|
|
10648
10674
|
});
|
|
10649
10675
|
});
|
|
10650
10676
|
}
|
|
@@ -10653,8 +10679,8 @@ class oo {
|
|
|
10653
10679
|
var l, u, p;
|
|
10654
10680
|
ae();
|
|
10655
10681
|
let t;
|
|
10656
|
-
e.type === "sign-message" ? t =
|
|
10657
|
-
const n =
|
|
10682
|
+
e.type === "sign-message" ? t = $i(e, this.tokens, this.messages) : e.type === "sign-typed-data" ? t = Bi(e, this.tokens, this.messages) : e.type === "sign" ? t = Ii(e, this.tokens, this.displayDecimals, this.messages) : t = Ti(e, this.tokens, this.displayDecimals, this.messages);
|
|
10683
|
+
const n = Ce();
|
|
10658
10684
|
ce(t);
|
|
10659
10685
|
const i = () => {
|
|
10660
10686
|
t.remove(), n();
|
|
@@ -10671,7 +10697,7 @@ class oo {
|
|
|
10671
10697
|
x && ((y = navigator.clipboard) == null || y.writeText(x).catch(() => {
|
|
10672
10698
|
}));
|
|
10673
10699
|
});
|
|
10674
|
-
}),
|
|
10700
|
+
}), fi(t), t.addEventListener("click", (g) => {
|
|
10675
10701
|
g.target === t && a();
|
|
10676
10702
|
});
|
|
10677
10703
|
const c = (g) => {
|
|
@@ -10681,7 +10707,7 @@ class oo {
|
|
|
10681
10707
|
});
|
|
10682
10708
|
}
|
|
10683
10709
|
}
|
|
10684
|
-
class
|
|
10710
|
+
class co {
|
|
10685
10711
|
constructor(e, r, t, n = () => !1) {
|
|
10686
10712
|
this.browserConfirmation = e, this.getBridge = r, this.getOrigin = t, this.isAuthenticatedViaRNBridge = n;
|
|
10687
10713
|
}
|
|
@@ -10846,7 +10872,7 @@ class ao {
|
|
|
10846
10872
|
(t = (r = this.browserConfirmation).setPinKeyboard) == null || t.call(r, e);
|
|
10847
10873
|
}
|
|
10848
10874
|
}
|
|
10849
|
-
class
|
|
10875
|
+
class lo {
|
|
10850
10876
|
constructor() {
|
|
10851
10877
|
this._accessToken = null, this._expiresAt = 0;
|
|
10852
10878
|
}
|
|
@@ -10878,7 +10904,7 @@ class co {
|
|
|
10878
10904
|
return !this._accessToken || this._expiresAt <= 0 ? !0 : Date.now() >= this._expiresAt - e;
|
|
10879
10905
|
}
|
|
10880
10906
|
}
|
|
10881
|
-
function
|
|
10907
|
+
function wo(s, e) {
|
|
10882
10908
|
if (!s.projectId)
|
|
10883
10909
|
throw new Error(
|
|
10884
10910
|
`[CROSSx] Fatal: projectId is required but was not provided.
|
|
@@ -10900,7 +10926,7 @@ Example: createCROSSxSDK({ projectId: "your-project-id", ... })`
|
|
|
10900
10926
|
"refresh_token이 평문 저장되지 않도록 세션 영속성이 제한됩니다.",
|
|
10901
10927
|
"IndexedDB를 지원하는 브라우저 사용을 권장합니다."
|
|
10902
10928
|
), t.secureStorageAvailable = i;
|
|
10903
|
-
const o = i ? new Vt(s.projectId) : new js(), a = new si(), c = new ai(), l = new Ie(), u = new
|
|
10929
|
+
const o = i ? new Vt(s.projectId) : new js(), a = new si(), c = new ai(), l = new Ie(), u = new lo(), p = new _r();
|
|
10904
10930
|
let g;
|
|
10905
10931
|
s.useMockWallet ? (d.log("[CROSSx] Mock Wallet Provider 사용"), g = new li(o, p)) : (d.log("[CROSSx] Remote Wallet Provider 사용"), g = new Te(
|
|
10906
10932
|
n,
|
|
@@ -10922,12 +10948,12 @@ Example: createCROSSxSDK({ projectId: "your-project-id", ... })`
|
|
|
10922
10948
|
},
|
|
10923
10949
|
x
|
|
10924
10950
|
);
|
|
10925
|
-
const y = new We(n, c), v = new
|
|
10951
|
+
const y = new We(n, c), v = new ao(
|
|
10926
10952
|
s.theme ?? "light",
|
|
10927
10953
|
s.themeTokens,
|
|
10928
10954
|
s.displayDecimals,
|
|
10929
10955
|
s.pinKeyboard
|
|
10930
|
-
), A = new
|
|
10956
|
+
), A = new co(
|
|
10931
10957
|
v,
|
|
10932
10958
|
() => {
|
|
10933
10959
|
var D;
|
|
@@ -10952,9 +10978,9 @@ Example: createCROSSxSDK({ projectId: "your-project-id", ... })`
|
|
|
10952
10978
|
const L = k.signInUseCase;
|
|
10953
10979
|
return L && typeof L.setFreshTokenCallback == "function" && L.setFreshTokenCallback(() => k.requestFreshFirebaseIdTokenFromBridge()), typeof window < "u" && (window.__crossxSDK = k), k;
|
|
10954
10980
|
}
|
|
10955
|
-
function
|
|
10956
|
-
const e =
|
|
10957
|
-
|
|
10981
|
+
function mo(s) {
|
|
10982
|
+
const e = uo(s), r = ho(e), t = JSON.parse(r);
|
|
10983
|
+
_o(t);
|
|
10958
10984
|
const { data: n } = t;
|
|
10959
10985
|
return {
|
|
10960
10986
|
status: t.status,
|
|
@@ -10968,7 +10994,7 @@ function wo(s) {
|
|
|
10968
10994
|
raw: t
|
|
10969
10995
|
};
|
|
10970
10996
|
}
|
|
10971
|
-
function
|
|
10997
|
+
function uo(s) {
|
|
10972
10998
|
if (s.includes("://") && s.includes("?")) {
|
|
10973
10999
|
const e = new URL(s), r = e.searchParams.get("crossx_oauth_result");
|
|
10974
11000
|
if (r) return r;
|
|
@@ -10978,22 +11004,22 @@ function lo(s) {
|
|
|
10978
11004
|
}
|
|
10979
11005
|
return s;
|
|
10980
11006
|
}
|
|
10981
|
-
function
|
|
11007
|
+
function ho(s) {
|
|
10982
11008
|
if (s.startsWith("{"))
|
|
10983
11009
|
return s;
|
|
10984
11010
|
if (s.startsWith("%7B") || s.startsWith("%7b"))
|
|
10985
11011
|
return decodeURIComponent(s);
|
|
10986
|
-
const e =
|
|
11012
|
+
const e = po(s);
|
|
10987
11013
|
return decodeURIComponent(e);
|
|
10988
11014
|
}
|
|
10989
|
-
function
|
|
11015
|
+
function po(s) {
|
|
10990
11016
|
if (typeof atob == "function")
|
|
10991
11017
|
return atob(s);
|
|
10992
11018
|
if (typeof Buffer < "u")
|
|
10993
11019
|
return Buffer.from(s, "base64").toString("utf-8");
|
|
10994
11020
|
throw new Error("Base64 디코딩을 지원하는 환경이 아닙니다");
|
|
10995
11021
|
}
|
|
10996
|
-
function
|
|
11022
|
+
function _o(s) {
|
|
10997
11023
|
if (typeof s != "object" || s === null)
|
|
10998
11024
|
throw new Error("Deeplink payload가 유효한 객체가 아닙니다");
|
|
10999
11025
|
const e = s;
|
|
@@ -11014,13 +11040,13 @@ export {
|
|
|
11014
11040
|
f as CROSSxError,
|
|
11015
11041
|
ps as CROSSxEthereumProvider,
|
|
11016
11042
|
wt as CROSSxSDK,
|
|
11017
|
-
|
|
11043
|
+
xo as ChainId,
|
|
11018
11044
|
He as ConnectOtherWalletItem,
|
|
11019
11045
|
h as ErrorCode,
|
|
11020
11046
|
xt as MNEMONIC_ADDRESS_LIMIT,
|
|
11021
11047
|
_r as PinMemoryStore,
|
|
11022
|
-
|
|
11023
|
-
|
|
11048
|
+
lo as TokenMemoryStore,
|
|
11049
|
+
wo as createCROSSxSDK,
|
|
11024
11050
|
ls as getConnectOtherWalletLabel,
|
|
11025
|
-
|
|
11051
|
+
mo as parseOAuthDeeplink
|
|
11026
11052
|
};
|