@mezo-org/passport 0.4.0-dev.32 → 0.4.0-dev.34
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/src/components/Dropdown/Dropdown.d.ts +2 -2
- package/dist/src/components/Dropdown/Dropdown.d.ts.map +1 -1
- package/dist/src/components/Dropdown/Dropdown.js +2 -2
- package/dist/src/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/src/config.d.ts +41 -1
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/config.js +16 -5
- package/dist/src/config.js.map +1 -1
- package/dist/src/hooks/constants.d.ts +1 -0
- package/dist/src/hooks/constants.d.ts.map +1 -1
- package/dist/src/hooks/constants.js +1 -0
- package/dist/src/hooks/constants.js.map +1 -1
- package/dist/src/hooks/useDropdownData.d.ts +6 -7
- package/dist/src/hooks/useDropdownData.d.ts.map +1 -1
- package/dist/src/hooks/useDropdownData.js +11 -10
- package/dist/src/hooks/useDropdownData.js.map +1 -1
- package/dist/src/hooks/useGetMatsByAddress.d.ts +3 -0
- package/dist/src/hooks/useGetMatsByAddress.d.ts.map +1 -0
- package/dist/src/hooks/useGetMatsByAddress.js +20 -0
- package/dist/src/hooks/useGetMatsByAddress.js.map +1 -0
- package/dist/src/hooks/useWatchTransferEvents.d.ts.map +1 -1
- package/dist/src/hooks/useWatchTransferEvents.js +6 -11
- package/dist/src/hooks/useWatchTransferEvents.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/package.json +1 -1
- package/src/components/Dropdown/Dropdown.tsx +4 -4
- package/src/config.ts +23 -5
- package/src/hooks/constants.ts +1 -0
- package/src/hooks/useDropdownData.ts +11 -10
- package/src/hooks/useGetMatsByAddress.ts +27 -0
- package/src/hooks/useWatchTransferEvents.ts +6 -11
- package/src/index.ts +8 -1
|
@@ -13,8 +13,8 @@ export type DropdownProps = {
|
|
|
13
13
|
signedOut?: Omit<ButtonProps, "onClick">;
|
|
14
14
|
};
|
|
15
15
|
onOtherAssetsClick?: () => void;
|
|
16
|
-
/** Time in milliseconds after which
|
|
17
|
-
|
|
16
|
+
/** Time in milliseconds after which mats balance in dropdown should be re-fetched. Default is 90000 (90 secs) */
|
|
17
|
+
matsRefetchInterval?: number;
|
|
18
18
|
/** Time in milliseconds after which native balance in dropdown should be re-fetched. Default is 90000 (90 secs) */
|
|
19
19
|
nativeBalanceRefetchInterval?: number;
|
|
20
20
|
} & Omit<StatefulPopoverProps, "children" | "content">;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dropdown.d.ts","sourceRoot":"","sources":["../../../../src/components/Dropdown/Dropdown.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EAEX,oBAAoB,EAErB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAA6B,MAAM,OAAO,CAAA;AAUjD,MAAM,MAAM,aAAa,GAAG;IAC1B,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,mDAAmD;IACnD,YAAY,CAAC,EAAE;QACb,QAAQ,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,MAAM,CAAC,GAAG;YACjD,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAA;SACzB,CAAA;QACD,SAAS,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;KACzC,CAAA;IACD,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAA;IAC/B,
|
|
1
|
+
{"version":3,"file":"Dropdown.d.ts","sourceRoot":"","sources":["../../../../src/components/Dropdown/Dropdown.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EAEX,oBAAoB,EAErB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAA6B,MAAM,OAAO,CAAA;AAUjD,MAAM,MAAM,aAAa,GAAG;IAC1B,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,mDAAmD;IACnD,YAAY,CAAC,EAAE;QACb,QAAQ,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,MAAM,CAAC,GAAG;YACjD,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAA;SACzB,CAAA;QACD,SAAS,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;KACzC,CAAA;IACD,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAA;IAC/B,iHAAiH;IACjH,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,mHAAmH;IACnH,4BAA4B,CAAC,EAAE,MAAM,CAAA;CACtC,GAAG,IAAI,CAAC,oBAAoB,EAAE,UAAU,GAAG,SAAS,CAAC,CAAA;AAEtD;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,qBA0G5C"}
|
|
@@ -15,10 +15,10 @@ import useDropdownData from "../../hooks/useDropdownData";
|
|
|
15
15
|
* @returns {JSX.Element}
|
|
16
16
|
*/
|
|
17
17
|
export function Dropdown(props) {
|
|
18
|
-
const { placement = "bottomRight", animateOutTime = 120, onSignIn, onSignOut, overrides, triggerProps, onOtherAssetsClick,
|
|
18
|
+
const { placement = "bottomRight", animateOutTime = 120, onSignIn, onSignOut, overrides, triggerProps, onOtherAssetsClick, matsRefetchInterval, nativeBalanceRefetchInterval, ...restProps } = props;
|
|
19
19
|
const [, theme] = useStyletron();
|
|
20
20
|
const data = useDropdownData({
|
|
21
|
-
|
|
21
|
+
matsRefetchInterval,
|
|
22
22
|
nativeBalanceRefetchInterval,
|
|
23
23
|
});
|
|
24
24
|
const isCriticalDropdownDataLoaded = useMemo(() => Boolean(data.mezoId && data.accountAddress && data.walletAddress), [data]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dropdown.js","sourceRoot":"","sources":["../../../../src/components/Dropdown/Dropdown.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,EAEf,YAAY,GACb,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AACrC,OAAO,aAAa,MAAM,4BAA4B,CAAA;AACtD,OAAO,gBAAgB,MAAM,8BAA8B,CAAA;AAC3D,OAAO,gBAAgB,MAAM,oBAAoB,CAAA;AACjD,OAAO,OAAO,MAAM,WAAW,CAAA;AAC/B,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,eAAe,MAAM,6BAA6B,CAAA;AAqBzD;;;;GAIG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAoB;IAC3C,MAAM,EACJ,SAAS,GAAG,aAAa,EACzB,cAAc,GAAG,GAAG,EACpB,QAAQ,EACR,SAAS,EACT,SAAS,EACT,YAAY,EACZ,kBAAkB,EAClB,
|
|
1
|
+
{"version":3,"file":"Dropdown.js","sourceRoot":"","sources":["../../../../src/components/Dropdown/Dropdown.tsx"],"names":[],"mappings":"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"}
|
package/dist/src/config.d.ts
CHANGED
|
@@ -11,12 +11,52 @@ type GetDefaultConfigParameters = WagmiConfigParameters & {
|
|
|
11
11
|
chains?: [Chain, ...Chain[]];
|
|
12
12
|
transports?: Pick<CreateConfigParameters, "transports">;
|
|
13
13
|
};
|
|
14
|
-
export declare const defaultTransports: Pick<CreateConfigParameters, "transports">;
|
|
15
14
|
export declare const defaultConfig: Required<Pick<GetDefaultConfigParameters, "transports" | "walletConnectProjectId" | "chains" | "multiInjectedProviderDiscovery">>;
|
|
16
15
|
export declare const unisatWallet: import("@mezo-org/orangekit").CreateWalletFn;
|
|
17
16
|
export declare const okxWallet: import("@mezo-org/orangekit").CreateWalletFn;
|
|
18
17
|
export declare const xverseWallet: import("@mezo-org/orangekit").CreateWalletFn;
|
|
19
18
|
export declare function getDefaultWallets(): WalletList;
|
|
20
19
|
export declare function getConfig({ appName, bitcoinWallets, walletConnectProjectId, ...restParameters }: GetDefaultConfigParameters): Config;
|
|
20
|
+
/**
|
|
21
|
+
* This config is only used to listen for Transfer events on mezo chain.
|
|
22
|
+
* Should not be exported in index for public use.
|
|
23
|
+
*/
|
|
24
|
+
export declare const simpleWssMezoConfig: Config<readonly [{
|
|
25
|
+
blockExplorers: {
|
|
26
|
+
readonly default: {
|
|
27
|
+
readonly name: "Matsnet Testnet Explorer";
|
|
28
|
+
readonly url: "https://explorer.test.mezo.org";
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
contracts: {
|
|
32
|
+
readonly multicall3: {
|
|
33
|
+
readonly address: "0xcA11bde05977b3631167028862bE2a173976CA11";
|
|
34
|
+
readonly blockCreated: 3669328;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
id: 31611;
|
|
38
|
+
name: "Mezo Matsnet Testnet";
|
|
39
|
+
nativeCurrency: {
|
|
40
|
+
readonly decimals: 18;
|
|
41
|
+
readonly name: "Bitcoin";
|
|
42
|
+
readonly symbol: "BTC";
|
|
43
|
+
};
|
|
44
|
+
rpcUrls: {
|
|
45
|
+
readonly default: {
|
|
46
|
+
readonly http: readonly ["https://rpc.test.mezo.org"];
|
|
47
|
+
readonly wss: readonly ["wss://rpc-ws.test.mezo.org"];
|
|
48
|
+
};
|
|
49
|
+
};
|
|
50
|
+
sourceId?: number | undefined | undefined;
|
|
51
|
+
testnet: true;
|
|
52
|
+
custom?: Record<string, unknown> | undefined;
|
|
53
|
+
fees?: import("viem").ChainFees<undefined> | undefined;
|
|
54
|
+
formatters?: undefined;
|
|
55
|
+
serializers?: import("viem").ChainSerializers<undefined, import("viem").TransactionSerializable> | undefined;
|
|
56
|
+
readonly iconUrl: "https://explorer.test.mezo.org/assets/configs/network_icon.svg";
|
|
57
|
+
readonly iconBackground: "#fff";
|
|
58
|
+
}], {
|
|
59
|
+
31611: import("viem").WebSocketTransport;
|
|
60
|
+
}>;
|
|
21
61
|
export {};
|
|
22
62
|
//# sourceMappingURL=config.d.ts.map
|
package/dist/src/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAoB,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAC5E,OAAO,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAoB,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAC5E,OAAO,EACL,MAAM,EAEN,sBAAsB,EAGvB,MAAM,OAAO,CAAA;AAId,KAAK,qBAAqB,GAAG,IAAI,CAC/B,sBAAsB,EACtB,QAAQ,GAAG,YAAY,GAAG,QAAQ,GAAG,SAAS,GAAG,YAAY,CAC9D,CAAA;AACD,KAAK,0BAA0B,GAAG,qBAAqB,GAAG;IACxD,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,cAAc,CAAC,EAAE,UAAU,CAAA;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC,CAAA;IAC5B,UAAU,CAAC,EAAE,IAAI,CAAC,sBAAsB,EAAE,YAAY,CAAC,CAAA;CACxD,CAAA;AAOD,eAAO,MAAM,aAAa,EAAE,QAAQ,CAClC,IAAI,CACF,0BAA0B,EACxB,YAAY,GACZ,wBAAwB,GACxB,QAAQ,GACR,gCAAgC,CACnC,CAMF,CAAA;AAQD,eAAO,MAAM,YAAY,8CAAuC,CAAA;AAChE,eAAO,MAAM,SAAS,8CAAoC,CAAA;AAC1D,eAAO,MAAM,YAAY,8CAAuC,CAAA;AAEhE,wBAAgB,iBAAiB,IAAI,UAAU,CAO9C;AAED,wBAAgB,SAAS,CAAC,EACxB,OAAO,EACP,cAAc,EACd,sBAAsB,EACtB,GAAG,cAAc,EAClB,EAAE,0BAA0B,GAAG,MAAM,CAQrC;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK9B,CAAA"}
|
package/dist/src/config.js
CHANGED
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
import { getDefaultConfig } from "@rainbow-me/rainbowkit";
|
|
2
|
-
import { webSocket } from "wagmi";
|
|
2
|
+
import { createConfig, http, webSocket, } from "wagmi";
|
|
3
3
|
import { CHAIN_ID, mezoTestnet, RPC_BY_NETWORK } from "./constants";
|
|
4
4
|
import { getOKXWallet, getUnisatWallet, getXverseWallet } from "./wallet";
|
|
5
|
-
|
|
5
|
+
const transports = {
|
|
6
6
|
// TODO: Add chain for mezo mainnet
|
|
7
|
-
[CHAIN_ID.testnet]:
|
|
7
|
+
[CHAIN_ID.testnet]: http(RPC_BY_NETWORK.testnet.http),
|
|
8
8
|
};
|
|
9
9
|
export const defaultConfig = {
|
|
10
|
-
transports
|
|
10
|
+
transports,
|
|
11
11
|
walletConnectProjectId: "",
|
|
12
12
|
chains: [mezoTestnet],
|
|
13
13
|
multiInjectedProviderDiscovery: true,
|
|
14
14
|
};
|
|
15
15
|
const bitcoinWalletConfig = {
|
|
16
|
-
|
|
16
|
+
// TODO: Add config for mezo mainnet
|
|
17
|
+
rpcUrl: RPC_BY_NETWORK.testnet.http,
|
|
17
18
|
chainId: CHAIN_ID.testnet,
|
|
18
19
|
};
|
|
19
20
|
export const unisatWallet = getUnisatWallet(bitcoinWalletConfig);
|
|
@@ -36,4 +37,14 @@ export function getConfig({ appName, bitcoinWallets, walletConnectProjectId, ...
|
|
|
36
37
|
...restParameters,
|
|
37
38
|
});
|
|
38
39
|
}
|
|
40
|
+
/**
|
|
41
|
+
* This config is only used to listen for Transfer events on mezo chain.
|
|
42
|
+
* Should not be exported in index for public use.
|
|
43
|
+
*/
|
|
44
|
+
export const simpleWssMezoConfig = createConfig({
|
|
45
|
+
chains: [mezoTestnet],
|
|
46
|
+
transports: {
|
|
47
|
+
[mezoTestnet.id]: webSocket(RPC_BY_NETWORK.testnet.wss),
|
|
48
|
+
},
|
|
49
|
+
});
|
|
39
50
|
//# sourceMappingURL=config.js.map
|
package/dist/src/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,gBAAgB,EAAc,MAAM,wBAAwB,CAAA;AAC5E,OAAO,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,gBAAgB,EAAc,MAAM,wBAAwB,CAAA;AAC5E,OAAO,EAEL,YAAY,EAEZ,IAAI,EACJ,SAAS,GACV,MAAM,OAAO,CAAA;AACd,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACnE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAiBzE,MAAM,UAAU,GAAG;IACjB,mCAAmC;IACnC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC;CACR,CAAA;AAE/C,MAAM,CAAC,MAAM,aAAa,GAQtB;IACF,UAAU;IACV,sBAAsB,EAAE,EAAE;IAC1B,MAAM,EAAE,CAAC,WAAW,CAAC;IACrB,8BAA8B,EAAE,IAAI;CACrC,CAAA;AAED,MAAM,mBAAmB,GAAG;IAC1B,oCAAoC;IACpC,MAAM,EAAE,cAAc,CAAC,OAAO,CAAC,IAAI;IACnC,OAAO,EAAE,QAAQ,CAAC,OAAO;CAC1B,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC,mBAAmB,CAAC,CAAA;AAChE,MAAM,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,mBAAmB,CAAC,CAAA;AAC1D,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC,mBAAmB,CAAC,CAAA;AAEhE,MAAM,UAAU,iBAAiB;IAC/B,OAAO;QACL;YACE,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,CAAC,YAAY,EAAE,SAAS,EAAE,YAAY,CAAC;SACjD;KACF,CAAA;AACH,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,EACxB,OAAO,EACP,cAAc,EACd,sBAAsB,EACtB,GAAG,cAAc,EACU;IAC3B,OAAO,gBAAgB,CAAC;QACtB,GAAG,aAAa;QAChB,OAAO;QACP,OAAO,EAAE,CAAC,GAAG,CAAC,cAAc,IAAI,iBAAiB,EAAE,CAAC,CAAC;QACrD,SAAS,EAAE,sBAAsB,IAAI,aAAa,CAAC,sBAAsB;QACzE,GAAG,cAAc;KAClB,CAAC,CAAA;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,YAAY,CAAC;IAC9C,MAAM,EAAE,CAAC,WAAW,CAAC;IACrB,UAAU,EAAE;QACV,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC;KACxD;CACF,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/hooks/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/hooks/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU;;;;;;CAMtB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/hooks/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,qBAAqB,EAAE,qBAAqB;CAC7C,CAAA"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/hooks/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,qBAAqB,EAAE,qBAAqB;CAC7C,CAAA"}
|
|
@@ -5,16 +5,15 @@ export type DropdownCryptoAsset<T = CryptoAssetKey> = {
|
|
|
5
5
|
};
|
|
6
6
|
/**
|
|
7
7
|
* Aggregates dropdown data for Dropdown component.
|
|
8
|
-
* @param {
|
|
9
|
-
* Object containing refetch intervals time (in milliseconds) for
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* 90000 (90 secs).
|
|
8
|
+
* @param {matsRefetchInterval: number, nativeBalanceRefetchInterval: number }
|
|
9
|
+
* Object containing refetch intervals time (in milliseconds) for mats and for
|
|
10
|
+
* native balance. After that time the specific value should be marked as stale
|
|
11
|
+
* and re-fetched. Default value for both is 90000 (90 secs).
|
|
13
12
|
* @returns Dropdown data.
|
|
14
13
|
* @dev This hook is for internal use only.
|
|
15
14
|
*/
|
|
16
|
-
export default function useDropdownData({
|
|
17
|
-
|
|
15
|
+
export default function useDropdownData({ matsRefetchInterval, nativeBalanceRefetchInterval, }: {
|
|
16
|
+
matsRefetchInterval?: number | undefined;
|
|
18
17
|
nativeBalanceRefetchInterval?: number | undefined;
|
|
19
18
|
}): {
|
|
20
19
|
mezoId: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDropdownData.d.ts","sourceRoot":"","sources":["../../../src/hooks/useDropdownData.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,cAAc,EAGf,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"useDropdownData.d.ts","sourceRoot":"","sources":["../../../src/hooks/useDropdownData.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,cAAc,EAGf,MAAM,uBAAuB,CAAA;AAW9B,MAAM,MAAM,mBAAmB,CAAC,CAAC,GAAG,cAAc,IAAI;IACpD,IAAI,EAAE,CAAC,CAAA;IACP,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AASD;;;;;;;;GAQG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EACtC,mBAA2B,EAC3B,4BAAoC,GACrC;;;CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiGA"}
|
|
@@ -9,6 +9,7 @@ import { useBorrowData } from "./useBorrowData";
|
|
|
9
9
|
import { CHAIN_ID } from "../constants";
|
|
10
10
|
import { usePassportContext } from "./usePassportContext";
|
|
11
11
|
import { useWatchTransferEventsForAllTokens } from "./useWatchTransferEvents";
|
|
12
|
+
import { useGetMatsByAddress } from "./useGetMatsByAddress";
|
|
12
13
|
const DEFAULT_ASSET_DATA = {
|
|
13
14
|
rawBalance: 0n,
|
|
14
15
|
formattedBalance: "0.0000",
|
|
@@ -17,15 +18,14 @@ const DEFAULT_ASSET_DATA = {
|
|
|
17
18
|
};
|
|
18
19
|
/**
|
|
19
20
|
* Aggregates dropdown data for Dropdown component.
|
|
20
|
-
* @param {
|
|
21
|
-
* Object containing refetch intervals time (in milliseconds) for
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
* 90000 (90 secs).
|
|
21
|
+
* @param {matsRefetchInterval: number, nativeBalanceRefetchInterval: number }
|
|
22
|
+
* Object containing refetch intervals time (in milliseconds) for mats and for
|
|
23
|
+
* native balance. After that time the specific value should be marked as stale
|
|
24
|
+
* and re-fetched. Default value for both is 90000 (90 secs).
|
|
25
25
|
* @returns Dropdown data.
|
|
26
26
|
* @dev This hook is for internal use only.
|
|
27
27
|
*/
|
|
28
|
-
export default function useDropdownData({
|
|
28
|
+
export default function useDropdownData({ matsRefetchInterval = 90000, nativeBalanceRefetchInterval = 90000, }) {
|
|
29
29
|
const { walletAddress, accountAddress, networkFamily: walletType, } = useWalletAccount();
|
|
30
30
|
const { environment = "mainnet" } = usePassportContext();
|
|
31
31
|
const { data: btcBalance } = useBalance({
|
|
@@ -36,9 +36,10 @@ export default function useDropdownData({ accountDataRefetchInterval = 90000, na
|
|
|
36
36
|
refetchInterval: nativeBalanceRefetchInterval,
|
|
37
37
|
},
|
|
38
38
|
});
|
|
39
|
-
const { data: passportAccount } = useGetCurrentAccount(
|
|
40
|
-
|
|
41
|
-
|
|
39
|
+
const { data: passportAccount } = useGetCurrentAccount();
|
|
40
|
+
const { data: matsForAccountAddress } = useGetMatsByAddress(accountAddress, {
|
|
41
|
+
staleTime: matsRefetchInterval,
|
|
42
|
+
refetchInterval: matsRefetchInterval,
|
|
42
43
|
});
|
|
43
44
|
const { data: assetsConversionRates } = useAssetsConversionRates();
|
|
44
45
|
const { data: tokensBalances } = useTokensBalances();
|
|
@@ -74,7 +75,7 @@ export default function useDropdownData({ accountDataRefetchInterval = 90000, na
|
|
|
74
75
|
};
|
|
75
76
|
const otherAssetsUsdTotal = otherAssetsData.reduce((sum, { usdBalance }) => sum + usdBalance, 0);
|
|
76
77
|
const usdTotalBalance = detailedAssets.reduce((sum, { usdBalance }) => sum + usdBalance, 0);
|
|
77
|
-
const matsBalance =
|
|
78
|
+
const matsBalance = matsForAccountAddress || 0;
|
|
78
79
|
const usdCollateral = fromFixedPoint((debt?.collateral ?? 0n) * BigInt(assetsConversionRates?.usd.btc ?? 0), 18);
|
|
79
80
|
const usdTroveDebt = fromFixedPoint(debt?.troveDebt ?? 0n, 18);
|
|
80
81
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDropdownData.js","sourceRoot":"","sources":["../../../src/hooks/useDropdownData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAClC,OAAO,EAAE,oBAAoB,EAAE,MAAM,GAAG,CAAA;AACxC,OAAO,EAEL,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,wBAAwB,MAAM,4BAA4B,CAAA;AACjE,OAAO,gBAAgB,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,kCAAkC,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"useDropdownData.js","sourceRoot":"","sources":["../../../src/hooks/useDropdownData.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { UseBaseQueryOptions } from "@tanstack/react-query";
|
|
2
|
+
export declare function useGetMatsByAddress(address?: string, queryOptions?: Omit<UseBaseQueryOptions<number | null>, "queryKey" | "queryFn">): import("@tanstack/react-query").UseQueryResult<number | null, Error>;
|
|
3
|
+
//# sourceMappingURL=useGetMatsByAddress.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useGetMatsByAddress.d.ts","sourceRoot":"","sources":["../../../src/hooks/useGetMatsByAddress.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAKhF,wBAAgB,mBAAmB,CACjC,OAAO,CAAC,EAAE,MAAM,EAChB,YAAY,GAAE,IAAI,CAChB,mBAAmB,CAAC,MAAM,GAAG,IAAI,CAAC,EAClC,UAAU,GAAG,SAAS,CAClB,wEAgBP"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { useQuery, skipToken } from "@tanstack/react-query";
|
|
2
|
+
import { QUERY_KEYS } from "./constants";
|
|
3
|
+
import { ONE_MINUTE_MS } from "../utils/time";
|
|
4
|
+
import { usePortalApiClient } from "./usePortalApiClient";
|
|
5
|
+
export function useGetMatsByAddress(address, queryOptions = {}) {
|
|
6
|
+
const portalApiClient = usePortalApiClient();
|
|
7
|
+
return useQuery({
|
|
8
|
+
queryKey: [QUERY_KEYS.MATS, address],
|
|
9
|
+
queryFn: address
|
|
10
|
+
? async () => {
|
|
11
|
+
const portalMats = await portalApiClient.getPortalMats(address);
|
|
12
|
+
return portalMats.totalMats;
|
|
13
|
+
}
|
|
14
|
+
: skipToken,
|
|
15
|
+
staleTime: ONE_MINUTE_MS,
|
|
16
|
+
retry: 1,
|
|
17
|
+
...queryOptions,
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=useGetMatsByAddress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useGetMatsByAddress.js","sourceRoot":"","sources":["../../../src/hooks/useGetMatsByAddress.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAuB,MAAM,uBAAuB,CAAA;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAEzD,MAAM,UAAU,mBAAmB,CACjC,OAAgB,EAChB,eAGI,EAAE;IAEN,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAA;IAE5C,OAAO,QAAQ,CAAC;QACd,QAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC;QACpC,OAAO,EAAE,OAAO;YACd,CAAC,CAAC,KAAK,IAAI,EAAE;gBACT,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;gBAC/D,OAAO,UAAU,CAAC,SAAS,CAAA;YAC7B,CAAC;YACH,CAAC,CAAC,SAAS;QACb,SAAS,EAAE,aAAa;QACxB,KAAK,EAAE,CAAC;QACR,GAAG,YAAY;KAChB,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWatchTransferEvents.d.ts","sourceRoot":"","sources":["../../../src/hooks/useWatchTransferEvents.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,cAAc,EAEf,MAAM,kBAAkB,CAAA;AAMzB,iBAAS,sBAAsB,CAAC,KAAK,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"useWatchTransferEvents.d.ts","sourceRoot":"","sources":["../../../src/hooks/useWatchTransferEvents.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,cAAc,EAEf,MAAM,kBAAkB,CAAA;AAMzB,iBAAS,sBAAsB,CAAC,KAAK,EAAE,cAAc,QA2CpD;AAED,iBAAS,kCAAkC,SAY1C;AAED,OAAO,EAAE,sBAAsB,EAAE,kCAAkC,EAAE,CAAA"}
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
import { useMemo } from "react";
|
|
2
|
-
import { useAccount,
|
|
2
|
+
import { useAccount, useWatchContractEvent } from "wagmi";
|
|
3
3
|
import { mainnetContracts, testnetContracts, } from "../lib/contracts";
|
|
4
4
|
import { usePassportContext } from "./usePassportContext";
|
|
5
5
|
import { CHAIN_ID } from "../constants";
|
|
6
6
|
import { useRefreshPassport } from "./useRefreshPassport";
|
|
7
|
-
import {
|
|
7
|
+
import { simpleWssMezoConfig } from "../config";
|
|
8
8
|
function useWatchTransferEvents(token) {
|
|
9
9
|
const { address: userAddress } = useAccount();
|
|
10
10
|
const { environment = "mainnet" } = usePassportContext();
|
|
11
11
|
const { refreshTokensBalances, refreshBorrowData } = useRefreshPassport();
|
|
12
|
-
const config = useConfig();
|
|
13
12
|
const contract = useMemo(() => {
|
|
14
13
|
const contracts = environment === "mainnet" ? mainnetContracts : testnetContracts;
|
|
15
14
|
return contracts[token];
|
|
@@ -22,11 +21,9 @@ function useWatchTransferEvents(token) {
|
|
|
22
21
|
from: userAddress,
|
|
23
22
|
},
|
|
24
23
|
chainId: CHAIN_ID[environment],
|
|
25
|
-
config: { ...config, transports: defaultTransports },
|
|
26
24
|
enabled: !!userAddress,
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
console.log("logs: ", logs);
|
|
25
|
+
config: simpleWssMezoConfig,
|
|
26
|
+
onLogs() {
|
|
30
27
|
refreshTokensBalances();
|
|
31
28
|
refreshBorrowData();
|
|
32
29
|
},
|
|
@@ -39,11 +36,9 @@ function useWatchTransferEvents(token) {
|
|
|
39
36
|
to: userAddress,
|
|
40
37
|
},
|
|
41
38
|
chainId: CHAIN_ID[environment],
|
|
42
|
-
config: { ...config, transports: defaultTransports },
|
|
43
39
|
enabled: !!userAddress,
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
console.log("logs: ", logs);
|
|
40
|
+
config: simpleWssMezoConfig,
|
|
41
|
+
onLogs() {
|
|
47
42
|
refreshTokensBalances();
|
|
48
43
|
refreshBorrowData();
|
|
49
44
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWatchTransferEvents.js","sourceRoot":"","sources":["../../../src/hooks/useWatchTransferEvents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAC/B,OAAO,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"useWatchTransferEvents.js","sourceRoot":"","sources":["../../../src/hooks/useWatchTransferEvents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAC/B,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAA;AACzD,OAAO,EACL,gBAAgB,EAEhB,gBAAgB,GACjB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAA;AAE/C,SAAS,sBAAsB,CAAC,KAAqB;IACnD,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,UAAU,EAAE,CAAA;IAC7C,MAAM,EAAE,WAAW,GAAG,SAAS,EAAE,GAAG,kBAAkB,EAAE,CAAA;IACxD,MAAM,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,GAAG,kBAAkB,EAAE,CAAA;IAEzE,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;QAC5B,MAAM,SAAS,GACb,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAA;QAEjE,OAAO,SAAS,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAA;IAExB,qBAAqB,CAAC;QACpB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,GAAG,EAAE,QAAQ,CAAC,GAAG;QACjB,SAAS,EAAE,UAAU;QACrB,IAAI,EAAE;YACJ,IAAI,EAAE,WAAW;SAClB;QACD,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC;QAC9B,OAAO,EAAE,CAAC,CAAC,WAAW;QACtB,MAAM,EAAE,mBAAmB;QAC3B,MAAM;YACJ,qBAAqB,EAAE,CAAA;YACvB,iBAAiB,EAAE,CAAA;QACrB,CAAC;KACF,CAAC,CAAA;IAEF,qBAAqB,CAAC;QACpB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,GAAG,EAAE,QAAQ,CAAC,GAAG;QACjB,SAAS,EAAE,UAAU;QACrB,IAAI,EAAE;YACJ,EAAE,EAAE,WAAW;SAChB;QACD,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC;QAC9B,OAAO,EAAE,CAAC,CAAC,WAAW;QACtB,MAAM,EAAE,mBAAmB;QAC3B,MAAM;YACJ,qBAAqB,EAAE,CAAA;YACvB,iBAAiB,EAAE,CAAA;QACrB,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,kCAAkC;IACzC,sBAAsB,CAAC,QAAQ,CAAC,CAAA;IAChC,sBAAsB,CAAC,MAAM,CAAC,CAAA;IAC9B,sBAAsB,CAAC,OAAO,CAAC,CAAA;IAC/B,sBAAsB,CAAC,UAAU,CAAC,CAAA;IAClC,sBAAsB,CAAC,QAAQ,CAAC,CAAA;IAChC,sBAAsB,CAAC,IAAI,CAAC,CAAA;IAC5B,sBAAsB,CAAC,OAAO,CAAC,CAAA;IAC/B,sBAAsB,CAAC,OAAO,CAAC,CAAA;IAC/B,sBAAsB,CAAC,OAAO,CAAC,CAAA;IAC/B,sBAAsB,CAAC,WAAW,CAAC,CAAA;IACnC,sBAAsB,CAAC,MAAM,CAAC,CAAA;AAChC,CAAC;AAED,OAAO,EAAE,sBAAsB,EAAE,kCAAkC,EAAE,CAAA"}
|
package/dist/src/index.d.ts
CHANGED
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,OAAO,EACL,aAAa,EACb,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,GACV,MAAM,UAAU,CAAA;AACjB,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA"}
|
package/dist/src/index.js
CHANGED
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,OAAO,EACL,aAAa,EACb,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,GACV,MAAM,UAAU,CAAA;AACjB,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA"}
|
package/package.json
CHANGED
|
@@ -28,8 +28,8 @@ export type DropdownProps = {
|
|
|
28
28
|
signedOut?: Omit<ButtonProps, "onClick">
|
|
29
29
|
}
|
|
30
30
|
onOtherAssetsClick?: () => void
|
|
31
|
-
/** Time in milliseconds after which
|
|
32
|
-
|
|
31
|
+
/** Time in milliseconds after which mats balance in dropdown should be re-fetched. Default is 90000 (90 secs) */
|
|
32
|
+
matsRefetchInterval?: number
|
|
33
33
|
/** Time in milliseconds after which native balance in dropdown should be re-fetched. Default is 90000 (90 secs) */
|
|
34
34
|
nativeBalanceRefetchInterval?: number
|
|
35
35
|
} & Omit<StatefulPopoverProps, "children" | "content">
|
|
@@ -48,7 +48,7 @@ export function Dropdown(props: DropdownProps) {
|
|
|
48
48
|
overrides,
|
|
49
49
|
triggerProps,
|
|
50
50
|
onOtherAssetsClick,
|
|
51
|
-
|
|
51
|
+
matsRefetchInterval,
|
|
52
52
|
nativeBalanceRefetchInterval,
|
|
53
53
|
...restProps
|
|
54
54
|
} = props
|
|
@@ -56,7 +56,7 @@ export function Dropdown(props: DropdownProps) {
|
|
|
56
56
|
const [, theme] = useStyletron()
|
|
57
57
|
|
|
58
58
|
const data = useDropdownData({
|
|
59
|
-
|
|
59
|
+
matsRefetchInterval,
|
|
60
60
|
nativeBalanceRefetchInterval,
|
|
61
61
|
})
|
|
62
62
|
|
package/src/config.ts
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import { Chain, getDefaultConfig, WalletList } from "@rainbow-me/rainbowkit"
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
Config,
|
|
4
|
+
createConfig,
|
|
5
|
+
CreateConfigParameters,
|
|
6
|
+
http,
|
|
7
|
+
webSocket,
|
|
8
|
+
} from "wagmi"
|
|
3
9
|
import { CHAIN_ID, mezoTestnet, RPC_BY_NETWORK } from "./constants"
|
|
4
10
|
import { getOKXWallet, getUnisatWallet, getXverseWallet } from "./wallet"
|
|
5
11
|
|
|
@@ -18,9 +24,9 @@ type GetDefaultConfigParameters = WagmiConfigParameters & {
|
|
|
18
24
|
transports?: Pick<CreateConfigParameters, "transports">
|
|
19
25
|
}
|
|
20
26
|
|
|
21
|
-
|
|
27
|
+
const transports = {
|
|
22
28
|
// TODO: Add chain for mezo mainnet
|
|
23
|
-
[CHAIN_ID.testnet]:
|
|
29
|
+
[CHAIN_ID.testnet]: http(RPC_BY_NETWORK.testnet.http),
|
|
24
30
|
} as Pick<CreateConfigParameters, "transports">
|
|
25
31
|
|
|
26
32
|
export const defaultConfig: Required<
|
|
@@ -32,14 +38,15 @@ export const defaultConfig: Required<
|
|
|
32
38
|
| "multiInjectedProviderDiscovery"
|
|
33
39
|
>
|
|
34
40
|
> = {
|
|
35
|
-
transports
|
|
41
|
+
transports,
|
|
36
42
|
walletConnectProjectId: "",
|
|
37
43
|
chains: [mezoTestnet],
|
|
38
44
|
multiInjectedProviderDiscovery: true,
|
|
39
45
|
}
|
|
40
46
|
|
|
41
47
|
const bitcoinWalletConfig = {
|
|
42
|
-
|
|
48
|
+
// TODO: Add config for mezo mainnet
|
|
49
|
+
rpcUrl: RPC_BY_NETWORK.testnet.http,
|
|
43
50
|
chainId: CHAIN_ID.testnet,
|
|
44
51
|
}
|
|
45
52
|
|
|
@@ -70,3 +77,14 @@ export function getConfig({
|
|
|
70
77
|
...restParameters,
|
|
71
78
|
})
|
|
72
79
|
}
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* This config is only used to listen for Transfer events on mezo chain.
|
|
83
|
+
* Should not be exported in index for public use.
|
|
84
|
+
*/
|
|
85
|
+
export const simpleWssMezoConfig = createConfig({
|
|
86
|
+
chains: [mezoTestnet],
|
|
87
|
+
transports: {
|
|
88
|
+
[mezoTestnet.id]: webSocket(RPC_BY_NETWORK.testnet.wss),
|
|
89
|
+
},
|
|
90
|
+
})
|
package/src/hooks/constants.ts
CHANGED
|
@@ -13,6 +13,7 @@ import { useBorrowData } from "./useBorrowData"
|
|
|
13
13
|
import { CHAIN_ID } from "../constants"
|
|
14
14
|
import { usePassportContext } from "./usePassportContext"
|
|
15
15
|
import { useWatchTransferEventsForAllTokens } from "./useWatchTransferEvents"
|
|
16
|
+
import { useGetMatsByAddress } from "./useGetMatsByAddress"
|
|
16
17
|
|
|
17
18
|
export type DropdownCryptoAsset<T = CryptoAssetKey> = {
|
|
18
19
|
type: T
|
|
@@ -28,16 +29,15 @@ const DEFAULT_ASSET_DATA = {
|
|
|
28
29
|
|
|
29
30
|
/**
|
|
30
31
|
* Aggregates dropdown data for Dropdown component.
|
|
31
|
-
* @param {
|
|
32
|
-
* Object containing refetch intervals time (in milliseconds) for
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
* 90000 (90 secs).
|
|
32
|
+
* @param {matsRefetchInterval: number, nativeBalanceRefetchInterval: number }
|
|
33
|
+
* Object containing refetch intervals time (in milliseconds) for mats and for
|
|
34
|
+
* native balance. After that time the specific value should be marked as stale
|
|
35
|
+
* and re-fetched. Default value for both is 90000 (90 secs).
|
|
36
36
|
* @returns Dropdown data.
|
|
37
37
|
* @dev This hook is for internal use only.
|
|
38
38
|
*/
|
|
39
39
|
export default function useDropdownData({
|
|
40
|
-
|
|
40
|
+
matsRefetchInterval = 90000,
|
|
41
41
|
nativeBalanceRefetchInterval = 90000,
|
|
42
42
|
}) {
|
|
43
43
|
const {
|
|
@@ -54,9 +54,10 @@ export default function useDropdownData({
|
|
|
54
54
|
refetchInterval: nativeBalanceRefetchInterval,
|
|
55
55
|
},
|
|
56
56
|
})
|
|
57
|
-
const { data: passportAccount } = useGetCurrentAccount(
|
|
58
|
-
|
|
59
|
-
|
|
57
|
+
const { data: passportAccount } = useGetCurrentAccount()
|
|
58
|
+
const { data: matsForAccountAddress } = useGetMatsByAddress(accountAddress, {
|
|
59
|
+
staleTime: matsRefetchInterval,
|
|
60
|
+
refetchInterval: matsRefetchInterval,
|
|
60
61
|
})
|
|
61
62
|
const { data: assetsConversionRates } = useAssetsConversionRates()
|
|
62
63
|
const { data: tokensBalances } = useTokensBalances()
|
|
@@ -113,7 +114,7 @@ export default function useDropdownData({
|
|
|
113
114
|
0,
|
|
114
115
|
)
|
|
115
116
|
|
|
116
|
-
const matsBalance =
|
|
117
|
+
const matsBalance = matsForAccountAddress || 0
|
|
117
118
|
|
|
118
119
|
const usdCollateral = fromFixedPoint(
|
|
119
120
|
(debt?.collateral ?? 0n) * BigInt(assetsConversionRates?.usd.btc ?? 0),
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { useQuery, skipToken, UseBaseQueryOptions } from "@tanstack/react-query"
|
|
2
|
+
import { QUERY_KEYS } from "./constants"
|
|
3
|
+
import { ONE_MINUTE_MS } from "../utils/time"
|
|
4
|
+
import { usePortalApiClient } from "./usePortalApiClient"
|
|
5
|
+
|
|
6
|
+
export function useGetMatsByAddress(
|
|
7
|
+
address?: string,
|
|
8
|
+
queryOptions: Omit<
|
|
9
|
+
UseBaseQueryOptions<number | null>,
|
|
10
|
+
"queryKey" | "queryFn"
|
|
11
|
+
> = {},
|
|
12
|
+
) {
|
|
13
|
+
const portalApiClient = usePortalApiClient()
|
|
14
|
+
|
|
15
|
+
return useQuery({
|
|
16
|
+
queryKey: [QUERY_KEYS.MATS, address],
|
|
17
|
+
queryFn: address
|
|
18
|
+
? async () => {
|
|
19
|
+
const portalMats = await portalApiClient.getPortalMats(address)
|
|
20
|
+
return portalMats.totalMats
|
|
21
|
+
}
|
|
22
|
+
: skipToken,
|
|
23
|
+
staleTime: ONE_MINUTE_MS,
|
|
24
|
+
retry: 1,
|
|
25
|
+
...queryOptions,
|
|
26
|
+
})
|
|
27
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useMemo } from "react"
|
|
2
|
-
import { useAccount,
|
|
2
|
+
import { useAccount, useWatchContractEvent } from "wagmi"
|
|
3
3
|
import {
|
|
4
4
|
mainnetContracts,
|
|
5
5
|
MezoChainToken,
|
|
@@ -8,13 +8,12 @@ import {
|
|
|
8
8
|
import { usePassportContext } from "./usePassportContext"
|
|
9
9
|
import { CHAIN_ID } from "../constants"
|
|
10
10
|
import { useRefreshPassport } from "./useRefreshPassport"
|
|
11
|
-
import {
|
|
11
|
+
import { simpleWssMezoConfig } from "../config"
|
|
12
12
|
|
|
13
13
|
function useWatchTransferEvents(token: MezoChainToken) {
|
|
14
14
|
const { address: userAddress } = useAccount()
|
|
15
15
|
const { environment = "mainnet" } = usePassportContext()
|
|
16
16
|
const { refreshTokensBalances, refreshBorrowData } = useRefreshPassport()
|
|
17
|
-
const config = useConfig()
|
|
18
17
|
|
|
19
18
|
const contract = useMemo(() => {
|
|
20
19
|
const contracts =
|
|
@@ -31,11 +30,9 @@ function useWatchTransferEvents(token: MezoChainToken) {
|
|
|
31
30
|
from: userAddress,
|
|
32
31
|
},
|
|
33
32
|
chainId: CHAIN_ID[environment],
|
|
34
|
-
config: { ...config, transports: defaultTransports },
|
|
35
33
|
enabled: !!userAddress,
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
console.log("logs: ", logs)
|
|
34
|
+
config: simpleWssMezoConfig,
|
|
35
|
+
onLogs() {
|
|
39
36
|
refreshTokensBalances()
|
|
40
37
|
refreshBorrowData()
|
|
41
38
|
},
|
|
@@ -49,11 +46,9 @@ function useWatchTransferEvents(token: MezoChainToken) {
|
|
|
49
46
|
to: userAddress,
|
|
50
47
|
},
|
|
51
48
|
chainId: CHAIN_ID[environment],
|
|
52
|
-
config: { ...config, transports: defaultTransports },
|
|
53
49
|
enabled: !!userAddress,
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
console.log("logs: ", logs)
|
|
50
|
+
config: simpleWssMezoConfig,
|
|
51
|
+
onLogs() {
|
|
57
52
|
refreshTokensBalances()
|
|
58
53
|
refreshBorrowData()
|
|
59
54
|
},
|
package/src/index.ts
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
export * from "./components"
|
|
2
|
-
export
|
|
2
|
+
export {
|
|
3
|
+
defaultConfig,
|
|
4
|
+
unisatWallet,
|
|
5
|
+
okxWallet,
|
|
6
|
+
xverseWallet,
|
|
7
|
+
getDefaultWallets,
|
|
8
|
+
getConfig,
|
|
9
|
+
} from "./config"
|
|
3
10
|
export * from "./constants"
|
|
4
11
|
export * from "./hooks"
|
|
5
12
|
export * from "./provider"
|