@xrpl-wallet-kit/browser 0.1.6 → 0.1.8
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/README.md +8 -3
- package/dist/xrpl-wallet-kit-legacy-bridge.js +11 -4
- package/dist/xrpl-wallet-kit.iife.js +451 -88
- package/dist/xrpl-wallet-kit.iife.min.js +48 -48
- package/package.json +2 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @xrpl-wallet-kit/browser v0.1.
|
|
1
|
+
/*! @xrpl-wallet-kit/browser v0.1.8 | MIT | https://github.com/XRPDomains/xrpl-wallet-kit */
|
|
2
2
|
var __defProp = Object.defineProperty;
|
|
3
3
|
var __typeError = (msg) => {
|
|
4
4
|
throw TypeError(msg);
|
|
@@ -4402,7 +4402,7 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
4402
4402
|
async connect(options) {
|
|
4403
4403
|
var _a2;
|
|
4404
4404
|
const signInAndWait = this.requireMethod("signInAndWait");
|
|
4405
|
-
const result = await signInAndWait(this.randomHex());
|
|
4405
|
+
const result = await this.withAbort(signInAndWait(this.randomHex()), options.signal);
|
|
4406
4406
|
const address = this.pickString(result, ["response.data.address", "response.address", "address"]);
|
|
4407
4407
|
if (!address)
|
|
4408
4408
|
throw new Error("Crossmark did not return an XRPL address");
|
|
@@ -4511,6 +4511,37 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
4511
4511
|
const value = pickPath(source, paths);
|
|
4512
4512
|
return typeof value === "string" && value.trim() ? value : void 0;
|
|
4513
4513
|
}
|
|
4514
|
+
withAbort(promise, signal) {
|
|
4515
|
+
if (!signal)
|
|
4516
|
+
return promise;
|
|
4517
|
+
if (signal.aborted)
|
|
4518
|
+
return Promise.reject(createWalletError.connectionRejected(this.metadata.name, new Error("Connection was cancelled")));
|
|
4519
|
+
return new Promise((resolve, reject) => {
|
|
4520
|
+
let settled = false;
|
|
4521
|
+
const cleanup = () => signal.removeEventListener("abort", abort);
|
|
4522
|
+
const abort = () => {
|
|
4523
|
+
if (settled)
|
|
4524
|
+
return;
|
|
4525
|
+
settled = true;
|
|
4526
|
+
cleanup();
|
|
4527
|
+
reject(createWalletError.connectionRejected(this.metadata.name, new Error("Connection was cancelled")));
|
|
4528
|
+
};
|
|
4529
|
+
signal.addEventListener("abort", abort, { once: true });
|
|
4530
|
+
promise.then((value) => {
|
|
4531
|
+
if (settled)
|
|
4532
|
+
return;
|
|
4533
|
+
settled = true;
|
|
4534
|
+
cleanup();
|
|
4535
|
+
resolve(value);
|
|
4536
|
+
}, (error) => {
|
|
4537
|
+
if (settled)
|
|
4538
|
+
return;
|
|
4539
|
+
settled = true;
|
|
4540
|
+
cleanup();
|
|
4541
|
+
reject(error);
|
|
4542
|
+
});
|
|
4543
|
+
});
|
|
4544
|
+
}
|
|
4514
4545
|
}
|
|
4515
4546
|
function createCrossmarkAdapter(options) {
|
|
4516
4547
|
return new CrossmarkAdapter(options);
|
|
@@ -4537,14 +4568,14 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
4537
4568
|
async connect(options) {
|
|
4538
4569
|
var _a2;
|
|
4539
4570
|
const provider = this.provider();
|
|
4540
|
-
const state2 = await this.initialize(provider);
|
|
4541
|
-
const connected = await this.resolveConnected(provider, state2);
|
|
4571
|
+
const state2 = await this.withAbort(this.initialize(provider), options.signal);
|
|
4572
|
+
const connected = await this.withAbort(this.resolveConnected(provider, state2), options.signal);
|
|
4542
4573
|
if (!connected)
|
|
4543
4574
|
throw new Error("DropFi connection was rejected");
|
|
4544
|
-
const address = await this.resolveAddress(provider, connected, state2);
|
|
4575
|
+
const address = await this.withAbort(this.resolveAddress(provider, connected, state2), options.signal);
|
|
4545
4576
|
if (!address)
|
|
4546
4577
|
throw new Error("DropFi did not return an XRPL address");
|
|
4547
|
-
const publicKey = await this.resolvePublicKey(provider, connected, state2);
|
|
4578
|
+
const publicKey = await this.withAbort(this.resolvePublicKey(provider, connected, state2), options.signal);
|
|
4548
4579
|
this.activeAddress = address;
|
|
4549
4580
|
return { account: { address, publicKey, network: options.network, networkType: (_a2 = options.network) == null ? void 0 : _a2.networkType }, raw: { connected, address, publicKey } };
|
|
4550
4581
|
}
|
|
@@ -4639,6 +4670,37 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
4639
4670
|
clearTimeout(timer);
|
|
4640
4671
|
}
|
|
4641
4672
|
}
|
|
4673
|
+
withAbort(promise, signal) {
|
|
4674
|
+
if (!signal)
|
|
4675
|
+
return promise;
|
|
4676
|
+
if (signal.aborted)
|
|
4677
|
+
return Promise.reject(createWalletError.connectionRejected(this.metadata.name, new Error("Connection was cancelled")));
|
|
4678
|
+
return new Promise((resolve, reject) => {
|
|
4679
|
+
let settled = false;
|
|
4680
|
+
const cleanup = () => signal.removeEventListener("abort", abort);
|
|
4681
|
+
const abort = () => {
|
|
4682
|
+
if (settled)
|
|
4683
|
+
return;
|
|
4684
|
+
settled = true;
|
|
4685
|
+
cleanup();
|
|
4686
|
+
reject(createWalletError.connectionRejected(this.metadata.name, new Error("Connection was cancelled")));
|
|
4687
|
+
};
|
|
4688
|
+
signal.addEventListener("abort", abort, { once: true });
|
|
4689
|
+
promise.then((value) => {
|
|
4690
|
+
if (settled)
|
|
4691
|
+
return;
|
|
4692
|
+
settled = true;
|
|
4693
|
+
cleanup();
|
|
4694
|
+
resolve(value);
|
|
4695
|
+
}, (error) => {
|
|
4696
|
+
if (settled)
|
|
4697
|
+
return;
|
|
4698
|
+
settled = true;
|
|
4699
|
+
cleanup();
|
|
4700
|
+
reject(error);
|
|
4701
|
+
});
|
|
4702
|
+
});
|
|
4703
|
+
}
|
|
4642
4704
|
provider(required = true) {
|
|
4643
4705
|
const host = globalThis;
|
|
4644
4706
|
const provider = this.options.provider ?? host.__xwk_dropfi ?? host.dropfi ?? this.resolveLegacyXrplProvider(host.xrpl);
|
|
@@ -8855,7 +8917,7 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
8855
8917
|
throw new Error("Please install GemWallet Extension");
|
|
8856
8918
|
if (!provider.getAddress)
|
|
8857
8919
|
throw new Error("GemWallet provider is missing getAddress()");
|
|
8858
|
-
const [address, publicKey, network] = await Promise.all([provider.getAddress(), this.getPublicKey(provider), (_a2 = provider.getNetwork) == null ? void 0 : _a2.call(provider)]);
|
|
8920
|
+
const [address, publicKey, network] = await this.withAbort(Promise.all([provider.getAddress(), this.getPublicKey(provider), (_a2 = provider.getNetwork) == null ? void 0 : _a2.call(provider)]), options.signal);
|
|
8859
8921
|
const accountAddress = (_b = address.result) == null ? void 0 : _b.address;
|
|
8860
8922
|
if (!accountAddress)
|
|
8861
8923
|
throw new Error("GemWallet did not return an XRPL address");
|
|
@@ -9031,6 +9093,37 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
9031
9093
|
networkName(network) {
|
|
9032
9094
|
return typeof network === "string" ? network : network == null ? void 0 : network.name;
|
|
9033
9095
|
}
|
|
9096
|
+
withAbort(promise, signal) {
|
|
9097
|
+
if (!signal)
|
|
9098
|
+
return promise;
|
|
9099
|
+
if (signal.aborted)
|
|
9100
|
+
return Promise.reject(createWalletError.connectionRejected(this.metadata.name, new Error("Connection was cancelled")));
|
|
9101
|
+
return new Promise((resolve, reject) => {
|
|
9102
|
+
let settled = false;
|
|
9103
|
+
const cleanup = () => signal.removeEventListener("abort", abort);
|
|
9104
|
+
const abort = () => {
|
|
9105
|
+
if (settled)
|
|
9106
|
+
return;
|
|
9107
|
+
settled = true;
|
|
9108
|
+
cleanup();
|
|
9109
|
+
reject(createWalletError.connectionRejected(this.metadata.name, new Error("Connection was cancelled")));
|
|
9110
|
+
};
|
|
9111
|
+
signal.addEventListener("abort", abort, { once: true });
|
|
9112
|
+
promise.then((value) => {
|
|
9113
|
+
if (settled)
|
|
9114
|
+
return;
|
|
9115
|
+
settled = true;
|
|
9116
|
+
cleanup();
|
|
9117
|
+
resolve(value);
|
|
9118
|
+
}, (error) => {
|
|
9119
|
+
if (settled)
|
|
9120
|
+
return;
|
|
9121
|
+
settled = true;
|
|
9122
|
+
cleanup();
|
|
9123
|
+
reject(error);
|
|
9124
|
+
});
|
|
9125
|
+
});
|
|
9126
|
+
}
|
|
9034
9127
|
}
|
|
9035
9128
|
function createGemWalletAdapter(options) {
|
|
9036
9129
|
return new GemWalletAdapter(options);
|
|
@@ -10546,9 +10639,10 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
10546
10639
|
}
|
|
10547
10640
|
}
|
|
10548
10641
|
function createWalletConnectMetadata(metadata2) {
|
|
10642
|
+
var _a2;
|
|
10549
10643
|
return {
|
|
10550
10644
|
...metadata2,
|
|
10551
|
-
icons: [WALLETCONNECT_ICON]
|
|
10645
|
+
icons: ((_a2 = metadata2.icons) == null ? void 0 : _a2.length) ? metadata2.icons : [WALLETCONNECT_ICON]
|
|
10552
10646
|
};
|
|
10553
10647
|
}
|
|
10554
10648
|
function createWalletConnectAdapter(options) {
|
|
@@ -15525,6 +15619,7 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
15525
15619
|
var distExports = requireDist$4();
|
|
15526
15620
|
const XAMAN_ICON = "data:image/png;base64,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";
|
|
15527
15621
|
const XAMAN_PENDING_RECOVERY_TTL_MS = 18e4;
|
|
15622
|
+
const XAMAN_RESTORE_READY_TIMEOUT_MS = 2500;
|
|
15528
15623
|
class XamanAdapter extends BaseWalletAdapter {
|
|
15529
15624
|
constructor(options) {
|
|
15530
15625
|
super();
|
|
@@ -15548,7 +15643,7 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
15548
15643
|
async connect(options) {
|
|
15549
15644
|
await this.setPendingRecoveryMarker();
|
|
15550
15645
|
try {
|
|
15551
|
-
const result = await this.authorize();
|
|
15646
|
+
const result = await this.withAbort(this.authorize(), options.signal);
|
|
15552
15647
|
if (result instanceof Error)
|
|
15553
15648
|
throw result;
|
|
15554
15649
|
const connectResult = await this.createConnectResultFromAuth(result, options);
|
|
@@ -15578,7 +15673,7 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
15578
15673
|
if (!await this.hasPendingRecoveryMarker())
|
|
15579
15674
|
return null;
|
|
15580
15675
|
try {
|
|
15581
|
-
const result = await this.authorize();
|
|
15676
|
+
const result = await this.withAbort(this.authorize(), options.signal);
|
|
15582
15677
|
if (!result || result instanceof Error) {
|
|
15583
15678
|
this.clearPendingRecoveryMarker();
|
|
15584
15679
|
return null;
|
|
@@ -15642,19 +15737,24 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
15642
15737
|
});
|
|
15643
15738
|
}
|
|
15644
15739
|
async checkXamanState(options = {}) {
|
|
15645
|
-
var _a2, _b, _c, _d
|
|
15646
|
-
if (!
|
|
15740
|
+
var _a2, _b, _c, _d;
|
|
15741
|
+
if (!this.sdk)
|
|
15647
15742
|
return null;
|
|
15648
|
-
|
|
15743
|
+
await this.waitForSdkReady(this.sdk);
|
|
15744
|
+
const openid = await this.resolveSdkValue((_a2 = this.sdk.environment) == null ? void 0 : _a2.openid);
|
|
15745
|
+
const accountAddress = await this.resolveSdkValue((_b = this.sdk.user) == null ? void 0 : _b.account) ?? ((_c = this.sdk.state) == null ? void 0 : _c.account) ?? (openid == null ? void 0 : openid.account) ?? (openid == null ? void 0 : openid.sub);
|
|
15649
15746
|
if (!accountAddress)
|
|
15650
15747
|
return null;
|
|
15651
15748
|
return {
|
|
15652
15749
|
account: {
|
|
15653
15750
|
address: accountAddress,
|
|
15654
15751
|
network: options.network,
|
|
15655
|
-
networkType: await this.resolveSdkValue((
|
|
15752
|
+
networkType: await this.resolveSdkValue((_d = this.sdk.user) == null ? void 0 : _d.networkType) ?? (openid == null ? void 0 : openid.networkType)
|
|
15656
15753
|
},
|
|
15657
|
-
raw:
|
|
15754
|
+
raw: {
|
|
15755
|
+
state: this.sdk.state,
|
|
15756
|
+
openid
|
|
15757
|
+
}
|
|
15658
15758
|
};
|
|
15659
15759
|
}
|
|
15660
15760
|
requireSdk() {
|
|
@@ -15730,6 +15830,20 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
15730
15830
|
async resolveSdkValue(value) {
|
|
15731
15831
|
return value instanceof Promise ? value : value;
|
|
15732
15832
|
}
|
|
15833
|
+
async waitForSdkReady(sdk) {
|
|
15834
|
+
var _a2, _b, _c;
|
|
15835
|
+
const readySignals = [
|
|
15836
|
+
(_a2 = sdk.environment) == null ? void 0 : _a2.ready,
|
|
15837
|
+
(_b = sdk.environment) == null ? void 0 : _b.retrieved,
|
|
15838
|
+
(_c = sdk.environment) == null ? void 0 : _c.success
|
|
15839
|
+
].filter((signal) => Boolean(signal));
|
|
15840
|
+
if (!readySignals.length)
|
|
15841
|
+
return;
|
|
15842
|
+
await Promise.race([
|
|
15843
|
+
Promise.race(readySignals).then(() => void 0),
|
|
15844
|
+
new Promise((resolve) => setTimeout(resolve, XAMAN_RESTORE_READY_TIMEOUT_MS))
|
|
15845
|
+
]);
|
|
15846
|
+
}
|
|
15733
15847
|
clearPkceStorage() {
|
|
15734
15848
|
var _a2;
|
|
15735
15849
|
if (typeof window === "undefined")
|
|
@@ -15739,6 +15853,37 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
15739
15853
|
} catch {
|
|
15740
15854
|
}
|
|
15741
15855
|
}
|
|
15856
|
+
withAbort(promise, signal) {
|
|
15857
|
+
if (!signal)
|
|
15858
|
+
return promise;
|
|
15859
|
+
if (signal.aborted)
|
|
15860
|
+
return Promise.reject(createWalletError.connectionRejected(this.metadata.name, new Error("Connection was cancelled")));
|
|
15861
|
+
return new Promise((resolve, reject) => {
|
|
15862
|
+
let settled = false;
|
|
15863
|
+
const cleanup = () => signal.removeEventListener("abort", abort);
|
|
15864
|
+
const abort = () => {
|
|
15865
|
+
if (settled)
|
|
15866
|
+
return;
|
|
15867
|
+
settled = true;
|
|
15868
|
+
cleanup();
|
|
15869
|
+
reject(createWalletError.connectionRejected(this.metadata.name, new Error("Connection was cancelled")));
|
|
15870
|
+
};
|
|
15871
|
+
signal.addEventListener("abort", abort, { once: true });
|
|
15872
|
+
promise.then((value) => {
|
|
15873
|
+
if (settled)
|
|
15874
|
+
return;
|
|
15875
|
+
settled = true;
|
|
15876
|
+
cleanup();
|
|
15877
|
+
resolve(value);
|
|
15878
|
+
}, (error) => {
|
|
15879
|
+
if (settled)
|
|
15880
|
+
return;
|
|
15881
|
+
settled = true;
|
|
15882
|
+
cleanup();
|
|
15883
|
+
reject(error);
|
|
15884
|
+
});
|
|
15885
|
+
});
|
|
15886
|
+
}
|
|
15742
15887
|
getPendingRecoveryKey() {
|
|
15743
15888
|
return `xwk.xaman.pending.${this.options.apiKey ?? "injected"}`;
|
|
15744
15889
|
}
|
|
@@ -15795,8 +15940,8 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
15795
15940
|
async connect(options) {
|
|
15796
15941
|
var _a2;
|
|
15797
15942
|
const ethereum = this.ethereum();
|
|
15798
|
-
await ethereum.request({ method: "wallet_requestSnaps", params: { [this.snapId]: {} } });
|
|
15799
|
-
const snap = await ethereum.request({ method: "wallet_invokeSnap", params: { snapId: this.snapId, request: { method: "xrpl_getAccount" } } });
|
|
15943
|
+
await this.withAbort(ethereum.request({ method: "wallet_requestSnaps", params: { [this.snapId]: {} } }), options.signal);
|
|
15944
|
+
const snap = await this.withAbort(ethereum.request({ method: "wallet_invokeSnap", params: { snapId: this.snapId, request: { method: "xrpl_getAccount" } } }), options.signal);
|
|
15800
15945
|
const address = snap.account;
|
|
15801
15946
|
if (!address)
|
|
15802
15947
|
throw new Error("XRPL Snap did not return an XRPL address");
|
|
@@ -15938,6 +16083,37 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
15938
16083
|
throw new Error("No MetaMask provider installed");
|
|
15939
16084
|
return ethereum;
|
|
15940
16085
|
}
|
|
16086
|
+
withAbort(promise, signal) {
|
|
16087
|
+
if (!signal)
|
|
16088
|
+
return promise;
|
|
16089
|
+
if (signal.aborted)
|
|
16090
|
+
return Promise.reject(createWalletError.connectionRejected(this.metadata.name, new Error("Connection was cancelled")));
|
|
16091
|
+
return new Promise((resolve, reject) => {
|
|
16092
|
+
let settled = false;
|
|
16093
|
+
const cleanup = () => signal.removeEventListener("abort", abort);
|
|
16094
|
+
const abort = () => {
|
|
16095
|
+
if (settled)
|
|
16096
|
+
return;
|
|
16097
|
+
settled = true;
|
|
16098
|
+
cleanup();
|
|
16099
|
+
reject(createWalletError.connectionRejected(this.metadata.name, new Error("Connection was cancelled")));
|
|
16100
|
+
};
|
|
16101
|
+
signal.addEventListener("abort", abort, { once: true });
|
|
16102
|
+
promise.then((value) => {
|
|
16103
|
+
if (settled)
|
|
16104
|
+
return;
|
|
16105
|
+
settled = true;
|
|
16106
|
+
cleanup();
|
|
16107
|
+
resolve(value);
|
|
16108
|
+
}, (error) => {
|
|
16109
|
+
if (settled)
|
|
16110
|
+
return;
|
|
16111
|
+
settled = true;
|
|
16112
|
+
cleanup();
|
|
16113
|
+
reject(error);
|
|
16114
|
+
});
|
|
16115
|
+
});
|
|
16116
|
+
}
|
|
15941
16117
|
}
|
|
15942
16118
|
function createXrplSnapAdapter(options) {
|
|
15943
16119
|
return new XrplSnapAdapter(options);
|
|
@@ -15951,11 +16127,11 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
15951
16127
|
error: "#b45309",
|
|
15952
16128
|
success: "#059669",
|
|
15953
16129
|
muted: "#64748b",
|
|
15954
|
-
border: "
|
|
16130
|
+
border: "rgba(17,24,39,.08)",
|
|
15955
16131
|
overlay: "rgba(15,23,42,.46)",
|
|
15956
16132
|
overlayBlur: 0,
|
|
15957
16133
|
surface: "#f8fafc",
|
|
15958
|
-
surfaceHover: "
|
|
16134
|
+
surfaceHover: "rgba(17,24,39,.04)",
|
|
15959
16135
|
fallbackIconBackground: "rgba(15,23,42,.06)",
|
|
15960
16136
|
fallbackIconColor: "#111827",
|
|
15961
16137
|
shadow: "0 8px 40px rgba(15,23,42,.12), 0 0 0 1px rgba(15,23,42,.04)",
|
|
@@ -15973,7 +16149,7 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
15973
16149
|
error: "#fbbf24",
|
|
15974
16150
|
success: "#34d399",
|
|
15975
16151
|
muted: "#94a3b8",
|
|
15976
|
-
border: "
|
|
16152
|
+
border: "rgba(248,250,252,.10)",
|
|
15977
16153
|
overlay: "rgba(2,6,23,.72)",
|
|
15978
16154
|
overlayBlur: 0,
|
|
15979
16155
|
surface: "#1f2937",
|
|
@@ -16036,12 +16212,12 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
16036
16212
|
muted: "#64748b",
|
|
16037
16213
|
border: "rgba(255,255,255,.50)",
|
|
16038
16214
|
overlay: "rgba(15,23,42,.30)",
|
|
16039
|
-
overlayBlur:
|
|
16215
|
+
overlayBlur: 24,
|
|
16040
16216
|
surface: "rgba(255,255,255,.52)",
|
|
16041
16217
|
surfaceHover: "rgba(255,255,255,.66)",
|
|
16042
16218
|
fallbackIconBackground: "rgba(99,102,241,.15)",
|
|
16043
16219
|
fallbackIconColor: "#6366f1",
|
|
16044
|
-
shadow: "0
|
|
16220
|
+
shadow: "0 0 0 1px rgba(255,255,255,.08), 0 12px 40px rgba(15,23,42,.24)",
|
|
16045
16221
|
radius: "20px",
|
|
16046
16222
|
walletRadius: "14px",
|
|
16047
16223
|
spinnerTrail: "rgba(99,102,241,.15)",
|
|
@@ -16268,15 +16444,18 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
16268
16444
|
const accountPanel = ui.accountPanel ?? {};
|
|
16269
16445
|
const identity2 = ui.identity ?? {};
|
|
16270
16446
|
const { accountPanelMode: overrideAccountPanelMode, ...restOverrides } = overrides;
|
|
16447
|
+
const themeMode = ui.mode ?? ui.themeMode ?? overrides.themeMode ?? "light";
|
|
16271
16448
|
const theme = {
|
|
16272
|
-
...resolveWalletTheme({ mode:
|
|
16449
|
+
...resolveWalletTheme({ mode: themeMode, themeName: ui.themeName }),
|
|
16450
|
+
...ui.theme ?? {},
|
|
16273
16451
|
...ui.customTheme ?? {},
|
|
16274
16452
|
...overrides.theme ?? {}
|
|
16275
16453
|
};
|
|
16276
|
-
return createDefaultWalletButtonConfig({
|
|
16454
|
+
return createDefaultWalletButtonConfig(compactWalletButtonConfig({
|
|
16277
16455
|
language: ui.language,
|
|
16278
16456
|
messages: resolveWalletUiMessages(ui.language, ui.messages),
|
|
16279
16457
|
label: connectButton.label,
|
|
16458
|
+
icon: connectButton.icon,
|
|
16280
16459
|
showAdapterIcon: connectButton.showAdapterIcon,
|
|
16281
16460
|
showChevron: connectButton.showChevron,
|
|
16282
16461
|
showBalance: connectButton.showBalance,
|
|
@@ -16291,18 +16470,19 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
16291
16470
|
showWeb3Name: identity2.enabled ?? true,
|
|
16292
16471
|
fallbackToAddress: identity2.fallbackToAddress,
|
|
16293
16472
|
identityResolver: identity2.resolver,
|
|
16294
|
-
themeMode
|
|
16473
|
+
themeMode,
|
|
16295
16474
|
themeName: ui.themeName,
|
|
16296
16475
|
...restOverrides,
|
|
16297
16476
|
accountPanelMode: overrideAccountPanelMode ?? accountPanel.mode ?? "modal",
|
|
16298
16477
|
theme
|
|
16299
|
-
});
|
|
16478
|
+
}));
|
|
16300
16479
|
}
|
|
16301
16480
|
function createDefaultWalletButtonConfig(overrides = {}) {
|
|
16302
16481
|
const { theme, ...rest } = overrides;
|
|
16303
16482
|
const messages = resolveWalletUiMessages(overrides.language, overrides.messages);
|
|
16304
|
-
return {
|
|
16483
|
+
return compactWalletButtonConfig({
|
|
16305
16484
|
showWeb3Name: true,
|
|
16485
|
+
icon: { type: "default" },
|
|
16306
16486
|
showAdapterIcon: true,
|
|
16307
16487
|
showChevron: true,
|
|
16308
16488
|
showBalance: false,
|
|
@@ -16324,7 +16504,10 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
16324
16504
|
...resolveWalletTheme({ mode: rest.themeMode ?? "light", themeName: rest.themeName }),
|
|
16325
16505
|
...theme ?? {}
|
|
16326
16506
|
}
|
|
16327
|
-
};
|
|
16507
|
+
});
|
|
16508
|
+
}
|
|
16509
|
+
function compactWalletButtonConfig(config) {
|
|
16510
|
+
return Object.fromEntries(Object.entries(config).filter(([, value]) => value !== void 0));
|
|
16328
16511
|
}
|
|
16329
16512
|
var qrCodeStyling$1 = { exports: {} };
|
|
16330
16513
|
var qrCodeStyling = qrCodeStyling$1.exports;
|
|
@@ -19620,13 +19803,6 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
19620
19803
|
window.scrollTo(0, savedScrollY);
|
|
19621
19804
|
savedScrollY = 0;
|
|
19622
19805
|
}
|
|
19623
|
-
function getWalletStyleId(prefix, styles2) {
|
|
19624
|
-
let hash2 = 5381;
|
|
19625
|
-
for (let index2 = 0; index2 < styles2.length; index2 += 1) {
|
|
19626
|
-
hash2 = (hash2 << 5) + hash2 ^ styles2.charCodeAt(index2);
|
|
19627
|
-
}
|
|
19628
|
-
return `${prefix}-${(hash2 >>> 0).toString(36)}`;
|
|
19629
|
-
}
|
|
19630
19806
|
function ensureWalletStyle(id2, styles2) {
|
|
19631
19807
|
if (typeof document === "undefined")
|
|
19632
19808
|
return;
|
|
@@ -19636,6 +19812,8 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
19636
19812
|
element = document.createElement("style");
|
|
19637
19813
|
element.dataset.xwkStyle = id2;
|
|
19638
19814
|
document.head.appendChild(element);
|
|
19815
|
+
} else if (element.nextSibling) {
|
|
19816
|
+
document.head.appendChild(element);
|
|
19639
19817
|
}
|
|
19640
19818
|
if (element.textContent !== styles2)
|
|
19641
19819
|
element.textContent = styles2;
|
|
@@ -19654,6 +19832,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
19654
19832
|
this.qrCopied = false;
|
|
19655
19833
|
this.qrLightMode = false;
|
|
19656
19834
|
this.availability = {};
|
|
19835
|
+
this.availabilityLoading = false;
|
|
19657
19836
|
this.offEvents = [];
|
|
19658
19837
|
this.openHandlers = /* @__PURE__ */ new Set();
|
|
19659
19838
|
this.closeHandlers = /* @__PURE__ */ new Set();
|
|
@@ -19672,6 +19851,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
19672
19851
|
}
|
|
19673
19852
|
open() {
|
|
19674
19853
|
this.activeGroupId = void 0;
|
|
19854
|
+
this.availabilityLoading = true;
|
|
19675
19855
|
this.lastFocusedElement = document.activeElement instanceof HTMLElement ? document.activeElement : null;
|
|
19676
19856
|
this.renderView("list");
|
|
19677
19857
|
this.openHandlers.forEach((handler) => handler());
|
|
@@ -20073,7 +20253,11 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
20073
20253
|
}
|
|
20074
20254
|
async refreshAvailability() {
|
|
20075
20255
|
var _a2;
|
|
20076
|
-
|
|
20256
|
+
try {
|
|
20257
|
+
this.availability = await this.options.manager.getWalletAvailability();
|
|
20258
|
+
} finally {
|
|
20259
|
+
this.availabilityLoading = false;
|
|
20260
|
+
}
|
|
20077
20261
|
if (((_a2 = this.root) == null ? void 0 : _a2.dataset.xwkView) !== "list")
|
|
20078
20262
|
return;
|
|
20079
20263
|
const grid = this.root.querySelector(".xwk-grid");
|
|
@@ -20403,7 +20587,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
20403
20587
|
this.bindChrome();
|
|
20404
20588
|
}
|
|
20405
20589
|
renderQrLoading() {
|
|
20406
|
-
return `<span class="xwk-qr-loading" role="status" aria-live="polite"><span class="xwk-qr-
|
|
20590
|
+
return `<span class="xwk-qr-loading xwk-qr-loading-skeleton" role="status" aria-live="polite"><span class="xwk-skeleton xwk-skeleton-qr xwk-qr-skeleton" aria-hidden="true"></span><span class="xwk-sr-only">${this.escapeHtml(this.messages().generatingQr)}</span></span>`;
|
|
20407
20591
|
}
|
|
20408
20592
|
renderQrCopyButtonContent() {
|
|
20409
20593
|
const messages = this.messages();
|
|
@@ -20479,11 +20663,12 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
20479
20663
|
}
|
|
20480
20664
|
ensureStyles(theme, layout, size2, textSize) {
|
|
20481
20665
|
const styles2 = `${this.renderStyles(theme, layout, size2, textSize)}${this.renderMobileSheetOverrides(theme)}`;
|
|
20482
|
-
ensureWalletStyle(
|
|
20666
|
+
ensureWalletStyle("xwk-modal", styles2);
|
|
20483
20667
|
}
|
|
20484
20668
|
renderMobileSheetOverrides(theme) {
|
|
20485
20669
|
const inlineOverrides = `.xwk-inline{background:transparent!important;display:block!important;inset:auto!important;opacity:1!important;overflow:visible!important;padding:0!important;place-items:initial!important;position:relative!important;z-index:auto!important}.xwk-inline .xwk-modal{border:1px solid ${theme.border}!important;border-radius:${theme.radius}!important;box-shadow:none!important;max-height:none!important;max-width:none!important;opacity:1!important;transform:none!important;transition:none!important;width:100%!important}.xwk-inline .xwk-body{max-height:none!important}.xwk-inline .xwk-header-spacer{display:block;height:44px;width:44px}.xwk-inline[data-xwk-state="closing"] .xwk-modal{opacity:1!important;transform:none!important}`;
|
|
20486
|
-
|
|
20670
|
+
const skeletonOverrides = `.xwk-skeleton{animation:xwk-qr-skeleton-pulse 1.4s ease-in-out infinite;background:linear-gradient(90deg,${theme.surface} 25%,${theme.surfaceHover} 50%,${theme.surface} 75%);background-size:200% 100%;display:inline-block}.xwk-skeleton-circle{border-radius:999px}.xwk-skeleton-line{height:14px;border-radius:4px}.xwk-skeleton-pill{border-radius:999px}.xwk-skeleton-card,.xwk-skeleton-button{border-radius:${theme.walletRadius}}.xwk-skeleton-row{align-items:center;display:flex;gap:12px;width:100%}.xwk-qr-loading-skeleton{display:grid;height:100%;place-items:center;width:100%}.xwk-qr-skeleton{border-radius:12px;box-sizing:border-box;display:block;height:calc(100% - 16px);overflow:hidden;position:relative;width:calc(100% - 16px)}.xwk-qr-skeleton:before{background-image:radial-gradient(circle,${theme.muted} 0 2px,transparent 2.8px);background-size:14px 14px;content:"";inset:24px;opacity:.26;position:absolute}.xwk-wallet-badge-loading{color:transparent;min-width:72px;visibility:visible}.xwk-wallet-badge-loading:before{display:none}@keyframes xwk-qr-skeleton-pulse{0%{background-position:200% 0}100%{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.xwk-skeleton,.xwk-qr-skeleton{animation:none!important;background:${theme.surfaceHover}!important}}`;
|
|
20671
|
+
return `${skeletonOverrides}.xwk-modal:focus{outline:none}.xwk-sr-only{border:0!important;clip:rect(0 0 0 0)!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}.xwk-error-text,.xwk-connect-status.xwk-error-text,.xwk-qr-loading.xwk-error-text{color:${theme.error}!important}.xwk-close,.xwk-back{-webkit-appearance:none;-webkit-tap-highlight-color:transparent;appearance:none;background:transparent!important;border:0!important;box-shadow:none!important;margin:0;outline:none!important}.xwk-close:focus-visible,.xwk-back:focus-visible{outline:2px solid ${theme.accent}!important;outline-offset:0}@media(max-width:640px){.xwk-overlay{padding:max(12px,env(safe-area-inset-top)) 0 0!important;place-items:end center!important}.xwk-modal{align-self:end!important;border-bottom:0!important;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important;border-left:0!important;border-right:0!important;border-top-left-radius:${theme.radius}!important;border-top-right-radius:${theme.radius}!important;height:auto!important;max-height:calc(100dvh - env(safe-area-inset-top))!important;max-width:none!important;width:100vw!important}.xwk-header{border-top-left-radius:${theme.radius};border-top-right-radius:${theme.radius}}.xwk-body{padding-bottom:max(6px,calc(6px + env(safe-area-inset-bottom)))!important}.xwk-overlay[data-xwk-view="list"] .xwk-body{padding-bottom:max(2px,calc(2px + env(safe-area-inset-bottom)))!important}.xwk-network-row{margin:-4px 0 8px!important}.xwk-overlay[data-xwk-view="list"] .xwk-footer{padding-top:6px!important}}${inlineOverrides}`;
|
|
20487
20672
|
}
|
|
20488
20673
|
renderWalletList(layout) {
|
|
20489
20674
|
const groups = this.getGroups();
|
|
@@ -20521,8 +20706,12 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
20521
20706
|
if (wallet.recommended)
|
|
20522
20707
|
badges.push(`<span class="xwk-wallet-badge xwk-recommended">${this.escapeHtml(messages.recommended || "Recommended")}</span>`);
|
|
20523
20708
|
if (isExtensionLike) {
|
|
20524
|
-
|
|
20525
|
-
|
|
20709
|
+
if (this.availabilityLoading) {
|
|
20710
|
+
badges.push(`<span class="xwk-wallet-badge xwk-wallet-badge-loading xwk-skeleton xwk-skeleton-pill" aria-hidden="true"></span>`);
|
|
20711
|
+
} else {
|
|
20712
|
+
const className = this.availability[wallet.id] ? "xwk-wallet-badge xwk-installed" : "xwk-wallet-badge";
|
|
20713
|
+
badges.push(`<span class="${className}">${this.escapeHtml(messages.installed || "Installed")}</span>`);
|
|
20714
|
+
}
|
|
20526
20715
|
}
|
|
20527
20716
|
if (!badges.length)
|
|
20528
20717
|
return "";
|
|
@@ -20821,10 +21010,11 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
20821
21010
|
this.balanceLoading = false;
|
|
20822
21011
|
this.activationStatus = "unknown";
|
|
20823
21012
|
this.balanceRequest = 0;
|
|
21013
|
+
this.balanceDebounceSession = null;
|
|
20824
21014
|
this.balanceRefreshTimers = /* @__PURE__ */ new Set();
|
|
20825
21015
|
this.panelOpen = false;
|
|
20826
21016
|
this.addressQrOpen = false;
|
|
20827
|
-
this.
|
|
21017
|
+
this.historyOpen = false;
|
|
20828
21018
|
this.panelScrollLocked = false;
|
|
20829
21019
|
this.connecting = false;
|
|
20830
21020
|
this.copied = false;
|
|
@@ -20839,6 +21029,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
20839
21029
|
language: options.language,
|
|
20840
21030
|
messages,
|
|
20841
21031
|
label: messages.connectWallet,
|
|
21032
|
+
icon: { type: "default" },
|
|
20842
21033
|
showAdapterIcon: true,
|
|
20843
21034
|
showChevron: true,
|
|
20844
21035
|
showWeb3Name: true,
|
|
@@ -20860,7 +21051,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
20860
21051
|
balanceResolver: options.balanceResolver ?? createXrpBalanceResolver(),
|
|
20861
21052
|
explorerUrl: options.explorerUrl,
|
|
20862
21053
|
formatAddress: options.formatAddress,
|
|
20863
|
-
...options
|
|
21054
|
+
...compactButtonOptions(options)
|
|
20864
21055
|
};
|
|
20865
21056
|
this.offEvents.push(options.manager.on("connecting", () => {
|
|
20866
21057
|
this.connecting = true;
|
|
@@ -20870,6 +21061,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
20870
21061
|
this.connecting = false;
|
|
20871
21062
|
this.panelOpen = false;
|
|
20872
21063
|
this.addressQrOpen = false;
|
|
21064
|
+
this.historyOpen = false;
|
|
20873
21065
|
this.renderConnectedState(session ?? options.manager.getSession());
|
|
20874
21066
|
void this.resolveBalance(session ?? options.manager.getSession());
|
|
20875
21067
|
}));
|
|
@@ -20890,12 +21082,14 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
20890
21082
|
this.connecting = false;
|
|
20891
21083
|
this.panelOpen = false;
|
|
20892
21084
|
this.addressQrOpen = false;
|
|
21085
|
+
this.historyOpen = false;
|
|
20893
21086
|
this.identityName = null;
|
|
20894
21087
|
this.identityAvatar = null;
|
|
20895
21088
|
this.identityRequest += 1;
|
|
20896
21089
|
this.identityResolvingKey = void 0;
|
|
20897
21090
|
this.clearIdentitySettleTimer();
|
|
20898
21091
|
this.clearBalanceRefreshTimers();
|
|
21092
|
+
this.clearBalanceDebounce();
|
|
20899
21093
|
this.balanceRequest += 1;
|
|
20900
21094
|
this.balance = null;
|
|
20901
21095
|
this.balanceLoading = false;
|
|
@@ -20908,7 +21102,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
20908
21102
|
}));
|
|
20909
21103
|
this.offEvents.push(options.manager.on("tx_confirmed", () => {
|
|
20910
21104
|
this.clearBalanceRefreshTimers();
|
|
20911
|
-
|
|
21105
|
+
this.queueBalanceRefresh(options.manager.getSession());
|
|
20912
21106
|
this.render();
|
|
20913
21107
|
}));
|
|
20914
21108
|
this.offEvents.push(options.manager.on("tx_failed", () => {
|
|
@@ -20916,11 +21110,15 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
20916
21110
|
}));
|
|
20917
21111
|
this.offEvents.push(options.manager.on("accountChanged", () => {
|
|
20918
21112
|
this.clearBalanceRefreshTimers();
|
|
20919
|
-
|
|
21113
|
+
const session = options.manager.getSession();
|
|
21114
|
+
this.renderConnectedState(session);
|
|
21115
|
+
this.queueBalanceRefresh(session);
|
|
20920
21116
|
}));
|
|
20921
21117
|
this.offEvents.push(options.manager.on("networkChanged", () => {
|
|
20922
21118
|
this.clearBalanceRefreshTimers();
|
|
20923
|
-
|
|
21119
|
+
const session = options.manager.getSession();
|
|
21120
|
+
this.renderConnectedState(session);
|
|
21121
|
+
this.queueBalanceRefresh(session);
|
|
20924
21122
|
}));
|
|
20925
21123
|
this.offEvents.push(options.manager.on("error", () => {
|
|
20926
21124
|
this.connecting = false;
|
|
@@ -20971,6 +21169,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
20971
21169
|
this.identityRequest += 1;
|
|
20972
21170
|
this.identityResolvingKey = void 0;
|
|
20973
21171
|
this.clearBalanceRefreshTimers();
|
|
21172
|
+
this.clearBalanceDebounce();
|
|
20974
21173
|
if (this.copyResetTimer)
|
|
20975
21174
|
window.clearTimeout(this.copyResetTimer);
|
|
20976
21175
|
if (this.identitySettleTimer)
|
|
@@ -20984,9 +21183,15 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
20984
21183
|
if (!this.target)
|
|
20985
21184
|
return;
|
|
20986
21185
|
this.target.innerHTML = "";
|
|
20987
|
-
|
|
20988
|
-
|
|
20989
|
-
|
|
21186
|
+
try {
|
|
21187
|
+
this.target.appendChild(this.createRoot());
|
|
21188
|
+
this.syncAccountPanelPortal();
|
|
21189
|
+
this.syncPanelListeners();
|
|
21190
|
+
} catch (error) {
|
|
21191
|
+
this.removeAccountPanelPortal();
|
|
21192
|
+
this.syncPanelScrollLock(false);
|
|
21193
|
+
this.target.appendChild(this.createRenderFallback(error));
|
|
21194
|
+
}
|
|
20990
21195
|
}
|
|
20991
21196
|
createRoot() {
|
|
20992
21197
|
var _a2;
|
|
@@ -21004,6 +21209,25 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21004
21209
|
this.renderAddressQrIfNeeded(root);
|
|
21005
21210
|
return root;
|
|
21006
21211
|
}
|
|
21212
|
+
createRenderFallback(_error) {
|
|
21213
|
+
var _a2;
|
|
21214
|
+
const root = document.createElement("div");
|
|
21215
|
+
root.className = "xwk-button-root";
|
|
21216
|
+
try {
|
|
21217
|
+
this.ensureStyles();
|
|
21218
|
+
} catch {
|
|
21219
|
+
}
|
|
21220
|
+
root.innerHTML = `<button class="xwk-account-button" data-xwk-wallet-reset type="button"><span class="xwk-button-label">${this.escapeHtml("Reset wallet")}</span></button>`;
|
|
21221
|
+
(_a2 = root.querySelector("[data-xwk-wallet-reset]")) == null ? void 0 : _a2.addEventListener("click", (event) => {
|
|
21222
|
+
event.stopPropagation();
|
|
21223
|
+
this.connecting = false;
|
|
21224
|
+
this.panelOpen = false;
|
|
21225
|
+
this.addressQrOpen = false;
|
|
21226
|
+
this.historyOpen = false;
|
|
21227
|
+
void this.options.manager.disconnect();
|
|
21228
|
+
});
|
|
21229
|
+
return root;
|
|
21230
|
+
}
|
|
21007
21231
|
onButtonClick() {
|
|
21008
21232
|
const session = this.options.manager.getSession();
|
|
21009
21233
|
if (!session) {
|
|
@@ -21018,6 +21242,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21018
21242
|
closePanel() {
|
|
21019
21243
|
this.panelOpen = false;
|
|
21020
21244
|
this.addressQrOpen = false;
|
|
21245
|
+
this.historyOpen = false;
|
|
21021
21246
|
this.render();
|
|
21022
21247
|
}
|
|
21023
21248
|
handleDocumentPointerDown(event) {
|
|
@@ -21030,6 +21255,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21030
21255
|
return;
|
|
21031
21256
|
this.panelOpen = false;
|
|
21032
21257
|
this.addressQrOpen = false;
|
|
21258
|
+
this.historyOpen = false;
|
|
21033
21259
|
this.render();
|
|
21034
21260
|
}
|
|
21035
21261
|
handleDocumentKeyDown(event) {
|
|
@@ -21038,6 +21264,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21038
21264
|
if (event.key === "Escape") {
|
|
21039
21265
|
this.panelOpen = false;
|
|
21040
21266
|
this.addressQrOpen = false;
|
|
21267
|
+
this.historyOpen = false;
|
|
21041
21268
|
this.render();
|
|
21042
21269
|
return;
|
|
21043
21270
|
}
|
|
@@ -21102,7 +21329,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21102
21329
|
(_a2 = root.querySelector("[data-xwk-account-close]")) == null ? void 0 : _a2.addEventListener("click", () => this.closePanel());
|
|
21103
21330
|
(_b = root.querySelector("[data-xwk-account-back]")) == null ? void 0 : _b.addEventListener("click", (event) => {
|
|
21104
21331
|
event.stopPropagation();
|
|
21105
|
-
this.
|
|
21332
|
+
this.closeSubView();
|
|
21106
21333
|
});
|
|
21107
21334
|
(_c = root.querySelector("[data-xwk-account-overlay]")) == null ? void 0 : _c.addEventListener("click", (event) => {
|
|
21108
21335
|
if (event.target === event.currentTarget)
|
|
@@ -21116,10 +21343,9 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21116
21343
|
event.stopPropagation();
|
|
21117
21344
|
this.openAddressQr();
|
|
21118
21345
|
});
|
|
21119
|
-
(_f = root.querySelector("[data-xwk-tx-
|
|
21346
|
+
(_f = root.querySelector("[data-xwk-tx-history]")) == null ? void 0 : _f.addEventListener("click", (event) => {
|
|
21120
21347
|
event.stopPropagation();
|
|
21121
|
-
this.
|
|
21122
|
-
this.render();
|
|
21348
|
+
this.openTransactionHistory();
|
|
21123
21349
|
});
|
|
21124
21350
|
(_g = root.querySelector("[data-xwk-disconnect]")) == null ? void 0 : _g.addEventListener("click", () => void this.disconnect());
|
|
21125
21351
|
}
|
|
@@ -21128,10 +21354,20 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21128
21354
|
return;
|
|
21129
21355
|
this.panelOpen = true;
|
|
21130
21356
|
this.addressQrOpen = true;
|
|
21357
|
+
this.historyOpen = false;
|
|
21131
21358
|
this.render();
|
|
21132
21359
|
}
|
|
21133
|
-
|
|
21360
|
+
openTransactionHistory() {
|
|
21361
|
+
if (!this.options.manager.getSession())
|
|
21362
|
+
return;
|
|
21363
|
+
this.panelOpen = true;
|
|
21364
|
+
this.addressQrOpen = false;
|
|
21365
|
+
this.historyOpen = true;
|
|
21366
|
+
this.render();
|
|
21367
|
+
}
|
|
21368
|
+
closeSubView() {
|
|
21134
21369
|
this.addressQrOpen = false;
|
|
21370
|
+
this.historyOpen = false;
|
|
21135
21371
|
this.panelOpen = true;
|
|
21136
21372
|
this.render();
|
|
21137
21373
|
}
|
|
@@ -21299,6 +21535,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21299
21535
|
if (session)
|
|
21300
21536
|
delete session.balance;
|
|
21301
21537
|
(_b = (_a2 = this.options).onBalanceChange) == null ? void 0 : _b.call(_a2, null, session);
|
|
21538
|
+
this.render();
|
|
21302
21539
|
return;
|
|
21303
21540
|
}
|
|
21304
21541
|
const requestId = ++this.balanceRequest;
|
|
@@ -21309,6 +21546,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21309
21546
|
this.activationStatus = "unknown";
|
|
21310
21547
|
delete session.balance;
|
|
21311
21548
|
(_d = (_c = this.options).onBalanceChange) == null ? void 0 : _d.call(_c, null, session);
|
|
21549
|
+
this.render();
|
|
21312
21550
|
return;
|
|
21313
21551
|
}
|
|
21314
21552
|
this.balanceLoading = true;
|
|
@@ -21351,9 +21589,13 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21351
21589
|
const messages = this.messages();
|
|
21352
21590
|
const session = this.options.manager.getSession();
|
|
21353
21591
|
const connected = Boolean(session);
|
|
21592
|
+
if (this.connecting && !session) {
|
|
21593
|
+
const icon2 = this.options.showAdapterIcon ? `<span class="xwk-button-icon xwk-button-icon-loading" aria-hidden="true"><span class="xwk-skeleton xwk-skeleton-circle xwk-skeleton-button-icon"></span></span>` : "";
|
|
21594
|
+
return `<button class="xwk-account-button xwk-account-button-loading" data-xwk-wallet-button type="button" aria-busy="true" aria-label="${this.escapeHtml(messages.connecting)}">${icon2}<span class="xwk-button-label xwk-button-label-loading" aria-hidden="true"><span class="xwk-skeleton xwk-skeleton-line xwk-skeleton-button-label"></span></span></button>`;
|
|
21595
|
+
}
|
|
21354
21596
|
const label = this.connecting ? messages.connecting : session ? this.getAccountLabel(session) : this.options.label;
|
|
21355
|
-
const balance = session && this.options.showBalance && this.balanceLoading ? `<span class="xwk-button-balance xwk-button-balance-loading"
|
|
21356
|
-
const icon = this.options.showAdapterIcon ? this.renderWalletIcon(
|
|
21597
|
+
const balance = session && this.options.showBalance && this.balanceLoading ? `<span class="xwk-button-balance xwk-button-balance-loading" aria-hidden="true"><span class="xwk-skeleton xwk-skeleton-button-balance"></span></span>` : session && this.options.showBalance && this.activationStatus === "unfunded" ? `<span class="xwk-button-balance">(${this.escapeHtml(messages.notActivated)})</span>` : session && this.options.showBalance && ((_a2 = this.balance) == null ? void 0 : _a2.formatted) ? `<span class="xwk-button-balance">(${this.escapeHtml(this.balance.formatted)})</span>` : "";
|
|
21598
|
+
const icon = this.options.showAdapterIcon ? connected ? this.renderWalletIcon(session == null ? void 0 : session.wallet) : this.renderPreConnectIcon() : "";
|
|
21357
21599
|
const pendingDot = connected && this.options.showRecentTransactions && this.getPendingTransactionCount() > 0 ? `<span class="xwk-button-pending-dot" aria-hidden="true"></span>` : "";
|
|
21358
21600
|
const chevron = connected && this.options.showChevron && this.options.accountPanel ? `<span class="xwk-button-chevron" aria-hidden="true">${this.chevronIcon()}</span>` : "";
|
|
21359
21601
|
return `<button class="xwk-account-button" data-xwk-wallet-button type="button">${icon}${pendingDot}<span class="xwk-button-label">${this.escapeHtml(label)}${balance}</span>${chevron}</button>`;
|
|
@@ -21363,15 +21605,16 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21363
21605
|
const session = this.options.manager.getSession();
|
|
21364
21606
|
if (!session)
|
|
21365
21607
|
return "";
|
|
21366
|
-
const content = this.addressQrOpen ? this.renderAddressQrPanelContent(session) : this.renderPanelContent(session);
|
|
21367
|
-
const title = this.addressQrOpen ? messages.addressQr : messages.connected;
|
|
21368
|
-
const hasTransactions = !this.addressQrOpen && this.options.showRecentTransactions && this.getVisibleTransactions(session).length > 0;
|
|
21369
|
-
const panelStateClass = `${this.addressQrOpen ? " xwk-account-panel-address-qr" : ""}${hasTransactions ? " xwk-account-panel-with-transactions" : ""}`;
|
|
21370
|
-
const leading = this.addressQrOpen ? `<button class="xwk-account-back" type="button" data-xwk-account-back aria-label="${this.escapeHtml(messages.back)}">${this.backIcon()}</button>` : `<span></span>`;
|
|
21608
|
+
const content = this.addressQrOpen ? this.renderAddressQrPanelContent(session) : this.historyOpen ? this.renderTransactionHistoryPanelContent(session) : this.renderPanelContent(session);
|
|
21609
|
+
const title = this.addressQrOpen ? messages.addressQr : this.historyOpen ? messages.recentTransactions : messages.connected;
|
|
21610
|
+
const hasTransactions = !this.addressQrOpen && !this.historyOpen && this.options.showRecentTransactions && this.getVisibleTransactions(session).length > 0;
|
|
21611
|
+
const panelStateClass = `${this.addressQrOpen ? " xwk-account-panel-address-qr" : ""}${this.historyOpen ? " xwk-account-panel-history" : ""}${hasTransactions ? " xwk-account-panel-with-transactions" : ""}`;
|
|
21612
|
+
const leading = this.addressQrOpen || this.historyOpen ? `<button class="xwk-account-back" type="button" data-xwk-account-back aria-label="${this.escapeHtml(messages.back)}">${this.backIcon()}</button>` : `<span></span>`;
|
|
21371
21613
|
if (this.options.accountPanelMode === "modal") {
|
|
21372
21614
|
return `<div class="xwk-account-overlay" data-xwk-account-overlay role="presentation"><section class="xwk-account-panel xwk-account-panel-modal${panelStateClass}" role="dialog" aria-modal="true" aria-label="${this.escapeHtml(title)}" tabindex="-1"><div class="xwk-account-modal-header">${leading}<h2>${this.escapeHtml(title)}</h2><button class="xwk-account-close" type="button" data-xwk-account-close aria-label="${this.escapeHtml(messages.close)}">×</button></div><div class="xwk-account-modal-body">${content}</div></section></div>`;
|
|
21373
21615
|
}
|
|
21374
|
-
|
|
21616
|
+
const dropdownBack = this.addressQrOpen || this.historyOpen ? `<div class="xwk-account-dropdown-header"><button class="xwk-account-back" type="button" data-xwk-account-back aria-label="${this.escapeHtml(messages.back)}">${this.backIcon()}</button><strong>${this.escapeHtml(title)}</strong></div>` : "";
|
|
21617
|
+
return `<div class="xwk-account-panel xwk-account-panel-dropdown${panelStateClass}" role="dialog" aria-label="${this.escapeHtml(title)}">${dropdownBack}${content}</div>`;
|
|
21375
21618
|
}
|
|
21376
21619
|
renderPanelContent(session) {
|
|
21377
21620
|
var _a2;
|
|
@@ -21387,15 +21630,17 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21387
21630
|
const disconnect = this.options.disconnect ? `<button type="button" data-xwk-disconnect${this.copyInProgress || disconnectBusy ? " disabled" : ""}>${disconnectIcon}<span>${disconnectBusy ? this.escapeHtml(messages.disconnecting) : this.escapeHtml(messages.disconnect)}</span></button>` : "";
|
|
21388
21631
|
const nativeAsset = getNativeAsset(session.account.network);
|
|
21389
21632
|
const notActivated = this.options.showBalance && this.activationStatus === "unfunded" ? `<div class="xwk-account-warning">${this.escapeHtml(messages.accountNotActivated(nativeAsset))}</div>` : "";
|
|
21390
|
-
const balance = this.options.showBalance && this.balanceLoading ? `<
|
|
21391
|
-
const metaRow = balance ? `<div class="xwk-account-meta-row">${balance}</div>` : "";
|
|
21633
|
+
const balance = this.options.showBalance && this.balanceLoading ? `<span class="xwk-pill-balance xwk-account-balance-loading" role="status" aria-label="${this.escapeHtml(messages.connecting)}"><span class="xwk-skeleton xwk-skeleton-balance"></span></span>` : this.options.showBalance && this.activationStatus !== "unfunded" && ((_a2 = this.balance) == null ? void 0 : _a2.formatted) ? `<span class="xwk-pill-balance">${this.escapeHtml(this.balance.formatted)}</span>` : "";
|
|
21392
21634
|
const addressQrButton = this.renderAddressQrButton(address);
|
|
21635
|
+
const identityResolving = this.isIdentityResolving(session);
|
|
21393
21636
|
const hasIdentity = this.shouldShowWeb3Name() && this.identityName;
|
|
21394
|
-
const addressLabel =
|
|
21637
|
+
const addressLabel = address ? `<span class="xwk-pill-address">${this.escapeHtml(this.formatAddress(address))}</span>` : "";
|
|
21638
|
+
const divider = addressLabel && balance ? `<span class="xwk-pill-divider" aria-hidden="true"></span>` : "";
|
|
21639
|
+
const metaPill = addressLabel || balance || addressQrButton ? `<div class="xwk-account-meta-pill">${addressLabel}${divider}${balance}${addressQrButton}</div>` : "";
|
|
21395
21640
|
const actions = `<div class="xwk-account-panel-actions">${copy}${explorer}${disconnect}</div>`;
|
|
21396
|
-
const accountName =
|
|
21641
|
+
const accountName = identityResolving ? `<div class="xwk-account-name xwk-account-name-skeleton" role="status" aria-label="${this.escapeHtml(messages.connecting)}"><span class="xwk-skeleton xwk-skeleton-name"></span></div>` : hasIdentity ? `<div class="xwk-account-name">${this.escapeHtml(label)}</div>` : "";
|
|
21397
21642
|
const transactions2 = this.renderTransactionHistory(session);
|
|
21398
|
-
return `<div class="xwk-account-hero">${this.renderAccountAvatar(session)}</div>${accountName}${
|
|
21643
|
+
return `<div class="xwk-account-hero">${this.renderAccountAvatar(session, identityResolving)}</div>${accountName}${metaPill}${notActivated}${transactions2}${actions}`;
|
|
21399
21644
|
}
|
|
21400
21645
|
renderAddressQrPanelContent(session) {
|
|
21401
21646
|
const messages = this.messages();
|
|
@@ -21415,14 +21660,22 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21415
21660
|
renderTransactionHistory(session) {
|
|
21416
21661
|
if (!this.options.showRecentTransactions)
|
|
21417
21662
|
return "";
|
|
21418
|
-
const
|
|
21419
|
-
if (!
|
|
21663
|
+
const allTransactions = this.getVisibleTransactions(session);
|
|
21664
|
+
if (!allTransactions.length)
|
|
21420
21665
|
return "";
|
|
21666
|
+
const transactions2 = allTransactions.slice(0, Math.min(3, allTransactions.length));
|
|
21667
|
+
const messages = this.messages();
|
|
21668
|
+
const count = allTransactions.length > 9 ? "9+" : String(allTransactions.length);
|
|
21669
|
+
const historyAction = allTransactions.length > transactions2.length ? `<button class="xwk-tx-header-link" type="button" data-xwk-tx-history>${this.escapeHtml(messages.view)}${this.chevronRightIcon()}</button>` : "";
|
|
21670
|
+
const list = `<div class="xwk-tx-list" role="list"><div class="xwk-tx-list-inner">${transactions2.map((transaction2) => this.renderTransactionRow(transaction2)).join("")}</div></div>`;
|
|
21671
|
+
return `<section class="xwk-tx-section" aria-label="${this.escapeHtml(messages.recentTransactions)}"><div class="xwk-tx-header"><span>${this.escapeHtml(messages.recentTransactions)}</span><span class="xwk-tx-count">${this.escapeHtml(count)}</span>${historyAction}</div>${list}</section>`;
|
|
21672
|
+
}
|
|
21673
|
+
renderTransactionHistoryPanelContent(session) {
|
|
21421
21674
|
const messages = this.messages();
|
|
21422
|
-
const
|
|
21423
|
-
|
|
21424
|
-
|
|
21425
|
-
return `<section class="xwk-tx-
|
|
21675
|
+
const transactions2 = this.getVisibleTransactions(session, Math.max(10, this.options.maxVisibleTransactions));
|
|
21676
|
+
if (!transactions2.length)
|
|
21677
|
+
return `<div class="xwk-tx-empty">${this.escapeHtml(messages.noRecentTransactions)}</div>`;
|
|
21678
|
+
return `<section class="xwk-tx-history-view" aria-label="${this.escapeHtml(messages.recentTransactions)}"><div class="xwk-tx-list" role="list"><div class="xwk-tx-list-inner">${transactions2.map((transaction2) => this.renderTransactionRow(transaction2)).join("")}</div></div></section>`;
|
|
21426
21679
|
}
|
|
21427
21680
|
renderTransactionRow(transaction2) {
|
|
21428
21681
|
const messages = this.messages();
|
|
@@ -21450,9 +21703,9 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21450
21703
|
return this.questionIcon();
|
|
21451
21704
|
return `<span class="xwk-tx-spinner" aria-hidden="true"></span>`;
|
|
21452
21705
|
}
|
|
21453
|
-
getVisibleTransactions(session) {
|
|
21706
|
+
getVisibleTransactions(session, limit = this.options.maxVisibleTransactions) {
|
|
21454
21707
|
const address = this.getSessionAddress(session);
|
|
21455
|
-
const max = Math.max(1, Math.floor(
|
|
21708
|
+
const max = Math.max(1, Math.floor(limit));
|
|
21456
21709
|
return this.getRecentTransactions(session).filter((transaction2) => {
|
|
21457
21710
|
var _a2;
|
|
21458
21711
|
return !address || !((_a2 = transaction2.account) == null ? void 0 : _a2.address) || transaction2.account.address === address;
|
|
@@ -21509,7 +21762,10 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21509
21762
|
const address = this.getSessionAddress(session);
|
|
21510
21763
|
return address ? (this.options.formatAddress ?? this.formatAddress)(address) : ((_b = session.wallet) == null ? void 0 : _b.name) ?? session.adapterId;
|
|
21511
21764
|
}
|
|
21512
|
-
renderAccountAvatar(session) {
|
|
21765
|
+
renderAccountAvatar(session, identityResolving = false) {
|
|
21766
|
+
if (identityResolving) {
|
|
21767
|
+
return `<div class="xwk-account-art xwk-account-avatar-skeleton" role="status" aria-label="${this.escapeHtml(this.messages().connecting)}"><span class="xwk-skeleton xwk-skeleton-circle"></span></div>`;
|
|
21768
|
+
}
|
|
21513
21769
|
if (this.identityAvatar) {
|
|
21514
21770
|
return `<img class="xwk-account-avatar" src="${this.escapeHtml(this.identityAvatar)}" alt="">`;
|
|
21515
21771
|
}
|
|
@@ -21540,6 +21796,14 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21540
21796
|
return address;
|
|
21541
21797
|
return typeof (account == null ? void 0 : account.classicAddress) === "string" ? account.classicAddress : "";
|
|
21542
21798
|
}
|
|
21799
|
+
isIdentityResolving(session) {
|
|
21800
|
+
if (!session || !this.shouldShowWeb3Name() || this.identityName)
|
|
21801
|
+
return false;
|
|
21802
|
+
const address = this.getSessionAddress(session);
|
|
21803
|
+
if (!address || !this.options.identityResolver)
|
|
21804
|
+
return false;
|
|
21805
|
+
return this.identityResolvingKey === this.identityCacheKey(session);
|
|
21806
|
+
}
|
|
21543
21807
|
shouldShowWeb3Name() {
|
|
21544
21808
|
return this.options.showWeb3Name ?? true;
|
|
21545
21809
|
}
|
|
@@ -21555,6 +21819,20 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21555
21819
|
const label = wallet.name.slice(0, 1).toUpperCase();
|
|
21556
21820
|
return `<span class="xwk-button-icon xwk-button-icon-fallback xwk-button-icon-initial" aria-hidden="true">${this.escapeHtml(label)}</span>`;
|
|
21557
21821
|
}
|
|
21822
|
+
renderPreConnectIcon() {
|
|
21823
|
+
const icon = this.options.icon;
|
|
21824
|
+
if (!icon || icon.type === "default")
|
|
21825
|
+
return this.renderWalletIcon(void 0);
|
|
21826
|
+
if (icon.type === "image") {
|
|
21827
|
+
const aria = icon.alt ? ` role="img" aria-label="${this.escapeHtml(icon.alt)}"` : ` aria-hidden="true"`;
|
|
21828
|
+
return `<span class="xwk-button-icon xwk-button-icon-custom xwk-button-icon-custom-image"${aria}><img src="${this.escapeHtml(icon.src)}" alt="" decoding="async"></span>`;
|
|
21829
|
+
}
|
|
21830
|
+
return this.renderCustomHtmlIcon(icon);
|
|
21831
|
+
}
|
|
21832
|
+
renderCustomHtmlIcon(icon) {
|
|
21833
|
+
const aria = icon.ariaLabel ? ` role="img" aria-label="${this.escapeHtml(icon.ariaLabel)}"` : ` aria-hidden="true"`;
|
|
21834
|
+
return `<span class="xwk-button-icon xwk-button-icon-custom xwk-button-icon-custom-html"${aria}>${icon.html}</span>`;
|
|
21835
|
+
}
|
|
21558
21836
|
repairFallbackIcon(root) {
|
|
21559
21837
|
root.querySelectorAll(".xwk-button-icon-svg-fallback").forEach((icon) => {
|
|
21560
21838
|
if (icon.querySelector("svg"))
|
|
@@ -21657,7 +21935,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21657
21935
|
let timer = 0;
|
|
21658
21936
|
timer = window.setTimeout(() => {
|
|
21659
21937
|
this.balanceRefreshTimers.delete(timer);
|
|
21660
|
-
|
|
21938
|
+
this.queueBalanceRefresh(this.options.manager.getSession(), 0);
|
|
21661
21939
|
}, delay2);
|
|
21662
21940
|
this.balanceRefreshTimers.add(timer);
|
|
21663
21941
|
});
|
|
@@ -21666,11 +21944,33 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21666
21944
|
this.balanceRefreshTimers.forEach((timer) => window.clearTimeout(timer));
|
|
21667
21945
|
this.balanceRefreshTimers.clear();
|
|
21668
21946
|
}
|
|
21947
|
+
queueBalanceRefresh(session, delay2 = 300) {
|
|
21948
|
+
if (!this.options.showBalance || !this.options.balanceResolver)
|
|
21949
|
+
return;
|
|
21950
|
+
this.balanceDebounceSession = session;
|
|
21951
|
+
this.clearBalanceDebounce();
|
|
21952
|
+
if (typeof window === "undefined") {
|
|
21953
|
+
void this.resolveBalance(this.balanceDebounceSession);
|
|
21954
|
+
return;
|
|
21955
|
+
}
|
|
21956
|
+
this.balanceDebounceTimer = window.setTimeout(() => {
|
|
21957
|
+
this.balanceDebounceTimer = void 0;
|
|
21958
|
+
const nextSession = this.balanceDebounceSession;
|
|
21959
|
+
this.balanceDebounceSession = null;
|
|
21960
|
+
void this.resolveBalance(nextSession);
|
|
21961
|
+
}, delay2);
|
|
21962
|
+
}
|
|
21963
|
+
clearBalanceDebounce() {
|
|
21964
|
+
if (this.balanceDebounceTimer && typeof window !== "undefined") {
|
|
21965
|
+
window.clearTimeout(this.balanceDebounceTimer);
|
|
21966
|
+
}
|
|
21967
|
+
this.balanceDebounceTimer = void 0;
|
|
21968
|
+
}
|
|
21669
21969
|
chevronIcon() {
|
|
21670
21970
|
return `<svg width="14" height="14" viewBox="0 0 24 24" fill="none"><path d="m6 9 6 6 6-6" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></svg>`;
|
|
21671
21971
|
}
|
|
21672
|
-
|
|
21673
|
-
return `<svg width="
|
|
21972
|
+
chevronRightIcon() {
|
|
21973
|
+
return `<svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m9 6 6 6-6 6" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></svg>`;
|
|
21674
21974
|
}
|
|
21675
21975
|
checkIcon() {
|
|
21676
21976
|
return `<svg width="15" height="15" viewBox="0 0 24 24" fill="none"><path d="m5 12.5 4.2 4.2L19 7" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></svg>`;
|
|
@@ -21701,7 +22001,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21701
22001
|
}
|
|
21702
22002
|
ensureStyles() {
|
|
21703
22003
|
const styles2 = this.renderStyles();
|
|
21704
|
-
ensureWalletStyle(
|
|
22004
|
+
ensureWalletStyle("xwk-button", styles2);
|
|
21705
22005
|
}
|
|
21706
22006
|
renderStyles() {
|
|
21707
22007
|
const theme = this.resolveTheme();
|
|
@@ -21716,7 +22016,11 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21716
22016
|
const fallbackIconBackground = theme.fallbackIconBackground;
|
|
21717
22017
|
const fallbackIconColor = theme.fallbackIconColor;
|
|
21718
22018
|
const overlayBlur = theme.overlayBlur > 0 ? `blur(${theme.overlayBlur}px)` : "none";
|
|
21719
|
-
return `.xwk-button-root{display:inline-block;max-width:100%;position:relative;font-family:${theme.fontFamily};font-size:14px}.xwk-account-button{align-items:center;background:${background};border:1px solid ${border};border-radius:${radius};box-shadow:none;box-sizing:border-box;color:${theme.foreground};cursor:pointer;display:inline-flex;gap:8px;font:inherit;font-weight:560;max-width:100%;min-height:${height};overflow:hidden;padding:0 12px 0 10px;touch-action:manipulation;transition:background-color .16s ease,border-color .16s ease;white-space:nowrap;-webkit-tap-highlight-color:transparent;transform:none}.xwk-account-button:hover{background:${hoverBackground};box-shadow:none;opacity:1;transform:none}.xwk-account-button:active{background:${hoverBackground};opacity:1;transform:none}.xwk-account-button:focus-visible,.xwk-button-chevron:focus-visible,.xwk-account-panel-actions button:focus-visible,.xwk-account-panel-actions a:focus-visible,.xwk-address-qr-trigger:focus-visible,.xwk-tx-header:focus-visible,.xwk-tx-link:focus-visible{outline:2px solid ${theme.accent};outline-offset:2px;text-decoration:none}.xwk-button-icon{background:${theme.background};border:1px solid ${iconBorder};border-radius:10px;box-sizing:border-box;display:inline-flex;flex:0 0 28px;height:28px;isolation:isolate;line-height:0;max-width:28px;min-width:28px;object-fit:contain;overflow:hidden;position:relative;width:28px}.xwk-button-icon-fallback{align-items:center;background:${fallbackIconBackground};color:${fallbackIconColor};justify-content:center}.xwk-button-icon-initial{font-size:12px;line-height:1}.xwk-button-icon-svg-fallback{font-size:0}.xwk-button-icon-svg-fallback svg{display:block;flex:0 0 17px;height:17px;max-height:17px;max-width:17px;min-height:17px;min-width:17px;width:17px}.xwk-button-pending-dot{background:${theme.accent};border:2px solid ${background};border-radius:999px;box-sizing:border-box;flex:0 0 9px;height:9px;margin-left:-13px;margin-right:4px;position:relative;width:9px;z-index:1}.xwk-button-label{display:inline-block;flex:1 1 0;font-size:13px;font-weight:560;line-height:1.1;max-width:220px;min-width:0;overflow:hidden;padding-right:2px;text-overflow:ellipsis;white-space:nowrap}.xwk-button-balance{color:${theme.muted};font-weight:500;margin-left:4px}.xwk-button-balance-loading{display:inline-flex;vertical-align:-2px}.xwk-balance-spinner{animation:xwk-action-spin .8s linear infinite;border:2px solid ${theme.spinnerTrail};border-top-color:${theme.muted};border-radius:999px;box-sizing:border-box;display:inline-block;flex:0 0 13px;height:13px;width:13px}.xwk-button-chevron{align-items:center;background:${theme.background};border:1px solid ${iconBorder};border-radius:999px;color:${theme.muted};display:inline-flex;flex:0 0 26px;height:26px;justify-content:center;line-height:1;touch-action:manipulation;width:26px}.xwk-button-chevron:hover{background:${theme.surfaceHover};color:${theme.foreground}}.xwk-account-overlay{align-items:center;background:${theme.overlay};-webkit-backdrop-filter:${overlayBlur};backdrop-filter:${overlayBlur};display:flex;inset:0;justify-content:center;overscroll-behavior:contain;padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));position:fixed;z-index:2147483647}.xwk-account-portal[data-xwk-entering="true"] .xwk-account-overlay{animation:xwk-account-overlay-in .18s ease-out}.xwk-account-panel{background:${theme.background};border:1px solid ${theme.border};border-radius:${theme.radius};box-shadow:${theme.shadow};box-sizing:border-box;color:${theme.foreground};display:grid;gap:12px;overflow:hidden;z-index:2147483647}.xwk-account-panel:focus{outline:none}.xwk-account-panel-dropdown{box-shadow:none;justify-items:center;margin-top:10px;min-width:320px;padding:18px;position:absolute;right:0;top:100%;width:min(360px,calc(100vw - 32px))}.xwk-account-panel-modal{gap:0;grid-template-rows:auto minmax(0,1fr);height:min(527px,calc(100dvh - 48px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));max-width:520px;position:relative;transform-origin:center bottom;width:min(520px,100%)}.xwk-account-panel-modal.xwk-account-panel-with-transactions{height:min(650px,calc(100dvh - 48px - env(safe-area-inset-top) - env(safe-area-inset-bottom)))}.xwk-account-portal[data-xwk-entering="true"] .xwk-account-panel-modal{animation:xwk-account-panel-in .22s cubic-bezier(.22,1,.36,1)}.xwk-account-modal-header{align-items:center;background:${theme.headerBackground};border-bottom:1px solid ${theme.border};display:grid;grid-template-columns:44px minmax(0,1fr) 44px;column-gap:8px;padding:8px 18px}.xwk-account-modal-header h2{color:${theme.foreground};font-size:16px;font-weight:500;line-height:1.2;margin:0;min-width:0;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.xwk-account-modal-body{-webkit-overflow-scrolling:touch;align-items:center;display:flex;flex-direction:column;gap:12px;min-height:0;overflow:hidden;overscroll-behavior:contain;padding:22px 28px 28px}.xwk-account-panel-with-transactions .xwk-account-modal-body{overflow:auto;padding-top:14px}.xwk-account-modal-body>.xwk-account-hero,.xwk-account-modal-body>.xwk-account-name,.xwk-account-modal-body>.xwk-account-address,.xwk-account-modal-body>.xwk-account-meta-row,.xwk-account-modal-body>.xwk-account-warning,.xwk-account-modal-body>.xwk-tx-section,.xwk-account-modal-body>.xwk-account-panel-actions{flex-shrink:0}.xwk-account-close,.xwk-account-back{-webkit-appearance:none;-webkit-tap-highlight-color:transparent;align-items:center;appearance:none;background:transparent!important;border:0!important;border-radius:999px;box-shadow:none!important;color:${theme.muted};cursor:pointer;display:inline-flex;font:inherit;font-size:26px;font-weight:500;height:44px;justify-content:center;line-height:1;margin:0;min-height:0;outline:none!important;padding:0;touch-action:manipulation;transform:none;width:44px}.xwk-account-back{font-size:0;justify-self:start}.xwk-account-close{justify-self:end}.xwk-account-close:hover,.xwk-account-back:hover{background:${theme.surfaceHover}!important;box-shadow:none!important;color:${theme.foreground};transform:none}.xwk-account-close:focus-visible,.xwk-account-back:focus-visible{outline:2px solid ${theme.accent}!important;outline-offset:0}.xwk-account-hero{height:154px;margin-top:4px;position:relative;width:180px}.xwk-account-panel-with-transactions .xwk-account-hero{height:126px;margin-bottom:0}.xwk-account-panel-with-transactions .xwk-account-art,.xwk-account-panel-with-transactions .xwk-account-avatar{top:0}.xwk-account-panel-dropdown .xwk-account-hero{height:132px;width:160px}.xwk-account-art,.xwk-account-avatar{border-radius:999px;height:118px;left:31px;position:absolute;top:8px;width:118px}.xwk-account-panel-dropdown .xwk-account-art,.xwk-account-panel-dropdown .xwk-account-avatar{height:104px;left:28px;width:104px}.xwk-account-art{align-items:center;background:radial-gradient(circle at 58% 38%,var(--xwk-avatar-spot),transparent 0 22%,transparent 23%),linear-gradient(160deg,var(--xwk-avatar-from),var(--xwk-avatar-to));display:flex;justify-content:center}.xwk-account-art span{background:rgba(255,255,255,.18);border-radius:999px;height:50px;width:50px}.xwk-account-panel-dropdown .xwk-account-art span{height:42px;width:42px}.xwk-account-avatar{background:${theme.surface};border:1px solid ${iconBorder};box-sizing:border-box;display:block;object-fit:cover;overflow:hidden}.xwk-account-panel-with-transactions .xwk-account-name{position:relative;z-index:1}.xwk-account-name{color:${theme.foreground};font-size:21px;font-weight:650;line-height:1.2;max-width:100%;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.xwk-account-panel-dropdown .xwk-account-name{font-size:18px}.xwk-account-name-with-qr,.xwk-account-address{align-items:center;display:inline-flex;gap:6px;justify-content:center}.xwk-account-name-with-qr span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xwk-account-name-address{background:${theme.surface};border:1px solid ${theme.border};border-radius:14px;color:${theme.muted};font-size:16px;font-weight:600;line-height:1.2;max-width:min(260px,100%);padding:7px 6px 7px 14px}.xwk-account-address{background:${theme.surface};border:1px solid ${theme.border};border-radius:12px;color:${theme.muted};font-size:14px;font-weight:520;line-height:1.25;max-width:100%;overflow:hidden;padding:8px 8px 8px 12px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.xwk-address-qr-trigger{-webkit-appearance:none;-webkit-tap-highlight-color:transparent;align-items:center;appearance:none;background:transparent;border:0;border-radius:10px;box-shadow:none;color:currentColor;cursor:pointer;display:inline-flex;flex:0 0 34px;height:34px;justify-content:center;margin:-4px -3px -4px 0;min-height:0;outline:none;overflow:visible;padding:0;touch-action:manipulation;transform:none;width:34px}.xwk-address-qr-trigger svg{display:block;height:17px;overflow:visible;width:17px}.xwk-address-qr-trigger:hover{background:${theme.surfaceHover};box-shadow:none;transform:none}.xwk-account-meta-row{align-items:center;display:flex;gap:8px;justify-content:center;max-width:100%;min-height:42px}.xwk-account-balance{align-items:center;background:${theme.surface};border:1px solid ${actionBorder};border-radius:999px;box-sizing:border-box;color:${theme.muted};display:inline-flex;font-size:13px;font-weight:560;height:42px;justify-content:center;letter-spacing:0;line-height:1;padding:0 14px;text-align:center}.xwk-account-balance-loading{align-items:center;display:inline-flex;gap:6px}.xwk-account-warning{align-items:center;background:${theme.surface};border:1px solid ${actionBorder};border-radius:12px;box-sizing:border-box;color:${theme.muted};display:flex;font-size:13px;font-weight:520;justify-content:center;line-height:1.25;min-height:54px;padding:0 14px;text-align:center;width:100%}.xwk-address-qr-content{align-content:center;display:grid;gap:14px;justify-items:center;min-height:100%;width:100%}.xwk-address-qr-code{aspect-ratio:1/1;background:${theme.surface};border:1px solid ${theme.border};border-radius:14px;box-sizing:border-box;display:grid;max-width:304px;padding:12px;place-items:center;width:min(304px,100%)}.xwk-address-qr-code svg,.xwk-address-qr-code canvas,.xwk-address-qr-code img{aspect-ratio:1/1;display:block;height:auto;max-width:100%;width:100%}.xwk-address-qr-chip{background:${theme.surface};border:1px solid ${theme.border};border-radius:12px;box-sizing:border-box;color:${theme.muted};font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;font-weight:520;line-height:1.45;max-width:100%;overflow-wrap:anywhere;padding:9px 11px;text-align:center;width:100%}.xwk-address-qr-fallback{color:${theme.muted};font-size:12px;line-height:1.45;overflow-wrap:anywhere}.xwk-tx-section{background:${theme.surface};border:1px solid ${actionBorder};border-radius:${theme.walletRadius};box-sizing:border-box;display:grid;overflow:hidden;width:100%}.xwk-tx-header{-webkit-appearance:none;-webkit-tap-highlight-color:transparent;align-items:center;appearance:none;background:${theme.surface}!important;border:0!important;box-shadow:none!important;color:${theme.muted};cursor:pointer;display:flex;font:inherit;font-size:10px;font-weight:650;gap:6px;letter-spacing:.07em;line-height:1.2;margin:0;min-height:34px;outline:none;padding:0 12px;text-align:left;text-transform:uppercase;touch-action:manipulation;transform:none;transition:background-color .16s ease,color .16s ease;width:100%}.xwk-tx-header:hover,.xwk-tx-header:active{background:${theme.surfaceHover}!important;border:0!important;box-shadow:none!important;color:${theme.foreground};opacity:1;text-decoration:none;transform:none}.xwk-tx-count{align-items:center;background:${theme.background};border:1px solid ${actionBorder};border-radius:999px;box-sizing:border-box;color:${theme.muted};display:inline-flex;font-size:10px;font-weight:650;height:16px;justify-content:center;letter-spacing:0;line-height:1;min-width:18px;padding:0 5px;text-transform:none}.xwk-tx-chevron{align-items:center;color:${theme.muted};display:inline-flex;flex:0 0 16px;height:16px;justify-content:center;margin-left:auto;transition:transform .18s ease;width:16px}.xwk-tx-chevron.closed{transform:rotate(-90deg)}.xwk-tx-chevron svg{display:block;height:12px;width:12px}.xwk-tx-list{-webkit-overflow-scrolling:touch;display:grid;gap:0;max-height:86px;overflow:auto;overscroll-behavior:contain;scrollbar-color:${theme.muted} transparent;scrollbar-width:thin}.xwk-tx-list::-webkit-scrollbar{width:6px}.xwk-tx-list::-webkit-scrollbar-track{background:transparent}.xwk-tx-list::-webkit-scrollbar-thumb{background:${theme.muted};border-radius:999px}.xwk-tx-row{align-items:center;background:${theme.surface};border-top:1px solid ${actionBorder};box-sizing:border-box;display:grid;gap:8px;grid-template-columns:24px minmax(0,1fr) auto;min-height:42px;padding:7px 10px;transition:background-color .16s ease}.xwk-tx-row:hover{background:${theme.surface};box-shadow:none;transform:none}.xwk-tx-row:first-child{border-top:0}.xwk-tx-status{align-items:center;background:${theme.background};border-radius:999px;color:${theme.accent};display:inline-flex;height:24px;justify-content:center;width:24px}.xwk-tx-row-confirmed .xwk-tx-status{color:${theme.success}}.xwk-tx-row-failed .xwk-tx-status{color:${theme.error}}.xwk-tx-row-unknown .xwk-tx-status{color:${theme.muted}}.xwk-tx-main{display:grid;gap:2px;min-width:0}.xwk-tx-label{color:${theme.foreground};font-size:12px;font-weight:600;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xwk-tx-hash{color:${theme.muted};font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xwk-tx-link{align-items:center;border-radius:9px;color:${theme.accent};display:inline-flex;font:inherit;font-size:12px;font-weight:650;gap:3px;line-height:1.2;min-height:28px;padding:0 6px;text-decoration:none}.xwk-tx-link:hover{background:${theme.surfaceHover};box-shadow:none;text-decoration:none;transform:none}.xwk-tx-link svg{height:12px;width:12px}.xwk-tx-empty{background:${theme.surface};border:1px solid ${actionBorder};border-radius:${theme.walletRadius};box-sizing:border-box;color:${theme.muted};font-size:13px;line-height:1.35;padding:14px;text-align:center;width:100%}.xwk-tx-spinner{animation:xwk-action-spin .8s linear infinite;border:2px solid ${theme.spinnerTrail};border-top-color:${theme.accent};border-radius:999px;box-sizing:border-box;display:block;height:14px;width:14px}.xwk-account-panel-actions{display:grid;gap:10px;grid-template-columns:1fr;width:100%}.xwk-account-modal-body .xwk-account-panel-actions{margin-top:auto}.xwk-account-panel-with-transactions .xwk-account-modal-body .xwk-account-panel-actions{margin-top:0}.xwk-account-panel-actions button,.xwk-account-panel-actions a{-webkit-appearance:none;-webkit-tap-highlight-color:transparent;align-items:center;appearance:none;background:${theme.surface};border:1px solid ${actionBorder};border-radius:${theme.walletRadius};box-shadow:none;box-sizing:border-box;color:${theme.foreground};cursor:pointer;display:flex;font:inherit;font-size:14px;font-weight:560;gap:8px;justify-content:center;line-height:1.2;min-height:46px;min-width:0;outline:none;overflow:hidden;padding:0 12px;text-decoration:none;touch-action:manipulation;transform:none;transition:background-color .16s ease,border-color .16s ease;width:100%}.xwk-account-panel-actions button:disabled{cursor:wait;opacity:1}.xwk-account-panel-actions svg{flex:0 0 auto;opacity:.58}.xwk-account-panel-actions span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xwk-account-panel-actions button:hover,.xwk-account-panel-actions a:hover{background:${theme.surfaceHover};border-color:${actionBorder};box-shadow:none;text-decoration:none;transform:none}.xwk-account-panel-actions button:active,.xwk-account-panel-actions a:active{background:${theme.surfaceHover};opacity:1;text-decoration:none;transform:none}.xwk-copied-icon{color:${theme.success};opacity:1!important}.xwk-action-spinner{animation:xwk-action-spin .8s linear infinite;border:2px solid ${theme.spinnerTrail};border-top-color:${theme.muted};border-radius:999px;box-sizing:border-box;display:inline-block;height:17px;width:17px}@keyframes xwk-action-spin{to{transform:rotate(360deg)}}@keyframes xwk-account-overlay-in{from{opacity:0}to{opacity:1}}@keyframes xwk-account-panel-in{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.xwk-account-button,.xwk-tx-chevron,.xwk-account-panel-actions button,.xwk-account-panel-actions a{transition:none}.xwk-account-portal[data-xwk-entering="true"] .xwk-account-overlay,.xwk-account-portal[data-xwk-entering="true"] .xwk-account-panel-modal{animation-duration:1ms!important}.xwk-action-spinner,.xwk-balance-spinner,.xwk-tx-spinner{animation:none}}@media(max-width:520px){.xwk-account-panel-dropdown{bottom:0;left:0;margin-top:0;min-width:0;position:fixed;right:0;top:auto;width:100vw}.xwk-account-overlay{align-items:flex-end;padding:max(12px,env(safe-area-inset-top)) 0 0}.xwk-account-panel-modal{align-self:flex-end;border-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0;border-left:0;border-right:0;border-top-left-radius:${theme.radius};border-top-right-radius:${theme.radius};height:min(527px,calc(100dvh - env(safe-area-inset-top)));max-width:none;width:100vw}.xwk-account-portal[data-xwk-entering="true"] .xwk-account-panel-modal{animation:xwk-account-sheet-in .28s cubic-bezier(.32,.72,0,1)}.xwk-account-modal-header{border-top-left-radius:${theme.radius};border-top-right-radius:${theme.radius};grid-template-columns:44px minmax(0,1fr) 44px;padding:10px 16px}.xwk-account-modal-body{min-height:0;padding:18px 20px max(22px,calc(22px + env(safe-area-inset-bottom)))}.xwk-button-label{max-width:min(150px,calc(100vw - 140px))}}@keyframes xwk-account-sheet-in{from{opacity:1;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}`;
|
|
22019
|
+
const baseStyles = `.xwk-button-root{display:inline-block;max-width:100%;position:relative;font-family:${theme.fontFamily};font-size:14px}.xwk-account-button{align-items:center;background:${background};border:1px solid ${border};border-radius:${radius};box-shadow:none;box-sizing:border-box;color:${theme.foreground};cursor:pointer;display:inline-flex;gap:8px;font:inherit;font-weight:560;max-width:100%;min-height:${height};overflow:hidden;padding:0 12px 0 10px;touch-action:manipulation;transition:background-color .16s ease,border-color .16s ease;white-space:nowrap;-webkit-tap-highlight-color:transparent;transform:none}.xwk-account-button:hover{background:${hoverBackground};box-shadow:none;opacity:1;transform:none}.xwk-account-button:active{background:${hoverBackground};opacity:1;transform:none}.xwk-account-button:focus-visible,.xwk-button-chevron:focus-visible,.xwk-account-panel-actions button:focus-visible,.xwk-account-panel-actions a:focus-visible,.xwk-address-qr-trigger:focus-visible,.xwk-tx-header-link:focus-visible,.xwk-tx-link:focus-visible{outline:2px solid ${theme.accent};outline-offset:2px;text-decoration:none}.xwk-button-icon{background:${theme.background};border:1px solid ${iconBorder};border-radius:10px;box-sizing:border-box;display:inline-flex;flex:0 0 28px;height:28px;isolation:isolate;line-height:0;max-width:28px;min-width:28px;object-fit:contain;overflow:hidden;position:relative;width:28px}.xwk-button-icon-fallback{align-items:center;background:${fallbackIconBackground};color:${fallbackIconColor};justify-content:center}.xwk-button-icon-initial{font-size:12px;line-height:1}.xwk-button-icon-svg-fallback{font-size:0}.xwk-button-icon-svg-fallback svg{display:block;flex:0 0 17px;height:17px;max-height:17px;max-width:17px;min-height:17px;min-width:17px;width:17px}.xwk-button-icon-custom{align-items:center;justify-content:center}.xwk-button-icon-custom img,.xwk-button-icon-custom svg{display:block;max-height:18px;max-width:18px}.xwk-button-icon-custom img{height:18px;object-fit:contain;width:18px}.xwk-button-icon-custom-html>*{max-height:18px;max-width:18px}.xwk-skeleton{animation:xwk-skeleton-pulse 1.4s ease-in-out infinite;background:linear-gradient(90deg,${theme.surface} 25%,${theme.surfaceHover} 50%,${theme.surface} 75%);background-size:200% 100%;border-radius:999px;display:inline-block}.xwk-skeleton-button-balance{height:12px;width:44px}.xwk-skeleton-balance{height:14px;width:70px}.xwk-skeleton-name{height:24px;width:132px}.xwk-account-name-skeleton{align-items:center;display:flex;justify-content:center;min-height:26px}.xwk-button-pending-dot{background:${theme.accent};border:2px solid ${background};border-radius:999px;box-sizing:border-box;flex:0 0 9px;height:9px;margin-left:-13px;margin-right:4px;position:relative;width:9px;z-index:1}.xwk-button-label{display:inline-block;flex:1 1 0;font-size:13px;font-weight:560;line-height:1.1;max-width:220px;min-width:0;overflow:hidden;padding-right:2px;text-overflow:ellipsis;white-space:nowrap}.xwk-button-balance{color:${theme.muted};font-weight:500;margin-left:4px}.xwk-button-balance-loading{display:inline-flex;vertical-align:-2px}.xwk-balance-spinner{animation:xwk-action-spin .8s linear infinite;border:2px solid ${theme.spinnerTrail};border-top-color:${theme.muted};border-radius:999px;box-sizing:border-box;display:inline-block;flex:0 0 13px;height:13px;width:13px}.xwk-button-chevron{align-items:center;background:${theme.background};border:1px solid ${iconBorder};border-radius:999px;color:${theme.muted};display:inline-flex;flex:0 0 26px;height:26px;justify-content:center;line-height:1;touch-action:manipulation;width:26px}.xwk-button-chevron:hover{background:${theme.surfaceHover};color:${theme.foreground}}.xwk-account-overlay{align-items:center;background:${theme.overlay};-webkit-backdrop-filter:${overlayBlur};backdrop-filter:${overlayBlur};display:flex;inset:0;justify-content:center;overscroll-behavior:contain;padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));position:fixed;z-index:2147483647}.xwk-account-portal[data-xwk-entering="true"] .xwk-account-overlay{animation:xwk-account-overlay-in .18s ease-out}.xwk-account-panel{background:${theme.background};border:1px solid ${theme.border};border-radius:${theme.radius};box-shadow:${theme.shadow};box-sizing:border-box;color:${theme.foreground};display:grid;gap:12px;overflow:hidden;z-index:2147483647}.xwk-account-panel:focus{outline:none}.xwk-account-panel-dropdown{box-shadow:none;justify-items:center;margin-top:10px;min-width:320px;padding:18px;position:absolute;right:0;top:100%;width:min(360px,calc(100vw - 32px))}.xwk-account-dropdown-header{align-items:center;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;margin:-4px 0 0;width:100%}.xwk-account-dropdown-header strong{font-size:14px;font-weight:600;line-height:1.2;min-width:0;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.xwk-account-panel-modal{gap:0;grid-template-rows:auto minmax(0,1fr);height:min(527px,calc(100dvh - 48px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));max-width:520px;position:relative;transform-origin:center bottom;width:min(520px,100%)}.xwk-account-panel-modal.xwk-account-panel-with-transactions,.xwk-account-panel-modal.xwk-account-panel-history{height:min(650px,calc(100dvh - 48px - env(safe-area-inset-top) - env(safe-area-inset-bottom)))}.xwk-account-portal[data-xwk-entering="true"] .xwk-account-panel-modal{animation:xwk-account-panel-in .22s cubic-bezier(.22,1,.36,1)}.xwk-account-modal-header{align-items:center;background:${theme.headerBackground};border-bottom:1px solid ${theme.border};display:grid;grid-template-columns:44px minmax(0,1fr) 44px;column-gap:8px;padding:8px 18px}.xwk-account-modal-header h2{color:${theme.foreground};font-size:16px;font-weight:500;line-height:1.2;margin:0;min-width:0;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.xwk-account-modal-body{-webkit-overflow-scrolling:touch;align-items:center;display:flex;flex-direction:column;gap:12px;min-height:0;overflow:hidden;overscroll-behavior:contain;padding:22px 28px 28px}.xwk-account-panel-with-transactions .xwk-account-modal-body,.xwk-account-panel-history .xwk-account-modal-body{overflow:auto;padding-top:14px}.xwk-account-modal-body>.xwk-account-hero,.xwk-account-modal-body>.xwk-account-name,.xwk-account-modal-body>.xwk-account-meta-pill,.xwk-account-modal-body>.xwk-account-warning,.xwk-account-modal-body>.xwk-tx-section,.xwk-account-modal-body>.xwk-tx-history-view,.xwk-account-modal-body>.xwk-account-panel-actions{flex-shrink:0}.xwk-account-close,.xwk-account-back{-webkit-appearance:none;-webkit-tap-highlight-color:transparent;align-items:center;appearance:none;background:transparent!important;border:0!important;border-radius:999px;box-shadow:none!important;color:${theme.muted};cursor:pointer;display:inline-flex;font:inherit;font-size:26px;font-weight:500;height:44px;justify-content:center;line-height:1;margin:0;min-height:0;outline:none!important;padding:0;touch-action:manipulation;transform:none;width:44px}.xwk-account-back{font-size:0;justify-self:start}.xwk-account-close{justify-self:end}.xwk-account-close:hover,.xwk-account-back:hover{background:${theme.surfaceHover}!important;box-shadow:none!important;color:${theme.foreground};transform:none}.xwk-account-close:focus-visible,.xwk-account-back:focus-visible{outline:2px solid ${theme.accent}!important;outline-offset:0}.xwk-account-hero{height:154px;margin-top:4px;position:relative;width:180px}.xwk-account-panel-with-transactions .xwk-account-hero{height:126px;margin-bottom:0}.xwk-account-panel-with-transactions .xwk-account-art,.xwk-account-panel-with-transactions .xwk-account-avatar{top:0}.xwk-account-panel-dropdown .xwk-account-hero{height:132px;width:160px}.xwk-account-art,.xwk-account-avatar{border-radius:999px;height:118px;left:31px;position:absolute;top:8px;width:118px}.xwk-account-panel-dropdown .xwk-account-art,.xwk-account-panel-dropdown .xwk-account-avatar{height:104px;left:28px;width:104px}.xwk-account-art{align-items:center;background:radial-gradient(circle at 58% 38%,var(--xwk-avatar-spot),transparent 0 22%,transparent 23%),linear-gradient(160deg,var(--xwk-avatar-from),var(--xwk-avatar-to));display:flex;justify-content:center}.xwk-account-art span{background:rgba(255,255,255,.18);border-radius:999px;height:50px;width:50px}.xwk-account-panel-dropdown .xwk-account-art span{height:42px;width:42px}.xwk-account-avatar{background:${theme.surface};border:1px solid ${iconBorder};box-sizing:border-box;display:block;object-fit:cover;overflow:hidden}.xwk-account-panel-with-transactions .xwk-account-name{position:relative;z-index:1}.xwk-account-name{color:${theme.foreground};font-size:21px;font-weight:650;line-height:1.2;max-width:100%;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.xwk-account-panel-dropdown .xwk-account-name{font-size:18px}.xwk-account-meta-pill{align-items:center;background:${theme.surface};border:1px solid ${actionBorder};border-radius:14px;box-sizing:border-box;color:${theme.muted};display:inline-flex;font-size:13px;font-weight:560;gap:8px;justify-content:center;line-height:1.2;max-width:100%;min-height:44px;overflow:hidden;padding:2px 4px 2px 12px}.xwk-pill-address{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xwk-pill-divider{background:${actionBorder};display:inline-block;flex:0 0 1px;height:18px;opacity:.8}.xwk-pill-balance{color:${theme.foreground};white-space:nowrap}.xwk-account-name-with-qr,.xwk-account-address{align-items:center;display:inline-flex;gap:6px;justify-content:center}.xwk-account-name-with-qr span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xwk-account-name-address{background:${theme.surface};border:1px solid ${theme.border};border-radius:14px;color:${theme.muted};font-size:16px;font-weight:600;line-height:1.2;max-width:min(260px,100%);padding:7px 6px 7px 14px}.xwk-account-address{background:${theme.surface};border:1px solid ${theme.border};border-radius:12px;color:${theme.muted};font-size:14px;font-weight:520;line-height:1.25;max-width:100%;overflow:hidden;padding:8px 8px 8px 12px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.xwk-address-qr-trigger{-webkit-appearance:none;-webkit-tap-highlight-color:transparent;align-items:center;appearance:none;background:transparent;border:0;border-radius:10px;box-shadow:none;color:currentColor;cursor:pointer;display:inline-flex;flex:0 0 40px;height:40px;justify-content:center;margin:0 -2px 0 0;min-height:40px;outline:none;overflow:visible;padding:0;touch-action:manipulation;transform:none;width:40px}.xwk-address-qr-trigger svg{display:block;height:17px;overflow:visible;width:17px}.xwk-address-qr-trigger:hover{background:${theme.surfaceHover};box-shadow:none;transform:none}.xwk-account-meta-row{align-items:center;display:flex;gap:8px;justify-content:center;max-width:100%;min-height:42px}.xwk-account-balance{align-items:center;background:${theme.surface};border:1px solid ${actionBorder};border-radius:999px;box-sizing:border-box;color:${theme.muted};display:inline-flex;font-size:13px;font-weight:560;height:42px;justify-content:center;letter-spacing:0;line-height:1;padding:0 14px;text-align:center}.xwk-account-balance-loading{align-items:center;display:inline-flex;gap:6px}.xwk-account-warning{align-items:center;background:${theme.surface};border:1px solid ${actionBorder};border-radius:12px;box-sizing:border-box;color:${theme.muted};display:flex;font-size:13px;font-weight:520;justify-content:center;line-height:1.25;min-height:54px;padding:0 14px;text-align:center;width:100%}.xwk-address-qr-content{align-content:center;display:grid;gap:14px;justify-items:center;min-height:100%;width:100%}.xwk-address-qr-code{aspect-ratio:1/1;background:${theme.surface};border:1px solid ${theme.border};border-radius:14px;box-sizing:border-box;display:grid;max-width:304px;padding:12px;place-items:center;width:min(304px,100%)}.xwk-address-qr-code svg,.xwk-address-qr-code canvas,.xwk-address-qr-code img{aspect-ratio:1/1;display:block;height:auto;max-width:100%;width:100%}.xwk-address-qr-chip{background:${theme.surface};border:1px solid ${theme.border};border-radius:12px;box-sizing:border-box;color:${theme.muted};font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;font-weight:520;line-height:1.45;max-width:100%;overflow-wrap:anywhere;padding:9px 11px;text-align:center;width:100%}.xwk-address-qr-fallback{color:${theme.muted};font-size:12px;line-height:1.45;overflow-wrap:anywhere}.xwk-tx-section{background:${theme.surface};border:1px solid ${actionBorder};border-radius:${theme.walletRadius};box-sizing:border-box;display:grid;overflow:hidden;width:100%}.xwk-tx-header{-webkit-tap-highlight-color:transparent;align-items:center;background:${theme.surface};border:0;box-shadow:none;color:${theme.muted};display:flex;font:inherit;font-size:10px;font-weight:650;gap:6px;letter-spacing:.07em;line-height:1.2;margin:0;min-height:34px;outline:none;padding:0 12px;text-align:left;text-transform:uppercase;transform:none;width:100%}.xwk-tx-header-link{-webkit-appearance:none;-webkit-tap-highlight-color:transparent;align-items:center;appearance:none;background:transparent;border:0;border-radius:9px;box-shadow:none;color:${theme.accent};cursor:pointer;display:inline-flex;font:inherit;font-size:11px;font-weight:650;gap:2px;line-height:1;margin-left:auto;min-height:28px;padding:0 6px;text-decoration:none;text-transform:none;touch-action:manipulation;transform:none}.xwk-tx-header-link:hover,.xwk-tx-header-link:active{background:${theme.surfaceHover};box-shadow:none;color:${theme.accent};opacity:1;text-decoration:none;transform:none}.xwk-tx-header-link svg{display:block;height:13px;width:13px}.xwk-tx-count{align-items:center;background:${theme.background};border:1px solid ${actionBorder};border-radius:999px;box-sizing:border-box;color:${theme.muted};display:inline-flex;font-size:10px;font-weight:650;height:16px;justify-content:center;letter-spacing:0;line-height:1;min-width:18px;padding:0 5px;text-transform:none}.xwk-tx-list{display:grid;overflow:hidden}.xwk-tx-list-inner{min-height:0;overflow:hidden}.xwk-tx-history-view{background:${theme.surface};border:1px solid ${actionBorder};border-radius:${theme.walletRadius};box-sizing:border-box;display:grid;overflow:hidden;width:100%}.xwk-tx-history-view .xwk-tx-list-inner{max-height:468px;overflow:auto}.xwk-tx-row{align-items:center;background:${theme.surface};border-top:1px solid ${actionBorder};box-sizing:border-box;display:grid;gap:8px;grid-template-columns:24px minmax(0,1fr) auto;min-height:42px;padding:7px 10px;transition:background-color .16s ease}.xwk-tx-row:hover{background:${theme.surface};box-shadow:none;transform:none}.xwk-tx-row:first-child{border-top:0}.xwk-tx-status{align-items:center;background:${theme.background};border-radius:999px;color:${theme.accent};display:inline-flex;height:24px;justify-content:center;position:relative;width:24px}.xwk-tx-row-submitted .xwk-tx-status:before{animation:xwk-pulse-ring 1.4s ease-out infinite;border:1px solid currentColor;border-radius:999px;content:"";inset:2px;opacity:.42;position:absolute}.xwk-tx-row-confirmed .xwk-tx-status{color:${theme.success}}.xwk-tx-row-failed .xwk-tx-status{color:${theme.error}}.xwk-tx-row-unknown .xwk-tx-status{color:${theme.muted}}.xwk-tx-main{display:grid;gap:2px;min-width:0}.xwk-tx-label{color:${theme.foreground};font-size:12px;font-weight:600;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xwk-tx-hash{color:${theme.muted};font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xwk-tx-link{align-items:center;border-radius:9px;color:${theme.accent};display:inline-flex;font:inherit;font-size:12px;font-weight:650;gap:3px;line-height:1.2;min-height:28px;padding:0 6px;text-decoration:none}.xwk-tx-link:hover{background:${theme.surfaceHover};box-shadow:none;text-decoration:none;transform:none}.xwk-tx-link svg{height:12px;width:12px}.xwk-tx-empty{background:${theme.surface};border:1px solid ${actionBorder};border-radius:${theme.walletRadius};box-sizing:border-box;color:${theme.muted};font-size:13px;line-height:1.35;padding:14px;text-align:center;width:100%}.xwk-tx-spinner{animation:xwk-action-spin .8s linear infinite;border:2px solid ${theme.spinnerTrail};border-top-color:${theme.accent};border-radius:999px;box-sizing:border-box;display:block;height:14px;width:14px}.xwk-account-panel-actions{display:grid;gap:10px;grid-template-columns:1fr;width:100%}.xwk-account-modal-body .xwk-account-panel-actions{margin-top:auto}.xwk-account-panel-with-transactions .xwk-account-modal-body .xwk-account-panel-actions{margin-top:0}.xwk-account-panel-actions button,.xwk-account-panel-actions a{-webkit-appearance:none;-webkit-tap-highlight-color:transparent;align-items:center;appearance:none;background:${theme.surface};border:1px solid ${actionBorder};border-radius:${theme.walletRadius};box-shadow:none;box-sizing:border-box;color:${theme.foreground};cursor:pointer;display:flex;font:inherit;font-size:14px;font-weight:560;gap:8px;justify-content:center;line-height:1.2;min-height:46px;min-width:0;outline:none;overflow:hidden;padding:0 12px;text-decoration:none;touch-action:manipulation;transform:none;transition:background-color .16s ease,border-color .16s ease;width:100%}.xwk-account-panel-actions button:disabled{cursor:wait;opacity:1}.xwk-account-panel-actions svg{flex:0 0 auto;opacity:.58}.xwk-account-panel-actions span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xwk-account-panel-actions button:hover,.xwk-account-panel-actions a:hover{background:${theme.surfaceHover};border-color:${actionBorder};box-shadow:none;text-decoration:none;transform:none}.xwk-account-panel-actions button:active,.xwk-account-panel-actions a:active{background:${theme.surfaceHover};opacity:1;text-decoration:none;transform:none}.xwk-copied-icon{color:${theme.success};opacity:1!important}.xwk-action-spinner{animation:xwk-action-spin .8s linear infinite;border:2px solid ${theme.spinnerTrail};border-top-color:${theme.muted};border-radius:999px;box-sizing:border-box;display:inline-block;height:17px;width:17px}@keyframes xwk-action-spin{to{transform:rotate(360deg)}}@keyframes xwk-skeleton-pulse{0%{background-position:200% 0}100%{background-position:-200% 0}}@keyframes xwk-pulse-ring{0%{opacity:.42;transform:scale(.8)}80%,100%{opacity:0;transform:scale(1.45)}}@keyframes xwk-account-overlay-in{from{opacity:0}to{opacity:1}}@keyframes xwk-account-panel-in{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.xwk-account-button,.xwk-tx-header-link,.xwk-account-panel-actions button,.xwk-account-panel-actions a{transition:none}.xwk-account-portal[data-xwk-entering="true"] .xwk-account-overlay,.xwk-account-portal[data-xwk-entering="true"] .xwk-account-panel-modal{animation-duration:1ms!important}.xwk-action-spinner,.xwk-balance-spinner,.xwk-tx-spinner,.xwk-skeleton,.xwk-tx-row-submitted .xwk-tx-status:before{animation:none}}@media(max-width:520px){.xwk-account-panel-dropdown{bottom:0;left:0;margin-top:0;min-width:0;position:fixed;right:0;top:auto;width:100vw}.xwk-account-overlay{align-items:flex-end;padding:max(12px,env(safe-area-inset-top)) 0 0}.xwk-account-panel-modal{align-self:flex-end;border-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0;border-left:0;border-right:0;border-top-left-radius:${theme.radius};border-top-right-radius:${theme.radius};height:min(527px,calc(100dvh - env(safe-area-inset-top)));max-width:none;width:100vw}.xwk-account-panel-modal.xwk-account-panel-with-transactions,.xwk-account-panel-modal.xwk-account-panel-history{height:min(650px,calc(100dvh - env(safe-area-inset-top)))}.xwk-account-portal[data-xwk-entering="true"] .xwk-account-panel-modal{animation:xwk-account-sheet-in .28s cubic-bezier(.32,.72,0,1)}.xwk-account-modal-header{border-top-left-radius:${theme.radius};border-top-right-radius:${theme.radius};grid-template-columns:44px minmax(0,1fr) 44px;padding:10px 16px}.xwk-account-modal-body{min-height:0;padding:18px 20px max(22px,calc(22px + env(safe-area-inset-bottom)))}.xwk-button-label{max-width:min(150px,calc(100vw - 140px))}}@keyframes xwk-account-sheet-in{from{opacity:1;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}`;
|
|
22020
|
+
return `${baseStyles}${this.renderSkeletonPrimitiveStyles(theme, iconBorder)}`;
|
|
22021
|
+
}
|
|
22022
|
+
renderSkeletonPrimitiveStyles(theme, iconBorder) {
|
|
22023
|
+
return `.xwk-skeleton-circle{border-radius:999px}.xwk-skeleton-line{height:14px;border-radius:4px}.xwk-skeleton-pill{border-radius:999px}.xwk-skeleton-card,.xwk-skeleton-button{border-radius:${theme.walletRadius}}.xwk-skeleton-row{align-items:center;display:flex;gap:12px;width:100%}.xwk-skeleton-button-icon{height:28px;width:28px}.xwk-skeleton-button-label{height:14px;width:92px}.xwk-account-button-loading .xwk-button-label{align-items:center;display:inline-flex}.xwk-button-icon-loading{background:transparent;border-color:${iconBorder};padding:0}.xwk-account-avatar-skeleton{background:${theme.surface};border:1px solid ${iconBorder};box-sizing:border-box;overflow:hidden}.xwk-account-avatar-skeleton>span{height:100%;width:100%}.xwk-tx-skeleton-row{grid-template-columns:24px minmax(0,1fr) auto}.xwk-tx-skeleton-main{display:grid;gap:6px;min-width:0}.xwk-tx-skeleton-label{height:13px;width:86px}.xwk-tx-skeleton-hash{height:11px;width:132px}@media(prefers-reduced-motion:reduce){.xwk-skeleton{animation:none!important;background:${theme.surfaceHover}!important}}`;
|
|
21720
22024
|
}
|
|
21721
22025
|
resolveTheme() {
|
|
21722
22026
|
return resolveWalletTheme({
|
|
@@ -21861,6 +22165,9 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21861
22165
|
return value;
|
|
21862
22166
|
}
|
|
21863
22167
|
}
|
|
22168
|
+
function compactButtonOptions(options) {
|
|
22169
|
+
return Object.fromEntries(Object.entries(options).filter(([, value]) => value !== void 0));
|
|
22170
|
+
}
|
|
21864
22171
|
function createWalletButton(options) {
|
|
21865
22172
|
const button = new WalletButtonController(options);
|
|
21866
22173
|
if (options.target)
|
|
@@ -21995,7 +22302,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
21995
22302
|
}
|
|
21996
22303
|
ensureStyles() {
|
|
21997
22304
|
const styles2 = this.renderStyles();
|
|
21998
|
-
ensureWalletStyle(
|
|
22305
|
+
ensureWalletStyle("xwk-toast", styles2);
|
|
21999
22306
|
}
|
|
22000
22307
|
getExplorerUrl(hash2, network) {
|
|
22001
22308
|
var _a2, _b;
|
|
@@ -22092,6 +22399,7 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
22092
22399
|
if (modal && modalOptions.autoOpen) {
|
|
22093
22400
|
modal.autoOpen();
|
|
22094
22401
|
}
|
|
22402
|
+
const subscribe2 = createKitSubscriber(manager);
|
|
22095
22403
|
return {
|
|
22096
22404
|
manager,
|
|
22097
22405
|
modal,
|
|
@@ -22104,11 +22412,52 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
22104
22412
|
refreshBalance: () => button == null ? void 0 : button.refreshBalance(),
|
|
22105
22413
|
refreshAccount: () => button == null ? void 0 : button.refreshAccount(),
|
|
22106
22414
|
getSession: () => manager.getSession(),
|
|
22415
|
+
on: manager.on.bind(manager),
|
|
22416
|
+
off: manager.off.bind(manager),
|
|
22417
|
+
once: manager.once.bind(manager),
|
|
22418
|
+
subscribe: subscribe2,
|
|
22107
22419
|
signAndSubmit: manager.signAndSubmit.bind(manager),
|
|
22108
22420
|
signTransaction: manager.signTransaction.bind(manager),
|
|
22109
22421
|
signMessage: manager.signMessage.bind(manager)
|
|
22110
22422
|
};
|
|
22111
22423
|
}
|
|
22424
|
+
function createKitSubscriber(manager) {
|
|
22425
|
+
function snapshot2(eventName, event) {
|
|
22426
|
+
const status = eventName === "connecting" ? "connecting" : manager.getSession() ? "connected" : "disconnected";
|
|
22427
|
+
return {
|
|
22428
|
+
status,
|
|
22429
|
+
session: manager.getSession(),
|
|
22430
|
+
account: manager.getAccount(),
|
|
22431
|
+
eventName,
|
|
22432
|
+
event
|
|
22433
|
+
};
|
|
22434
|
+
}
|
|
22435
|
+
function subscribe2(eventNameOrHandler, maybeHandler) {
|
|
22436
|
+
if (typeof eventNameOrHandler === "function") {
|
|
22437
|
+
const handler = eventNameOrHandler;
|
|
22438
|
+
const eventNames = [
|
|
22439
|
+
"connecting",
|
|
22440
|
+
"connected",
|
|
22441
|
+
"disconnected",
|
|
22442
|
+
"session_restored",
|
|
22443
|
+
"session_stale",
|
|
22444
|
+
"session_expired",
|
|
22445
|
+
"accountChanged",
|
|
22446
|
+
"networkChanged"
|
|
22447
|
+
];
|
|
22448
|
+
const unsubs = eventNames.map((eventName) => manager.on(eventName, (event) => {
|
|
22449
|
+
handler(snapshot2(eventName, event));
|
|
22450
|
+
}));
|
|
22451
|
+
handler(snapshot2());
|
|
22452
|
+
return () => unsubs.forEach((unsubscribe) => unsubscribe());
|
|
22453
|
+
}
|
|
22454
|
+
if (!maybeHandler) {
|
|
22455
|
+
throw new TypeError("kit.subscribe(eventName, handler) requires a handler.");
|
|
22456
|
+
}
|
|
22457
|
+
return manager.on(eventNameOrHandler, maybeHandler);
|
|
22458
|
+
}
|
|
22459
|
+
return subscribe2;
|
|
22460
|
+
}
|
|
22112
22461
|
function scheduleAutoReconnect(manager) {
|
|
22113
22462
|
const run = () => {
|
|
22114
22463
|
const requestFrame = typeof globalThis.requestAnimationFrame === "function" ? globalThis.requestAnimationFrame.bind(globalThis) : (callback) => globalThis.setTimeout(() => callback(Date.now()), 16);
|
|
@@ -22155,16 +22504,12 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
22155
22504
|
adapters.push(createXrplSnapAdapter());
|
|
22156
22505
|
if (options.walletConnectProjectId && shouldIncludeWalletConnect(ids)) {
|
|
22157
22506
|
const walletConnectUiMode = getWalletConnectUiMode(options);
|
|
22507
|
+
const appMetadata = resolveAppMetadata(options);
|
|
22158
22508
|
adapters.push(...createWalletConnectAdapters({
|
|
22159
22509
|
projectId: options.walletConnectProjectId,
|
|
22160
22510
|
mode: walletConnectUiMode === "default" ? "default" : "details",
|
|
22161
22511
|
wallets: resolveWalletConnectWallets(ids),
|
|
22162
|
-
metadata: createWalletConnectMetadata(
|
|
22163
|
-
name: options.appName,
|
|
22164
|
-
description: options.appDescription ?? `${options.appName} XRPL wallet connection`,
|
|
22165
|
-
url: options.appUrl ?? getCurrentOrigin(),
|
|
22166
|
-
icons: options.appIcons ?? []
|
|
22167
|
-
}),
|
|
22512
|
+
metadata: createWalletConnectMetadata(appMetadata),
|
|
22168
22513
|
onQr,
|
|
22169
22514
|
signMessageDestination: options.walletConnectSignMessageDestination,
|
|
22170
22515
|
useModal: walletConnectUiMode === "default" ? true : void 0,
|
|
@@ -22281,6 +22626,24 @@ ${new this._window.XMLSerializer().serializeToString(e4)}`;
|
|
|
22281
22626
|
function getCurrentOrigin() {
|
|
22282
22627
|
return typeof window !== "undefined" ? window.location.origin : "https://xrpl.org";
|
|
22283
22628
|
}
|
|
22629
|
+
function resolveAppMetadata(options) {
|
|
22630
|
+
var _a2, _b, _c, _d;
|
|
22631
|
+
const name = nonEmptyString((_a2 = options.metadata) == null ? void 0 : _a2.name) ?? nonEmptyString(options.appName) ?? "XRPL dApp";
|
|
22632
|
+
return {
|
|
22633
|
+
name,
|
|
22634
|
+
description: nonEmptyString((_b = options.metadata) == null ? void 0 : _b.description) ?? nonEmptyString(options.appDescription) ?? `${name} XRPL wallet connection`,
|
|
22635
|
+
url: nonEmptyString((_c = options.metadata) == null ? void 0 : _c.url) ?? nonEmptyString(options.appUrl) ?? getCurrentOrigin(),
|
|
22636
|
+
icons: normalizeIcons(((_d = options.metadata) == null ? void 0 : _d.icons) ?? options.appIcons)
|
|
22637
|
+
};
|
|
22638
|
+
}
|
|
22639
|
+
function nonEmptyString(value) {
|
|
22640
|
+
return typeof value === "string" && value.trim() ? value.trim() : void 0;
|
|
22641
|
+
}
|
|
22642
|
+
function normalizeIcons(icons) {
|
|
22643
|
+
if (!Array.isArray(icons))
|
|
22644
|
+
return [];
|
|
22645
|
+
return icons.filter((icon) => typeof icon === "string" && icon.trim().length > 0);
|
|
22646
|
+
}
|
|
22284
22647
|
function withoutKitOnlyOptions(options) {
|
|
22285
22648
|
const { adapters: _adapters, storage: _storage, walletConnectProjectId: _walletConnectProjectId, walletConnectSignMessageDestination: _walletConnectSignMessageDestination, xamanClientId: _xamanClientId, wallets: _wallets, ui: _ui, ...managerConfig } = options;
|
|
22286
22649
|
return managerConfig;
|