@matchain/matchid-sdk-react 0.1.53-alpha.19 → 0.1.53-alpha.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-Z7L7RRWB.mjs → chunk-CLMSEFOV.mjs} +692 -184
- package/dist/chunk-CLMSEFOV.mjs.map +1 -0
- package/dist/components/index.js +629 -121
- package/dist/components/index.js.map +1 -1
- package/dist/components/index.mjs +1 -1
- package/dist/hooks/api/index.js +52 -36
- package/dist/hooks/api/index.js.map +1 -1
- package/dist/hooks/api/index.mjs +1 -1
- package/dist/hooks/index.js +120 -104
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/index.mjs +1 -1
- package/dist/index.js +725 -217
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/package.json +1 -1
- package/dist/chunk-Z7L7RRWB.mjs.map +0 -1
package/dist/index.js
CHANGED
|
@@ -45,7 +45,7 @@ __export(src_exports, {
|
|
|
45
45
|
module.exports = __toCommonJS(src_exports);
|
|
46
46
|
|
|
47
47
|
// src/MatchContext.tsx
|
|
48
|
-
var
|
|
48
|
+
var import_react43 = require("react");
|
|
49
49
|
|
|
50
50
|
// src/hooks/index.tsx
|
|
51
51
|
var hooks_exports = {};
|
|
@@ -4379,34 +4379,8 @@ function UsernameModal({
|
|
|
4379
4379
|
}
|
|
4380
4380
|
|
|
4381
4381
|
// src/components/EVMModal/index.tsx
|
|
4382
|
+
var import_react23 = require("react");
|
|
4382
4383
|
var import_react_intl10 = require("react-intl");
|
|
4383
|
-
var import_styles = require("@rainbow-me/rainbowkit/styles.css");
|
|
4384
|
-
var import_jsx_runtime81 = require("react/jsx-runtime");
|
|
4385
|
-
function WalletContent({
|
|
4386
|
-
onSuccess,
|
|
4387
|
-
type
|
|
4388
|
-
}) {
|
|
4389
|
-
return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_jsx_runtime81.Fragment, {});
|
|
4390
|
-
}
|
|
4391
|
-
function EVMConnectModal({
|
|
4392
|
-
type = "login",
|
|
4393
|
-
onSuccess,
|
|
4394
|
-
...props
|
|
4395
|
-
}) {
|
|
4396
|
-
const intl = (0, import_react_intl10.useIntl)();
|
|
4397
|
-
return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(ModalWithHeader, { ...props, title: props.title || intl.formatMessage({
|
|
4398
|
-
id: type == "bind" ? "bindWith" : "loginWith"
|
|
4399
|
-
}, {
|
|
4400
|
-
name: "EVM"
|
|
4401
|
-
}), children: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(WalletContent, { onSuccess, type }) });
|
|
4402
|
-
}
|
|
4403
|
-
function EVMModal(props) {
|
|
4404
|
-
return props.isOpen && /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(EVMConnectModal, { ...props });
|
|
4405
|
-
}
|
|
4406
|
-
|
|
4407
|
-
// src/components/TRONModal/index.tsx
|
|
4408
|
-
var import_react23 = __toESM(require("react"));
|
|
4409
|
-
var import_react_intl11 = require("react-intl");
|
|
4410
4384
|
|
|
4411
4385
|
// src/components/WalletModalContent/index.tsx
|
|
4412
4386
|
var import_react21 = require("react");
|
|
@@ -4419,7 +4393,7 @@ var walletConnectImage = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEA
|
|
|
4419
4393
|
var walletSigningImage = "data:image/png;base64,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";
|
|
4420
4394
|
|
|
4421
4395
|
// src/components/WalletModalContent/index.tsx
|
|
4422
|
-
var
|
|
4396
|
+
var import_jsx_runtime81 = require("react/jsx-runtime");
|
|
4423
4397
|
function WalletModalContent({
|
|
4424
4398
|
status,
|
|
4425
4399
|
error,
|
|
@@ -4489,12 +4463,12 @@ function WalletModalContent({
|
|
|
4489
4463
|
statusImage: walletConnectImage
|
|
4490
4464
|
};
|
|
4491
4465
|
}, [visible, connected, status, error, address]);
|
|
4492
|
-
return /* @__PURE__ */ (0,
|
|
4493
|
-
/* @__PURE__ */ (0,
|
|
4494
|
-
/* @__PURE__ */ (0,
|
|
4495
|
-
/* @__PURE__ */ (0,
|
|
4466
|
+
return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("div", { className: "matchid-wallet-container", children: /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { className: `matchid-wallet-box`, children: [
|
|
4467
|
+
/* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { className: `matchid-wallet-content`, children: [
|
|
4468
|
+
/* @__PURE__ */ (0, import_jsx_runtime81.jsx)("img", { src: pageData.statusImage }),
|
|
4469
|
+
/* @__PURE__ */ (0, import_jsx_runtime81.jsx)("div", { className: pageData.isError ? "matchid-error" : "", children: pageData.text })
|
|
4496
4470
|
] }),
|
|
4497
|
-
/* @__PURE__ */ (0,
|
|
4471
|
+
/* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
|
|
4498
4472
|
Button,
|
|
4499
4473
|
{
|
|
4500
4474
|
block: true,
|
|
@@ -4507,6 +4481,540 @@ function WalletModalContent({
|
|
|
4507
4481
|
)
|
|
4508
4482
|
] }) });
|
|
4509
4483
|
}
|
|
4484
|
+
function WalletModalContentV2(props) {
|
|
4485
|
+
const [submitting, setSubmitting] = (0, import_react21.useState)(false);
|
|
4486
|
+
const pageData = (0, import_react21.useMemo)(() => {
|
|
4487
|
+
const { status } = props;
|
|
4488
|
+
if (status == "success") {
|
|
4489
|
+
return {
|
|
4490
|
+
btnText: "Disconnect Wallet",
|
|
4491
|
+
btnClick: async () => {
|
|
4492
|
+
setSubmitting(true);
|
|
4493
|
+
await props.onDisconnect?.();
|
|
4494
|
+
setSubmitting(false);
|
|
4495
|
+
},
|
|
4496
|
+
text: "Wallet connection successful!",
|
|
4497
|
+
statusImage: walletConnectedImage,
|
|
4498
|
+
btnLoading: submitting
|
|
4499
|
+
};
|
|
4500
|
+
}
|
|
4501
|
+
if (status == "error") {
|
|
4502
|
+
return {
|
|
4503
|
+
text: props.error || "Unknown Error",
|
|
4504
|
+
btnText: "Reconnect Wallet",
|
|
4505
|
+
btnClick: async () => {
|
|
4506
|
+
setSubmitting(true);
|
|
4507
|
+
await props.onError?.();
|
|
4508
|
+
setSubmitting(false);
|
|
4509
|
+
},
|
|
4510
|
+
statusImage: walletErrorImage,
|
|
4511
|
+
isError: true,
|
|
4512
|
+
btnLoading: submitting
|
|
4513
|
+
};
|
|
4514
|
+
}
|
|
4515
|
+
if (status == "nonce") {
|
|
4516
|
+
return {
|
|
4517
|
+
btnLoading: true,
|
|
4518
|
+
text: "Connecting",
|
|
4519
|
+
statusImage: walletConnectingImage
|
|
4520
|
+
};
|
|
4521
|
+
}
|
|
4522
|
+
if (status == "signer") {
|
|
4523
|
+
return {
|
|
4524
|
+
btnLoading: true,
|
|
4525
|
+
text: "Signing",
|
|
4526
|
+
statusImage: walletSigningImage
|
|
4527
|
+
};
|
|
4528
|
+
}
|
|
4529
|
+
if (status == "connecting") {
|
|
4530
|
+
return {
|
|
4531
|
+
btnLoading: true,
|
|
4532
|
+
text: "Connecting",
|
|
4533
|
+
statusImage: walletConnectingImage
|
|
4534
|
+
};
|
|
4535
|
+
}
|
|
4536
|
+
return {
|
|
4537
|
+
btnText: "Connect Wallet",
|
|
4538
|
+
btnClick: async () => {
|
|
4539
|
+
setSubmitting(true);
|
|
4540
|
+
await props.onConnect?.();
|
|
4541
|
+
setSubmitting(false);
|
|
4542
|
+
},
|
|
4543
|
+
text: "Please Connect your wallet",
|
|
4544
|
+
statusImage: walletConnectImage
|
|
4545
|
+
};
|
|
4546
|
+
}, [props, submitting]);
|
|
4547
|
+
return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("div", { className: "matchid-wallet-container", children: /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { className: `matchid-wallet-box`, children: [
|
|
4548
|
+
/* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { className: `matchid-wallet-content`, children: [
|
|
4549
|
+
/* @__PURE__ */ (0, import_jsx_runtime81.jsx)("img", { src: pageData.statusImage }),
|
|
4550
|
+
/* @__PURE__ */ (0, import_jsx_runtime81.jsx)("div", { className: props.status == "error" ? "matchid-error" : "", children: pageData.text })
|
|
4551
|
+
] }),
|
|
4552
|
+
/* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
|
|
4553
|
+
Button,
|
|
4554
|
+
{
|
|
4555
|
+
block: true,
|
|
4556
|
+
size: "lg",
|
|
4557
|
+
onClick: pageData.btnClick,
|
|
4558
|
+
loading: pageData.btnLoading,
|
|
4559
|
+
disabled: pageData.btnDisabled,
|
|
4560
|
+
children: pageData.btnText
|
|
4561
|
+
}
|
|
4562
|
+
)
|
|
4563
|
+
] }) });
|
|
4564
|
+
}
|
|
4565
|
+
|
|
4566
|
+
// src/components/EVMModal/index.tsx
|
|
4567
|
+
var import_rainbowkit = require("@rainbow-me/rainbowkit");
|
|
4568
|
+
var import_wagmi2 = require("wagmi");
|
|
4569
|
+
|
|
4570
|
+
// src/hooks/useWalletBox.ts
|
|
4571
|
+
var import_react22 = require("react");
|
|
4572
|
+
function useWalletBox({
|
|
4573
|
+
onInit
|
|
4574
|
+
}) {
|
|
4575
|
+
const [status, setStateStatus] = (0, import_react22.useState)("start");
|
|
4576
|
+
const [error, setError] = (0, import_react22.useState)("");
|
|
4577
|
+
const statusRef = (0, import_react22.useRef)(status);
|
|
4578
|
+
const [nonce, setNonce] = (0, import_react22.useState)();
|
|
4579
|
+
const setStatus = (status2) => {
|
|
4580
|
+
statusRef.current = status2;
|
|
4581
|
+
setStateStatus(status2);
|
|
4582
|
+
};
|
|
4583
|
+
const init = () => {
|
|
4584
|
+
setError("");
|
|
4585
|
+
setNonce(null);
|
|
4586
|
+
};
|
|
4587
|
+
(0, import_react22.useEffect)(() => {
|
|
4588
|
+
init();
|
|
4589
|
+
onInit({
|
|
4590
|
+
setStatus
|
|
4591
|
+
});
|
|
4592
|
+
return () => {
|
|
4593
|
+
setStatus("start");
|
|
4594
|
+
setNonce(null);
|
|
4595
|
+
setError("");
|
|
4596
|
+
};
|
|
4597
|
+
}, []);
|
|
4598
|
+
return {
|
|
4599
|
+
status,
|
|
4600
|
+
statusRef,
|
|
4601
|
+
setStatus,
|
|
4602
|
+
error,
|
|
4603
|
+
setError,
|
|
4604
|
+
nonce,
|
|
4605
|
+
setNonce,
|
|
4606
|
+
init
|
|
4607
|
+
};
|
|
4608
|
+
}
|
|
4609
|
+
|
|
4610
|
+
// src/hooks/useEthersSigner.ts
|
|
4611
|
+
var React5 = __toESM(require("react"));
|
|
4612
|
+
var import_wagmi = require("wagmi");
|
|
4613
|
+
var import_ethers = require("ethers");
|
|
4614
|
+
|
|
4615
|
+
// node_modules/@wagmi/core/dist/esm/version.js
|
|
4616
|
+
var version = "2.16.3";
|
|
4617
|
+
|
|
4618
|
+
// node_modules/@wagmi/core/dist/esm/utils/getVersion.js
|
|
4619
|
+
var getVersion2 = () => `@wagmi/core@${version}`;
|
|
4620
|
+
|
|
4621
|
+
// node_modules/@wagmi/core/dist/esm/errors/base.js
|
|
4622
|
+
var __classPrivateFieldGet = function(receiver, state, kind, f) {
|
|
4623
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
4624
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
4625
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
4626
|
+
};
|
|
4627
|
+
var _BaseError_instances;
|
|
4628
|
+
var _BaseError_walk;
|
|
4629
|
+
var BaseError = class _BaseError extends Error {
|
|
4630
|
+
get docsBaseUrl() {
|
|
4631
|
+
return "https://wagmi.sh/core";
|
|
4632
|
+
}
|
|
4633
|
+
get version() {
|
|
4634
|
+
return getVersion2();
|
|
4635
|
+
}
|
|
4636
|
+
constructor(shortMessage, options = {}) {
|
|
4637
|
+
super();
|
|
4638
|
+
_BaseError_instances.add(this);
|
|
4639
|
+
Object.defineProperty(this, "details", {
|
|
4640
|
+
enumerable: true,
|
|
4641
|
+
configurable: true,
|
|
4642
|
+
writable: true,
|
|
4643
|
+
value: void 0
|
|
4644
|
+
});
|
|
4645
|
+
Object.defineProperty(this, "docsPath", {
|
|
4646
|
+
enumerable: true,
|
|
4647
|
+
configurable: true,
|
|
4648
|
+
writable: true,
|
|
4649
|
+
value: void 0
|
|
4650
|
+
});
|
|
4651
|
+
Object.defineProperty(this, "metaMessages", {
|
|
4652
|
+
enumerable: true,
|
|
4653
|
+
configurable: true,
|
|
4654
|
+
writable: true,
|
|
4655
|
+
value: void 0
|
|
4656
|
+
});
|
|
4657
|
+
Object.defineProperty(this, "shortMessage", {
|
|
4658
|
+
enumerable: true,
|
|
4659
|
+
configurable: true,
|
|
4660
|
+
writable: true,
|
|
4661
|
+
value: void 0
|
|
4662
|
+
});
|
|
4663
|
+
Object.defineProperty(this, "name", {
|
|
4664
|
+
enumerable: true,
|
|
4665
|
+
configurable: true,
|
|
4666
|
+
writable: true,
|
|
4667
|
+
value: "WagmiCoreError"
|
|
4668
|
+
});
|
|
4669
|
+
const details = options.cause instanceof _BaseError ? options.cause.details : options.cause?.message ? options.cause.message : options.details;
|
|
4670
|
+
const docsPath = options.cause instanceof _BaseError ? options.cause.docsPath || options.docsPath : options.docsPath;
|
|
4671
|
+
this.message = [
|
|
4672
|
+
shortMessage || "An error occurred.",
|
|
4673
|
+
"",
|
|
4674
|
+
...options.metaMessages ? [...options.metaMessages, ""] : [],
|
|
4675
|
+
...docsPath ? [
|
|
4676
|
+
`Docs: ${this.docsBaseUrl}${docsPath}.html${options.docsSlug ? `#${options.docsSlug}` : ""}`
|
|
4677
|
+
] : [],
|
|
4678
|
+
...details ? [`Details: ${details}`] : [],
|
|
4679
|
+
`Version: ${this.version}`
|
|
4680
|
+
].join("\n");
|
|
4681
|
+
if (options.cause)
|
|
4682
|
+
this.cause = options.cause;
|
|
4683
|
+
this.details = details;
|
|
4684
|
+
this.docsPath = docsPath;
|
|
4685
|
+
this.metaMessages = options.metaMessages;
|
|
4686
|
+
this.shortMessage = shortMessage;
|
|
4687
|
+
}
|
|
4688
|
+
walk(fn) {
|
|
4689
|
+
return __classPrivateFieldGet(this, _BaseError_instances, "m", _BaseError_walk).call(this, this, fn);
|
|
4690
|
+
}
|
|
4691
|
+
};
|
|
4692
|
+
_BaseError_instances = /* @__PURE__ */ new WeakSet(), _BaseError_walk = function _BaseError_walk2(err, fn) {
|
|
4693
|
+
if (fn?.(err))
|
|
4694
|
+
return err;
|
|
4695
|
+
if (err.cause)
|
|
4696
|
+
return __classPrivateFieldGet(this, _BaseError_instances, "m", _BaseError_walk2).call(this, err.cause, fn);
|
|
4697
|
+
return err;
|
|
4698
|
+
};
|
|
4699
|
+
|
|
4700
|
+
// node_modules/@wagmi/core/dist/esm/errors/config.js
|
|
4701
|
+
var ConnectorNotConnectedError = class extends BaseError {
|
|
4702
|
+
constructor() {
|
|
4703
|
+
super("Connector not connected.");
|
|
4704
|
+
Object.defineProperty(this, "name", {
|
|
4705
|
+
enumerable: true,
|
|
4706
|
+
configurable: true,
|
|
4707
|
+
writable: true,
|
|
4708
|
+
value: "ConnectorNotConnectedError"
|
|
4709
|
+
});
|
|
4710
|
+
}
|
|
4711
|
+
};
|
|
4712
|
+
var ConnectorAccountNotFoundError = class extends BaseError {
|
|
4713
|
+
constructor({ address, connector }) {
|
|
4714
|
+
super(`Account "${address}" not found for connector "${connector.name}".`);
|
|
4715
|
+
Object.defineProperty(this, "name", {
|
|
4716
|
+
enumerable: true,
|
|
4717
|
+
configurable: true,
|
|
4718
|
+
writable: true,
|
|
4719
|
+
value: "ConnectorAccountNotFoundError"
|
|
4720
|
+
});
|
|
4721
|
+
}
|
|
4722
|
+
};
|
|
4723
|
+
var ConnectorChainMismatchError = class extends BaseError {
|
|
4724
|
+
constructor({ connectionChainId, connectorChainId }) {
|
|
4725
|
+
super(`The current chain of the connector (id: ${connectorChainId}) does not match the connection's chain (id: ${connectionChainId}).`, {
|
|
4726
|
+
metaMessages: [
|
|
4727
|
+
`Current Chain ID: ${connectorChainId}`,
|
|
4728
|
+
`Expected Chain ID: ${connectionChainId}`
|
|
4729
|
+
]
|
|
4730
|
+
});
|
|
4731
|
+
Object.defineProperty(this, "name", {
|
|
4732
|
+
enumerable: true,
|
|
4733
|
+
configurable: true,
|
|
4734
|
+
writable: true,
|
|
4735
|
+
value: "ConnectorChainMismatchError"
|
|
4736
|
+
});
|
|
4737
|
+
}
|
|
4738
|
+
};
|
|
4739
|
+
var ConnectorUnavailableReconnectingError = class extends BaseError {
|
|
4740
|
+
constructor({ connector }) {
|
|
4741
|
+
super(`Connector "${connector.name}" unavailable while reconnecting.`, {
|
|
4742
|
+
details: [
|
|
4743
|
+
"During the reconnection step, the only connector methods guaranteed to be available are: `id`, `name`, `type`, `uid`.",
|
|
4744
|
+
"All other methods are not guaranteed to be available until reconnection completes and connectors are fully restored.",
|
|
4745
|
+
"This error commonly occurs for connectors that asynchronously inject after reconnection has already started."
|
|
4746
|
+
].join(" ")
|
|
4747
|
+
});
|
|
4748
|
+
Object.defineProperty(this, "name", {
|
|
4749
|
+
enumerable: true,
|
|
4750
|
+
configurable: true,
|
|
4751
|
+
writable: true,
|
|
4752
|
+
value: "ConnectorUnavailableReconnectingError"
|
|
4753
|
+
});
|
|
4754
|
+
}
|
|
4755
|
+
};
|
|
4756
|
+
|
|
4757
|
+
// node_modules/@wagmi/core/dist/esm/actions/getConnectorClient.js
|
|
4758
|
+
var import_viem6 = require("viem");
|
|
4759
|
+
var import_utils7 = require("viem/utils");
|
|
4760
|
+
async function getConnectorClient(config, parameters = {}) {
|
|
4761
|
+
let connection;
|
|
4762
|
+
if (parameters.connector) {
|
|
4763
|
+
const { connector: connector2 } = parameters;
|
|
4764
|
+
if (config.state.status === "reconnecting" && !connector2.getAccounts && !connector2.getChainId)
|
|
4765
|
+
throw new ConnectorUnavailableReconnectingError({ connector: connector2 });
|
|
4766
|
+
const [accounts, chainId2] = await Promise.all([
|
|
4767
|
+
connector2.getAccounts(),
|
|
4768
|
+
connector2.getChainId()
|
|
4769
|
+
]);
|
|
4770
|
+
connection = {
|
|
4771
|
+
accounts,
|
|
4772
|
+
chainId: chainId2,
|
|
4773
|
+
connector: connector2
|
|
4774
|
+
};
|
|
4775
|
+
} else
|
|
4776
|
+
connection = config.state.connections.get(config.state.current);
|
|
4777
|
+
if (!connection)
|
|
4778
|
+
throw new ConnectorNotConnectedError();
|
|
4779
|
+
const chainId = parameters.chainId ?? connection.chainId;
|
|
4780
|
+
const connectorChainId = await connection.connector.getChainId();
|
|
4781
|
+
if (connectorChainId !== connection.chainId)
|
|
4782
|
+
throw new ConnectorChainMismatchError({
|
|
4783
|
+
connectionChainId: connection.chainId,
|
|
4784
|
+
connectorChainId
|
|
4785
|
+
});
|
|
4786
|
+
const connector = connection.connector;
|
|
4787
|
+
if (connector.getClient)
|
|
4788
|
+
return connector.getClient({ chainId });
|
|
4789
|
+
const account = (0, import_utils7.parseAccount)(parameters.account ?? connection.accounts[0]);
|
|
4790
|
+
account.address = (0, import_utils7.getAddress)(account.address);
|
|
4791
|
+
if (parameters.account && !connection.accounts.some((x) => x.toLowerCase() === account.address.toLowerCase()))
|
|
4792
|
+
throw new ConnectorAccountNotFoundError({
|
|
4793
|
+
address: account.address,
|
|
4794
|
+
connector
|
|
4795
|
+
});
|
|
4796
|
+
const chain = config.chains.find((chain2) => chain2.id === chainId);
|
|
4797
|
+
const provider = await connection.connector.getProvider({ chainId });
|
|
4798
|
+
return (0, import_viem6.createClient)({
|
|
4799
|
+
account,
|
|
4800
|
+
chain,
|
|
4801
|
+
name: "Connector Client",
|
|
4802
|
+
transport: (opts) => (0, import_viem6.custom)(provider)({ ...opts, retryCount: 0 })
|
|
4803
|
+
});
|
|
4804
|
+
}
|
|
4805
|
+
|
|
4806
|
+
// node_modules/@wagmi/core/dist/esm/exports/index.js
|
|
4807
|
+
var import_viem7 = require("viem");
|
|
4808
|
+
|
|
4809
|
+
// src/hooks/useEthersSigner.ts
|
|
4810
|
+
function clientToSigner(client) {
|
|
4811
|
+
const { account, chain, transport } = client;
|
|
4812
|
+
const network = {
|
|
4813
|
+
chainId: chain.id,
|
|
4814
|
+
name: chain.name,
|
|
4815
|
+
ensAddress: chain.contracts?.ensRegistry?.address
|
|
4816
|
+
};
|
|
4817
|
+
const provider = new import_ethers.providers.Web3Provider(transport, network);
|
|
4818
|
+
const signer = provider.getSigner(account.address);
|
|
4819
|
+
return signer;
|
|
4820
|
+
}
|
|
4821
|
+
async function getEthersSigner(config, { chainId } = {}) {
|
|
4822
|
+
const client = await getConnectorClient(config, { chainId });
|
|
4823
|
+
return clientToSigner(client);
|
|
4824
|
+
}
|
|
4825
|
+
|
|
4826
|
+
// src/components/EVMModal/index.tsx
|
|
4827
|
+
var import_siwe = require("siwe");
|
|
4828
|
+
var import_styles = require("@rainbow-me/rainbowkit/styles.css");
|
|
4829
|
+
var import_jsx_runtime82 = require("react/jsx-runtime");
|
|
4830
|
+
function WalletContent({
|
|
4831
|
+
onSuccess,
|
|
4832
|
+
type
|
|
4833
|
+
}) {
|
|
4834
|
+
const config = (0, import_wagmi2.useConfig)();
|
|
4835
|
+
const { openConnectModal, connectModalOpen } = (0, import_rainbowkit.useConnectModal)();
|
|
4836
|
+
const { address, connector, isConnected } = (0, import_wagmi2.useAccount)();
|
|
4837
|
+
const { disconnectAsync } = (0, import_wagmi2.useDisconnect)({ config });
|
|
4838
|
+
const chainId = (0, import_wagmi2.useChainId)();
|
|
4839
|
+
const { events, login } = useMatch();
|
|
4840
|
+
const [inited, setInited] = (0, import_react23.useState)(false);
|
|
4841
|
+
const { status, setStatus, error, setError, statusRef, nonce, setNonce, init } = useWalletBox({
|
|
4842
|
+
onInit: async ({ setStatus: setStatus2 }) => {
|
|
4843
|
+
setStatus2("start");
|
|
4844
|
+
}
|
|
4845
|
+
});
|
|
4846
|
+
(0, import_react23.useEffect)(() => {
|
|
4847
|
+
matchlog_default.log(`status=${status}`, `connectModalOpen=${connectModalOpen}`, `address=${address}`, `isConnected=${isConnected}`);
|
|
4848
|
+
}, [status, connectModalOpen, isConnected, address]);
|
|
4849
|
+
(0, import_react23.useEffect)(() => {
|
|
4850
|
+
if (connectModalOpen) {
|
|
4851
|
+
setStatus("connecting");
|
|
4852
|
+
return;
|
|
4853
|
+
}
|
|
4854
|
+
if (!connectModalOpen && address) {
|
|
4855
|
+
toLoginInWallet(address);
|
|
4856
|
+
return;
|
|
4857
|
+
}
|
|
4858
|
+
if (!connectModalOpen && !address) {
|
|
4859
|
+
setStatus("start");
|
|
4860
|
+
}
|
|
4861
|
+
}, [connectModalOpen, address]);
|
|
4862
|
+
(0, import_react23.useEffect)(() => {
|
|
4863
|
+
if (openConnectModal && !isConnected && !inited) {
|
|
4864
|
+
openConnectModal && openConnectModal();
|
|
4865
|
+
setInited(true);
|
|
4866
|
+
}
|
|
4867
|
+
}, [openConnectModal, inited]);
|
|
4868
|
+
const toLoginInWallet = async (address2) => {
|
|
4869
|
+
if (statusRef.current != "start" && statusRef.current != "connecting") return;
|
|
4870
|
+
try {
|
|
4871
|
+
if (!address2) {
|
|
4872
|
+
throw new Error("Wallet address is empty");
|
|
4873
|
+
}
|
|
4874
|
+
setStatus("nonce");
|
|
4875
|
+
const res = type == "bind" ? await getWalletInitApi({
|
|
4876
|
+
address: address2,
|
|
4877
|
+
type: "EVM"
|
|
4878
|
+
}) : await getWalletNonceApi({ address: address2, type: "EVM" });
|
|
4879
|
+
if (!isSuccess(res)) {
|
|
4880
|
+
throw new Error(res.message);
|
|
4881
|
+
}
|
|
4882
|
+
setNonce(res.data.nonce);
|
|
4883
|
+
} catch (error2) {
|
|
4884
|
+
console.error("toLoginInWallet", error2);
|
|
4885
|
+
setStatus("error");
|
|
4886
|
+
setError(error2.message);
|
|
4887
|
+
}
|
|
4888
|
+
};
|
|
4889
|
+
const signature = (0, import_react23.useCallback)(async () => {
|
|
4890
|
+
if (!nonce || status != "nonce") {
|
|
4891
|
+
return;
|
|
4892
|
+
}
|
|
4893
|
+
try {
|
|
4894
|
+
const signer = await getEthersSigner(config);
|
|
4895
|
+
if (!signer) return;
|
|
4896
|
+
matchlog_default.log("signature", nonce, status);
|
|
4897
|
+
if (!address) {
|
|
4898
|
+
throw new Error("Wallet address is empty");
|
|
4899
|
+
}
|
|
4900
|
+
setStatus("signer");
|
|
4901
|
+
const params = {
|
|
4902
|
+
domain: window.location.host,
|
|
4903
|
+
address,
|
|
4904
|
+
statement: "By signing, you are proving you own this wallet and logging in. This does not initiate a transaction or cost any fees.",
|
|
4905
|
+
uri: window.location.origin,
|
|
4906
|
+
nonce,
|
|
4907
|
+
version: "1",
|
|
4908
|
+
chainId
|
|
4909
|
+
};
|
|
4910
|
+
const message = new import_siwe.SiweMessage({ ...params });
|
|
4911
|
+
const signature2 = await signer.signMessage(message.prepareMessage());
|
|
4912
|
+
const obj = {
|
|
4913
|
+
type: "EVM",
|
|
4914
|
+
address,
|
|
4915
|
+
signature: signature2,
|
|
4916
|
+
message: `${message.prepareMessage()}`,
|
|
4917
|
+
connector_type: connector?.type || "",
|
|
4918
|
+
wallet_client_type: connector?.name || ""
|
|
4919
|
+
};
|
|
4920
|
+
const res = type == "bind" ? await toBindWalletApi(obj) : await loginByWalletApi(obj);
|
|
4921
|
+
if (!isSuccess(res)) {
|
|
4922
|
+
throw new Error(res.message);
|
|
4923
|
+
}
|
|
4924
|
+
matchlog_default.log(res);
|
|
4925
|
+
setStatus("success");
|
|
4926
|
+
if (type == "bind") {
|
|
4927
|
+
events.onBind && events.onBind({
|
|
4928
|
+
type: "evm"
|
|
4929
|
+
});
|
|
4930
|
+
eventManager_default.emit("onBind", {
|
|
4931
|
+
type: "evm"
|
|
4932
|
+
});
|
|
4933
|
+
} else {
|
|
4934
|
+
await login({
|
|
4935
|
+
token: `${res.data.token_type} ${res.data.access_token}`
|
|
4936
|
+
});
|
|
4937
|
+
}
|
|
4938
|
+
onSuccess && onSuccess();
|
|
4939
|
+
} catch (error2) {
|
|
4940
|
+
console.error("signature", error2);
|
|
4941
|
+
setStatus("error");
|
|
4942
|
+
setError(error2.reason || error2.message);
|
|
4943
|
+
}
|
|
4944
|
+
}, [nonce, status, address]);
|
|
4945
|
+
(0, import_react23.useEffect)(() => {
|
|
4946
|
+
if (signature) {
|
|
4947
|
+
signature();
|
|
4948
|
+
}
|
|
4949
|
+
}, [signature]);
|
|
4950
|
+
const onError = async () => {
|
|
4951
|
+
if (isConnected) {
|
|
4952
|
+
try {
|
|
4953
|
+
await disconnectAsync();
|
|
4954
|
+
} catch (error2) {
|
|
4955
|
+
console.error("disconnectAsync", error2);
|
|
4956
|
+
}
|
|
4957
|
+
}
|
|
4958
|
+
setError("");
|
|
4959
|
+
setNonce(void 0);
|
|
4960
|
+
setStatus("start");
|
|
4961
|
+
openConnectModal?.();
|
|
4962
|
+
};
|
|
4963
|
+
const onConnect = async () => {
|
|
4964
|
+
if (isConnected) {
|
|
4965
|
+
try {
|
|
4966
|
+
await disconnectAsync();
|
|
4967
|
+
} catch (error2) {
|
|
4968
|
+
console.error("disconnectAsync", error2);
|
|
4969
|
+
}
|
|
4970
|
+
}
|
|
4971
|
+
setError("");
|
|
4972
|
+
setNonce(void 0);
|
|
4973
|
+
openConnectModal?.();
|
|
4974
|
+
};
|
|
4975
|
+
const onDisconnect = async () => {
|
|
4976
|
+
if (isConnected) {
|
|
4977
|
+
try {
|
|
4978
|
+
await disconnectAsync();
|
|
4979
|
+
} catch (error2) {
|
|
4980
|
+
console.error("disconnectAsync", error2);
|
|
4981
|
+
}
|
|
4982
|
+
}
|
|
4983
|
+
setError("");
|
|
4984
|
+
setNonce(void 0);
|
|
4985
|
+
setStatus("start");
|
|
4986
|
+
};
|
|
4987
|
+
return /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(
|
|
4988
|
+
WalletModalContentV2,
|
|
4989
|
+
{
|
|
4990
|
+
status,
|
|
4991
|
+
onSuccess: async () => onSuccess?.(),
|
|
4992
|
+
error,
|
|
4993
|
+
onError,
|
|
4994
|
+
onConnect,
|
|
4995
|
+
onDisconnect
|
|
4996
|
+
}
|
|
4997
|
+
);
|
|
4998
|
+
}
|
|
4999
|
+
function EVMConnectModal({
|
|
5000
|
+
type = "login",
|
|
5001
|
+
onSuccess,
|
|
5002
|
+
...props
|
|
5003
|
+
}) {
|
|
5004
|
+
const intl = (0, import_react_intl10.useIntl)();
|
|
5005
|
+
return /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(ModalWithHeader, { ...props, title: props.title || intl.formatMessage({
|
|
5006
|
+
id: type == "bind" ? "bindWith" : "loginWith"
|
|
5007
|
+
}, {
|
|
5008
|
+
name: "EVM"
|
|
5009
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(WalletContent, { onSuccess, type }) });
|
|
5010
|
+
}
|
|
5011
|
+
function EVMModal(props) {
|
|
5012
|
+
return props.isOpen && /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(EVMConnectModal, { ...props });
|
|
5013
|
+
}
|
|
5014
|
+
|
|
5015
|
+
// src/components/TRONModal/index.tsx
|
|
5016
|
+
var import_react25 = __toESM(require("react"));
|
|
5017
|
+
var import_react_intl11 = require("react-intl");
|
|
4510
5018
|
|
|
4511
5019
|
// src/lib/tron/TronLinkAdapter.ts
|
|
4512
5020
|
var TronLinkAdapter = class {
|
|
@@ -4539,7 +5047,7 @@ var TronLinkAdapter = class {
|
|
|
4539
5047
|
};
|
|
4540
5048
|
|
|
4541
5049
|
// src/hooks/useTRONWallet.ts
|
|
4542
|
-
var
|
|
5050
|
+
var import_react24 = require("react");
|
|
4543
5051
|
|
|
4544
5052
|
// src/lib/tron/BitgetAdapter.ts
|
|
4545
5053
|
var BitgetAdapter = class {
|
|
@@ -4584,9 +5092,9 @@ var OKXAdapter = class {
|
|
|
4584
5092
|
// src/hooks/useTRONWallet.ts
|
|
4585
5093
|
var useTRONWallet = () => {
|
|
4586
5094
|
const wallets = [new TronLinkAdapter(), new BitgetAdapter(), new OKXAdapter()];
|
|
4587
|
-
const [installedWallets, setInstalledWallets] = (0,
|
|
4588
|
-
const [address, setAddress] = (0,
|
|
4589
|
-
(0,
|
|
5095
|
+
const [installedWallets, setInstalledWallets] = (0, import_react24.useState)([]);
|
|
5096
|
+
const [address, setAddress] = (0, import_react24.useState)(null);
|
|
5097
|
+
(0, import_react24.useEffect)(() => {
|
|
4590
5098
|
const getInstalled = async () => {
|
|
4591
5099
|
const installed = await Promise.all(wallets.map((wallet2) => wallet2.isInstalled().then((isInstalled) => ({
|
|
4592
5100
|
wallet: wallet2,
|
|
@@ -4596,11 +5104,11 @@ var useTRONWallet = () => {
|
|
|
4596
5104
|
};
|
|
4597
5105
|
getInstalled();
|
|
4598
5106
|
}, []);
|
|
4599
|
-
const [wallet, chooseWallet] = (0,
|
|
5107
|
+
const [wallet, chooseWallet] = (0, import_react24.useState)(null);
|
|
4600
5108
|
const onConnect = async () => {
|
|
4601
5109
|
setAddress(await wallet.connect());
|
|
4602
5110
|
};
|
|
4603
|
-
(0,
|
|
5111
|
+
(0, import_react24.useEffect)(() => {
|
|
4604
5112
|
if (!wallet) {
|
|
4605
5113
|
setAddress(null);
|
|
4606
5114
|
}
|
|
@@ -4631,10 +5139,10 @@ function TRONConnectModal({
|
|
|
4631
5139
|
okx: /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(OKXIcon, { size: isDownMd ? 36 : 40 })
|
|
4632
5140
|
};
|
|
4633
5141
|
const { events, login } = useMatch();
|
|
4634
|
-
const [status, setStatus] = (0,
|
|
4635
|
-
const statusRef =
|
|
4636
|
-
const [error, setError] = (0,
|
|
4637
|
-
const connected = (0,
|
|
5142
|
+
const [status, setStatus] = (0, import_react25.useState)("");
|
|
5143
|
+
const statusRef = import_react25.default.useRef(status);
|
|
5144
|
+
const [error, setError] = (0, import_react25.useState)("");
|
|
5145
|
+
const connected = (0, import_react25.useMemo)(() => {
|
|
4638
5146
|
return !!address;
|
|
4639
5147
|
}, [address]);
|
|
4640
5148
|
const disconnect = async () => {
|
|
@@ -4702,7 +5210,7 @@ function TRONConnectModal({
|
|
|
4702
5210
|
statusRef.current = "";
|
|
4703
5211
|
}
|
|
4704
5212
|
};
|
|
4705
|
-
(0,
|
|
5213
|
+
(0, import_react25.useEffect)(() => {
|
|
4706
5214
|
if (wallet) {
|
|
4707
5215
|
console.log("onConnect");
|
|
4708
5216
|
onConnect();
|
|
@@ -4710,12 +5218,12 @@ function TRONConnectModal({
|
|
|
4710
5218
|
setStatus("");
|
|
4711
5219
|
}
|
|
4712
5220
|
}, [wallet]);
|
|
4713
|
-
(0,
|
|
5221
|
+
(0, import_react25.useEffect)(() => {
|
|
4714
5222
|
if (address) {
|
|
4715
5223
|
toLoginInWallet();
|
|
4716
5224
|
}
|
|
4717
5225
|
}, [address]);
|
|
4718
|
-
(0,
|
|
5226
|
+
(0, import_react25.useEffect)(() => {
|
|
4719
5227
|
if (!props.isOpen) {
|
|
4720
5228
|
disconnect();
|
|
4721
5229
|
}
|
|
@@ -4773,7 +5281,7 @@ function TRONModal(props) {
|
|
|
4773
5281
|
}
|
|
4774
5282
|
|
|
4775
5283
|
// src/components/TONModal/index.tsx
|
|
4776
|
-
var
|
|
5284
|
+
var import_react26 = __toESM(require("react"));
|
|
4777
5285
|
var import_react_intl12 = require("react-intl");
|
|
4778
5286
|
var import_ui_react = require("@tonconnect/ui-react");
|
|
4779
5287
|
var import_jsx_runtime84 = require("react/jsx-runtime");
|
|
@@ -4782,15 +5290,15 @@ function WalletContent2({
|
|
|
4782
5290
|
type
|
|
4783
5291
|
}) {
|
|
4784
5292
|
const { events, login } = useMatch();
|
|
4785
|
-
const [connected, setConnected] = (0,
|
|
5293
|
+
const [connected, setConnected] = (0, import_react26.useState)(false);
|
|
4786
5294
|
const wallet = (0, import_ui_react.useTonWallet)();
|
|
4787
5295
|
const userFriendlyAddress = (0, import_ui_react.useTonAddress)();
|
|
4788
5296
|
const [tonConnectUI] = (0, import_ui_react.useTonConnectUI)();
|
|
4789
5297
|
const { state, open, close } = (0, import_ui_react.useTonConnectModal)();
|
|
4790
|
-
const [status, setStatus] = (0,
|
|
4791
|
-
const statusRef =
|
|
4792
|
-
const [error, setError] = (0,
|
|
4793
|
-
(0,
|
|
5298
|
+
const [status, setStatus] = (0, import_react26.useState)("");
|
|
5299
|
+
const statusRef = import_react26.default.useRef(status);
|
|
5300
|
+
const [error, setError] = (0, import_react26.useState)("");
|
|
5301
|
+
(0, import_react26.useEffect)(() => {
|
|
4794
5302
|
const init = async () => {
|
|
4795
5303
|
if (tonConnectUI.connected) {
|
|
4796
5304
|
await tonConnectUI.disconnect();
|
|
@@ -4863,7 +5371,7 @@ function WalletContent2({
|
|
|
4863
5371
|
}
|
|
4864
5372
|
});
|
|
4865
5373
|
}, []);
|
|
4866
|
-
(0,
|
|
5374
|
+
(0, import_react26.useEffect)(() => {
|
|
4867
5375
|
if (wallet) {
|
|
4868
5376
|
setConnected(true);
|
|
4869
5377
|
console.log("Wallet connected:", wallet);
|
|
@@ -4874,7 +5382,7 @@ function WalletContent2({
|
|
|
4874
5382
|
setStatus("");
|
|
4875
5383
|
}
|
|
4876
5384
|
}, [wallet]);
|
|
4877
|
-
(0,
|
|
5385
|
+
(0, import_react26.useEffect)(() => {
|
|
4878
5386
|
console.log({
|
|
4879
5387
|
state,
|
|
4880
5388
|
wallet
|
|
@@ -4954,7 +5462,7 @@ function TONModal(props) {
|
|
|
4954
5462
|
}
|
|
4955
5463
|
|
|
4956
5464
|
// src/components/BTCModal/index.tsx
|
|
4957
|
-
var
|
|
5465
|
+
var import_react28 = __toESM(require("react"));
|
|
4958
5466
|
var import_react_intl13 = require("react-intl");
|
|
4959
5467
|
|
|
4960
5468
|
// src/lib/btc/UnisatAdapter.ts
|
|
@@ -5103,7 +5611,7 @@ var LeatherAdapter = class {
|
|
|
5103
5611
|
};
|
|
5104
5612
|
|
|
5105
5613
|
// src/hooks/useBTCWallet.ts
|
|
5106
|
-
var
|
|
5614
|
+
var import_react27 = require("react");
|
|
5107
5615
|
|
|
5108
5616
|
// src/lib/btc/PhantomAdapter.ts
|
|
5109
5617
|
var PhantomAdapter = class {
|
|
@@ -5141,9 +5649,9 @@ var PhantomAdapter = class {
|
|
|
5141
5649
|
// src/hooks/useBTCWallet.ts
|
|
5142
5650
|
var useBTCWallet = () => {
|
|
5143
5651
|
const wallets = [new UnisatAdapter(), new XverseAdapter(), new LeatherAdapter(), new PhantomAdapter()];
|
|
5144
|
-
const [installedWallets, setInstalledWallets] = (0,
|
|
5145
|
-
const [address, setAddress] = (0,
|
|
5146
|
-
(0,
|
|
5652
|
+
const [installedWallets, setInstalledWallets] = (0, import_react27.useState)([]);
|
|
5653
|
+
const [address, setAddress] = (0, import_react27.useState)(null);
|
|
5654
|
+
(0, import_react27.useEffect)(() => {
|
|
5147
5655
|
const getInstalled = async () => {
|
|
5148
5656
|
const installed = await Promise.all(wallets.map((wallet2) => wallet2.isInstalled().then((isInstalled) => ({
|
|
5149
5657
|
wallet: wallet2,
|
|
@@ -5153,11 +5661,11 @@ var useBTCWallet = () => {
|
|
|
5153
5661
|
};
|
|
5154
5662
|
getInstalled();
|
|
5155
5663
|
}, []);
|
|
5156
|
-
const [wallet, chooseWallet] = (0,
|
|
5664
|
+
const [wallet, chooseWallet] = (0, import_react27.useState)(null);
|
|
5157
5665
|
const onConnect = async () => {
|
|
5158
5666
|
setAddress(await wallet.connect());
|
|
5159
5667
|
};
|
|
5160
|
-
(0,
|
|
5668
|
+
(0, import_react27.useEffect)(() => {
|
|
5161
5669
|
if (!wallet) {
|
|
5162
5670
|
setAddress(null);
|
|
5163
5671
|
}
|
|
@@ -5189,10 +5697,10 @@ function BTCConnectModal({
|
|
|
5189
5697
|
phantom: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(PhantomIcon, { size: isDownMd ? 36 : 40 })
|
|
5190
5698
|
};
|
|
5191
5699
|
const { events, login } = useMatch();
|
|
5192
|
-
const [status, setStatus] = (0,
|
|
5193
|
-
const statusRef =
|
|
5194
|
-
const [error, setError] = (0,
|
|
5195
|
-
const connected = (0,
|
|
5700
|
+
const [status, setStatus] = (0, import_react28.useState)("");
|
|
5701
|
+
const statusRef = import_react28.default.useRef(status);
|
|
5702
|
+
const [error, setError] = (0, import_react28.useState)("");
|
|
5703
|
+
const connected = (0, import_react28.useMemo)(() => {
|
|
5196
5704
|
return !!address;
|
|
5197
5705
|
}, [address]);
|
|
5198
5706
|
const disconnect = async () => {
|
|
@@ -5256,7 +5764,7 @@ function BTCConnectModal({
|
|
|
5256
5764
|
statusRef.current = "";
|
|
5257
5765
|
}
|
|
5258
5766
|
};
|
|
5259
|
-
(0,
|
|
5767
|
+
(0, import_react28.useEffect)(() => {
|
|
5260
5768
|
if (wallet) {
|
|
5261
5769
|
console.log("onConnect");
|
|
5262
5770
|
try {
|
|
@@ -5269,12 +5777,12 @@ function BTCConnectModal({
|
|
|
5269
5777
|
setStatus("");
|
|
5270
5778
|
}
|
|
5271
5779
|
}, [wallet]);
|
|
5272
|
-
(0,
|
|
5780
|
+
(0, import_react28.useEffect)(() => {
|
|
5273
5781
|
if (address) {
|
|
5274
5782
|
toLoginInWallet();
|
|
5275
5783
|
}
|
|
5276
5784
|
}, [address]);
|
|
5277
|
-
(0,
|
|
5785
|
+
(0, import_react28.useEffect)(() => {
|
|
5278
5786
|
if (!props.isOpen) {
|
|
5279
5787
|
disconnect();
|
|
5280
5788
|
}
|
|
@@ -5339,7 +5847,7 @@ function BTCModal(props) {
|
|
|
5339
5847
|
}
|
|
5340
5848
|
|
|
5341
5849
|
// src/components/WalletModal/index.tsx
|
|
5342
|
-
var
|
|
5850
|
+
var import_react29 = require("react");
|
|
5343
5851
|
var import_react_intl14 = require("react-intl");
|
|
5344
5852
|
var import_jsx_runtime86 = require("react/jsx-runtime");
|
|
5345
5853
|
function WalletConnectModal({
|
|
@@ -5351,7 +5859,7 @@ function WalletConnectModal({
|
|
|
5351
5859
|
const { walletMap } = useWalletConfig();
|
|
5352
5860
|
const { bind, login } = useUserInfo();
|
|
5353
5861
|
const config = useAppConfig();
|
|
5354
|
-
const methods = (0,
|
|
5862
|
+
const methods = (0, import_react29.useMemo)(() => {
|
|
5355
5863
|
if (_methods) return _methods;
|
|
5356
5864
|
if (!config.platform) {
|
|
5357
5865
|
return [];
|
|
@@ -5383,11 +5891,11 @@ function WalletModal(props) {
|
|
|
5383
5891
|
}
|
|
5384
5892
|
|
|
5385
5893
|
// src/components/AlphaAvatar/index.tsx
|
|
5386
|
-
var
|
|
5894
|
+
var import_react30 = require("react");
|
|
5387
5895
|
var import_jsx_runtime87 = require("react/jsx-runtime");
|
|
5388
5896
|
function AlphaAvatar2({ name, size = 40, className = "" }) {
|
|
5389
|
-
const [avatar, setAvatar] = (0,
|
|
5390
|
-
(0,
|
|
5897
|
+
const [avatar, setAvatar] = (0, import_react30.useState)(void 0);
|
|
5898
|
+
(0, import_react30.useEffect)(() => {
|
|
5391
5899
|
if (name) {
|
|
5392
5900
|
const char = name[0].toUpperCase();
|
|
5393
5901
|
setAvatar(char);
|
|
@@ -5484,8 +5992,8 @@ function WalletAsset({
|
|
|
5484
5992
|
}
|
|
5485
5993
|
|
|
5486
5994
|
// src/components/TokenSend/index.tsx
|
|
5487
|
-
var
|
|
5488
|
-
var
|
|
5995
|
+
var import_react31 = require("react");
|
|
5996
|
+
var import_viem8 = require("viem");
|
|
5489
5997
|
var import_react_intl15 = require("react-intl");
|
|
5490
5998
|
var import_jsx_runtime89 = require("react/jsx-runtime");
|
|
5491
5999
|
function Input2({
|
|
@@ -5522,33 +6030,33 @@ function TokenSend({
|
|
|
5522
6030
|
const intl = (0, import_react_intl15.useIntl)();
|
|
5523
6031
|
const { createWalletClient: createWalletClient2 } = useWallet();
|
|
5524
6032
|
const isNative = token.address.toLowerCase() == NATIVE_TOKEN_ADDRESS;
|
|
5525
|
-
const chain = (0,
|
|
6033
|
+
const chain = (0, import_react31.useMemo)(() => {
|
|
5526
6034
|
return chainList?.find((m) => m.id.toString() === token.chain_id);
|
|
5527
6035
|
}, [chainList, token.chain_id]);
|
|
5528
|
-
const walletClient = (0,
|
|
6036
|
+
const walletClient = (0, import_react31.useMemo)(() => {
|
|
5529
6037
|
return createWalletClient2({
|
|
5530
6038
|
// @ts-ignore
|
|
5531
|
-
chain: (0,
|
|
5532
|
-
transport: (0,
|
|
6039
|
+
chain: (0, import_viem8.defineChain)(chain),
|
|
6040
|
+
transport: (0, import_viem8.http)()
|
|
5533
6041
|
});
|
|
5534
6042
|
}, [chain]);
|
|
5535
|
-
const [amount, setAmount] = (0,
|
|
5536
|
-
const [address, setAddress] = (0,
|
|
5537
|
-
const [loading, setLoading] = (0,
|
|
5538
|
-
const [sending, setSending] = (0,
|
|
5539
|
-
const [txError, setTxError] = (0,
|
|
5540
|
-
const transaction = (0,
|
|
6043
|
+
const [amount, setAmount] = (0, import_react31.useState)("");
|
|
6044
|
+
const [address, setAddress] = (0, import_react31.useState)("");
|
|
6045
|
+
const [loading, setLoading] = (0, import_react31.useState)(false);
|
|
6046
|
+
const [sending, setSending] = (0, import_react31.useState)(false);
|
|
6047
|
+
const [txError, setTxError] = (0, import_react31.useState)("");
|
|
6048
|
+
const transaction = (0, import_react31.useMemo)(() => {
|
|
5541
6049
|
const reg = /^0x[a-fA-F0-9]{40}$/;
|
|
5542
6050
|
if (!amount || !address || !reg.test(address)) {
|
|
5543
6051
|
return;
|
|
5544
6052
|
}
|
|
5545
|
-
const viemChain = (0,
|
|
6053
|
+
const viemChain = (0, import_viem8.defineChain)(chain);
|
|
5546
6054
|
const to = isNative ? address : token.address;
|
|
5547
|
-
const value = isNative ? (0,
|
|
5548
|
-
const data = isNative ? "0x" : (0,
|
|
5549
|
-
abi:
|
|
6055
|
+
const value = isNative ? (0, import_viem8.parseUnits)(amount, parseInt(token?.decimals || "18")) : BigInt(0);
|
|
6056
|
+
const data = isNative ? "0x" : (0, import_viem8.encodeFunctionData)({
|
|
6057
|
+
abi: import_viem8.erc20Abi,
|
|
5550
6058
|
functionName: "transfer",
|
|
5551
|
-
args: [address, (0,
|
|
6059
|
+
args: [address, (0, import_viem8.parseUnits)(amount, parseInt(token?.decimals || "18"))]
|
|
5552
6060
|
});
|
|
5553
6061
|
return {
|
|
5554
6062
|
to,
|
|
@@ -5568,7 +6076,7 @@ function TokenSend({
|
|
|
5568
6076
|
setLoading(false);
|
|
5569
6077
|
}
|
|
5570
6078
|
};
|
|
5571
|
-
const error = (0,
|
|
6079
|
+
const error = (0, import_react31.useMemo)(() => {
|
|
5572
6080
|
setTxError("");
|
|
5573
6081
|
let amountError = "";
|
|
5574
6082
|
let addressError = "";
|
|
@@ -5611,7 +6119,7 @@ function TokenSend({
|
|
|
5611
6119
|
setAmount(value);
|
|
5612
6120
|
}
|
|
5613
6121
|
};
|
|
5614
|
-
const canSend = (0,
|
|
6122
|
+
const canSend = (0, import_react31.useMemo)(() => {
|
|
5615
6123
|
return !error.amount && !error.address && amount && address;
|
|
5616
6124
|
}, [error]);
|
|
5617
6125
|
const onNext = async () => {
|
|
@@ -5621,7 +6129,7 @@ function TokenSend({
|
|
|
5621
6129
|
}
|
|
5622
6130
|
onClose();
|
|
5623
6131
|
};
|
|
5624
|
-
(0,
|
|
6132
|
+
(0, import_react31.useEffect)(() => {
|
|
5625
6133
|
const receiveMessage = (event) => {
|
|
5626
6134
|
if (event.data) {
|
|
5627
6135
|
if (event.data.source == "match-wallet") {
|
|
@@ -5753,7 +6261,7 @@ function TokenDetail({
|
|
|
5753
6261
|
}
|
|
5754
6262
|
|
|
5755
6263
|
// src/components/TokenSendList/index.tsx
|
|
5756
|
-
var
|
|
6264
|
+
var import_react32 = require("react");
|
|
5757
6265
|
var import_react_intl17 = require("react-intl");
|
|
5758
6266
|
var import_jsx_runtime91 = require("react/jsx-runtime");
|
|
5759
6267
|
function TokenSendList({ close }) {
|
|
@@ -5763,7 +6271,7 @@ function TokenSendList({ close }) {
|
|
|
5763
6271
|
list: walletAssets.mergedAssets
|
|
5764
6272
|
});
|
|
5765
6273
|
const { list } = useMatchChain();
|
|
5766
|
-
const [checked, setChecked] = (0,
|
|
6274
|
+
const [checked, setChecked] = (0, import_react32.useState)();
|
|
5767
6275
|
const modal = useModal();
|
|
5768
6276
|
const onNext = () => {
|
|
5769
6277
|
checked && modal.show((props) => {
|
|
@@ -5820,9 +6328,9 @@ function TokenSendList({ close }) {
|
|
|
5820
6328
|
|
|
5821
6329
|
// src/components/TransactionList/index.tsx
|
|
5822
6330
|
var import_react_infinite_scroll_component = __toESM(require("react-infinite-scroll-component"));
|
|
5823
|
-
var
|
|
5824
|
-
var
|
|
5825
|
-
var
|
|
6331
|
+
var import_react33 = require("react");
|
|
6332
|
+
var import_viem9 = require("viem");
|
|
6333
|
+
var import_viem10 = require("viem");
|
|
5826
6334
|
|
|
5827
6335
|
// src/store/useContractStore.ts
|
|
5828
6336
|
var import_zustand5 = require("zustand");
|
|
@@ -5888,8 +6396,8 @@ var Item = ({ data }) => {
|
|
|
5888
6396
|
const isOut = data.from.toLowerCase() == address.toLowerCase();
|
|
5889
6397
|
const { chain, chainId, explorerLink, formatUnits: chainFormatUnits } = useMatchChain();
|
|
5890
6398
|
const { contracts } = useContractStore_default();
|
|
5891
|
-
const [shouldRefetch, setShouldRefetch] = (0,
|
|
5892
|
-
const transferType = (0,
|
|
6399
|
+
const [shouldRefetch, setShouldRefetch] = (0, import_react33.useState)(true);
|
|
6400
|
+
const transferType = (0, import_react33.useMemo)(() => {
|
|
5893
6401
|
const methodId = data.input.substring(2, 10);
|
|
5894
6402
|
if (methodId == "095ea7b3") {
|
|
5895
6403
|
return "erc20_approve";
|
|
@@ -5899,38 +6407,38 @@ var Item = ({ data }) => {
|
|
|
5899
6407
|
}
|
|
5900
6408
|
return "unknown";
|
|
5901
6409
|
}, [data.input]);
|
|
5902
|
-
const to = (0,
|
|
6410
|
+
const to = (0, import_react33.useMemo)(() => {
|
|
5903
6411
|
if (!isOut) {
|
|
5904
6412
|
return data.from;
|
|
5905
6413
|
}
|
|
5906
6414
|
if (transferType == "erc20_transfer") {
|
|
5907
|
-
const decodeData = (0,
|
|
5908
|
-
abi:
|
|
6415
|
+
const decodeData = (0, import_viem9.decodeFunctionData)({
|
|
6416
|
+
abi: import_viem10.erc20Abi,
|
|
5909
6417
|
data: data.input
|
|
5910
6418
|
});
|
|
5911
6419
|
return decodeData.args[0];
|
|
5912
6420
|
}
|
|
5913
6421
|
return data.to;
|
|
5914
6422
|
}, [data.input, transferType, data.to, isOut]);
|
|
5915
|
-
const amount = (0,
|
|
6423
|
+
const amount = (0, import_react33.useMemo)(() => {
|
|
5916
6424
|
if (transferType == "erc20_transfer") {
|
|
5917
|
-
const decodeData = (0,
|
|
5918
|
-
abi:
|
|
6425
|
+
const decodeData = (0, import_viem9.decodeFunctionData)({
|
|
6426
|
+
abi: import_viem10.erc20Abi,
|
|
5919
6427
|
data: data.input
|
|
5920
6428
|
});
|
|
5921
6429
|
const value = decodeData.args[1];
|
|
5922
|
-
return (0,
|
|
6430
|
+
return (0, import_viem9.formatUnits)(value, contracts[`${chainId}-${data.to.toLowerCase()}`]?.decimals || 18);
|
|
5923
6431
|
}
|
|
5924
6432
|
return chainFormatUnits(BigInt(data.value));
|
|
5925
6433
|
}, [data.input, transferType, data.value, contracts, chainId, data.to]);
|
|
5926
6434
|
const hashQuery = useHash({
|
|
5927
6435
|
hash: data.hash,
|
|
5928
6436
|
//@ts-ignore
|
|
5929
|
-
chain: (0,
|
|
6437
|
+
chain: (0, import_viem9.defineChain)(chain),
|
|
5930
6438
|
refetchInterval: shouldRefetch ? 3e3 : false,
|
|
5931
6439
|
enabled: shouldRefetch && data.source == "local"
|
|
5932
6440
|
});
|
|
5933
|
-
const status = (0,
|
|
6441
|
+
const status = (0, import_react33.useMemo)(() => {
|
|
5934
6442
|
if (data.source == "matchain") {
|
|
5935
6443
|
switch (data.extra.status) {
|
|
5936
6444
|
case "ok":
|
|
@@ -5957,12 +6465,12 @@ var Item = ({ data }) => {
|
|
|
5957
6465
|
}
|
|
5958
6466
|
return "loading";
|
|
5959
6467
|
}, [data.extra?.status, data.source, hashQuery.data]);
|
|
5960
|
-
(0,
|
|
6468
|
+
(0, import_react33.useEffect)(() => {
|
|
5961
6469
|
if (data.hash) {
|
|
5962
6470
|
setShouldRefetch(status == "loading");
|
|
5963
6471
|
}
|
|
5964
6472
|
}, [status, data.hash]);
|
|
5965
|
-
const symbol = (0,
|
|
6473
|
+
const symbol = (0, import_react33.useMemo)(() => {
|
|
5966
6474
|
if (transferType == "erc20_transfer") {
|
|
5967
6475
|
const contract = contracts[`${chainId}-${data.to.toLowerCase()}`];
|
|
5968
6476
|
return contract?.symbol || contract?.name || "unknown";
|
|
@@ -6105,10 +6613,10 @@ __export(contact_exports, {
|
|
|
6105
6613
|
});
|
|
6106
6614
|
var import_react_query6 = require("@tanstack/react-query");
|
|
6107
6615
|
var import_last = __toESM(require("lodash/last"));
|
|
6108
|
-
var
|
|
6616
|
+
var import_react34 = require("react");
|
|
6109
6617
|
function useContactList(page_size = 10, type = "Friend") {
|
|
6110
6618
|
const { token } = useLocalStore_default();
|
|
6111
|
-
const limitIdRef = (0,
|
|
6619
|
+
const limitIdRef = (0, import_react34.useRef)(0);
|
|
6112
6620
|
const queryClient2 = (0, import_react_query6.useQueryClient)();
|
|
6113
6621
|
const contactQuery = (0, import_react_query6.useInfiniteQuery)({
|
|
6114
6622
|
queryKey: ["matchid-contacts-list", type, token],
|
|
@@ -6130,7 +6638,7 @@ function useContactList(page_size = 10, type = "Friend") {
|
|
|
6130
6638
|
return allPages.length >= lastPageNum ? void 0 : allPages.length + 1;
|
|
6131
6639
|
}
|
|
6132
6640
|
});
|
|
6133
|
-
(0,
|
|
6641
|
+
(0, import_react34.useEffect)(() => {
|
|
6134
6642
|
if (!contactQuery.data?.pages || contactQuery.data?.pages.length == 0) {
|
|
6135
6643
|
limitIdRef.current = 0;
|
|
6136
6644
|
} else {
|
|
@@ -6144,10 +6652,10 @@ function useContactList(page_size = 10, type = "Friend") {
|
|
|
6144
6652
|
limitIdRef.current = lastItem?.limit_id || 0;
|
|
6145
6653
|
}
|
|
6146
6654
|
}, [contactQuery.data?.pages]);
|
|
6147
|
-
(0,
|
|
6655
|
+
(0, import_react34.useEffect)(() => {
|
|
6148
6656
|
console.log("contactQuery.data", contactQuery.data);
|
|
6149
6657
|
}, [contactQuery.data]);
|
|
6150
|
-
const data = (0,
|
|
6658
|
+
const data = (0, import_react34.useMemo)(() => {
|
|
6151
6659
|
return (contactQuery.data?.pages ?? []).reduce(
|
|
6152
6660
|
(a, b) => {
|
|
6153
6661
|
return a.concat(b?.items ?? []);
|
|
@@ -6217,7 +6725,7 @@ var delContact = async (friend_id) => {
|
|
|
6217
6725
|
|
|
6218
6726
|
// src/components/ContactList/index.tsx
|
|
6219
6727
|
var import_react_virtuoso = require("react-virtuoso");
|
|
6220
|
-
var
|
|
6728
|
+
var import_react35 = require("react");
|
|
6221
6729
|
var import_react_intl19 = require("react-intl");
|
|
6222
6730
|
var import_jsx_runtime93 = require("react/jsx-runtime");
|
|
6223
6731
|
function ContactCard({
|
|
@@ -6238,7 +6746,7 @@ function ContactCard({
|
|
|
6238
6746
|
] });
|
|
6239
6747
|
}
|
|
6240
6748
|
function RequestAction({ data, onSuccess }) {
|
|
6241
|
-
const [loading, setLoading] = (0,
|
|
6749
|
+
const [loading, setLoading] = (0, import_react35.useState)(false);
|
|
6242
6750
|
const toast = useToast();
|
|
6243
6751
|
const intl = (0, import_react_intl19.useIntl)();
|
|
6244
6752
|
const onApprove = async () => {
|
|
@@ -6262,7 +6770,7 @@ function FriendsAction({
|
|
|
6262
6770
|
data,
|
|
6263
6771
|
onSuccess
|
|
6264
6772
|
}) {
|
|
6265
|
-
const [loading, setLoading] = (0,
|
|
6773
|
+
const [loading, setLoading] = (0, import_react35.useState)(false);
|
|
6266
6774
|
const toast = useToast();
|
|
6267
6775
|
const intl = (0, import_react_intl19.useIntl)();
|
|
6268
6776
|
const onRemove = async () => {
|
|
@@ -6288,9 +6796,9 @@ function ContactList({
|
|
|
6288
6796
|
type = "Friend"
|
|
6289
6797
|
}) {
|
|
6290
6798
|
const { loading, totalCount, data, onLoadMore } = contact_exports.useContactList(limit, type);
|
|
6291
|
-
const [hiddenList, setHiddenList] = (0,
|
|
6799
|
+
const [hiddenList, setHiddenList] = (0, import_react35.useState)([]);
|
|
6292
6800
|
const { address } = useWallet();
|
|
6293
|
-
(0,
|
|
6801
|
+
(0, import_react35.useEffect)(() => {
|
|
6294
6802
|
setHiddenList([]);
|
|
6295
6803
|
}, [type]);
|
|
6296
6804
|
return /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(
|
|
@@ -6335,19 +6843,19 @@ function ContactList({
|
|
|
6335
6843
|
|
|
6336
6844
|
// src/hooks/useMatchWallet.tsx
|
|
6337
6845
|
var import_react_qrcode = require("react-qrcode");
|
|
6338
|
-
var
|
|
6846
|
+
var import_react37 = require("react");
|
|
6339
6847
|
var import_react_query9 = require("@tanstack/react-query");
|
|
6340
|
-
var
|
|
6848
|
+
var import_viem13 = require("viem");
|
|
6341
6849
|
var import_react_intl21 = require("react-intl");
|
|
6342
6850
|
|
|
6343
6851
|
// src/components/ImportToken/index.tsx
|
|
6344
|
-
var
|
|
6852
|
+
var import_react36 = require("react");
|
|
6345
6853
|
var import_react_intl20 = require("react-intl");
|
|
6346
6854
|
var import_react_query8 = require("@tanstack/react-query");
|
|
6347
|
-
var
|
|
6855
|
+
var import_viem12 = require("viem");
|
|
6348
6856
|
|
|
6349
6857
|
// src/hooks/useIsContract.ts
|
|
6350
|
-
var
|
|
6858
|
+
var import_viem11 = require("viem");
|
|
6351
6859
|
var import_react_query7 = require("@tanstack/react-query");
|
|
6352
6860
|
function useIsContract({
|
|
6353
6861
|
address,
|
|
@@ -6359,9 +6867,9 @@ function useIsContract({
|
|
|
6359
6867
|
queryFn: async () => {
|
|
6360
6868
|
if (!chain) return false;
|
|
6361
6869
|
if (!address) return false;
|
|
6362
|
-
const publicClient = (0,
|
|
6870
|
+
const publicClient = (0, import_viem11.createPublicClient)({
|
|
6363
6871
|
chain,
|
|
6364
|
-
transport: (0,
|
|
6872
|
+
transport: (0, import_viem11.http)()
|
|
6365
6873
|
});
|
|
6366
6874
|
const res = await publicClient.getCode({ address });
|
|
6367
6875
|
return res !== null && res !== void 0;
|
|
@@ -6373,25 +6881,25 @@ function useIsContract({
|
|
|
6373
6881
|
// src/components/ImportToken/index.tsx
|
|
6374
6882
|
var import_jsx_runtime94 = require("react/jsx-runtime");
|
|
6375
6883
|
function ImportToken({ close }) {
|
|
6376
|
-
const [status, setStatus] = (0,
|
|
6884
|
+
const [status, setStatus] = (0, import_react36.useState)("");
|
|
6377
6885
|
const { token } = useUserInfo();
|
|
6378
|
-
const [address, setAddress] = (0,
|
|
6379
|
-
const [symbol, setSymbol] = (0,
|
|
6380
|
-
const [decimals, setDecimals] = (0,
|
|
6381
|
-
const [error, setError] = (0,
|
|
6886
|
+
const [address, setAddress] = (0, import_react36.useState)("");
|
|
6887
|
+
const [symbol, setSymbol] = (0, import_react36.useState)("");
|
|
6888
|
+
const [decimals, setDecimals] = (0, import_react36.useState)("");
|
|
6889
|
+
const [error, setError] = (0, import_react36.useState)({});
|
|
6382
6890
|
const { publicClient, chainId, chain } = useMatchChain();
|
|
6383
6891
|
const getContractInfo = async () => {
|
|
6384
6892
|
if (!publicClient) return;
|
|
6385
6893
|
const calls = [
|
|
6386
6894
|
{
|
|
6387
6895
|
address,
|
|
6388
|
-
abi:
|
|
6896
|
+
abi: import_viem12.erc20Abi,
|
|
6389
6897
|
functionName: "symbol",
|
|
6390
6898
|
args: []
|
|
6391
6899
|
},
|
|
6392
6900
|
{
|
|
6393
6901
|
address,
|
|
6394
|
-
abi:
|
|
6902
|
+
abi: import_viem12.erc20Abi,
|
|
6395
6903
|
functionName: "decimals",
|
|
6396
6904
|
args: []
|
|
6397
6905
|
}
|
|
@@ -6412,7 +6920,7 @@ function ImportToken({ close }) {
|
|
|
6412
6920
|
}
|
|
6413
6921
|
};
|
|
6414
6922
|
const intl = (0, import_react_intl20.useIntl)();
|
|
6415
|
-
(0,
|
|
6923
|
+
(0, import_react36.useEffect)(() => {
|
|
6416
6924
|
if (address.length === 42) {
|
|
6417
6925
|
const reg = /^0x[0-9a-fA-F]{40}$/;
|
|
6418
6926
|
if (!reg.test(address)) {
|
|
@@ -6431,7 +6939,7 @@ function ImportToken({ close }) {
|
|
|
6431
6939
|
}
|
|
6432
6940
|
}
|
|
6433
6941
|
}, [address, publicClient]);
|
|
6434
|
-
const [loading, setLoading] = (0,
|
|
6942
|
+
const [loading, setLoading] = (0, import_react36.useState)(false);
|
|
6435
6943
|
const toast = useToast();
|
|
6436
6944
|
const queryClient2 = (0, import_react_query8.useQueryClient)();
|
|
6437
6945
|
const onImport = async () => {
|
|
@@ -6459,7 +6967,7 @@ function ImportToken({ close }) {
|
|
|
6459
6967
|
setLoading(false);
|
|
6460
6968
|
}
|
|
6461
6969
|
};
|
|
6462
|
-
const canImport = (0,
|
|
6970
|
+
const canImport = (0, import_react36.useMemo)(() => {
|
|
6463
6971
|
if (!address) {
|
|
6464
6972
|
return false;
|
|
6465
6973
|
}
|
|
@@ -6477,7 +6985,7 @@ function ImportToken({ close }) {
|
|
|
6477
6985
|
}, [error, address, symbol, decimals]);
|
|
6478
6986
|
const isContractQuery = useIsContract({
|
|
6479
6987
|
//@ts-ignore
|
|
6480
|
-
chain: (0,
|
|
6988
|
+
chain: (0, import_viem12.defineChain)(chain),
|
|
6481
6989
|
address,
|
|
6482
6990
|
enabled: canImport
|
|
6483
6991
|
});
|
|
@@ -6625,12 +7133,12 @@ function useMatchWallet() {
|
|
|
6625
7133
|
};
|
|
6626
7134
|
}
|
|
6627
7135
|
function useMatchWalletRecords() {
|
|
6628
|
-
const [hasMore, setHasMore] = (0,
|
|
6629
|
-
const [items, setItems] = (0,
|
|
7136
|
+
const [hasMore, setHasMore] = (0, import_react37.useState)(true);
|
|
7137
|
+
const [items, setItems] = (0, import_react37.useState)([]);
|
|
6630
7138
|
const { chainId, publicClient } = useMatchChain();
|
|
6631
7139
|
const { address } = useWallet();
|
|
6632
|
-
const hasMoreRef = (0,
|
|
6633
|
-
const nextPageParamsRef = (0,
|
|
7140
|
+
const hasMoreRef = (0, import_react37.useRef)(hasMore);
|
|
7141
|
+
const nextPageParamsRef = (0, import_react37.useRef)(void 0);
|
|
6634
7142
|
const { contracts, setContracts } = useContractStore_default();
|
|
6635
7143
|
const fetchMoreData = async () => {
|
|
6636
7144
|
const chainIdStr = chainId ? chainId.toString() : "";
|
|
@@ -6657,7 +7165,7 @@ function useMatchWalletRecords() {
|
|
|
6657
7165
|
hasMoreRef.current = true;
|
|
6658
7166
|
fetchMoreData();
|
|
6659
7167
|
};
|
|
6660
|
-
(0,
|
|
7168
|
+
(0, import_react37.useEffect)(() => {
|
|
6661
7169
|
if (chainId && address) {
|
|
6662
7170
|
onInit();
|
|
6663
7171
|
}
|
|
@@ -6681,13 +7189,13 @@ function useMatchWalletRecords() {
|
|
|
6681
7189
|
for (const contract of contractUnique) {
|
|
6682
7190
|
calls.push({
|
|
6683
7191
|
address: contract,
|
|
6684
|
-
abi:
|
|
7192
|
+
abi: import_viem13.erc20Abi,
|
|
6685
7193
|
functionName: "symbol",
|
|
6686
7194
|
args: []
|
|
6687
7195
|
});
|
|
6688
7196
|
calls.push({
|
|
6689
7197
|
address: contract,
|
|
6690
|
-
abi:
|
|
7198
|
+
abi: import_viem13.erc20Abi,
|
|
6691
7199
|
functionName: "decimals",
|
|
6692
7200
|
args: []
|
|
6693
7201
|
});
|
|
@@ -6713,7 +7221,7 @@ function useMatchWalletRecords() {
|
|
|
6713
7221
|
setContracts(contractMap);
|
|
6714
7222
|
}
|
|
6715
7223
|
};
|
|
6716
|
-
const list = (0,
|
|
7224
|
+
const list = (0, import_react37.useMemo)(() => {
|
|
6717
7225
|
const localTransactions = transactions[`${chainId}-${address}`] || [];
|
|
6718
7226
|
const removeList = localTransactions.filter((n) => items.findIndex((m) => m.hash == n.hash) >= 0);
|
|
6719
7227
|
removeList.forEach((item) => {
|
|
@@ -6755,7 +7263,7 @@ function useMatchWalletAssets({
|
|
|
6755
7263
|
chainId: chainId || 0,
|
|
6756
7264
|
...assetListOptions
|
|
6757
7265
|
});
|
|
6758
|
-
const mergedAssets = (0,
|
|
7266
|
+
const mergedAssets = (0, import_react37.useMemo)(() => {
|
|
6759
7267
|
if (!assetListQuery.data && !importTokenQuery.data) return [];
|
|
6760
7268
|
const assetList = (assetListQuery.data || []).map((asset) => ({
|
|
6761
7269
|
...asset,
|
|
@@ -6842,14 +7350,14 @@ function useMatchWalletAssetList({
|
|
|
6842
7350
|
retry: 3
|
|
6843
7351
|
// Retry up to 3 times if failed
|
|
6844
7352
|
});
|
|
6845
|
-
const erc20Tokens = (0,
|
|
7353
|
+
const erc20Tokens = (0, import_react37.useMemo)(() => list.filter((asset) => asset.address !== NATIVE_TOKEN_ADDRESS), [list]);
|
|
6846
7354
|
const erc20BalanceQuery = (0, import_react_query9.useQuery)({
|
|
6847
7355
|
queryKey: ["erc20Balances", erc20Tokens.map((token) => token.address)],
|
|
6848
7356
|
queryFn: async () => {
|
|
6849
7357
|
if (!erc20Tokens.length || !publicClient) return [];
|
|
6850
7358
|
const calls = erc20Tokens.map((token) => ({
|
|
6851
7359
|
address: token.address,
|
|
6852
|
-
abi:
|
|
7360
|
+
abi: import_viem13.erc20Abi,
|
|
6853
7361
|
functionName: "balanceOf",
|
|
6854
7362
|
args: [address]
|
|
6855
7363
|
}));
|
|
@@ -6870,7 +7378,7 @@ function useMatchWalletAssetList({
|
|
|
6870
7378
|
// Refresh every 15 seconds
|
|
6871
7379
|
retry: 3
|
|
6872
7380
|
});
|
|
6873
|
-
const enrichedAssets = (0,
|
|
7381
|
+
const enrichedAssets = (0, import_react37.useMemo)(() => {
|
|
6874
7382
|
if (!list) return [];
|
|
6875
7383
|
const erc20Balances = erc20BalanceQuery.data || [];
|
|
6876
7384
|
return list.map((asset) => {
|
|
@@ -6880,11 +7388,11 @@ function useMatchWalletAssetList({
|
|
|
6880
7388
|
const assetAddress = asset.address.toLowerCase();
|
|
6881
7389
|
if (assetAddress === NATIVE_TOKEN_ADDRESS) {
|
|
6882
7390
|
balanceValue = nativeBalanceQuery.data?.toString() || "0";
|
|
6883
|
-
balance = nativeBalanceQuery.data ? Number((0,
|
|
7391
|
+
balance = nativeBalanceQuery.data ? Number((0, import_viem13.formatUnits)(nativeBalanceQuery.data, decimals)) : 0;
|
|
6884
7392
|
} else {
|
|
6885
7393
|
const index = erc20Tokens.findIndex((t) => t.address.toLowerCase() === assetAddress);
|
|
6886
7394
|
if (index !== -1 && erc20Balances[index] && erc20Balances[index].status === "success") {
|
|
6887
|
-
balance = Number((0,
|
|
7395
|
+
balance = Number((0, import_viem13.formatUnits)(erc20Balances[index].result, decimals));
|
|
6888
7396
|
balanceValue = erc20Balances[index].result?.toString() || "0";
|
|
6889
7397
|
}
|
|
6890
7398
|
}
|
|
@@ -6892,7 +7400,7 @@ function useMatchWalletAssetList({
|
|
|
6892
7400
|
return { ...asset, balance, value, balanceValue };
|
|
6893
7401
|
});
|
|
6894
7402
|
}, [list, nativeBalanceQuery.data, erc20BalanceQuery.data]);
|
|
6895
|
-
(0,
|
|
7403
|
+
(0, import_react37.useEffect)(() => {
|
|
6896
7404
|
const list2 = enrichedAssets.sort((a, b) => {
|
|
6897
7405
|
if (a.address === NATIVE_TOKEN_ADDRESS) return -1;
|
|
6898
7406
|
if (b.address === NATIVE_TOKEN_ADDRESS) return 1;
|
|
@@ -6917,14 +7425,14 @@ function useMatchWalletAssetList({
|
|
|
6917
7425
|
}
|
|
6918
7426
|
|
|
6919
7427
|
// src/hooks/useReceipt.tsx
|
|
6920
|
-
var
|
|
7428
|
+
var import_react38 = require("react");
|
|
6921
7429
|
var import_react_query10 = require("@tanstack/react-query");
|
|
6922
|
-
var
|
|
7430
|
+
var import_viem14 = require("viem");
|
|
6923
7431
|
var CACHE_TTL = 86400 * 30 * 1e3;
|
|
6924
7432
|
var MAX_CACHE_SIZE = 500;
|
|
6925
7433
|
var STORAGE_KEY = "match_receipt_logs";
|
|
6926
7434
|
function useReceiptCache() {
|
|
6927
|
-
const [cache, setCache] = (0,
|
|
7435
|
+
const [cache, setCache] = (0, import_react38.useState)(/* @__PURE__ */ new Map());
|
|
6928
7436
|
const isLocalStorageAvailable = (() => {
|
|
6929
7437
|
try {
|
|
6930
7438
|
const testKey = "__test__";
|
|
@@ -6935,7 +7443,7 @@ function useReceiptCache() {
|
|
|
6935
7443
|
return false;
|
|
6936
7444
|
}
|
|
6937
7445
|
})();
|
|
6938
|
-
(0,
|
|
7446
|
+
(0, import_react38.useEffect)(() => {
|
|
6939
7447
|
if (isLocalStorageAvailable) {
|
|
6940
7448
|
try {
|
|
6941
7449
|
const storedData = localStorage.getItem(STORAGE_KEY);
|
|
@@ -6954,7 +7462,7 @@ function useReceiptCache() {
|
|
|
6954
7462
|
}
|
|
6955
7463
|
}
|
|
6956
7464
|
}, []);
|
|
6957
|
-
const updateLocalStorage = (0,
|
|
7465
|
+
const updateLocalStorage = (0, import_react38.useCallback)((updatedCache) => {
|
|
6958
7466
|
if (isLocalStorageAvailable) {
|
|
6959
7467
|
try {
|
|
6960
7468
|
const storedData = localStorage.getItem(STORAGE_KEY);
|
|
@@ -6971,7 +7479,7 @@ function useReceiptCache() {
|
|
|
6971
7479
|
}
|
|
6972
7480
|
}
|
|
6973
7481
|
}, []);
|
|
6974
|
-
const set = (0,
|
|
7482
|
+
const set = (0, import_react38.useCallback)((key, value) => {
|
|
6975
7483
|
const now = Date.now();
|
|
6976
7484
|
const newCache = new Map(cache);
|
|
6977
7485
|
newCache.forEach((entry, k) => {
|
|
@@ -6989,7 +7497,7 @@ function useReceiptCache() {
|
|
|
6989
7497
|
setCache(newCache);
|
|
6990
7498
|
updateLocalStorage(newCache);
|
|
6991
7499
|
}, [cache, updateLocalStorage]);
|
|
6992
|
-
const get = (0,
|
|
7500
|
+
const get = (0, import_react38.useCallback)((key) => {
|
|
6993
7501
|
const entry = cache.get(key);
|
|
6994
7502
|
if (entry) {
|
|
6995
7503
|
if (Date.now() - entry.timestamp > CACHE_TTL) {
|
|
@@ -7003,7 +7511,7 @@ function useReceiptCache() {
|
|
|
7003
7511
|
}
|
|
7004
7512
|
return void 0;
|
|
7005
7513
|
}, [cache, updateLocalStorage]);
|
|
7006
|
-
const del = (0,
|
|
7514
|
+
const del = (0, import_react38.useCallback)((key) => {
|
|
7007
7515
|
if (cache.has(key)) {
|
|
7008
7516
|
const newCache = new Map(cache);
|
|
7009
7517
|
newCache.delete(key);
|
|
@@ -7011,7 +7519,7 @@ function useReceiptCache() {
|
|
|
7011
7519
|
updateLocalStorage(newCache);
|
|
7012
7520
|
}
|
|
7013
7521
|
}, [cache, updateLocalStorage]);
|
|
7014
|
-
const clear = (0,
|
|
7522
|
+
const clear = (0, import_react38.useCallback)(() => {
|
|
7015
7523
|
setCache(/* @__PURE__ */ new Map());
|
|
7016
7524
|
if (isLocalStorageAvailable) {
|
|
7017
7525
|
localStorage.removeItem(STORAGE_KEY);
|
|
@@ -7026,7 +7534,7 @@ function useReceipt2({
|
|
|
7026
7534
|
const { list } = useMatchChain();
|
|
7027
7535
|
const cache = useReceiptCache();
|
|
7028
7536
|
const chain = list?.find((item) => item.id === chainId);
|
|
7029
|
-
const [shouldRefetch, setShouldRefetch] = (0,
|
|
7537
|
+
const [shouldRefetch, setShouldRefetch] = (0, import_react38.useState)(true);
|
|
7030
7538
|
const query = (0, import_react_query10.useQuery)({
|
|
7031
7539
|
queryKey: ["match-tx-receipt", hash, chain],
|
|
7032
7540
|
queryFn: async () => {
|
|
@@ -7036,9 +7544,9 @@ function useReceipt2({
|
|
|
7036
7544
|
return cache.get(cacheKey);
|
|
7037
7545
|
}
|
|
7038
7546
|
try {
|
|
7039
|
-
const publicClient = (0,
|
|
7040
|
-
chain: (0,
|
|
7041
|
-
transport: (0,
|
|
7547
|
+
const publicClient = (0, import_viem14.createPublicClient)({
|
|
7548
|
+
chain: (0, import_viem14.defineChain)(chain),
|
|
7549
|
+
transport: (0, import_viem14.http)()
|
|
7042
7550
|
});
|
|
7043
7551
|
const receipt = await publicClient.getTransactionReceipt({ hash });
|
|
7044
7552
|
if (!receipt) {
|
|
@@ -7052,7 +7560,7 @@ function useReceipt2({
|
|
|
7052
7560
|
},
|
|
7053
7561
|
refetchInterval: shouldRefetch ? 1e4 : false
|
|
7054
7562
|
});
|
|
7055
|
-
(0,
|
|
7563
|
+
(0, import_react38.useEffect)(() => {
|
|
7056
7564
|
if (query.data) {
|
|
7057
7565
|
setShouldRefetch(false);
|
|
7058
7566
|
}
|
|
@@ -7061,14 +7569,14 @@ function useReceipt2({
|
|
|
7061
7569
|
}
|
|
7062
7570
|
|
|
7063
7571
|
// src/hooks/useTransaction.tsx
|
|
7064
|
-
var
|
|
7572
|
+
var import_react39 = require("react");
|
|
7065
7573
|
var import_react_query11 = require("@tanstack/react-query");
|
|
7066
|
-
var
|
|
7574
|
+
var import_viem15 = require("viem");
|
|
7067
7575
|
var CACHE_TTL2 = 86400 * 30 * 1e3;
|
|
7068
7576
|
var MAX_CACHE_SIZE2 = 500;
|
|
7069
7577
|
var STORAGE_KEY2 = "match_transaction_logs";
|
|
7070
7578
|
function useTransactionCache() {
|
|
7071
|
-
const [cache, setCache] = (0,
|
|
7579
|
+
const [cache, setCache] = (0, import_react39.useState)(/* @__PURE__ */ new Map());
|
|
7072
7580
|
const isLocalStorageAvailable = (() => {
|
|
7073
7581
|
try {
|
|
7074
7582
|
const testKey = "__test__";
|
|
@@ -7079,7 +7587,7 @@ function useTransactionCache() {
|
|
|
7079
7587
|
return false;
|
|
7080
7588
|
}
|
|
7081
7589
|
})();
|
|
7082
|
-
(0,
|
|
7590
|
+
(0, import_react39.useEffect)(() => {
|
|
7083
7591
|
if (isLocalStorageAvailable) {
|
|
7084
7592
|
try {
|
|
7085
7593
|
const storedData = localStorage.getItem(STORAGE_KEY2);
|
|
@@ -7098,7 +7606,7 @@ function useTransactionCache() {
|
|
|
7098
7606
|
}
|
|
7099
7607
|
}
|
|
7100
7608
|
}, []);
|
|
7101
|
-
const updateLocalStorage = (0,
|
|
7609
|
+
const updateLocalStorage = (0, import_react39.useCallback)((updatedCache) => {
|
|
7102
7610
|
if (isLocalStorageAvailable) {
|
|
7103
7611
|
try {
|
|
7104
7612
|
const storedData = localStorage.getItem(STORAGE_KEY2);
|
|
@@ -7115,7 +7623,7 @@ function useTransactionCache() {
|
|
|
7115
7623
|
}
|
|
7116
7624
|
}
|
|
7117
7625
|
}, []);
|
|
7118
|
-
const set = (0,
|
|
7626
|
+
const set = (0, import_react39.useCallback)((key, value) => {
|
|
7119
7627
|
const now = Date.now();
|
|
7120
7628
|
const newCache = new Map(cache);
|
|
7121
7629
|
newCache.forEach((entry, k) => {
|
|
@@ -7133,7 +7641,7 @@ function useTransactionCache() {
|
|
|
7133
7641
|
setCache(newCache);
|
|
7134
7642
|
updateLocalStorage(newCache);
|
|
7135
7643
|
}, [cache, updateLocalStorage]);
|
|
7136
|
-
const get = (0,
|
|
7644
|
+
const get = (0, import_react39.useCallback)((key) => {
|
|
7137
7645
|
const entry = cache.get(key);
|
|
7138
7646
|
if (entry) {
|
|
7139
7647
|
if (Date.now() - entry.timestamp > CACHE_TTL2) {
|
|
@@ -7147,7 +7655,7 @@ function useTransactionCache() {
|
|
|
7147
7655
|
}
|
|
7148
7656
|
return void 0;
|
|
7149
7657
|
}, [cache, updateLocalStorage]);
|
|
7150
|
-
const del = (0,
|
|
7658
|
+
const del = (0, import_react39.useCallback)((key) => {
|
|
7151
7659
|
if (cache.has(key)) {
|
|
7152
7660
|
const newCache = new Map(cache);
|
|
7153
7661
|
newCache.delete(key);
|
|
@@ -7155,7 +7663,7 @@ function useTransactionCache() {
|
|
|
7155
7663
|
updateLocalStorage(newCache);
|
|
7156
7664
|
}
|
|
7157
7665
|
}, [cache, updateLocalStorage]);
|
|
7158
|
-
const clear = (0,
|
|
7666
|
+
const clear = (0, import_react39.useCallback)(() => {
|
|
7159
7667
|
setCache(/* @__PURE__ */ new Map());
|
|
7160
7668
|
if (isLocalStorageAvailable) {
|
|
7161
7669
|
localStorage.removeItem(STORAGE_KEY2);
|
|
@@ -7170,7 +7678,7 @@ function useTransaction({
|
|
|
7170
7678
|
const { list } = useMatchChain();
|
|
7171
7679
|
const cache = useTransactionCache();
|
|
7172
7680
|
const chain = list?.find((item) => item.id === chainId);
|
|
7173
|
-
const [shouldRefetch, setShouldRefetch] = (0,
|
|
7681
|
+
const [shouldRefetch, setShouldRefetch] = (0, import_react39.useState)(true);
|
|
7174
7682
|
const query = (0, import_react_query11.useQuery)({
|
|
7175
7683
|
queryKey: ["match-tx-transaction", hash, chain],
|
|
7176
7684
|
queryFn: async () => {
|
|
@@ -7180,9 +7688,9 @@ function useTransaction({
|
|
|
7180
7688
|
return cache.get(cacheKey);
|
|
7181
7689
|
}
|
|
7182
7690
|
try {
|
|
7183
|
-
const publicClient = (0,
|
|
7184
|
-
chain: (0,
|
|
7185
|
-
transport: (0,
|
|
7691
|
+
const publicClient = (0, import_viem15.createPublicClient)({
|
|
7692
|
+
chain: (0, import_viem15.defineChain)(chain),
|
|
7693
|
+
transport: (0, import_viem15.http)()
|
|
7186
7694
|
});
|
|
7187
7695
|
const transaction = await publicClient.getTransaction({ hash });
|
|
7188
7696
|
if (!transaction) {
|
|
@@ -7196,7 +7704,7 @@ function useTransaction({
|
|
|
7196
7704
|
},
|
|
7197
7705
|
refetchInterval: shouldRefetch ? 1e4 : false
|
|
7198
7706
|
});
|
|
7199
|
-
(0,
|
|
7707
|
+
(0, import_react39.useEffect)(() => {
|
|
7200
7708
|
if (query.data) {
|
|
7201
7709
|
setShouldRefetch(false);
|
|
7202
7710
|
}
|
|
@@ -7205,7 +7713,7 @@ function useTransaction({
|
|
|
7205
7713
|
}
|
|
7206
7714
|
|
|
7207
7715
|
// src/components/CEXBindModal/index.tsx
|
|
7208
|
-
var
|
|
7716
|
+
var import_react40 = require("react");
|
|
7209
7717
|
var import_react_intl22 = require("react-intl");
|
|
7210
7718
|
var import_jsx_runtime96 = require("react/jsx-runtime");
|
|
7211
7719
|
function CEXBindModal({
|
|
@@ -7216,16 +7724,16 @@ function CEXBindModal({
|
|
|
7216
7724
|
}) {
|
|
7217
7725
|
const intl = (0, import_react_intl22.useIntl)();
|
|
7218
7726
|
const { events } = useMatch();
|
|
7219
|
-
const [APIPassphrase, setAPIPassphrase] = (0,
|
|
7727
|
+
const [APIPassphrase, setAPIPassphrase] = (0, import_react40.useState)("");
|
|
7220
7728
|
const { refreshOverview } = useUserInfo();
|
|
7221
|
-
const [loading, setLoading] = (0,
|
|
7222
|
-
const [key, setKey] = (0,
|
|
7223
|
-
const [secret, setSecret] = (0,
|
|
7224
|
-
const [error, setError] = (0,
|
|
7225
|
-
const needPassphrase = (0,
|
|
7729
|
+
const [loading, setLoading] = (0, import_react40.useState)(false);
|
|
7730
|
+
const [key, setKey] = (0, import_react40.useState)("");
|
|
7731
|
+
const [secret, setSecret] = (0, import_react40.useState)("");
|
|
7732
|
+
const [error, setError] = (0, import_react40.useState)("");
|
|
7733
|
+
const needPassphrase = (0, import_react40.useMemo)(() => {
|
|
7226
7734
|
return ["bitget", "okx"].includes(type.toLowerCase());
|
|
7227
7735
|
}, [type]);
|
|
7228
|
-
(0,
|
|
7736
|
+
(0, import_react40.useEffect)(() => {
|
|
7229
7737
|
if (isOpen) {
|
|
7230
7738
|
setSecret("");
|
|
7231
7739
|
setKey("");
|
|
@@ -7425,7 +7933,7 @@ var Providers = ({ children }) => {
|
|
|
7425
7933
|
var context_default = Providers;
|
|
7426
7934
|
|
|
7427
7935
|
// src/hooks/useWalletInit.ts
|
|
7428
|
-
var
|
|
7936
|
+
var import_react41 = require("react");
|
|
7429
7937
|
|
|
7430
7938
|
// src/utils/wallet.ts
|
|
7431
7939
|
var sendMessage = ({ method, data, resolve, reject, timeout }) => {
|
|
@@ -7458,11 +7966,11 @@ function useWalletInit({
|
|
|
7458
7966
|
}) {
|
|
7459
7967
|
const { endpoints, token, setWallet, appid, refreshOverview } = useLocalStore_default();
|
|
7460
7968
|
const { setWalletReady, walletReady } = useStore_default();
|
|
7461
|
-
const iframeReadyRef = (0,
|
|
7462
|
-
(0,
|
|
7969
|
+
const iframeReadyRef = (0, import_react41.useRef)(walletReady);
|
|
7970
|
+
(0, import_react41.useEffect)(() => {
|
|
7463
7971
|
setWallet(config);
|
|
7464
7972
|
}, [config]);
|
|
7465
|
-
(0,
|
|
7973
|
+
(0, import_react41.useEffect)(() => {
|
|
7466
7974
|
matchlog_default.log("sdk.mpc.status", walletReady, iframeReadyRef.current);
|
|
7467
7975
|
iframeReadyRef.current = walletReady;
|
|
7468
7976
|
if (iframeReadyRef.current) {
|
|
@@ -7479,7 +7987,7 @@ function useWalletInit({
|
|
|
7479
7987
|
onReady();
|
|
7480
7988
|
}
|
|
7481
7989
|
}, [walletReady]);
|
|
7482
|
-
(0,
|
|
7990
|
+
(0, import_react41.useEffect)(() => {
|
|
7483
7991
|
if (!endpoints.auth || !appid || !token || !config) {
|
|
7484
7992
|
const existingIframe = getWalletIframe();
|
|
7485
7993
|
if (existingIframe) {
|
|
@@ -7579,7 +8087,7 @@ function useWalletInit({
|
|
|
7579
8087
|
}
|
|
7580
8088
|
}
|
|
7581
8089
|
}, [endpoints.auth, appid, token, config]);
|
|
7582
|
-
(0,
|
|
8090
|
+
(0, import_react41.useEffect)(() => {
|
|
7583
8091
|
const messageHandle = async (e) => {
|
|
7584
8092
|
if (e.origin !== endpoints.auth.substring(0, endpoints.auth.length - 1)) {
|
|
7585
8093
|
return;
|
|
@@ -7660,7 +8168,7 @@ function useWalletInit({
|
|
|
7660
8168
|
}
|
|
7661
8169
|
|
|
7662
8170
|
// src/hooks/useInit.tsx
|
|
7663
|
-
var
|
|
8171
|
+
var import_react42 = require("react");
|
|
7664
8172
|
function useInit({
|
|
7665
8173
|
theme,
|
|
7666
8174
|
appid,
|
|
@@ -7680,24 +8188,24 @@ function useInit({
|
|
|
7680
8188
|
locale: realLocale
|
|
7681
8189
|
} = useLocalStore_default();
|
|
7682
8190
|
const walletModalStore = useWalletModalStore();
|
|
7683
|
-
const overviewLoadingRef = (0,
|
|
8191
|
+
const overviewLoadingRef = (0, import_react42.useRef)(false);
|
|
7684
8192
|
const searchParams = new URLSearchParams(window.location.search);
|
|
7685
8193
|
const matchToken = searchParams.get("matchToken");
|
|
7686
8194
|
const matchidt = searchParams.get("matchidt");
|
|
7687
8195
|
const realEndpoints = endpoints || env_default.endpoints;
|
|
7688
|
-
(0,
|
|
8196
|
+
(0, import_react42.useEffect)(() => {
|
|
7689
8197
|
setTheme(theme);
|
|
7690
8198
|
}, [theme]);
|
|
7691
|
-
(0,
|
|
8199
|
+
(0, import_react42.useEffect)(() => {
|
|
7692
8200
|
setAppid(appid);
|
|
7693
8201
|
}, [appid]);
|
|
7694
|
-
(0,
|
|
8202
|
+
(0, import_react42.useEffect)(() => {
|
|
7695
8203
|
setEndpoints(realEndpoints);
|
|
7696
8204
|
}, [realEndpoints]);
|
|
7697
|
-
(0,
|
|
8205
|
+
(0, import_react42.useEffect)(() => {
|
|
7698
8206
|
setLocale(locale || "en");
|
|
7699
8207
|
}, [locale]);
|
|
7700
|
-
(0,
|
|
8208
|
+
(0, import_react42.useEffect)(() => {
|
|
7701
8209
|
if (matchToken) {
|
|
7702
8210
|
const tokenData = JSON.parse(atob(matchToken));
|
|
7703
8211
|
if (tokenData && tokenData.mid && tokenData.token) {
|
|
@@ -7708,7 +8216,7 @@ function useInit({
|
|
|
7708
8216
|
}
|
|
7709
8217
|
}
|
|
7710
8218
|
}, [matchToken]);
|
|
7711
|
-
(0,
|
|
8219
|
+
(0, import_react42.useEffect)(() => {
|
|
7712
8220
|
if (matchidt) {
|
|
7713
8221
|
const tokenData = decodeURIComponent(matchidt);
|
|
7714
8222
|
const data = JSON.parse(decodeBase64(tokenData));
|
|
@@ -7738,7 +8246,7 @@ function useInit({
|
|
|
7738
8246
|
}
|
|
7739
8247
|
}
|
|
7740
8248
|
}, [matchidt]);
|
|
7741
|
-
(0,
|
|
8249
|
+
(0, import_react42.useEffect)(() => {
|
|
7742
8250
|
const onLoginMessage = (event) => {
|
|
7743
8251
|
const res = event.data;
|
|
7744
8252
|
if (res.event === "login" && res.data && (res.data.token || res.data.token_type && res.data.access_token)) {
|
|
@@ -7775,7 +8283,7 @@ function useInit({
|
|
|
7775
8283
|
overviewLoadingRef.current = false;
|
|
7776
8284
|
}
|
|
7777
8285
|
};
|
|
7778
|
-
(0,
|
|
8286
|
+
(0, import_react42.useEffect)(() => {
|
|
7779
8287
|
if (token) {
|
|
7780
8288
|
loadOverview();
|
|
7781
8289
|
}
|
|
@@ -8614,13 +9122,13 @@ var messages = {
|
|
|
8614
9122
|
};
|
|
8615
9123
|
|
|
8616
9124
|
// src/MatchContext.tsx
|
|
8617
|
-
var
|
|
9125
|
+
var import_rainbowkit2 = require("@rainbow-me/rainbowkit");
|
|
8618
9126
|
var import_wallets = require("@rainbow-me/rainbowkit/wallets");
|
|
8619
9127
|
var import_chains = require("wagmi/chains");
|
|
8620
9128
|
|
|
8621
9129
|
// src/config/chains/MatchMain.ts
|
|
8622
|
-
var
|
|
8623
|
-
var matchMain = /* @__PURE__ */ (0,
|
|
9130
|
+
var import_viem16 = require("viem");
|
|
9131
|
+
var matchMain = /* @__PURE__ */ (0, import_viem16.defineChain)({
|
|
8624
9132
|
//定义match链
|
|
8625
9133
|
id: 698,
|
|
8626
9134
|
name: "Matchain",
|
|
@@ -8647,8 +9155,8 @@ var matchMain = /* @__PURE__ */ (0, import_viem14.defineChain)({
|
|
|
8647
9155
|
});
|
|
8648
9156
|
|
|
8649
9157
|
// src/config/chains/MatchTest.ts
|
|
8650
|
-
var
|
|
8651
|
-
var matchTest = /* @__PURE__ */ (0,
|
|
9158
|
+
var import_viem17 = require("viem");
|
|
9159
|
+
var matchTest = /* @__PURE__ */ (0, import_viem17.defineChain)({
|
|
8652
9160
|
//定义matchTest链
|
|
8653
9161
|
id: 699,
|
|
8654
9162
|
name: "MatchTest",
|
|
@@ -8681,10 +9189,10 @@ var matchTest = /* @__PURE__ */ (0, import_viem15.defineChain)({
|
|
|
8681
9189
|
});
|
|
8682
9190
|
|
|
8683
9191
|
// src/MatchContext.tsx
|
|
8684
|
-
var
|
|
9192
|
+
var import_wagmi3 = require("wagmi");
|
|
8685
9193
|
var import_jsx_runtime99 = require("react/jsx-runtime");
|
|
8686
9194
|
var queryClient = new import_react_query13.QueryClient();
|
|
8687
|
-
var wagmiConfig = (0,
|
|
9195
|
+
var wagmiConfig = (0, import_rainbowkit2.getDefaultConfig)({
|
|
8688
9196
|
appName: "MatchID",
|
|
8689
9197
|
projectId: "9ac6ea7e07860f04616fb311b447dee9",
|
|
8690
9198
|
wallets: [
|
|
@@ -8701,7 +9209,7 @@ var wagmiConfig = (0, import_rainbowkit.getDefaultConfig)({
|
|
|
8701
9209
|
],
|
|
8702
9210
|
chains: [import_chains.mainnet, import_chains.polygon, import_chains.optimism, import_chains.arbitrum, import_chains.base, matchMain, matchTest, import_chains.bsc]
|
|
8703
9211
|
});
|
|
8704
|
-
var MatchContext = (0,
|
|
9212
|
+
var MatchContext = (0, import_react43.createContext)(void 0);
|
|
8705
9213
|
var MatchProvider = ({
|
|
8706
9214
|
children,
|
|
8707
9215
|
appid,
|
|
@@ -8721,7 +9229,7 @@ var MatchProvider = ({
|
|
|
8721
9229
|
useWalletInit({
|
|
8722
9230
|
config: wallet
|
|
8723
9231
|
});
|
|
8724
|
-
return /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(import_react_intl23.IntlProvider, { locale: realLocale, messages: messages[realLocale], children: /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(
|
|
9232
|
+
return /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(import_react_intl23.IntlProvider, { locale: realLocale, messages: messages[realLocale], children: /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(import_wagmi3.WagmiProvider, { config: wagmiConfig, children: /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(import_react_query13.QueryClientProvider, { client: queryClient, children: /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(import_rainbowkit2.RainbowKitProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(
|
|
8725
9233
|
MatchContext.Provider,
|
|
8726
9234
|
{
|
|
8727
9235
|
value: {
|
|
@@ -8737,7 +9245,7 @@ var MatchProvider = ({
|
|
|
8737
9245
|
) }) }) }) });
|
|
8738
9246
|
};
|
|
8739
9247
|
var useMatch = () => {
|
|
8740
|
-
const context = (0,
|
|
9248
|
+
const context = (0, import_react43.useContext)(MatchContext);
|
|
8741
9249
|
if (context === void 0) {
|
|
8742
9250
|
throw new Error("useMatch must be used within a MatchProvider");
|
|
8743
9251
|
}
|