timelock-sdk 0.0.131 → 0.0.132
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/abis.d.cts +1 -1
- package/dist/abis.d.ts +1 -1
- package/dist/abis.js +2 -2
- package/dist/{client-Cs5UA8KQ.d.cts → client-VhkUQ-HJ.d.cts} +181 -181
- package/dist/{client-BzO_GBnM.d.ts → client-gQvld5wF.d.ts} +181 -181
- package/dist/client.cjs +69 -82
- package/dist/client.cjs.map +1 -1
- package/dist/client.d.cts +2 -2
- package/dist/client.d.ts +2 -2
- package/dist/client.js +74 -87
- package/dist/client.js.map +1 -1
- package/dist/{optionUtils-CUg_L5bP.js → optionUtils-DTutSZPI.js} +2 -2
- package/dist/{optionUtils-CUg_L5bP.js.map → optionUtils-DTutSZPI.js.map} +1 -1
- package/dist/{optionsMarket-Dkwpa2uO.js → optionsMarket-Hq7O-Hry.js} +1 -1
- package/dist/{optionsMarket-Dkwpa2uO.js.map → optionsMarket-Hq7O-Hry.js.map} +1 -1
- package/dist/package.d.cts +2 -2
- package/dist/package.d.ts +2 -2
- package/dist/package.js +2 -2
- package/dist/{singleOwnerVault-BeJChjfJ.js → singleOwnerVault-p81IjmWe.js} +1 -1
- package/dist/{singleOwnerVault-BeJChjfJ.js.map → singleOwnerVault-p81IjmWe.js.map} +1 -1
- package/dist/{uniswapMathLens-JKcBN1v_.d.ts → uniswapMathLens-BGtGI-Nm.d.ts} +1 -1
- package/dist/{uniswapMathLens-DtacRMPz.d.cts → uniswapMathLens-EIuBr8ZZ.d.cts} +1 -1
- package/package.json +11 -11
package/dist/client.cjs
CHANGED
|
@@ -571,7 +571,7 @@ const useMaxPositionSize = (marketAddr, strikeTick, maxBorrowableRange = 100) =>
|
|
|
571
571
|
//#region src/hooks/pool/useCurrentTick.ts
|
|
572
572
|
const useCurrentTick = (poolAddr) => {
|
|
573
573
|
const { tickSpacing } = usePoolData(poolAddr);
|
|
574
|
-
const { data
|
|
574
|
+
const { data, ...rest } = (0, wagmi.useReadContract)({
|
|
575
575
|
address: poolAddr,
|
|
576
576
|
abi: require_singleOwnerVault.uniswapV3PoolAbi,
|
|
577
577
|
functionName: "slot0",
|
|
@@ -799,7 +799,7 @@ const useUserOptions = (userAddr, marketAddr, active = false) => {
|
|
|
799
799
|
const { graphqlClient } = useTimelockConfig();
|
|
800
800
|
userAddr = userAddr === null || userAddr === void 0 ? void 0 : userAddr.toLowerCase();
|
|
801
801
|
marketAddr = marketAddr === null || marketAddr === void 0 ? void 0 : marketAddr.toLowerCase();
|
|
802
|
-
const { data
|
|
802
|
+
const { data, ...rest } = (0, __tanstack_react_query.useQuery)({
|
|
803
803
|
queryKey: [
|
|
804
804
|
"userOptions",
|
|
805
805
|
userAddr || "--",
|
|
@@ -893,7 +893,7 @@ const useExtendOption = (marketAddr) => {
|
|
|
893
893
|
const useOptionTimeline = (marketAddr, optionId) => {
|
|
894
894
|
const { graphqlClient } = useTimelockConfig();
|
|
895
895
|
marketAddr = marketAddr === null || marketAddr === void 0 ? void 0 : marketAddr.toLowerCase();
|
|
896
|
-
const { data
|
|
896
|
+
const { data, ...rest } = (0, __tanstack_react_query.useQuery)({
|
|
897
897
|
queryKey: [
|
|
898
898
|
"optionTimeline",
|
|
899
899
|
marketAddr || "--",
|
|
@@ -1033,66 +1033,6 @@ const usePerpsOperator = () => {
|
|
|
1033
1033
|
};
|
|
1034
1034
|
};
|
|
1035
1035
|
|
|
1036
|
-
//#endregion
|
|
1037
|
-
//#region src/hooks/operators/useUserOperators.ts
|
|
1038
|
-
const useUserOperators = (userAddr, marketAddr) => {
|
|
1039
|
-
const { graphqlClient } = useTimelockConfig();
|
|
1040
|
-
const { data,...rest } = (0, __tanstack_react_query.useQuery)({
|
|
1041
|
-
queryKey: [
|
|
1042
|
-
"userOperators",
|
|
1043
|
-
(userAddr === null || userAddr === void 0 ? void 0 : userAddr.toLowerCase()) || "--",
|
|
1044
|
-
(marketAddr === null || marketAddr === void 0 ? void 0 : marketAddr.toLowerCase()) || "--"
|
|
1045
|
-
],
|
|
1046
|
-
queryFn: async () => {
|
|
1047
|
-
if (!userAddr || !marketAddr) return void 0;
|
|
1048
|
-
return (await graphqlClient.GetUserMarketOperators({
|
|
1049
|
-
userAddr: userAddr.toLowerCase(),
|
|
1050
|
-
marketAddr: marketAddr.toLowerCase()
|
|
1051
|
-
})).UserMarketOperator.map((operator) => ({
|
|
1052
|
-
...operator,
|
|
1053
|
-
spendingApproval: BigInt(operator.spendingApproval),
|
|
1054
|
-
operatorAddr: operator.operator.address.toLowerCase()
|
|
1055
|
-
}));
|
|
1056
|
-
},
|
|
1057
|
-
enabled: !!userAddr && !!marketAddr && !!graphqlClient
|
|
1058
|
-
});
|
|
1059
|
-
return {
|
|
1060
|
-
...rest,
|
|
1061
|
-
data: data || require_optionUtils.EMPTY_ARRAY
|
|
1062
|
-
};
|
|
1063
|
-
};
|
|
1064
|
-
|
|
1065
|
-
//#endregion
|
|
1066
|
-
//#region src/hooks/operators/useSetOperatorPerms.ts
|
|
1067
|
-
const useSetOperatorPerms = (marketAddr) => {
|
|
1068
|
-
const queryClient = (0, __tanstack_react_query.useQueryClient)();
|
|
1069
|
-
const client = (0, wagmi.useClient)();
|
|
1070
|
-
const { address } = (0, wagmi.useAccount)();
|
|
1071
|
-
const { writeContractAsync } = (0, wagmi.useWriteContract)();
|
|
1072
|
-
const setOperatorPerms = async ({ operator, canExtend, canExercise, canTransfer, canMint, spendingApproval }) => {
|
|
1073
|
-
if (!client || !address) throw new Error("Wallet not connected");
|
|
1074
|
-
if (!marketAddr) throw new Error("Market address not available");
|
|
1075
|
-
const hash = await writeContractAsync({
|
|
1076
|
-
address: marketAddr,
|
|
1077
|
-
abi: require_optionsMarket.optionsMarketAbi,
|
|
1078
|
-
functionName: "setOperatorPerms",
|
|
1079
|
-
args: [
|
|
1080
|
-
operator,
|
|
1081
|
-
canExtend,
|
|
1082
|
-
canExercise,
|
|
1083
|
-
canTransfer,
|
|
1084
|
-
canMint,
|
|
1085
|
-
spendingApproval
|
|
1086
|
-
]
|
|
1087
|
-
});
|
|
1088
|
-
await (0, viem_actions.waitForTransactionReceipt)(client, { hash });
|
|
1089
|
-
queryClient.invalidateQueries({ queryKey: ["userOperators"] });
|
|
1090
|
-
queryClient.invalidateQueries({ queryKey: ["readContract"] });
|
|
1091
|
-
return hash;
|
|
1092
|
-
};
|
|
1093
|
-
return (0, __tanstack_react_query.useMutation)({ mutationFn: setOperatorPerms });
|
|
1094
|
-
};
|
|
1095
|
-
|
|
1096
1036
|
//#endregion
|
|
1097
1037
|
//#region src/hooks/perps/useMintPerp.ts
|
|
1098
1038
|
const useMintPerp = (marketAddr) => {
|
|
@@ -1101,13 +1041,9 @@ const useMintPerp = (marketAddr) => {
|
|
|
1101
1041
|
const { address } = (0, wagmi.useAccount)();
|
|
1102
1042
|
const { operator, address: operatorAddr, signMessage: { mutateAsync: signMessage } } = usePerpsOperator();
|
|
1103
1043
|
const { askForApproval } = useApproval();
|
|
1104
|
-
const { data: operators } = useUserOperators(address, marketAddr);
|
|
1105
|
-
const { mutateAsync: setOperatorPerms } = useSetOperatorPerms(marketAddr);
|
|
1106
1044
|
const { pool, optionAssetIsToken0, payoutAsset } = useMarketData(marketAddr);
|
|
1107
1045
|
const { tickSpacing } = usePoolData(pool);
|
|
1108
1046
|
const { refetch: refetchCurrentTick } = useCurrentTick(pool);
|
|
1109
|
-
const userPerms = operatorAddr ? operators.find((o) => o.operatorAddr.toLowerCase() === operatorAddr.toLowerCase()) : void 0;
|
|
1110
|
-
const hasEnoughPerms = userPerms && userPerms.canMint && userPerms.canExtend && userPerms.canExercise;
|
|
1111
1047
|
const mintPerp = async (data) => {
|
|
1112
1048
|
const { optionType, amount, duration, strikeTick } = data;
|
|
1113
1049
|
if (!client || !address) throw new Error("Wallet not connected");
|
|
@@ -1127,16 +1063,7 @@ const useMintPerp = (marketAddr) => {
|
|
|
1127
1063
|
duration,
|
|
1128
1064
|
0
|
|
1129
1065
|
]);
|
|
1130
|
-
|
|
1131
|
-
if (!hasEnoughPerms) await setOperatorPerms({
|
|
1132
|
-
operator: operatorAddr,
|
|
1133
|
-
canMint: true,
|
|
1134
|
-
canExtend: true,
|
|
1135
|
-
canExercise: true,
|
|
1136
|
-
canTransfer: (userPerms === null || userPerms === void 0 ? void 0 : userPerms.canTransfer) || false,
|
|
1137
|
-
spendingApproval: maxPremium
|
|
1138
|
-
});
|
|
1139
|
-
await askForApproval(payoutAsset, marketAddr, maxPremium);
|
|
1066
|
+
await askForApproval(payoutAsset, marketAddr, (premium + protocolFee) * 11n / 10n);
|
|
1140
1067
|
await operator.mintPerp({
|
|
1141
1068
|
marketAddr,
|
|
1142
1069
|
amount,
|
|
@@ -1170,12 +1097,12 @@ const useClosePerp = () => {
|
|
|
1170
1097
|
|
|
1171
1098
|
//#endregion
|
|
1172
1099
|
//#region src/hooks/perps/useUserPerps.ts
|
|
1173
|
-
const EMPTY_ARRAY = [];
|
|
1100
|
+
const EMPTY_ARRAY$1 = [];
|
|
1174
1101
|
const useUserPerps = (marketAddr, userAddr, type) => {
|
|
1175
1102
|
const { operator } = usePerpsOperator();
|
|
1176
1103
|
userAddr = userAddr === null || userAddr === void 0 ? void 0 : userAddr.toLowerCase();
|
|
1177
1104
|
marketAddr = marketAddr === null || marketAddr === void 0 ? void 0 : marketAddr.toLowerCase();
|
|
1178
|
-
const { data
|
|
1105
|
+
const { data, ...rest } = (0, __tanstack_react_query.useQuery)({
|
|
1179
1106
|
queryKey: [
|
|
1180
1107
|
"userPerps",
|
|
1181
1108
|
type,
|
|
@@ -1188,7 +1115,7 @@ const useUserPerps = (marketAddr, userAddr, type) => {
|
|
|
1188
1115
|
refetchInterval: 1e4
|
|
1189
1116
|
});
|
|
1190
1117
|
return {
|
|
1191
|
-
data: data || EMPTY_ARRAY,
|
|
1118
|
+
data: data || EMPTY_ARRAY$1,
|
|
1192
1119
|
...rest
|
|
1193
1120
|
};
|
|
1194
1121
|
};
|
|
@@ -1207,7 +1134,7 @@ const useOperatorPerms = (marketAddr, userAddr, operatorAddr) => {
|
|
|
1207
1134
|
address: userAddr,
|
|
1208
1135
|
token: payoutAsset
|
|
1209
1136
|
});
|
|
1210
|
-
const { data
|
|
1137
|
+
const { data, ...rest } = (0, wagmi.useReadContract)({
|
|
1211
1138
|
abi: require_optionsMarket.optionsMarketAbi,
|
|
1212
1139
|
address: marketAddr,
|
|
1213
1140
|
functionName: "operatorPerms",
|
|
@@ -1240,6 +1167,66 @@ const useOperatorPerms = (marketAddr, userAddr, operatorAddr) => {
|
|
|
1240
1167
|
};
|
|
1241
1168
|
};
|
|
1242
1169
|
|
|
1170
|
+
//#endregion
|
|
1171
|
+
//#region src/hooks/operators/useUserOperators.ts
|
|
1172
|
+
const useUserOperators = (userAddr, marketAddr) => {
|
|
1173
|
+
const { graphqlClient } = useTimelockConfig();
|
|
1174
|
+
const { data, ...rest } = (0, __tanstack_react_query.useQuery)({
|
|
1175
|
+
queryKey: [
|
|
1176
|
+
"userOperators",
|
|
1177
|
+
(userAddr === null || userAddr === void 0 ? void 0 : userAddr.toLowerCase()) || "--",
|
|
1178
|
+
(marketAddr === null || marketAddr === void 0 ? void 0 : marketAddr.toLowerCase()) || "--"
|
|
1179
|
+
],
|
|
1180
|
+
queryFn: async () => {
|
|
1181
|
+
if (!userAddr || !marketAddr) return void 0;
|
|
1182
|
+
return (await graphqlClient.GetUserMarketOperators({
|
|
1183
|
+
userAddr: userAddr.toLowerCase(),
|
|
1184
|
+
marketAddr: marketAddr.toLowerCase()
|
|
1185
|
+
})).UserMarketOperator.map((operator) => ({
|
|
1186
|
+
...operator,
|
|
1187
|
+
spendingApproval: BigInt(operator.spendingApproval),
|
|
1188
|
+
operatorAddr: operator.operator.address.toLowerCase()
|
|
1189
|
+
}));
|
|
1190
|
+
},
|
|
1191
|
+
enabled: !!userAddr && !!marketAddr && !!graphqlClient
|
|
1192
|
+
});
|
|
1193
|
+
return {
|
|
1194
|
+
...rest,
|
|
1195
|
+
data: data || require_optionUtils.EMPTY_ARRAY
|
|
1196
|
+
};
|
|
1197
|
+
};
|
|
1198
|
+
|
|
1199
|
+
//#endregion
|
|
1200
|
+
//#region src/hooks/operators/useSetOperatorPerms.ts
|
|
1201
|
+
const useSetOperatorPerms = (marketAddr) => {
|
|
1202
|
+
const queryClient = (0, __tanstack_react_query.useQueryClient)();
|
|
1203
|
+
const client = (0, wagmi.useClient)();
|
|
1204
|
+
const { address } = (0, wagmi.useAccount)();
|
|
1205
|
+
const { writeContractAsync } = (0, wagmi.useWriteContract)();
|
|
1206
|
+
const setOperatorPerms = async ({ operator, canExtend, canExercise, canTransfer, canMint, spendingApproval }) => {
|
|
1207
|
+
if (!client || !address) throw new Error("Wallet not connected");
|
|
1208
|
+
if (!marketAddr) throw new Error("Market address not available");
|
|
1209
|
+
const hash = await writeContractAsync({
|
|
1210
|
+
address: marketAddr,
|
|
1211
|
+
abi: require_optionsMarket.optionsMarketAbi,
|
|
1212
|
+
functionName: "setOperatorPerms",
|
|
1213
|
+
args: [
|
|
1214
|
+
operator,
|
|
1215
|
+
canExtend,
|
|
1216
|
+
canExercise,
|
|
1217
|
+
canTransfer,
|
|
1218
|
+
canMint,
|
|
1219
|
+
spendingApproval
|
|
1220
|
+
]
|
|
1221
|
+
});
|
|
1222
|
+
await (0, viem_actions.waitForTransactionReceipt)(client, { hash });
|
|
1223
|
+
queryClient.invalidateQueries({ queryKey: ["userOperators"] });
|
|
1224
|
+
queryClient.invalidateQueries({ queryKey: ["readContract"] });
|
|
1225
|
+
return hash;
|
|
1226
|
+
};
|
|
1227
|
+
return (0, __tanstack_react_query.useMutation)({ mutationFn: setOperatorPerms });
|
|
1228
|
+
};
|
|
1229
|
+
|
|
1243
1230
|
//#endregion
|
|
1244
1231
|
//#region src/hooks/pool/usePriceHistory.ts
|
|
1245
1232
|
const usePriceHistory = (pool, token, resolution, startTimestamp, endTimestamp) => {
|
|
@@ -1343,7 +1330,7 @@ const useBurnLiquidity = (vaultAddr) => {
|
|
|
1343
1330
|
//#region src/hooks/vault/useLiquidityBlocks.ts
|
|
1344
1331
|
const useLiquidityBlocks = (vaultAddr) => {
|
|
1345
1332
|
const { timelockLens } = useLens();
|
|
1346
|
-
const { data: blocks = []
|
|
1333
|
+
const { data: blocks = [], ...rest } = (0, wagmi.useReadContract)({
|
|
1347
1334
|
address: timelockLens === null || timelockLens === void 0 ? void 0 : timelockLens.address,
|
|
1348
1335
|
abi: require_optionsMarket.lensAbi,
|
|
1349
1336
|
functionName: "getAllBlocks",
|