@lit-protocol/vincent-ability-uniswap-swap 0.0.7-mma
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/CHANGELOG.md +15 -0
- package/CONTRIBUTING.md +100 -0
- package/README.md +127 -0
- package/dist/CHANGELOG.md +15 -0
- package/dist/CONTRIBUTING.md +100 -0
- package/dist/README.md +127 -0
- package/dist/package.json +37 -0
- package/dist/src/generated/lit-action.js +9 -0
- package/dist/src/generated/vincent-ability-metadata.json +3 -0
- package/dist/src/generated/vincent-bundled-ability.d.ts +976 -0
- package/dist/src/generated/vincent-bundled-ability.d.ts.map +1 -0
- package/dist/src/generated/vincent-bundled-ability.js +15 -0
- package/dist/src/generated/vincent-bundled-ability.js.map +1 -0
- package/dist/src/generated/vincent-bundled-ability.ts +13 -0
- package/dist/src/generated/vincent-tool-metadata.json +3 -0
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +6 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/lib/ability-checks/check-erc20-allowance.d.ts +9 -0
- package/dist/src/lib/ability-checks/check-erc20-allowance.d.ts.map +1 -0
- package/dist/src/lib/ability-checks/check-erc20-allowance.js +17 -0
- package/dist/src/lib/ability-checks/check-erc20-allowance.js.map +1 -0
- package/dist/src/lib/ability-checks/check-native-token-balance.d.ts +6 -0
- package/dist/src/lib/ability-checks/check-native-token-balance.d.ts.map +1 -0
- package/dist/src/lib/ability-checks/check-native-token-balance.js +12 -0
- package/dist/src/lib/ability-checks/check-native-token-balance.js.map +1 -0
- package/dist/src/lib/ability-checks/check-token-in-balance.d.ts +8 -0
- package/dist/src/lib/ability-checks/check-token-in-balance.d.ts.map +1 -0
- package/dist/src/lib/ability-checks/check-token-in-balance.js +17 -0
- package/dist/src/lib/ability-checks/check-token-in-balance.js.map +1 -0
- package/dist/src/lib/ability-checks/check-uniswap-pool-exists.d.ts +10 -0
- package/dist/src/lib/ability-checks/check-uniswap-pool-exists.d.ts.map +1 -0
- package/dist/src/lib/ability-checks/check-uniswap-pool-exists.js +24 -0
- package/dist/src/lib/ability-checks/check-uniswap-pool-exists.js.map +1 -0
- package/dist/src/lib/ability-checks/getErc20Contract.d.ts +4 -0
- package/dist/src/lib/ability-checks/getErc20Contract.d.ts.map +1 -0
- package/dist/src/lib/ability-checks/getErc20Contract.js +20 -0
- package/dist/src/lib/ability-checks/getErc20Contract.js.map +1 -0
- package/dist/src/lib/ability-checks/index.d.ts +5 -0
- package/dist/src/lib/ability-checks/index.d.ts.map +1 -0
- package/dist/src/lib/ability-checks/index.js +8 -0
- package/dist/src/lib/ability-checks/index.js.map +1 -0
- package/dist/src/lib/ability-helpers/calculate-usd-value.d.ts +7 -0
- package/dist/src/lib/ability-helpers/calculate-usd-value.d.ts.map +1 -0
- package/dist/src/lib/ability-helpers/calculate-usd-value.js +22 -0
- package/dist/src/lib/ability-helpers/calculate-usd-value.js.map +1 -0
- package/dist/src/lib/ability-helpers/estimate-gas-for-swap.d.ts +7 -0
- package/dist/src/lib/ability-helpers/estimate-gas-for-swap.d.ts.map +1 -0
- package/dist/src/lib/ability-helpers/estimate-gas-for-swap.js +24 -0
- package/dist/src/lib/ability-helpers/estimate-gas-for-swap.js.map +1 -0
- package/dist/src/lib/ability-helpers/get-eth-usd-price.d.ts +6 -0
- package/dist/src/lib/ability-helpers/get-eth-usd-price.d.ts.map +1 -0
- package/dist/src/lib/ability-helpers/get-eth-usd-price.js +22 -0
- package/dist/src/lib/ability-helpers/get-eth-usd-price.js.map +1 -0
- package/dist/src/lib/ability-helpers/get-gas-params.d.ts +8 -0
- package/dist/src/lib/ability-helpers/get-gas-params.d.ts.map +1 -0
- package/dist/src/lib/ability-helpers/get-gas-params.js +31 -0
- package/dist/src/lib/ability-helpers/get-gas-params.js.map +1 -0
- package/dist/src/lib/ability-helpers/get-pkp-info.d.ts +6 -0
- package/dist/src/lib/ability-helpers/get-pkp-info.d.ts.map +1 -0
- package/dist/src/lib/ability-helpers/get-pkp-info.js +22 -0
- package/dist/src/lib/ability-helpers/get-pkp-info.js.map +1 -0
- package/dist/src/lib/ability-helpers/get-token-amount-in-usd.d.ts +10 -0
- package/dist/src/lib/ability-helpers/get-token-amount-in-usd.d.ts.map +1 -0
- package/dist/src/lib/ability-helpers/get-token-amount-in-usd.js +68 -0
- package/dist/src/lib/ability-helpers/get-token-amount-in-usd.js.map +1 -0
- package/dist/src/lib/ability-helpers/get-uniswap-quote.d.ts +15 -0
- package/dist/src/lib/ability-helpers/get-uniswap-quote.d.ts.map +1 -0
- package/dist/src/lib/ability-helpers/get-uniswap-quote.js +114 -0
- package/dist/src/lib/ability-helpers/get-uniswap-quote.js.map +1 -0
- package/dist/src/lib/ability-helpers/index.d.ts +10 -0
- package/dist/src/lib/ability-helpers/index.d.ts.map +1 -0
- package/dist/src/lib/ability-helpers/index.js +13 -0
- package/dist/src/lib/ability-helpers/index.js.map +1 -0
- package/dist/src/lib/ability-helpers/send-uniswap-tx.d.ts +12 -0
- package/dist/src/lib/ability-helpers/send-uniswap-tx.d.ts.map +1 -0
- package/dist/src/lib/ability-helpers/send-uniswap-tx.js +119 -0
- package/dist/src/lib/ability-helpers/send-uniswap-tx.js.map +1 -0
- package/dist/src/lib/ability-helpers/sign-tx.d.ts +3 -0
- package/dist/src/lib/ability-helpers/sign-tx.d.ts.map +1 -0
- package/dist/src/lib/ability-helpers/sign-tx.js +28 -0
- package/dist/src/lib/ability-helpers/sign-tx.js.map +1 -0
- package/dist/src/lib/lit-action.d.ts +2 -0
- package/dist/src/lib/lit-action.d.ts.map +1 -0
- package/dist/src/lib/lit-action.js +15 -0
- package/dist/src/lib/lit-action.js.map +1 -0
- package/dist/src/lib/schemas.d.ts +92 -0
- package/dist/src/lib/schemas.d.ts.map +1 -0
- package/dist/src/lib/schemas.js +66 -0
- package/dist/src/lib/schemas.js.map +1 -0
- package/dist/src/lib/vincent-ability.d.ts +974 -0
- package/dist/src/lib/vincent-ability.d.ts.map +1 -0
- package/dist/src/lib/vincent-ability.js +187 -0
- package/dist/src/lib/vincent-ability.js.map +1 -0
- package/package.json +36 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vincent-ability.d.ts","sourceRoot":"","sources":["../../../src/lib/vincent-ability.ts"],"names":[],"mappings":"AAqCA,eAAO,MAAM,cAAc,GAAI,KAAK,GAAG,EAAE,OAAO,GAAG,QAElD,CAAC;AAEF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmNzB,CAAC"}
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.vincentAbility = exports.bigintReplacer = void 0;
|
|
4
|
+
const vincent_ability_sdk_1 = require("@lit-protocol/vincent-ability-sdk");
|
|
5
|
+
const vincent_policy_spending_limit_1 = require("@lit-protocol/vincent-policy-spending-limit");
|
|
6
|
+
const sdk_core_1 = require("@uniswap/sdk-core");
|
|
7
|
+
const ability_helpers_1 = require("./ability-helpers");
|
|
8
|
+
const ability_checks_1 = require("./ability-checks");
|
|
9
|
+
const schemas_1 = require("./schemas");
|
|
10
|
+
const ethers_1 = require("ethers");
|
|
11
|
+
const check_erc20_allowance_1 = require("./ability-checks/check-erc20-allowance");
|
|
12
|
+
const SpendingLimitPolicy = (0, vincent_ability_sdk_1.createVincentAbilityPolicy)({
|
|
13
|
+
abilityParamsSchema: schemas_1.abilityParamsSchema,
|
|
14
|
+
bundledVincentPolicy: vincent_policy_spending_limit_1.bundledVincentPolicy,
|
|
15
|
+
abilityParameterMappings: {
|
|
16
|
+
rpcUrlForUniswap: 'rpcUrlForUniswap',
|
|
17
|
+
chainIdForUniswap: 'chainIdForUniswap',
|
|
18
|
+
ethRpcUrl: 'ethRpcUrl',
|
|
19
|
+
tokenInAddress: 'tokenAddress',
|
|
20
|
+
tokenInDecimals: 'tokenDecimals',
|
|
21
|
+
tokenInAmount: 'buyAmount',
|
|
22
|
+
},
|
|
23
|
+
});
|
|
24
|
+
const bigintReplacer = (key, value) => {
|
|
25
|
+
return typeof value === 'bigint' ? value.toString() : value;
|
|
26
|
+
};
|
|
27
|
+
exports.bigintReplacer = bigintReplacer;
|
|
28
|
+
exports.vincentAbility = (0, vincent_ability_sdk_1.createVincentAbility)({
|
|
29
|
+
packageName: '@lit-protocol/vincent-ability-uniswap-swap',
|
|
30
|
+
abilityDescription: 'Performs a swap between two ERC20 tokens using Uniswap',
|
|
31
|
+
abilityParamsSchema: schemas_1.abilityParamsSchema,
|
|
32
|
+
supportedPolicies: (0, vincent_ability_sdk_1.supportedPoliciesForAbility)([SpendingLimitPolicy]),
|
|
33
|
+
executeSuccessSchema: schemas_1.executeSuccessSchema,
|
|
34
|
+
executeFailSchema: schemas_1.executeFailSchema,
|
|
35
|
+
precheckFailSchema: schemas_1.precheckFailSchema,
|
|
36
|
+
precheck: async ({ abilityParams }, { succeed, fail, delegation: { delegatorPkpInfo } }) => {
|
|
37
|
+
// TODO: Rewrite checks to use `createAllowResult` and `createDenyResult` so we always know when we get a runtime err
|
|
38
|
+
const { rpcUrlForUniswap, chainIdForUniswap, tokenInAddress, tokenInDecimals, tokenInAmount, tokenOutAddress, tokenOutDecimals, } = abilityParams;
|
|
39
|
+
console.log('Prechecking UniswapSwapAbility', JSON.stringify(abilityParams, exports.bigintReplacer, 2));
|
|
40
|
+
const delegatorPkpAddress = delegatorPkpInfo.ethAddress;
|
|
41
|
+
const provider = new ethers_1.ethers.providers.JsonRpcProvider(rpcUrlForUniswap);
|
|
42
|
+
try {
|
|
43
|
+
await (0, ability_checks_1.checkNativeTokenBalance)({
|
|
44
|
+
provider,
|
|
45
|
+
pkpEthAddress: delegatorPkpAddress,
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
catch (err) {
|
|
49
|
+
return fail({
|
|
50
|
+
reason: `Native token balance error: ${err instanceof Error ? err.message : String(err)}`,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
const uniswapRouterAddress = sdk_core_1.CHAIN_TO_ADDRESSES_MAP[chainIdForUniswap].swapRouter02Address;
|
|
54
|
+
if (uniswapRouterAddress === undefined) {
|
|
55
|
+
return fail({
|
|
56
|
+
reason: `Uniswap router address not found for chainId ${chainIdForUniswap} (UniswapSwapAbilityPrecheck)`,
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
const requiredAmount = ethers_1.ethers.utils
|
|
60
|
+
.parseUnits(tokenInAmount.toString(), tokenInDecimals)
|
|
61
|
+
.toBigInt();
|
|
62
|
+
try {
|
|
63
|
+
await (0, check_erc20_allowance_1.checkErc20Allowance)({
|
|
64
|
+
provider,
|
|
65
|
+
tokenAddress: tokenInAddress,
|
|
66
|
+
owner: delegatorPkpAddress,
|
|
67
|
+
spender: uniswapRouterAddress,
|
|
68
|
+
tokenAmount: requiredAmount,
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
catch (err) {
|
|
72
|
+
return fail({
|
|
73
|
+
reason: `ERC20 allowance check error: ${err instanceof Error ? err.message : String(err)}`,
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
try {
|
|
77
|
+
await (0, ability_checks_1.checkTokenInBalance)({
|
|
78
|
+
provider,
|
|
79
|
+
pkpEthAddress: delegatorPkpAddress,
|
|
80
|
+
tokenInAddress: tokenInAddress,
|
|
81
|
+
tokenInAmount: requiredAmount,
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
catch (err) {
|
|
85
|
+
return fail({
|
|
86
|
+
reason: `tokenIn balance check error: ${err instanceof Error ? err.message : String(err)}`,
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
try {
|
|
90
|
+
await (0, ability_checks_1.checkUniswapPoolExists)({
|
|
91
|
+
rpcUrl: rpcUrlForUniswap,
|
|
92
|
+
chainId: chainIdForUniswap,
|
|
93
|
+
tokenInAddress: tokenInAddress,
|
|
94
|
+
tokenInDecimals,
|
|
95
|
+
tokenInAmount,
|
|
96
|
+
tokenOutAddress: tokenOutAddress,
|
|
97
|
+
tokenOutDecimals,
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
catch (err) {
|
|
101
|
+
return fail({
|
|
102
|
+
reason: `Check uniswap pool exists error: ${err instanceof Error ? err.message : String(err)}`,
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
return succeed();
|
|
106
|
+
},
|
|
107
|
+
execute: async ({ abilityParams }, { succeed, fail, policiesContext, delegation: { delegatorPkpInfo } }) => {
|
|
108
|
+
console.log('Executing UniswapSwapAbility', JSON.stringify(abilityParams, exports.bigintReplacer, 2));
|
|
109
|
+
const { ethAddress: delegatorPkpAddress, publicKey: delegatorPublicKey } = delegatorPkpInfo;
|
|
110
|
+
const { ethRpcUrl, rpcUrlForUniswap, chainIdForUniswap, tokenInAddress, tokenInDecimals, tokenInAmount, tokenOutAddress, tokenOutDecimals, } = abilityParams;
|
|
111
|
+
// Commit spending limit before we submit the TX. We'd rather the tx fail and we count the spend erroneously
|
|
112
|
+
// than to have the commit fail but the tx succeed, and we erroneously don't track the spend!
|
|
113
|
+
const spendingLimitPolicyContext = policiesContext.allowedPolicies['@lit-protocol/vincent-policy-spending-limit'];
|
|
114
|
+
let spendLimitCommitTxHash;
|
|
115
|
+
if (spendingLimitPolicyContext !== undefined) {
|
|
116
|
+
const tokenInAmountInUsd = await (0, ability_helpers_1.getTokenAmountInUsd)({
|
|
117
|
+
ethRpcUrl,
|
|
118
|
+
rpcUrlForUniswap,
|
|
119
|
+
chainIdForUniswap,
|
|
120
|
+
tokenAddress: tokenInAddress,
|
|
121
|
+
tokenAmount: tokenInAmount,
|
|
122
|
+
tokenDecimals: tokenInDecimals,
|
|
123
|
+
});
|
|
124
|
+
const { maxSpendingLimitInUsd } = spendingLimitPolicyContext.result;
|
|
125
|
+
console.log('Spending limit policy commit', JSON.stringify(spendingLimitPolicyContext, exports.bigintReplacer, 2));
|
|
126
|
+
try {
|
|
127
|
+
const commitResult = await spendingLimitPolicyContext.commit({
|
|
128
|
+
amountSpentUsd: tokenInAmountInUsd.toNumber(),
|
|
129
|
+
maxSpendingLimitInUsd,
|
|
130
|
+
});
|
|
131
|
+
console.log('Spending limit policy commit result', JSON.stringify(commitResult, exports.bigintReplacer, 2));
|
|
132
|
+
if (commitResult.allow) {
|
|
133
|
+
spendLimitCommitTxHash = commitResult.result.spendTxHash;
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
if (commitResult.runtimeError) {
|
|
137
|
+
// Handle either an error that was `throw()`n from the commit method and wrapped by the sdk
|
|
138
|
+
// Or an explicit schema validation error on input params or output result
|
|
139
|
+
return fail({
|
|
140
|
+
reason: 'Commit spending limit policy spending limit adjustment due to un-structured error response.',
|
|
141
|
+
spendingLimitCommitFail: {
|
|
142
|
+
runtimeError: commitResult.runtimeError,
|
|
143
|
+
schemaValidationError: commitResult.schemaValidationError,
|
|
144
|
+
},
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
// In this case we should have a result that is the shape of the commitDenyResultSchema from the policy to return
|
|
148
|
+
return fail({
|
|
149
|
+
reason: 'Commit spending limit policy spending limit adjustment denied with structured result',
|
|
150
|
+
spendingLimitCommitFail: {
|
|
151
|
+
structuredCommitFailureReason: commitResult.result,
|
|
152
|
+
runtimeError: commitResult.runtimeError,
|
|
153
|
+
schemaValidationError: commitResult.schemaValidationError,
|
|
154
|
+
},
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
console.log(`Committed spending limit policy for transaction: ${spendLimitCommitTxHash} (UniswapSwapAbilityExecute)`);
|
|
158
|
+
}
|
|
159
|
+
catch (commitErr) {
|
|
160
|
+
// Commit methods are wrapped in code so that this should only happen if we encounter an error
|
|
161
|
+
// _inside_ the wrapping code in the vincent-ability-sdk -- but let's handle it Just In Case :tm:
|
|
162
|
+
return fail({
|
|
163
|
+
reason: 'Commit spending limit policy spending limit adjustment due to unexpected runtime error.',
|
|
164
|
+
spendingLimitCommitFail: {
|
|
165
|
+
runtimeError: commitErr instanceof Error ? commitErr.message : String(commitErr),
|
|
166
|
+
},
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
const swapTxHash = await (0, ability_helpers_1.sendUniswapTx)({
|
|
171
|
+
rpcUrl: rpcUrlForUniswap,
|
|
172
|
+
chainId: chainIdForUniswap,
|
|
173
|
+
pkpEthAddress: delegatorPkpAddress,
|
|
174
|
+
pkpPublicKey: delegatorPublicKey,
|
|
175
|
+
tokenInAddress: tokenInAddress,
|
|
176
|
+
tokenOutAddress: tokenOutAddress,
|
|
177
|
+
tokenInDecimals,
|
|
178
|
+
tokenOutDecimals,
|
|
179
|
+
tokenInAmount,
|
|
180
|
+
});
|
|
181
|
+
return succeed({
|
|
182
|
+
swapTxHash,
|
|
183
|
+
spendTxHash: spendLimitCommitTxHash,
|
|
184
|
+
});
|
|
185
|
+
},
|
|
186
|
+
});
|
|
187
|
+
//# sourceMappingURL=vincent-ability.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vincent-ability.js","sourceRoot":"","sources":["../../../src/lib/vincent-ability.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@lit-protocol/vincent-ability-uniswap-swap",
|
|
3
|
+
"version": "0.0.7-mma",
|
|
4
|
+
"publishConfig": {
|
|
5
|
+
"access": "public"
|
|
6
|
+
},
|
|
7
|
+
"dependencies": {
|
|
8
|
+
"@uniswap/sdk-core": "^7.7.2",
|
|
9
|
+
"ethers": "^5.8.0",
|
|
10
|
+
"tslib": "2.8.1",
|
|
11
|
+
"zod": "^3.25.64",
|
|
12
|
+
"@lit-protocol/vincent-policy-spending-limit": "0.0.7-mma",
|
|
13
|
+
"@lit-protocol/vincent-ability-sdk": "0.0.7-mma"
|
|
14
|
+
},
|
|
15
|
+
"peerDependencies": {
|
|
16
|
+
"@lit-protocol/vincent-app-sdk": "^0.0.7-mma"
|
|
17
|
+
},
|
|
18
|
+
"devDependencies": {
|
|
19
|
+
"@dotenvx/dotenvx": "^1.44.2",
|
|
20
|
+
"@lit-protocol/auth-helpers": "^7.2.0",
|
|
21
|
+
"@lit-protocol/constants": "^7.2.0",
|
|
22
|
+
"@lit-protocol/contracts-sdk": "^7.2.0",
|
|
23
|
+
"@lit-protocol/lit-node-client": "^7.0.8",
|
|
24
|
+
"esbuild": "^0.19.12",
|
|
25
|
+
"esbuild-plugin-polyfill-node": "^0.3.0",
|
|
26
|
+
"ipfs-only-hash": "^4.0.0",
|
|
27
|
+
"viem": "^2.28.0"
|
|
28
|
+
},
|
|
29
|
+
"main": "./dist/src/index.js",
|
|
30
|
+
"module": "./dist/src/index.js",
|
|
31
|
+
"types": "./dist/src/index.d.ts",
|
|
32
|
+
"files": [
|
|
33
|
+
"dist/**",
|
|
34
|
+
"*.md"
|
|
35
|
+
]
|
|
36
|
+
}
|