@levrbet/shared 0.5.59 → 0.5.60
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/react/hooks/contracts/erc20/useApproveErc20.d.ts +1 -0
- package/dist/react/hooks/contracts/erc20/useApproveErc20.js +7 -2
- package/dist/react/hooks/contracts/erc20/useApproveErc20.js.map +1 -1
- package/dist/react/hooks/contracts/erc20/useTransferErc20.d.ts +1 -0
- package/dist/react/hooks/contracts/erc20/useTransferErc20.js +7 -2
- package/dist/react/hooks/contracts/erc20/useTransferErc20.js.map +1 -1
- package/dist/react/injectedDependencies.d.ts +4 -1
- package/dist/react/injectedDependencies.js.map +1 -1
- package/package.json +1 -1
|
@@ -7,6 +7,7 @@ interface UseApproveErc20Params {
|
|
|
7
7
|
}
|
|
8
8
|
export declare const useApproveErc20: ({ erc20Address, chainId: _chainId, spenderAddress }?: UseApproveErc20Params) => import("@tanstack/react-query").UseMutationResult<{
|
|
9
9
|
hash: `0x${string}`;
|
|
10
|
+
receipt: import("viem").TransactionReceipt;
|
|
10
11
|
}, Error, {
|
|
11
12
|
amount: bigint;
|
|
12
13
|
}, unknown>;
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useApproveErc20 = void 0;
|
|
4
|
+
const actions_1 = require("viem/actions");
|
|
4
5
|
const core_1 = require("../../../../core");
|
|
5
6
|
const injectedDependencies_1 = require("../../../injectedDependencies");
|
|
6
7
|
const queryKeys_1 = require("../../../queryKeys");
|
|
7
8
|
const useApproveErc20 = ({ erc20Address, chainId: _chainId, spenderAddress } = {}) => {
|
|
8
|
-
const { useMutation, useChainId, useConnectorClient, useAccount } = (0, injectedDependencies_1.getDependencies)();
|
|
9
|
+
const { useMutation, useChainId, useConnectorClient, usePublicClient, useAccount } = (0, injectedDependencies_1.getDependencies)();
|
|
9
10
|
const chainId = useChainId?.() ?? _chainId;
|
|
10
11
|
const { data: walletClient } = useConnectorClient?.() ?? {};
|
|
12
|
+
const { data: publicClient } = usePublicClient?.() ?? {};
|
|
11
13
|
const { address: userAddress } = useAccount?.() ?? {};
|
|
12
14
|
return useMutation({
|
|
13
15
|
mutationFn: async ({ amount }) => {
|
|
@@ -15,9 +17,12 @@ const useApproveErc20 = ({ erc20Address, chainId: _chainId, spenderAddress } = {
|
|
|
15
17
|
throw new Error("Missing erc20Address, chainId, or spenderAddress");
|
|
16
18
|
if (!walletClient)
|
|
17
19
|
throw new Error("Wallet client not available");
|
|
20
|
+
if (!publicClient)
|
|
21
|
+
throw new Error("Public client not available");
|
|
18
22
|
const contract = (0, core_1.getErc20Contract)(erc20Address, chainId, { walletClient });
|
|
19
23
|
const hash = await contract.write.approve([spenderAddress, amount]);
|
|
20
|
-
|
|
24
|
+
const receipt = await (0, actions_1.waitForTransactionReceipt)(publicClient, { hash });
|
|
25
|
+
return { hash, receipt };
|
|
21
26
|
},
|
|
22
27
|
meta: {
|
|
23
28
|
invalidatesQueries: [queryKeys_1.queryKeys.erc20.allowance(erc20Address, userAddress, spenderAddress, chainId)],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useApproveErc20.js","sourceRoot":"","sources":["../../../../../src/react/hooks/contracts/erc20/useApproveErc20.ts"],"names":[],"mappings":";;;AACA,2CAA8D;AAC9D,wEAA+D;AAC/D,kDAA8C;AAQvC,MAAM,eAAe,GAAG,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,GAA0B,EAAE,EAAE,EAAE;IAC/G,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,kBAAkB,EAAE,UAAU,EAAE,GAAG,IAAA,sCAAe,GAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"useApproveErc20.js","sourceRoot":"","sources":["../../../../../src/react/hooks/contracts/erc20/useApproveErc20.ts"],"names":[],"mappings":";;;AACA,0CAAwD;AACxD,2CAA8D;AAC9D,wEAA+D;AAC/D,kDAA8C;AAQvC,MAAM,eAAe,GAAG,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,GAA0B,EAAE,EAAE,EAAE;IAC/G,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,kBAAkB,EAAE,eAAe,EAAE,UAAU,EAAE,GAAG,IAAA,sCAAe,GAAE,CAAA;IACtG,MAAM,OAAO,GAAG,UAAU,EAAE,EAAE,IAAI,QAAQ,CAAA;IAC1C,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,kBAAkB,EAAE,EAAE,IAAI,EAAE,CAAA;IAC3D,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,eAAe,EAAE,EAAE,IAAI,EAAE,CAAA;IACxD,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,UAAU,EAAE,EAAE,IAAI,EAAE,CAAA;IAErD,OAAO,WAAY,CAAC;QAChB,UAAU,EAAE,KAAK,EAAE,EAAE,MAAM,EAAsB,EAAE,EAAE;YACjD,IAAI,CAAC,YAAY,IAAI,CAAC,OAAO,IAAI,CAAC,cAAc;gBAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;YACrH,IAAI,CAAC,YAAY;gBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;YACjE,IAAI,CAAC,YAAY;gBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;YAEjE,MAAM,QAAQ,GAAG,IAAA,uBAAgB,EAAC,YAAY,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,CAAC,CAAA;YAC1E,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAA;YACnE,MAAM,OAAO,GAAG,MAAM,IAAA,mCAAyB,EAAC,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;YAEvE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;QAC5B,CAAC;QACD,IAAI,EAAE;YACF,kBAAkB,EAAE,CAAC,qBAAS,CAAC,KAAK,CAAC,SAAS,CAAC,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;SACtG;KACJ,CAAC,CAAA;AACN,CAAC,CAAA;AAvBY,QAAA,eAAe,GAAf,eAAe,CAuB3B"}
|
|
@@ -7,6 +7,7 @@ interface UseTransferErc20Params {
|
|
|
7
7
|
}
|
|
8
8
|
export declare const useTransferErc20: ({ erc20Address, chainId: _chainId, toAddress }?: UseTransferErc20Params) => import("@tanstack/react-query").UseMutationResult<{
|
|
9
9
|
hash: `0x${string}`;
|
|
10
|
+
receipt: import("viem").TransactionReceipt;
|
|
10
11
|
}, Error, {
|
|
11
12
|
amount: bigint;
|
|
12
13
|
}, unknown>;
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useTransferErc20 = void 0;
|
|
4
|
+
const actions_1 = require("viem/actions");
|
|
4
5
|
const core_1 = require("../../../../core");
|
|
5
6
|
const injectedDependencies_1 = require("../../../injectedDependencies");
|
|
6
7
|
const queryKeys_1 = require("../../../queryKeys");
|
|
7
8
|
const useTransferErc20 = ({ erc20Address, chainId: _chainId, toAddress } = {}) => {
|
|
8
|
-
const { useMutation, useChainId, useConnectorClient, useAccount } = (0, injectedDependencies_1.getDependencies)();
|
|
9
|
+
const { useMutation, useChainId, useConnectorClient, usePublicClient, useAccount } = (0, injectedDependencies_1.getDependencies)();
|
|
9
10
|
const chainId = useChainId?.() ?? _chainId;
|
|
10
11
|
const { data: walletClient } = useConnectorClient?.() ?? {};
|
|
12
|
+
const { data: publicClient } = usePublicClient?.() ?? {};
|
|
11
13
|
const { address: userAddress } = useAccount?.() ?? {};
|
|
12
14
|
return useMutation({
|
|
13
15
|
mutationFn: async ({ amount }) => {
|
|
@@ -15,9 +17,12 @@ const useTransferErc20 = ({ erc20Address, chainId: _chainId, toAddress } = {}) =
|
|
|
15
17
|
throw new Error("Missing erc20Address, chainId, or toAddress");
|
|
16
18
|
if (!walletClient)
|
|
17
19
|
throw new Error("Wallet client not available");
|
|
20
|
+
if (!publicClient)
|
|
21
|
+
throw new Error("Public client not available");
|
|
18
22
|
const contract = (0, core_1.getErc20Contract)(erc20Address, chainId, { walletClient });
|
|
19
23
|
const hash = await contract.write.transfer([toAddress, amount]);
|
|
20
|
-
|
|
24
|
+
const receipt = await (0, actions_1.waitForTransactionReceipt)(publicClient, { hash });
|
|
25
|
+
return { hash, receipt };
|
|
21
26
|
},
|
|
22
27
|
meta: {
|
|
23
28
|
invalidatesQueries: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTransferErc20.js","sourceRoot":"","sources":["../../../../../src/react/hooks/contracts/erc20/useTransferErc20.ts"],"names":[],"mappings":";;;AACA,2CAA8D;AAC9D,wEAA+D;AAC/D,kDAA8C;AAQvC,MAAM,gBAAgB,GAAG,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,GAA2B,EAAE,EAAE,EAAE;IAC5G,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,kBAAkB,EAAE,UAAU,EAAE,GAAG,IAAA,sCAAe,GAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"useTransferErc20.js","sourceRoot":"","sources":["../../../../../src/react/hooks/contracts/erc20/useTransferErc20.ts"],"names":[],"mappings":";;;AACA,0CAAwD;AACxD,2CAA8D;AAC9D,wEAA+D;AAC/D,kDAA8C;AAQvC,MAAM,gBAAgB,GAAG,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,GAA2B,EAAE,EAAE,EAAE;IAC5G,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,kBAAkB,EAAE,eAAe,EAAE,UAAU,EAAE,GAAG,IAAA,sCAAe,GAAE,CAAA;IACtG,MAAM,OAAO,GAAG,UAAU,EAAE,EAAE,IAAI,QAAQ,CAAA;IAC1C,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,kBAAkB,EAAE,EAAE,IAAI,EAAE,CAAA;IAC3D,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,eAAe,EAAE,EAAE,IAAI,EAAE,CAAA;IACxD,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,UAAU,EAAE,EAAE,IAAI,EAAE,CAAA;IAErD,OAAO,WAAY,CAAC;QAChB,UAAU,EAAE,KAAK,EAAE,EAAE,MAAM,EAAsB,EAAE,EAAE;YACjD,IAAI,CAAC,YAAY,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;YAC3G,IAAI,CAAC,YAAY;gBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;YACjE,IAAI,CAAC,YAAY;gBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;YAEjE,MAAM,QAAQ,GAAG,IAAA,uBAAgB,EAAC,YAAY,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,CAAC,CAAA;YAC1E,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;YAC/D,MAAM,OAAO,GAAG,MAAM,IAAA,mCAAyB,EAAC,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;YAEvE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;QAC5B,CAAC;QACD,IAAI,EAAE;YACF,kBAAkB,EAAE;gBAChB,qBAAS,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,WAAW,EAAE,OAAO,CAAC;gBAC3D,qBAAS,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC;aAC5D;SACJ;KACJ,CAAC,CAAA;AACN,CAAC,CAAA;AA1BY,QAAA,gBAAgB,GAAhB,gBAAgB,CA0B5B"}
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
*/
|
|
21
21
|
import { useIdentityToken, usePrivy, useUser } from "@privy-io/react-auth";
|
|
22
22
|
import type { useMutation, useQuery } from "@tanstack/react-query";
|
|
23
|
-
import type { Address, WalletClient } from "viem";
|
|
23
|
+
import type { Address, PublicClient, WalletClient } from "viem";
|
|
24
24
|
import { LevrChain, LevrEnv } from "../core";
|
|
25
25
|
export interface InjectedDependencies {
|
|
26
26
|
usePrivy: typeof usePrivy;
|
|
@@ -35,6 +35,9 @@ export interface InjectedDependencies {
|
|
|
35
35
|
useConnectorClient?: () => {
|
|
36
36
|
data?: WalletClient;
|
|
37
37
|
};
|
|
38
|
+
usePublicClient?: () => {
|
|
39
|
+
data?: PublicClient;
|
|
40
|
+
};
|
|
38
41
|
levrEnv: LevrEnv;
|
|
39
42
|
}
|
|
40
43
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"injectedDependencies.js","sourceRoot":"","sources":["../../src/react/injectedDependencies.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;;;
|
|
1
|
+
{"version":3,"file":"injectedDependencies.js","sourceRoot":"","sources":["../../src/react/injectedDependencies.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;;;AAoBH;;GAEG;AACH,IAAI,oBAAoB,GAAgC,IAAI,CAAA;AAE5D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,4BAAmC,YAAkC;IACjE,IAAI,oBAAoB,KAAK,IAAI,EAAE,CAAC;QAChC,OAAO,CAAC,IAAI,CACR,oDAAoD;YAChD,iFAAiF,CACxF,CAAA;IACL,CAAC;IAED,uDAAuD;IACvD,IACI,CAAC,YAAY,CAAC,QAAQ;QACtB,CAAC,YAAY,CAAC,gBAAgB;QAC9B,CAAC,YAAY,CAAC,OAAO;QACrB,CAAC,YAAY,CAAC,QAAQ;QACtB,CAAC,YAAY,CAAC,WAAW;QACzB,CAAC,YAAY,CAAC,OAAO,EACvB,CAAC;QACC,MAAM,IAAI,KAAK,CACX,4GAA4G,CAC/G,CAAA;IACL,CAAC;IAED,oBAAoB,GAAG,YAAY,CAAA;AACvC,CAAC;AAED;;;;;;;;;;GAUG;AACH;IACI,IAAI,oBAAoB,KAAK,IAAI,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CACX,uCAAuC;YACnC,6FAA6F;YAC7F,4CAA4C;YAC5C,iGAAiG,CACxG,CAAA;IACL,CAAC;IAED,OAAO,oBAAoB,CAAA;AAC/B,CAAC;AAED;;;;GAIG;AACH;IACI,oBAAoB,GAAG,IAAI,CAAA;AAC/B,CAAC"}
|