@pyratzlabs/react-fhevm-utils 2.3.4 → 3.1.0

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.
@@ -8,14 +8,14 @@ export declare const useDecryptHandles: () => {
8
8
  isPending: false;
9
9
  isSuccess: false;
10
10
  status: "idle";
11
- mutate: import("@tanstack/react-query").UseMutateFunction<import("@zama-fhe/relayer-sdk/web").DecryptedResults, Error, HandleContractPair[], unknown>;
11
+ mutate: import("@tanstack/react-query").UseMutateFunction<import("@zama-fhe/relayer-sdk/web").ClearValues, Error, HandleContractPair[], unknown>;
12
12
  reset: () => void;
13
13
  context: unknown;
14
14
  failureCount: number;
15
15
  failureReason: Error | null;
16
16
  isPaused: boolean;
17
17
  submittedAt: number;
18
- mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<import("@zama-fhe/relayer-sdk/web").DecryptedResults, Error, HandleContractPair[], unknown>;
18
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<import("@zama-fhe/relayer-sdk/web").ClearValues, Error, HandleContractPair[], unknown>;
19
19
  } | {
20
20
  data: undefined;
21
21
  variables: HandleContractPair[];
@@ -25,14 +25,14 @@ export declare const useDecryptHandles: () => {
25
25
  isPending: true;
26
26
  isSuccess: false;
27
27
  status: "pending";
28
- mutate: import("@tanstack/react-query").UseMutateFunction<import("@zama-fhe/relayer-sdk/web").DecryptedResults, Error, HandleContractPair[], unknown>;
28
+ mutate: import("@tanstack/react-query").UseMutateFunction<import("@zama-fhe/relayer-sdk/web").ClearValues, Error, HandleContractPair[], unknown>;
29
29
  reset: () => void;
30
30
  context: unknown;
31
31
  failureCount: number;
32
32
  failureReason: Error | null;
33
33
  isPaused: boolean;
34
34
  submittedAt: number;
35
- mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<import("@zama-fhe/relayer-sdk/web").DecryptedResults, Error, HandleContractPair[], unknown>;
35
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<import("@zama-fhe/relayer-sdk/web").ClearValues, Error, HandleContractPair[], unknown>;
36
36
  } | {
37
37
  data: undefined;
38
38
  error: Error;
@@ -42,16 +42,16 @@ export declare const useDecryptHandles: () => {
42
42
  isPending: false;
43
43
  isSuccess: false;
44
44
  status: "error";
45
- mutate: import("@tanstack/react-query").UseMutateFunction<import("@zama-fhe/relayer-sdk/web").DecryptedResults, Error, HandleContractPair[], unknown>;
45
+ mutate: import("@tanstack/react-query").UseMutateFunction<import("@zama-fhe/relayer-sdk/web").ClearValues, Error, HandleContractPair[], unknown>;
46
46
  reset: () => void;
47
47
  context: unknown;
48
48
  failureCount: number;
49
49
  failureReason: Error | null;
50
50
  isPaused: boolean;
51
51
  submittedAt: number;
52
- mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<import("@zama-fhe/relayer-sdk/web").DecryptedResults, Error, HandleContractPair[], unknown>;
52
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<import("@zama-fhe/relayer-sdk/web").ClearValues, Error, HandleContractPair[], unknown>;
53
53
  } | {
54
- data: import("@zama-fhe/relayer-sdk/web").DecryptedResults;
54
+ data: import("@zama-fhe/relayer-sdk/web").ClearValues;
55
55
  error: null;
56
56
  variables: HandleContractPair[];
57
57
  isError: false;
@@ -59,12 +59,12 @@ export declare const useDecryptHandles: () => {
59
59
  isPending: false;
60
60
  isSuccess: true;
61
61
  status: "success";
62
- mutate: import("@tanstack/react-query").UseMutateFunction<import("@zama-fhe/relayer-sdk/web").DecryptedResults, Error, HandleContractPair[], unknown>;
62
+ mutate: import("@tanstack/react-query").UseMutateFunction<import("@zama-fhe/relayer-sdk/web").ClearValues, Error, HandleContractPair[], unknown>;
63
63
  reset: () => void;
64
64
  context: unknown;
65
65
  failureCount: number;
66
66
  failureReason: Error | null;
67
67
  isPaused: boolean;
68
68
  submittedAt: number;
69
- mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<import("@zama-fhe/relayer-sdk/web").DecryptedResults, Error, HandleContractPair[], unknown>;
69
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<import("@zama-fhe/relayer-sdk/web").ClearValues, Error, HandleContractPair[], unknown>;
70
70
  };
@@ -3,7 +3,7 @@ export interface EncryptedTransferProps {
3
3
  tokenAddress: Address;
4
4
  }
5
5
  export declare const useEncryptedTransfer: ({ tokenAddress, }: EncryptedTransferProps) => {
6
- transfer: (to: Address, handles: Uint8Array[], inputProof: Uint8Array, transferFee?: number) => void;
6
+ transfer: (to: Address, handles: Uint8Array[], inputProof: Uint8Array) => void;
7
7
  isLoading: boolean;
8
8
  isFailed: boolean;
9
9
  isSuccess: boolean;
@@ -1,23 +1,19 @@
1
1
  import { usePerformTransaction } from "./usePerformTransaction";
2
2
  import { encryptedABI } from "../../types/ABI/encryptedABI";
3
3
  import { toHexString } from "../../utils/string.utils";
4
- import { decimalToToken } from "../../utils/number.utils";
5
4
  export const useEncryptedTransfer = ({ tokenAddress, }) => {
6
5
  const { perform, isLoading, isFailed, isSuccess, error } = usePerformTransaction({
7
6
  abi: encryptedABI,
8
7
  address: tokenAddress,
9
8
  functionName: "confidentialTransfer",
10
9
  });
11
- const transfer = (to, handles, inputProof, transferFee) => {
10
+ const transfer = (to, handles, inputProof) => {
12
11
  if (handles.length === 0)
13
12
  throw new Error("Bad handles format");
14
- if (transferFee === undefined)
15
- throw new Error("TRANSFER: No transfer fee provided");
16
13
  const encryptedAmount = toHexString(handles[0]);
17
14
  const proof = toHexString(inputProof);
18
15
  perform({
19
16
  args: [to, encryptedAmount, proof],
20
- value: decimalToToken(transferFee, 18),
21
17
  });
22
18
  };
23
19
  return { transfer, isLoading, isFailed, isSuccess, error };
@@ -0,0 +1,69 @@
1
+ export declare const usePublicDecrypt: () => {
2
+ data: undefined;
3
+ variables: undefined;
4
+ error: null;
5
+ isError: false;
6
+ isIdle: true;
7
+ isPending: false;
8
+ isSuccess: false;
9
+ status: "idle";
10
+ mutate: import("@tanstack/react-query").UseMutateFunction<import("@zama-fhe/relayer-sdk/web").PublicDecryptResults | undefined, Error, Uint8Array<ArrayBufferLike>[], unknown>;
11
+ reset: () => void;
12
+ context: unknown;
13
+ failureCount: number;
14
+ failureReason: Error | null;
15
+ isPaused: boolean;
16
+ submittedAt: number;
17
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<import("@zama-fhe/relayer-sdk/web").PublicDecryptResults | undefined, Error, Uint8Array<ArrayBufferLike>[], unknown>;
18
+ } | {
19
+ data: undefined;
20
+ variables: Uint8Array<ArrayBufferLike>[];
21
+ error: null;
22
+ isError: false;
23
+ isIdle: false;
24
+ isPending: true;
25
+ isSuccess: false;
26
+ status: "pending";
27
+ mutate: import("@tanstack/react-query").UseMutateFunction<import("@zama-fhe/relayer-sdk/web").PublicDecryptResults | undefined, Error, Uint8Array<ArrayBufferLike>[], unknown>;
28
+ reset: () => void;
29
+ context: unknown;
30
+ failureCount: number;
31
+ failureReason: Error | null;
32
+ isPaused: boolean;
33
+ submittedAt: number;
34
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<import("@zama-fhe/relayer-sdk/web").PublicDecryptResults | undefined, Error, Uint8Array<ArrayBufferLike>[], unknown>;
35
+ } | {
36
+ data: undefined;
37
+ error: Error;
38
+ variables: Uint8Array<ArrayBufferLike>[];
39
+ isError: true;
40
+ isIdle: false;
41
+ isPending: false;
42
+ isSuccess: false;
43
+ status: "error";
44
+ mutate: import("@tanstack/react-query").UseMutateFunction<import("@zama-fhe/relayer-sdk/web").PublicDecryptResults | undefined, Error, Uint8Array<ArrayBufferLike>[], unknown>;
45
+ reset: () => void;
46
+ context: unknown;
47
+ failureCount: number;
48
+ failureReason: Error | null;
49
+ isPaused: boolean;
50
+ submittedAt: number;
51
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<import("@zama-fhe/relayer-sdk/web").PublicDecryptResults | undefined, Error, Uint8Array<ArrayBufferLike>[], unknown>;
52
+ } | {
53
+ data: import("@zama-fhe/relayer-sdk/web").PublicDecryptResults | undefined;
54
+ error: null;
55
+ variables: Uint8Array<ArrayBufferLike>[];
56
+ isError: false;
57
+ isIdle: false;
58
+ isPending: false;
59
+ isSuccess: true;
60
+ status: "success";
61
+ mutate: import("@tanstack/react-query").UseMutateFunction<import("@zama-fhe/relayer-sdk/web").PublicDecryptResults | undefined, Error, Uint8Array<ArrayBufferLike>[], unknown>;
62
+ reset: () => void;
63
+ context: unknown;
64
+ failureCount: number;
65
+ failureReason: Error | null;
66
+ isPaused: boolean;
67
+ submittedAt: number;
68
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<import("@zama-fhe/relayer-sdk/web").PublicDecryptResults | undefined, Error, Uint8Array<ArrayBufferLike>[], unknown>;
69
+ };
@@ -0,0 +1,21 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { useMutation } from "@tanstack/react-query";
11
+ import { useFhevmContext } from "../context/FhevmProvider";
12
+ export const usePublicDecrypt = () => {
13
+ const { instance } = useFhevmContext();
14
+ const decryptMutation = useMutation({
15
+ mutationFn: (handles) => __awaiter(void 0, void 0, void 0, function* () {
16
+ const decryptedHandles = instance === null || instance === void 0 ? void 0 : instance.publicDecrypt(handles);
17
+ return decryptedHandles;
18
+ }),
19
+ });
20
+ return Object.assign({}, decryptMutation);
21
+ };
package/dist/index.d.ts CHANGED
@@ -7,4 +7,5 @@ export { useEncryptValue } from "./client/hooks/useEncryptValue";
7
7
  export { useUnwrap } from "./client/hooks/useUnwrap";
8
8
  export { useEncryptedBatchTransfer } from "./client/hooks/useEncryptedBatchTransfer";
9
9
  export { useSetOperator } from "./client/hooks/useSetOperator";
10
+ export { usePublicDecrypt } from "./client/hooks/usePublicDecrypt";
10
11
  export { type FhevmConfig } from "./types/fhevmConfig";
package/dist/index.js CHANGED
@@ -9,3 +9,4 @@ export { useEncryptValue } from "./client/hooks/useEncryptValue";
9
9
  export { useUnwrap } from "./client/hooks/useUnwrap";
10
10
  export { useEncryptedBatchTransfer } from "./client/hooks/useEncryptedBatchTransfer";
11
11
  export { useSetOperator } from "./client/hooks/useSetOperator";
12
+ export { usePublicDecrypt } from "./client/hooks/usePublicDecrypt";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pyratzlabs/react-fhevm-utils",
3
- "version": "2.3.4",
3
+ "version": "3.1.0",
4
4
  "description": "React hooks and utilities for Fhevmjs",
5
5
  "main": "dist/index.js",
6
6
  "files": [
@@ -31,7 +31,7 @@
31
31
  },
32
32
  "dependencies": {
33
33
  "@tanstack/react-query": "^5.71.5",
34
- "@zama-fhe/relayer-sdk": "^0.2.0",
34
+ "@zama-fhe/relayer-sdk": "^0.3.0-5",
35
35
  "react": "^19.1.0",
36
36
  "viem": "^2.25.0",
37
37
  "wagmi": "^2.14.16"